Your IP : 216.73.216.79


Current Path : /var/www/html/sprm/backend/models/leftbar/
Upload File :
Current File : /var/www/html/sprm/backend/models/leftbar/LeftbarPanel.php

<?php

namespace backend\models\leftbar;

use Yii;
use common\components\WorkflowStatus;

/**
 * This is the model class for table "leftbar_panel".
 *
 * @property integer $leftbar_panel_id
 * @property string $leftbar_panel_menuloc
 * @property string $leftbar_panel_type
 * @property string $leftbar_panel_structure
 * @property integer $leftbar_panel_ordering
 * @property string $leftbar_panel_roles
 * @property string $leftbar_panel_createdat
 * @property integer $leftbar_panel_createdby
 */
class LeftbarPanel extends \yii\db\ActiveRecord
{   

    public static $menuType = [
        'question/question-meta/index'  =>  'Kawasan Kerja Soalan',
        'section/section-meta/index'    =>  'Kawasan Kerja Seksyen',
        'survey/survey-meta/index'      =>  'Kawasan Kerja Survey',
        'question/question-bank/index'      =>  'Kawasan Bank Soalan',
        'section/section-bank/index'      =>  'Kawasan Bank Seksyen',
        'survey/survey-bank/index'      =>  'Kawasan Bank Survei'
    ];

    public static $barType = [
        'button'    => 'Butang',
        'quicklink' => 'Pintasan',
        'category'  => 'Kategori',
        'label'     => 'Label'
    ];

    public static $qlinkType = [
        'count' => 'Kiraan',
        'sort'  => 'Susunan',
        'search' => 'Carian'
    ];

    public static $countType = [
        'all' => 'Keseluruhan',
        'approve'  => 'Pengesahan',
        'verify' => 'Verifikasi'
    ];

    public static $sortingType = [
        'Tarikh' => 'Tarikh',
        'Tajuk' => 'Tajuk',
        'Deskripsi' => 'Deskripsi',
    ];

    public static $searchType = [
        'Tajuk' => 'Tajuk',
        'Deskripsi'    => 'Deskripsi',
        'Kategori' => 'Kategori',
    ];

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

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['leftbar_panel_menuloc', 'leftbar_panel_type', 'leftbar_panel_structure', 'leftbar_panel_roles', 'leftbar_panel_createdat'], 'string'],
            [['leftbar_panel_ordering', 'leftbar_panel_createdby'], 'integer'],
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'leftbar_panel_id' => Yii::t('app', 'Leftbar Panel ID'),
            'leftbar_panel_menuloc' => Yii::t('app', 'Lokasi Bar Kiri'),
            'leftbar_panel_type' => Yii::t('app', 'Modul'),
            'leftbar_panel_structure' => Yii::t('app', 'Leftbar Panel Structure'),
            'leftbar_panel_ordering' => Yii::t('app', 'Susunan'),
            'leftbar_panel_roles' => Yii::t('app', 'Peranan'),
            'leftbar_panel_createdat' => Yii::t('app', 'Leftbar Panel Createdat'),
            'leftbar_panel_createdby' => Yii::t('app', 'Leftbar Panel Createdby'),
        ];
    }

    public static function count($r=null,$ctype=null)
    {
        $rArr = explode("/",$r);
        $status = \common\components\WorkflowStatus::status($r);
        $question = new \backend\models\question\QuestionMeta;
        $questionBank = new \backend\models\question\QuestionBank;
        $section = new \backend\models\section\SectionMeta;
        $sectionBank = new \backend\models\section\SectionBank;
        $survey = new \backend\models\survey\SurveyMeta;
        $surveyBank = new \backend\models\survey\SurveyBank;
        
        switch ($rArr[1]) {
            case 'survey-meta':
                if ($ctype=="verify") {
                    $models = $survey::find()->where(["survey_status"=> $status['VERIFY']['CURR']])->count();
                } elseif ($ctype=="approve") {
                    $models = $survey::find()->where(["survey_status"=> $status['APPROVE']['CURR']])->count();
                } else {
                    $models = $survey::find()->count();
                }
            break;

            case 'question-meta':
                if ($ctype=="verify") {
                    $models = $question::find()->where(["question_status"=> $status['VERIFY']['CURR']])->count();
                } elseif ($ctype=="approve") {
                    $models = $question::find()->where(["question_status"=> $status['APPROVE']['CURR']])->count();
                } else {
                    $models = $question::find()->count();
                }
            break;

            case 'question-bank':
                    $models = $questionBank::find()->count();
            break;

            case 'section-meta':
                if ($ctype=="verify") {
                    $models = $section::find()->where(["section_status"=> $status['VERIFY']['CURR']])->count();
                } elseif ($ctype=="approve") {
                    $models = $section::find()->where(["section_status"=> $status['APPROVE']['CURR']])->count();
                } else {
                    $models = $section::find()->count();
                }
            break;

            case 'section-bank':
                    $models = $sectionBank::find()->count();
            break;

            case 'survey-bank':
                    $models = $surveyBank::find()->count();
            break;
        }
        
        return $models;
    }

    public function beforeSave($insert)
    {
        if (parent::beforeSave($insert)) {
            if($insert)
            {
                $this->leftbar_panel_createdby = Yii::$app->user->id;
                $this->leftbar_panel_createdat = date('Y-m-d H:i:s');
            }
            
            return true;
        } else {
            return false;
        }
    }
}