| Current Path : /var/www/html/sprm/backend/models/leftbar/ |
| 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;
}
}
}