You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							57 lines
						
					
					
						
							1.4 KiB
						
					
					
				
			
		
		
	
	
							57 lines
						
					
					
						
							1.4 KiB
						
					
					
				<?php | 
						|
 | 
						|
namespace core\forms; | 
						|
 | 
						|
use core\components\LanguageDynamicModel; | 
						|
use core\entities\Meta; | 
						|
use Yii; | 
						|
 | 
						|
class MetaForm extends LanguageDynamicModel | 
						|
{ | 
						|
    public $title; | 
						|
    public $description; | 
						|
    public $keywords; | 
						|
 | 
						|
	private $_meta; | 
						|
 | 
						|
    public function __construct(Meta $meta = null, $config = []) | 
						|
    { | 
						|
        if ($meta) { | 
						|
            $this->title = $meta->title; | 
						|
            $this->description = $meta->description; | 
						|
            $this->keywords = $meta->keywords; | 
						|
            $this->_meta = $meta; | 
						|
        } | 
						|
        parent::__construct($config); | 
						|
	    // fill translate values | 
						|
	    /*if ($meta) { | 
						|
		    foreach ( $meta->translations as $translate ) { | 
						|
			    $this->{'title' . '_' . $translate->language} = $translate->title; | 
						|
			    $this->{'description' . '_' . $translate->language} = $translate->description; | 
						|
			    $this->{'keywords' . '_' . $translate->language} = $translate->keywords; | 
						|
		    }; | 
						|
	    };*/ | 
						|
    } | 
						|
 | 
						|
    public function rules(): array | 
						|
    { | 
						|
	    return array_merge( | 
						|
		    parent::rules(), | 
						|
		    [ | 
						|
	            [['title'], 'string', 'max' => 255], | 
						|
	            [['description', 'keywords'], 'string'], | 
						|
	        ] | 
						|
	    ); | 
						|
    } | 
						|
 | 
						|
    public function attributeLabels() { | 
						|
	    return array_merge( | 
						|
		    parent::attributeLabels(), | 
						|
		    [ | 
						|
		        'title' => Yii::t('main', 'Title'), | 
						|
		        'description' => Yii::t('main', 'Description'), | 
						|
		        'keywords' => Yii::t('main', 'Keywords'), | 
						|
		    ] | 
						|
	    ); | 
						|
    } | 
						|
} |