122 lines
3.9 KiB
PHP
122 lines
3.9 KiB
PHP
<?php
|
|
namespace backend\components;
|
|
|
|
use Yii;
|
|
use common\models\Order;
|
|
use yii\helpers\Html;
|
|
|
|
class AdminMenuStructure{
|
|
|
|
public $menuItems;
|
|
public $emptyUrl = '#';//maybe null
|
|
|
|
public function __construct(){
|
|
$this->menuItems = [];
|
|
}
|
|
|
|
protected function can($authItem){
|
|
$result = false;
|
|
if (\Yii::$app->user->can($authItem)) {
|
|
$result = true;
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
protected function addUserMainMenu(){
|
|
|
|
$userMainMenu = null;
|
|
$items = [];
|
|
if (!Yii::$app->user->isGuest) {
|
|
|
|
//$today = \Yii::$app->formatter->asDate( time() );
|
|
$today = \Yii::$app->formatter->asDate( strtotime('today UTC') );
|
|
$tomorrow = \Yii::$app->formatter->asDate( ( 60 *60 *24 + time()));
|
|
|
|
$todayDatetime = \Yii::$app->formatter->asDatetime( strtotime('today UTC') );
|
|
$tomorrowDatetime = \Yii::$app->formatter->asDatetime( strtotime('tomorrow UTC') );
|
|
|
|
|
|
/////////////////////////////
|
|
// Beállítások
|
|
/////////////////////////////
|
|
$items[] = ['label' => 'Felhasználók', 'url' =>['/user/index']];
|
|
$items[] = ['label' => 'Jogosultságok', 'url' =>['/user/role']];
|
|
$this->menuItems[] = ['label' => 'Beállítások', 'url' => $this->emptyUrl,
|
|
'items' => $items
|
|
];
|
|
|
|
/////////////////////////////
|
|
// Törszadatok
|
|
/////////////////////////////
|
|
$items = [];
|
|
$items[] = ['label' => 'Raktárak', 'url' =>['/warehouse/index']];
|
|
$items[] = ['label' => 'Kasszák', 'url' =>['/account/index']];
|
|
$items[] = ['label' => 'Kedvezmények', 'url' => ['/discount/index'] ];
|
|
$items[] = ['label' => 'Termék kategóriák', 'url' => ['/product-category/index'] ];
|
|
$items[] = ['label' => 'Bérlet típusok', 'url' => ['/ticket-type/index'] ];
|
|
// $items[] = ['label' => 'Pénznem', 'url' => ['/currency/index'] ];
|
|
$this->menuItems[] = ['label' => 'Törszadatok', 'url' =>$this->emptyUrl,
|
|
'items' => $items
|
|
];
|
|
|
|
/////////////////////////////
|
|
// BÉRLETEK
|
|
/////////////////////////////
|
|
$items = [];
|
|
$items[] = ['label' => 'Vendégek', 'url' => ['/customer/index'] , 'target_url' => ['/customer/index' ,'/customer/view','/ticket/index-customer'] ];
|
|
$items[] = ['label' => 'Bérletkártyák', 'url' => ['/card/index'] ];
|
|
$items[] = ['label' => 'Bérletek', 'url' => ['/ticket/index' , 'TicketSearch[start]' =>$today,'TicketSearch[end]' => $tomorrow ] ];
|
|
$this->menuItems[] = ['label' => 'Bérletek/Vendégek', 'url' => $this->emptyUrl,
|
|
'items' => $items
|
|
];
|
|
|
|
/////////////////////////////
|
|
// Termékek
|
|
/////////////////////////////
|
|
$items = [];
|
|
$items[] = ['label' => 'Termékek', 'url' => ['/product/index'] ];
|
|
$items[] = ['label' => 'Beszerzések', 'url' => ['/procurement/index'] ];
|
|
$this->menuItems[] = ['label' => 'Termékek', 'url' => $this->emptyUrl,
|
|
'items' => $items
|
|
];
|
|
/////////////////////////////
|
|
// Pénzügy
|
|
/////////////////////////////
|
|
$items = [];
|
|
$items[] = ['label' => 'Tranzakciók', 'url' => ['/transfer/index' , 'TransferSearch[start]' =>$today,'TransferSearch[end]' => $tomorrow ] ];
|
|
$items[] = ['label' => 'Kassza müveletek', 'url' => ['/account-state/index'] ];
|
|
$items[] = ['label' => 'Zárások', 'url' => ['/collection/index' , 'CollectionSearch[start]' =>$todayDatetime,'CollectionSearch[end]' => $tomorrowDatetime ] ];
|
|
$this->menuItems[] = ['label' => 'Pénzügy', 'url' => $this->emptyUrl,
|
|
'items' => $items
|
|
];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
protected function addLoginMainMenu(){
|
|
if (Yii::$app->user->isGuest) {
|
|
$mainMenuItem= ['label' => Yii::t('common/site','Login'), 'url' => ['/site/login']];
|
|
} else {
|
|
$mainMenuItem= [
|
|
'label' => Yii::t('common/site','Logout') . '(' . Yii::$app->user->identity->username . ')',
|
|
'url' => ['/site/logout'],
|
|
'linkOptions' => ['data-method' => 'post']
|
|
];
|
|
}
|
|
$this->menuItems[] = $mainMenuItem;
|
|
}
|
|
|
|
|
|
public function run(){
|
|
$this->addUserMainMenu();
|
|
// $this->addLoginMainMenu();
|
|
return $this->menuItems;
|
|
}
|
|
|
|
|
|
} |