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)); }
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')); }
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');
/** * 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)); }
/** * 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)); }
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; }
/** * 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); }