Feedback.php 1.91 KB
<?php

namespace common\models;

use common\modules\fileloader\behaviors\FileloaderBehavior;
use Yii;
use yii\behaviors\TimestampBehavior;
use yii\db\Expression;

/**
 * This is the model class for table "feedback".
 *
 * @property integer $feedback_id
 * @property string $name
 * @property string $phone
 * @property string $email
 * @property string $answer
 * @property string $file
 * @property string $date_add
 */
class Feedback extends \yii\db\ActiveRecord
{
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'feedback';
    }

    /**
     * @inheritdoc
     */
    public function behaviors()
    {
        return [
            [
                'class'              => TimestampBehavior::className(),
                'createdAtAttribute' => 'date_add',
                'updatedAtAttribute' => false,
                'value'              => new Expression('NOW()'),
            ],
            'fileloader' => [
                'class' => FileloaderBehavior::className(),
            ],
        ];
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['name', 'answer', 'email'], 'required'],
            [['email'], 'email'],
            [['phone'], 'match', 'pattern' => '/^\+?(?:\d{0,3})?[\(\s]?\d{0,5}[\)\s]?\d{3}[-\s]?\d{2}[-\s]?\d{2}$/'],
            [['name', 'phone', 'answer'], 'string', 'max' => 255],
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'feedback_id' => Yii::t('app', 'Feedback ID'),
            'name' => Yii::t('app', 'Feedback name'),
            'phone' => Yii::t('app', 'Feedback phone'),
            'email' => Yii::t('app', 'Feedback email'),
            'answer' => Yii::t('app', 'Feedback answer'),
            'file' => Yii::t('app', 'Feedback file'),
            'date_add' => Yii::t('app', 'Feedback date Add'),
        ];
    }
}