Your IP : 216.73.216.124


Current Path : /var/www/html/chatbot/backend/models/
Upload File :
Current File : /var/www/html/chatbot/backend/models/ContentArticle.php

<?php

namespace backend\models;

use Yii;

/**
 * This is the model class for table "content_article".
 *
 * @property int $content_article_id
 * @property string $content_article_title_my
 * @property string $content_article_title_en
 * @property string $content_article_category
 * @property string $content_article_subcategory
 * @property string $content_article_content_my
 * @property string $content_article_content_en
 * @property int $content_article_status
 * @property string $created_at
 * @property string $created_by
 * @property string $updated_at
 * @property string $updated_by
 */
class ContentArticle extends \common\models\Dermaga
{
    private $roleCat = ['PUB' => ['IN','PB','PBI']];

    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'content_article';
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['content_article_title_my', 'content_article_category', 'content_article_content_my', 'content_article_status'], 'required'],
            [['content_article_content_my', 'content_article_content_en'], 'string'],
            [['content_article_status'], 'integer'],
            [['created_at', 'updated_at'], 'safe'],
            [['content_article_title_my', 'content_article_title_en'], 'string', 'max' => 300],
            [['content_article_category', 'content_article_subcategory'], 'string', 'max' => 100],
            [['created_by', 'updated_by'], 'string', 'max' => 50],
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'content_article_id' => Yii::t('app', 'Banci Article ID'),
            'content_article_title_my' => Yii::t('app', 'Tajuk'),
            'content_article_title_en' => Yii::t('app', 'Tajuk En'),
            'content_article_category' => Yii::t('app', 'Kategori'),
            'content_article_subcategory' => Yii::t('app', 'Subkategori'),
            'content_article_content_my' => Yii::t('app', 'Kandungan'),
            'content_article_content_en' => Yii::t('app', 'Kandungan En'),
            'content_article_status' => Yii::t('app', 'Status'),
            'content_article_image' => Yii::t('app', 'Gambar Artikel'),
            'created_at' => Yii::t('app', 'Created At'),
            'created_by' => Yii::t('app', 'Created By'),
            'updated_at' => Yii::t('app', 'Updated At'),
            'updated_by' => Yii::t('app', 'Updated By'),
        ];
    }

    public function retCategory(){

        $role = Yii::$app->user->identity->roles; 

        $ref = \backend\models\Ref::find()->where(['Cat' => 'ATYPE'])->all();
        $refArr = [];
        $rolecat = $this->roleCat['PUB'];

        
        /*if ($role[0] != 'ADM1N') {
            foreach ($ref as $rkey => $rval) {
                if(in_array($rval->code,$rolecat)){
                    $refArr[$rval->code] = $rval->descr;

                }
            }
        }else{*/
            array_walk($ref,function($v) use (&$refArr){
                $refArr[$v->code] = $v->descr;
            });
        //}
        return $refArr;
    }

    public function retSubcategory($parent){
        $ref = \backend\models\Ref::find()->where(['Cat' => 'STYPE','param1' => $parent])->all();
        $refArr = [];
        array_walk($ref,function($v) use (&$refArr){
            $refArr[$v->code] = $v->descr;
        });

        return $refArr;
    }

    public function upload()
    {
        if ($this->validate()) {
            if ($this->validate()) {

                if($this->content_article_image != NULL){
                    $this->content_article_image->saveAs('uploads/' . $this->content_article_image->baseName . date('dmyhi') . '.' . $this->content_article_image->extension);
                     /* rewrite url path for uniquenes */
                    $this->content_article_image = $this->content_article_image->baseName . date('dmyhi') . '.' . $this->content_article_image->extension;
                }
                return true;
            } else {
                return false;
            }
            return true;
        } else {
            return false;
        }
    }

    public function retCatFrmCode($code){
        $ref = \backend\models\Ref::find()->where(['Cat' => 'ATYPE','code'=>$code])->one();
        return $ref;
    }

    public function retSubcatFrmParent($code){
        $ref = \backend\models\Ref::find()->where(['Cat' => 'STYPE','code'=>$code])->one();
        return $ref;
    }

    public function retRolecat(){
        return $this->roleCat;
    }
}