public function initAdmin() { $this->setImport(array('admin.models.*', 'admin.components.*', 'admin.widgets.*')); $module = SystemModules::model()->find('name = :name', array(':name' => $this->id)); if ($module) { $this->_module_id = $module->id; } }
/** * Set enabled system modules to enable url access. */ protected function setSystemModules() { // Enable installed modules $modules = SystemModules::getEnabled(); if ($modules) { foreach ($modules as $module) { $this->setModules(array($module->name)); } } }
/** * Initialize class. * Search all events in modules and cache them. * @static */ public static function init() { self::$initialized = true; SystemModules::loadEventsFile(); foreach (SystemModules::getInstalled() as $module) { $className = ucfirst($module->name) . 'ModuleEvents'; if (class_exists($className, false)) { self::loadEventsClass($className); } } }
/** * Delete module by Pk */ public function actionDelete() { if (Yii::app()->request->isPostRequest) { $model = SystemModules::model()->findByPk($_GET['id']); if ($model) { $model->delete(); } if (!Yii::app()->request->isAjaxRequest) { $this->redirect('index'); } } }
/** * Find and load module menu files. */ protected function findMenuFiles() { $result = array(); $installedModules = SystemModules::model()->findAll(array('select' => 'name')); foreach ($installedModules as $module) { $filePath = Yii::getPathOfAlias('application.modules.' . $module->name . '.config') . DIRECTORY_SEPARATOR . 'menu.php'; if (file_exists($filePath)) { $result = CMap::mergeArray($result, require $filePath); } } return $result; }
public function postModule() { $json_request = array('status' => TRUE, 'responseText' => 'Сохранено'); if ($module = Module::where('name', Input::get('name'))->first()) { $module->update(array('on' => Input::get('value'))); $module->touch(); } else { Module::create(array('name' => Input::get('name'), 'on' => Input::get('value'))); } if (Input::get('value') == 1) { $json_request['responseText'] = "Модуль «" . SystemModules::getModules(Input::get('name'), 'title') . "» включен"; } else { $json_request['responseText'] = "Модуль «" . SystemModules::getModules(Input::get('name'), 'title') . "» выключен"; } #$json_request['responseText'] = print_r(SystemModules::getModules(Input::get('name')), 1); return Response::json($json_request, 200); }
/** * Scan each module dir and include routes.php * Add module urls at the beginning of $config['urlManager']['rules'] * @access protected */ protected function _loadModuleUrls() { $cacheKey = 'url_manager_urls'; $rules = Yii::app()->cache->get($cacheKey); if (YII_DEBUG || !$rules) { $rules = array(); $modules = SystemModules::getEnabled(); $modulesPath = Yii::getPathOfAlias('application.modules'); foreach ($modules as $module) { $configFilePath = implode(DIRECTORY_SEPARATOR, array($modulesPath, $module->name, 'config', 'routes.php')); if (file_exists($configFilePath)) { $rules = array_merge(require $configFilePath, $rules); } } Yii::app()->cache->set($cacheKey, $rules, 3600); } $this->rules = array_merge($rules, $this->rules); }
public static function getModuleIdBykey($key) { $result = SystemModules::model()->findByAttributes(array('module_key' => ucfirst($key)))->module_id; return $result; }
/** * Install module * @param string $name module name * @return boolean */ public static function install($name) { $model = new SystemModules(); $model->name = $name; $model->enabled = true; try { Yii::trace('Module installed'); $model->save(); self::loadModuleClass($name)->afterInstall(); } catch (Exception $e) { Yii::trace('Error installing module'); return false; } self::deleteCaches(); self::buildEventsFile(); return true; }
<?php if (in_array(SystemModules::getModuleIdBykey('userRoles'), $modulist)) { ?> <li id="userRoles"> <a href="<?php echo Yii::app()->request->baseUrl; ?> /userRoles"> <i class="fa fa-anchor"></i> User Role Management </a> </li> <?php } ?> <?php if (in_array(SystemModules::getModuleIdBykey('configuration'), $modulist)) { ?> <li id="configuration"> <a href="<?php echo Yii::app()->request->baseUrl; ?> /configuration"> <i class="fa fa-gears"></i> System Settings </a> </li> <?php } ?> </ul> </li> <?php
<span id="sparklineA"></span> </div> <div class="circle-tile-description"> Users </div> <!--<span class="circle-tile-footer">More Info <i class="fa fa-chevron-circle-right"></i></span>--> </div> </div> </div> </a> <?php } ?> <?php if (in_array(SystemModules::getModuleIdBykey('users'), $modulist)) { ?> <a href="<?php echo Yii::app()->request->baseUrl; ?> /users/clients"> <div class="col-sm-3 link_to_Click"> <div class="circle-tile"> <div class="circle-tile-heading"> <i class="fa fa-users fa-fw fa-3x"></i> </div> <div class="circle-tile-content"> <div class="circle-tile-number"> <?php
public function getAllmodule($userType) { $data = ModulePermission::model()->findAllByAttributes(array('user_role_type' => $userType)); $list = array(); foreach ($data as $row) { $list[] = SystemModules::model()->findByPk($row['module_id'])->module_name; } $str = implode(" , ", $list); return $str; }
echo CHtml::textField('ModulePermission[user_role_type]', UserRoles::getRoleName($_GET['id']), array("readonly" => "readonly", 'class' => 'form-control')); ?> </div> </div> <?php } ?> <div class="form-group"> <?php ?> <label class="required col-sm-3 control-label" for="classified_id" style="valign:top;padding-right: 8px;" > Module List <span class="required">*</span></label> <div class="col-sm-9"> <div class="row"> <?php $modulelist = CHtml::listData(SystemModules::model()->findAll(), 'module_id', 'module_name'); if (isset($_GET['id']) && !empty($_GET['id'])) { $id = $_GET['id']; $data = ModulePermission::model()->findAllByAttributes(array('user_role_type' => $id)); $selected_keys = array_keys(CHtml::listData($data, 'module_id', 'module_permission_id')); echo CHtml::checkBoxList('ModulePermission[module_id]', $selected_keys, $modulelist, array('template' => '<div class="col-sm-6 removeBR checkbox_list">{input} {label}</div>')); } else { echo CHtml::checkBoxList('ModulePermission[module_id]', '', $modulelist, array('template' => '<div class="col-sm-6 removeBR checkbox_list">{input} {label}</div>')); } ?> </div> <div style="" id="classified_error" class="text-red"></div> </div> </div> </div>
/** * Returns the data model based on the primary key given in the GET variable. * If the data model is not found, an HTTP exception will be raised. * @param integer $id the ID of the model to be loaded * @return SystemModules the loaded model * @throws CHttpException */ public function loadModel($id) { $model = SystemModules::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
public function init() { $model = new Configuration(); $setmodel = $model->findAll(); Yii::app()->db->setactive(FALSE); foreach ($setmodel as $set) { if ($set->name == 'company_logo') { $this->company_logo = $set->value; } if ($set->name == 'site_name') { $this->site_name = $set->value; } if ($set->name == 'Host') { $this->Host = $set->value; } if ($set->name == 'Username') { $this->Username = $set->value; } if ($set->name == 'user_password') { $this->user_password = $set->value; } if ($set->name == 'from_smtp') { $this->from_smtp = $set->value; } if ($set->name == 'Site_email') { $this->site_email = $set->value; } if ($set->name == 'site_contact_no') { $this->site_contact_no = $set->value; } } if (!in_array(Yii::app()->controller->id, array('auth', 'app'))) { if (!isset(Yii::app()->session['user_data'])) { $this->redirect(Yii::app()->request->baseUrl . '/auth'); } else { if (strtotime(date('Y-m-d H:i:s')) > Yii::app()->session['session_time'] && isset(Yii::app()->session['user_data'])) { // $loginmodel = new LoginForm; // $loginmodel->UpdateLastLogoutTime(Yii::app()->session['user_data']['user_id']); // unset(Yii::app()->session['user_data']); // Yii::app()->user->logout(); } $user = Users::model()->findByAttributes(array('user_id' => Yii::app()->session['user_data']['user_id'])); Yii::app()->session['user_data'] = $user; $this->user_data = Yii::app()->session['user_data']; $role_name = UserRoles::model()->getRoleName($user->user_role_type); Yii::app()->user->name = $role_name; $user_role_type = Yii::app()->session['user_data']['user_role_type']; if ($user_role_type > 0) { $modulist = ModulePermission::getAllmoduleList($user_role_type); $module_id = SystemModules::getModuleIdBykey(Yii::app()->controller->id); if (!in_array($module_id, $modulist)) { $this->redirect(Yii::app()->request->baseUrl . '/auth'); } } } } else { if (Yii::app()->controller->id == "app") { $string = ltrim(strstr(Yii::app()->request->pathInfo, '/'), "/"); if (!in_array(ucfirst($string), array('AddOrder', 'AddUser', 'EmailComments', 'MailToUsers', 'EmailAssignee', 'EmailChangeTicketStatus'))) { echo json_encode(array("error" => true, 'error_code' => "401", "Message" => "Invalid Action")); exit; } } if (strtotime(date('Y-m-d H:i:s')) > Yii::app()->session['session_time'] && isset(Yii::app()->session['user_data'])) { // $loginmodel = new LoginForm; // $loginmodel->UpdateLastLogoutTime(Yii::app()->session['user_data']['user_id']); // unset(Yii::app()->session['user_data']); // Yii::app()->user->logout(); } } }