* Modify relation type.

This commit is contained in:
liumengyi
2023-03-10 05:42:09 +00:00
parent d9e7f415e5
commit 8cf536ed0c
4 changed files with 10 additions and 10 deletions
+2 -2
View File
@@ -26,7 +26,7 @@ $config->group->priv->search['fields']['view'] = $lang->group->view;
$config->group->priv->search['fields']['module'] = $lang->group->module;
$config->group->priv->search['fields']['package'] = $lang->privpackage->belong;
$config->group->priv->search['fields']['recommendPrivs'] = $lang->group->recommendPrivs;
$config->group->priv->search['fields']['dependentPrivs'] = $lang->group->dependentPrivs;
$config->group->priv->search['fields']['dependPrivs'] = $lang->group->dependentPrivs;
$config->group->priv->search['fields']['desc'] = $lang->group->privDesc;
$config->group->priv->search['params']['name'] = array('operator' => 'include', 'control' => 'input', 'values' => '');
@@ -34,5 +34,5 @@ $config->group->priv->search['params']['view'] = array('operator' => '
$config->group->priv->search['params']['module'] = array('operator' => '=', 'control' => 'select', 'values' => '');
$config->group->priv->search['params']['package'] = array('operator' => '=', 'control' => 'select', 'values' => '');
$config->group->priv->search['params']['recommendPrivs'] = array('operator' => 'include', 'control' => 'select', 'values' => '');
$config->group->priv->search['params']['dependentPrivs'] = array('operator' => 'include', 'control' => 'select', 'values' => '');
$config->group->priv->search['params']['dependPrivs'] = array('operator' => 'include', 'control' => 'select', 'values' => '');
$config->group->priv->search['params']['desc'] = array('operator' => 'include', 'control' => 'input', 'values' => '');
+1 -1
View File
@@ -435,7 +435,7 @@ class group extends control
$privRelations = $this->group->getPrivRelationsByIdList(array_keys($privList));
if(!isset($privRelations['recommend'])) $privRelations['recommend'] = array();
if(!isset($privRelations['dependent'])) $privRelations['dependent'] = array();
if(!isset($privRelations['depend'])) $privRelations['depend'] = array();
$this->view->pager = $pager;
$this->view->privRelations = $privRelations;
+6 -6
View File
@@ -1174,16 +1174,16 @@ class groupModel extends model
$privQuery = preg_replace("/`recommendPrivs`([^']+)'([%]?{$priv}[%]?)'/Ui", (!empty($privs) ? "`id`$1('{$privs}')" : '0=1'), $privQuery);
}
}
if(strpos($privQuery, '`dependentPrivs`') !== false)
if(strpos($privQuery, '`dependPrivs`') !== false)
{
preg_match_all("/`dependentPrivs`[^']+'([^']+)'/Ui", $privQuery, $out);
$privQuery = str_replace(array('`dependentPrivs` =', '`dependentPrivs` LIKE', '`dependentPrivs` =', '`dependentPrivs` !=', '`dependentPrivs` NOT LIKE'), array('`dependentPrivs` IN', '`dependentPrivs` IN', '`dependentPrivs` IN', '`dependentPrivs` NOT IN', '`dependentPrivs` NOT IN'), $privQuery);
preg_match_all("/`dependPrivs`[^']+'([^']+)'/Ui", $privQuery, $out);
$privQuery = str_replace(array('`dependPrivs` =', '`dependPrivs` LIKE', '`dependPrivs` =', '`dependPrivs` !=', '`dependPrivs` NOT LIKE'), array('`dependPrivs` IN', '`dependPrivs` IN', '`dependPrivs` IN', '`dependPrivs` NOT IN', '`dependPrivs` NOT IN'), $privQuery);
foreach($out[1] as $priv)
{
$priv = str_replace('%', '', $priv);
$privs = $this->dao->select('priv,priv')->from(TABLE_PRIVRELATION)->where('relationPriv')->eq($priv)->andWhere('type')->eq('dependent')->fetchPairs();
$privs = $this->dao->select('priv,priv')->from(TABLE_PRIVRELATION)->where('relationPriv')->eq($priv)->andWhere('type')->eq('depend')->fetchPairs();
$privs = implode(',', $privs);
$privQuery = preg_replace("/`dependentPrivs`([^']+)'([%]?{$priv}[%]?)'/Ui", (!empty($privs) ? "`id`$1('{$privs}')" : '0=1'), $privQuery);
$privQuery = preg_replace("/`dependPrivs`([^']+)'([%]?{$priv}[%]?)'/Ui", (!empty($privs) ? "`id`$1('{$privs}')" : '0=1'), $privQuery);
}
}
@@ -1463,7 +1463,7 @@ class groupModel extends model
$this->config->group->priv->search['params']['module']['values'] = array('' => '') + $modules;
$this->config->group->priv->search['params']['package']['values'] = array('' => '') + $packages;
$this->config->group->priv->search['params']['recommendPrivs']['values'] = array('' => '') + $privs;
$this->config->group->priv->search['params']['dependentPrivs']['values'] = array('' => '') + $privs;
$this->config->group->priv->search['params']['dependPrivs']['values'] = array('' => '') + $privs;
$this->loadModel('search')->setSearchParams($this->config->group->priv->search);
}
@@ -45,7 +45,7 @@ $lang->privp->p2 = '推荐权限';
<td title='<?php echo isset($moduleLang[$priv->module]) ? $moduleLang[$priv->module] : $priv->module;?>'><?php echo isset($moduleLang[$priv->module]) ? $moduleLang[$priv->module] : $priv->module;?></td>
<td title='<?php echo zget($packages, $priv->package, '');?>'><?php echo zget($packages, $priv->package, '');?></td>
<td title='<?php echo zget($privRelations['recommend'], $priv->id, '');?>'><?php echo zget($privRelations['recommend'], $priv->id, '');?></td>
<td title='<?php echo zget($privRelations['dependent'], $priv->id, '');?>'><?php echo zget($privRelations['dependent'], $priv->id, '');?></td>
<td title='<?php echo zget($privRelations['depend'], $priv->id, '');?>'><?php echo zget($privRelations['depend'], $priv->id, '');?></td>
<td title='<?php echo $priv->desc;?>'><?php echo $priv->desc;?></td>
<td class='c-actions'><?php if(common::hasPriv('group', 'editPriv')) common::printIcon('group', 'editPriv', "privID=$priv->id", '', 'list', 'edit', '', 'iframe', true);?></td>
</tr>