Blame view

common/models/Event.php 2.85 KB
d8c1a2e0   Yarik   Big commit artbox
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
  <?php
  
  namespace common\models;
  
  use Yii;
  use yii\behaviors\TimestampBehavior;
  /**
   * This is the model class for table "event".
   *
   * @property integer $event_id
   * @property string $name
   * @property string $alias
   * @property string $body
   * @property string $image
   * @property string $meta_title
   * @property string $description
   * @property string $h1
   * @property string $seo_text
   * @property integer $created_at
   * @property integer $updated_at
   * @property integer $end_at
   */
  class Event extends \yii\db\ActiveRecord
  {
      public $imageUpload;
  
      /**
       * @inheritdoc
       */
      public static function tableName()
      {
          return 'event';
      }
  
      /**
       * @inheritdoc
       */
      public function behaviors()
      {
          return [
              TimestampBehavior::className(),
              'slug' => [
                  'class' => 'common\behaviors\Slug',
                  'in_attribute' => 'name',
                  'out_attribute' => 'alias',
                  'translit' => true
              ],
              [
36d1807a   Yarik   Big commit.
49
                  'class' => 'common\behaviors\ShowImage',
d8c1a2e0   Yarik   Big commit artbox
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
              ],
          ];
      }
  
  
      public function beforeSave($insert)
      {
          if (parent::beforeSave($insert)) {
              $this->end_at = strtotime($this->end_at);
              return true;
          } else {
              return false;
          }
      }
  
      public function afterFind(){
          $this->end_at = date("Y-m-d", $this->end_at);
      }
  
  
      /**
       * @inheritdoc
       */
      public function rules()
      {
          return [
              [['body', 'seo_text'], 'string'],
              [['created_at', 'updated_at' ], 'integer'],
              [['name', 'alias', 'image', 'meta_title', 'description', 'h1','end_at'], 'string', 'max' => 255],
              [['name','body'], 'required'],
              [['imageUpload'], 'safe'],
              [['imageUpload'], 'file', 'extensions' => 'jpg, gif, png'],
          ];
      }
  
      /**
       * @inheritdoc
       */
      public function attributeLabels()
      {
          return [
              'event_id' => Yii::t('app', 'event_id'),
              'name' => Yii::t('app', 'name'),
              'alias' => Yii::t('app', 'alias'),
              'body' => Yii::t('app', 'body'),
              'image' => Yii::t('app', 'image'),
              'meta_title' => Yii::t('app', 'meta_title'),
              'description' => Yii::t('app', 'description'),
              'h1' => Yii::t('app', 'h1'),
              'seo_text' => Yii::t('app', 'seo_text'),
              'created_at' => Yii::t('app', 'created_at'),
              'updated_at' => Yii::t('app', 'updated_at'),
              'end_at' => Yii::t('app', 'end_at'),
          ];
      }
  
  
      public function getImageFile() {
          return empty($this->image) ? null : Yii::getAlias('@imagesDir/articles/'. $this->image);
      }
  
      public function getImageUrl()
      {
          return empty($this->image) ? null : Yii::getAlias('@imagesUrl/articles/' . $this->image);
      }
  }