public function actionDelete($id)
 {
     $profile = Profile::model()->findByPk($id);
     $profile->delete();
     $user = User::model()->findByPk($id);
     $user->delete();
     $ccuc = CcucUserCompany::model()->deleteAll('ccuc_user_id =:id', array(':id' => $id));
 }
Esempio n. 2
0
 public function searchClient($criteria = null)
 {
     if (is_null($criteria)) {
         $criteria = new CDbCriteria();
     }
     $criteria->distinct = true;
     $ccuc = CcucUserCompany::model()->getPersonCompnies(Yii::app()->getModule('user')->user()->profile->person_id, CcucUserCompany::CCUC_STATUS_PERSON);
     $cl = [];
     foreach ($ccuc as $c) {
         if ($c->ccuc_ccmp_id == Yii::app()->sysCompany->getActiveCompany()) {
             continue;
         }
         $cl[] = $c->ccuc_ccmp_id;
     }
     if (!empty($cl)) {
         $criteria->join = "  \n                INNER JOIN pf_order o \n                    ON o.id = t.order_id \n            ";
         $criteria->addCondition(" \n                    (\n                    o.client_ccmp_id IN (" . implode(',', $cl) . ") \n                    OR t.manufakturer_ccmp_id IN (" . implode(',', $cl) . ")\n                    OR t.manufakturer_ccmp_id IS NULL    \n                    )\n                    ");
     }
     $criteria = $this->searchCriteria($criteria);
     return new CActiveDataProvider(get_class($this), ['criteria' => $criteria]);
 }
 public function actionUpdateManagers($ccmp_id)
 {
     //company
     $model = $this->loadModel($ccmp_id);
     $model->scenario = $this->scenario;
     //update record
     if (isset($_POST['save_company_manager'])) {
         $mCcuc = new CcucUserCompany();
         //get DB checked
         $aExistTypes = array();
         foreach ($model->ccucUserCompany as $modelCcuc) {
             $mCcuc = $modelCcuc;
             $aExistTypes[] = $mCcuc->ccuc_user_id;
         }
         //get in form checked
         $aPostType = array();
         if (isset($_POST['ccuc_user_id'])) {
             foreach ($_POST['ccuc_user_id'] as $nPtypId) {
                 $aPostType[] = $nPtypId;
             }
         }
         $aDelType = array_diff($aExistTypes, $aPostType);
         $aNewType = array_diff($aPostType, $aExistTypes);
         foreach ($aNewType as $nType) {
             $postCcuc = new CcucUserCompany();
             $postCcuc->ccuc_ccmp_id = $model->ccmp_id;
             $postCcuc->ccuc_user_id = $nType;
             if (!$postCcuc->save()) {
                 print_r($postCcuc->errors);
                 exit;
             }
         }
         //criteria for deleting
         $criteria = new CDbCriteria();
         $criteria->condition = 'ccuc_ccmp_id=:ccuc_ccmp_id AND ccuc_user_id=:ccuc_user_id';
         foreach ($aDelType as $nType) {
             $criteria->params = array(':ccuc_ccmp_id' => $model->ccmp_id, ':ccuc_user_id' => $nType);
             $Ppxt = CcucUserCompany::model()->find($criteria);
             $Ppxt->delete();
         }
         //reload record, jo attēlos veco tipus
         $this->redirect(array('updatemanagers', 'ccmp_id' => $ccmp_id, 'active_tab' => 'company_managers'));
     }
     $this->render('update_extended', array('model' => $model, 'active_tab' => 'company_managers'));
 }
