Example #1
0
 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;
     }
 }
Example #2
0
 /**
  * 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');
         }
     }
 }
Example #5
0
 /**
  * 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);
 }
Example #7
0
 /**
  * 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);
 }
Example #8
0
 public static function getModuleIdBykey($key)
 {
     $result = SystemModules::model()->findByAttributes(array('module_key' => ucfirst($key)))->module_id;
     return $result;
 }
Example #9
0
 /**
  * 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;
 }
Example #10
0
                        <?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 
Example #11
0
                                <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 
Example #12
0
 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;
 }
Example #13
0
    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;
 }
Example #15
0
 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();
         }
     }
 }