| Current Path : /var/www/html/sprm/backend/models/ |
| Current File : /var/www/html/sprm/backend/models/ContentInfographic.php |
<?php
namespace backend\models;
use Yii;
use yii\behaviors\TimestampBehavior;
use yii\behaviors\BlameableBehavior;
use yii\db\Expression;
use yii\db\ActiveRecord;
use asinfotrack\yii2\audittrail\behaviors\AuditTrailBehavior;
/**
* This is the model class for table "content_infographic".
*
* @property int $content_infographic_id
* @property string $content_infographic_title
* @property string $content_infographic_title_en
* @property string $content_infographic_image
* @property string $content_infographic_url
* @property int $content_infographic_status
* @property int $created_by
* @property string $created_at
* @property int $updated_by
* @property string $updated_at
*/
class ContentInfographic extends \yii\db\ActiveRecord {
/**
* {@inheritdoc}
*/
public static function tableName() {
return 'content_infographic';
}
public function behaviors() {
return [
[
'class' => TimestampBehavior::className(),
'createdAtAttribute' => 'created_at',
'updatedAtAttribute' => 'updated_at',
'value' => new Expression('NOW()'),
],
[
'class' => BlameableBehavior::className(),
'createdByAttribute' => 'created_by',
'updatedByAttribute' => 'updated_by',
'value' => (!\Yii::$app->user->isGuest ? \Yii::$app->user->identity->staff->id : 0),
'attributes' => [
ActiveRecord::EVENT_BEFORE_INSERT => ['created_by'],
ActiveRecord::EVENT_BEFORE_UPDATE => ['updated_by'],
],
],
'audittrail' => [
'class' => AuditTrailBehavior::className(),
// some of the optional configurations
'ignoredAttributes' => ['created_at', 'updated_at'],
'consoleUserId' => 1
],
];
}
/**
* {@inheritdoc}
*/
public function rules() {
return [
[['content_infographic_title','content_infographic_image'], 'required'],
[['content_infographic_status', 'created_by', 'updated_by'], 'integer'],
[['created_at', 'updated_at'], 'safe'],
[['content_infographic_title', 'content_infographic_title_en', 'content_infographic_url', 'content_infographic_title_ch'], 'string', 'max' => 255],
];
}
/**
* {@inheritdoc}
*/
public function attributeLabels() {
return [
'content_infographic_id' => 'ID',
'content_infographic_title' => 'Tajuk',
'content_infographic_title_en' => 'Tajuk (EN)',
'content_infographic_title_ch' => 'Tajuk (CH)',
'content_infographic_image' => 'Gambar',
'content_infographic_url' => 'URL',
'content_infographic_status' => 'Status',
'created_by' => 'Dicipta Oleh',
'created_at' => 'Masa Dicipta',
'updated_by' => 'Dikemaskini Oleh',
'updated_at' => 'Masa Dikemaskini',
];
}
public function upload() {
if ($this->validate()) {
if ($this->validate()) {
if ($this->content_infographic_image != NULL) {
$this->content_infographic_image->saveAs('uploads/' . $this->content_infographic_image->baseName . date('dmyhi') . '.' . $this->content_infographic_image->extension);
/* rewrite url path for uniquenes */
$this->content_infographic_image = $this->content_infographic_image->baseName . date('dmyhi') . '.' . $this->content_infographic_image->extension;
}
return true;
} else {
return false;
}
return true;
} else {
return false;
}
}
}