Esempio n. 4
0
File: view.php Progetto: uldisn/ace
    foreach ($all_roles as $role_record) {
        $all_roles_dict[$role_record['name']] = $role_record['description'];
    }
    $UserAdminRoles = Yii::app()->getModule('user')->UserAdminRoles;
    $list = [];
    foreach ($UserAdminRoles as $role_name) {
        //add only defined roles
        if (isset($all_roles_dict[$role_name])) {
            $list[$role_name] = $all_roles_dict[$role_name];
        }
    }
    $body = CHtml::checkBoxList('user_role_name', $aChecked, $list, array('labelOptions' => array('style' => 'display: inline'), 'template' => '{input}<span class="lbl"></span> {label}', 'class' => 'ace'));
}
$this->widget('AceBox', array('header_text' => UserModule::t('Roles'), 'info_allert' => $info_allert, 'body' => $body));
$companies_list = Yii::app()->sysCompany->getClientCompanies();
$aUserCompanies = CcucUserCompany::model()->getUserCompnies($model->id, CcucUserCompany::CCUC_STATUS_SYS);
$aChecked = array();
foreach ($aUserCompanies as $UC) {
    $aChecked[] = $UC->ccuc_ccmp_id;
}
if (count($aChecked) == 1) {
    //kaut kads gljuks, nedrikst padot masivu ar vienu elementu
    $aChecked = $aChecked[0];
}
$list = array();
if (UserModule::isAdmin()) {
    //for admin get all sys companies
    $sql = "\n                    SELECT \n                        ccmp_id,\n                        ccmp_name \n                      FROM\n                        ccxg_company_x_group \n                        INNER JOIN ccmp_company \n                          ON ccxg_ccmp_id = ccmp_id \n                      WHERE ccxg_ccgr_id = " . Yii::app()->params['ccgr_group_sys_company'] . " \n                      ORDER BY ccmp_name";
    $ccmp_list = Yii::app()->db->createCommand($sql)->queryAll();
    foreach ($ccmp_list as $ccmp) {
        $list[$ccmp['ccmp_id']] = $ccmp['ccmp_name'];
<div class="table-header">
    <?php 
    echo Yii::t('D2personModule.model', 'Ccuc User Company');
    ?>
    <?php 
    if (Yii::app()->user->checkAccess("D2company.CcucUserCompany.Create")) {
        $this->widget('bootstrap.widgets.TbButton', array('buttonType' => 'ajaxButton', 'type' => 'primary', 'size' => 'mini', 'icon' => 'icon-plus', 'url' => array('//d2company/ccucUserCompany/ajaxCreate', 'field' => 'ccuc_person_id', 'value' => $modelMain->primaryKey, 'ajax' => 'ccuc-user-company-grid'), 'ajaxOptions' => array('success' => 'function (html) {$.fn.yiiGridView.update(\'ccuc-user-company-grid\');}'), 'htmlOptions' => array('title' => Yii::t('D2personModule.crud_static', 'Add new record'), 'data-toggle' => 'tooltip')));
    }
    ?>
</div>

<?php 
    $criteria = new CDbCriteria();
    $criteria->compare('ccuc_person_id', $modelMain->primaryKey);
    $criteria->compare('ccuc_status', CcucUserCompany::CCUC_STATUS_PERSON);
    $m = CcucUserCompany::model()->find($criteria);
    if (empty($m)) {
        $model = new CcucUserCompany();
        $model->ccuc_person_id = $modelMain->primaryKey;
        $model->ccuc_status = CcucUserCompany::CCUC_STATUS_PERSON;
        $model->save();
        unset($model);
    }
    $model = new CcucUserCompany();
    $model->ccuc_person_id = $modelMain->primaryKey;
    $model->ccuc_status = CcucUserCompany::CCUC_STATUS_PERSON;
    // render grid view
    $can_edit_ccuc = Yii::app()->user->checkAccess("D2company.CcucUserCompany.Update");
    $bft = !$can_edit_ccuc ? 'false' : 'true';
    if (Yii::app()->getModule('d2person')->ccucCompanyList == D2personModule::ALL_COMPANIES) {
        $comapniesSource = CHtml::listData(CcmpCompany::model()->findAll(array('limit' => 1000, 'order' => 'ccmp_name')), 'ccmp_id', 'itemLabel');
Esempio n. 6
0
 /**
  * Displays a particular model.
  */
 public function actionView()
 {
     $this->layout = '';
     $model = $this->loadModel();
     //update record
     if (Yii::app()->user->checkAccess("UserAdmin") && (isset($_POST['user_role_name']) || isset($_POST['user_sys_ccmp_id']) || isset($_POST['ip_tables']))) {
         //cheked roles
         $aChecked = Authassignment::model()->getUserRoles($model->id);
         $admin_role = Yii::app()->getModule('rights')->superuserName;
         //for administrator can not save changes of roles
         if (!in_array($admin_role, $aChecked)) {
             //get in form checked
             $aPostRole = array();
             if (isset($_POST['user_role_name'])) {
                 foreach ($_POST['user_role_name'] as $nRoleId) {
                     $aPostRole[] = $nRoleId;
                 }
             }
             $aDelRole = array_diff($aChecked, $aPostRole);
             $aNewRole = array_diff($aPostRole, $aChecked);
             $UserAdminRoles = Yii::app()->getModule('user')->UserAdminRoles;
             foreach ($aNewRole as $sRoleName) {
                 // can not add no User Admin roles defined in main config
                 if (!in_array($sRoleName, $UserAdminRoles)) {
                     continue;
                 }
                 $aa_model = new Authassignment();
                 $aa_model->itemname = $sRoleName;
                 $aa_model->userid = $model->id;
                 if (!$aa_model->save()) {
                     print_r($aa_model->errors);
                     exit;
                 }
             }
             if (!empty($aDelRole)) {
                 $criteria = new CDbCriteria();
                 $criteria->compare('userid', $model->id)->compare('itemname', $aDelRole);
                 Authassignment::model()->deleteAll($criteria);
             }
         }
         //checked companies
         $aUserCompanies = CcucUserCompany::model()->getUserCompnies($model->id, CcucUserCompany::CCUC_STATUS_SYS);
         $aChecked = array();
         foreach ($aUserCompanies as $UC) {
             $aChecked[] = $UC->ccuc_ccmp_id;
         }
         //get in form checked
         $aPostSysCcmp = array();
         if (isset($_POST['user_sys_ccmp_id'])) {
             foreach ($_POST['user_sys_ccmp_id'] as $ccmp_id) {
                 $aPostSysCcmp[] = $ccmp_id;
             }
         }
         $aDelSysCcmpid = array_diff($aChecked, $aPostSysCcmp);
         $aNewSysCcmpid = array_diff($aPostSysCcmp, $aChecked);
         $list = array();
         if (UserModule::isAdmin()) {
             //for admin get all sys companies
             $criteria = new CDbCriteria();
             $criteria->compare('t.ccxg_ccgr_id', 1);
             //1 - syscompany
             $model_ccxg = CcxgCompanyXGroup::model()->findAll($criteria);
             foreach ($model_ccxg as $mCcxg) {
                 $list[$mCcxg->ccxg_ccmp_id] = 1;
             }
         } else {
             foreach (Yii::app()->sysCompany->getClientCompanies() as $mCcmp) {
                 $list[$mCcmp['ccmp_id']] = 1;
             }
         }
         foreach ($aNewSysCcmpid as $cmmp_id) {
             // can not add no User Admin sys ccmp
             if (!isset($list[$cmmp_id])) {
                 continue;
             }
             //create ccuc (company <==> person)
             $mCcuc = new CcucUserCompany();
             $mCcuc->ccuc_ccmp_id = $cmmp_id;
             $mCcuc->ccuc_status = CcucUserCompany::CCUC_STATUS_SYS;
             $mCcuc->ccuc_person_id = $model->profile->person_id;
             //$mCcuc->save();
             if (!$mCcuc->save()) {
                 print_r($mCcuc->errors);
                 exit;
             }
         }
         if (!empty($aDelSysCcmpid)) {
             $criteria = new CDbCriteria();
             $criteria->compare('ccuc_status', CcucUserCompany::CCUC_STATUS_SYS)->compare('ccuc_person_id', $model->profile->person_id)->compare('ccuc_ccmp_id', $aDelSysCcmpid);
             CcucUserCompany::model()->deleteAll($criteria);
         }
         $security_policy = Yii::app()->getModule('user')->SecurityPolicy;
         if ($security_policy['useIpTables']) {
             UxipUserXIpTable::model()->deleteAll("`uxip_user_id` = :uxip_user_id ", [':uxip_user_id' => $model->id]);
             if (!empty($_POST['ip_tables'])) {
                 foreach ($_POST['ip_tables'] as $ip) {
                     $Iptb = new UxipUserXIpTable();
                     $Iptb->uxip_user_id = $model->id;
                     $Iptb->uxip_iptb_id = $ip;
                     if (!$Iptb->save()) {
                         print_r($Iptb->errors);
                         exit;
                     }
                 }
             }
         }
     }
     $view = 'view';
     if (Yii::app()->getModule('user')->view) {
         $alt_view = Yii::app()->getModule('user')->view . '.admin.' . $view;
         if (is_readable(Yii::getPathOfAlias($alt_view) . '.php')) {
             $view = $alt_view;
             $this->layout = Yii::app()->getModule('user')->layout;
         }
     }
     $model = $this->loadModel();
     $this->render($view, array('model' => $model));
 }
Esempio n. 7
0
 /**
  * Displays a particular model.
  */
 public function actionView()
 {
     $this->layout = '';
     $model = $this->loadModel();
     //update record
     if (isset($_POST['user_role_name']) || isset($_POST['user_sys_ccmp_id'])) {
         //cheked roles
         $aChecked = Authassignment::model()->getUserRoles($model->id);
         //get in form checked
         $aPostRole = array();
         if (isset($_POST['user_role_name'])) {
             foreach ($_POST['user_role_name'] as $nRoleId) {
                 $aPostRole[] = $nRoleId;
             }
         }
         $aDelRole = array_diff($aChecked, $aPostRole);
         $aNewRole = array_diff($aPostRole, $aChecked);
         $UserAdminRoles = Yii::app()->getModule('user')->UserAdminRoles;
         foreach ($aNewRole as $sRoleName) {
             // can not add no User Admin roles defined in main config
             if (!in_array($sRoleName, $UserAdminRoles)) {
                 continue;
             }
             $aa_model = new Authassignment();
             $aa_model->itemname = $sRoleName;
             $aa_model->userid = $model->id;
             if (!$aa_model->save()) {
                 print_r($aa_model->errors);
                 exit;
             }
         }
         if (!empty($aDelRole)) {
             Authassignment::model()->deleteAll("`userid` = :userid AND itemname in('" . implode("','", $aDelRole) . "')", array(':userid' => $model->id));
         }
         //checked companies
         $aUserCompanies = CcucUserCompany::model()->getUserCompnies($model->id, CcucUserCompany::CCUC_STATUS_SYS);
         $aChecked = array();
         foreach ($aUserCompanies as $UC) {
             $aChecked[] = $UC->ccuc_ccmp_id;
         }
         //get in form checked
         $aPostSysCcmp = array();
         if (isset($_POST['user_sys_ccmp_id'])) {
             foreach ($_POST['user_sys_ccmp_id'] as $ccmp_id) {
                 $aPostSysCcmp[] = $ccmp_id;
             }
         }
         $aDelSysCcmpid = array_diff($aChecked, $aPostSysCcmp);
         $aNewSysCcmpid = array_diff($aPostSysCcmp, $aChecked);
         $list = array();
         if (UserModule::isAdmin()) {
             //for admin get all sys companies
             $criteria = new CDbCriteria();
             $criteria->compare('t.ccxg_ccgr_id', 1);
             //1 - syscompany
             $model_ccxg = CcxgCompanyXGroup::model()->findAll($criteria);
             foreach ($model_ccxg as $mCcxg) {
                 $list[$mCcxg->ccxg_ccmp_id] = 1;
             }
         } else {
             foreach (Yii::app()->sysCompany->getClientCompanies() as $mCcmp) {
                 $list[$mCcmp->ccucCcmp->ccmp_id] = 1;
             }
         }
         foreach ($aNewSysCcmpid as $cmmp_id) {
             // can not add no User Admin sys ccmp
             if (!isset($list[$cmmp_id])) {
                 continue;
             }
             //create ccuc (company <==> person)
             $mCcuc = new CcucUserCompany();
             $mCcuc->ccuc_ccmp_id = $cmmp_id;
             $mCcuc->ccuc_status = CcucUserCompany::CCUC_STATUS_SYS;
             $mCcuc->ccuc_person_id = $model->profile->person_id;
             $mCcuc->save();
             if (!$mCcuc->save()) {
                 print_r($mCcuc->errors);
                 exit;
             }
         }
         if (!empty($aDelSysCcmpid)) {
             CcucUserCompany::model()->deleteAll("`ccuc_status` = :ccuc_status " . " AND `ccuc_person_id` = :ccuc_person_id " . " AND ccuc_ccmp_id in('" . implode("','", $aDelSysCcmpid) . "')", array(':ccuc_person_id' => $model->profile->person_id, ':ccuc_status' => CcucUserCompany::CCUC_STATUS_SYS));
         }
     }
     $view = 'view';
     if (Yii::app()->getModule('user')->view) {
         $alt_view = Yii::app()->getModule('user')->view . '.admin.' . $view;
         if (is_readable(Yii::getPathOfAlias($alt_view) . '.php')) {
             $view = $alt_view;
             $this->layout = Yii::app()->getModule('user')->layout;
         }
     }
     $model = $this->loadModel();
     $this->render($view, array('model' => $model));
 }
Esempio n. 8
0
 public function getUserPersonCompanies()
 {
     if ($this->_userPersonCompanies) {
         return $this->_userPersonCompanies;
     }
     $personId = Yii::app()->getModule('user')->user()->profile->person_id;
     $this->_userPersonCompanies = CcucUserCompany::model()->getPersonCompnies($personId, CcucUserCompany::CCUC_STATUS_PERSON);
     return $this->_userPersonCompanies;
 }
 public function loadModel($id)
 {
     $m = CcucUserCompany::model();
     // apply scope, if available
     $scopes = $m->scopes();
     if (isset($scopes[$this->scope])) {
         $m->{$this->scope}();
     }
     $model = $m->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, Yii::t('D2companyModule.crud_static', 'The requested page does not exist.'));
     }
     return $model;
 }
Esempio n. 10
0
 /**
  * get person companies by person and status
  * @param type $pprs_id - person
  * @param type $status - statuss
  * @return type
  */
 public function getPersonCompnies($pprs_id, $status)
 {
     $criteria = new CDbCriteria();
     $criteria->condition = "t.ccuc_person_id = " . $pprs_id . " and t.ccuc_status = '" . $status . "'";
     return CcucUserCompany::model()->findAll($criteria);
 }