mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-06 18:21:39 +09:00
issue 63. make it able to use checking is_logged status in menu grant
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.3.1@10955 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
339c6e6d29
commit
71aeed5009
4 changed files with 46 additions and 5 deletions
|
|
@ -592,4 +592,9 @@ Menu không phải là người quản lý, nhiệm vụ của nó chỉ là li
|
|||
<value xml:lang="en"><![CDATA[Select Module ID]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[選擇模組 ID]]></value>
|
||||
</item>
|
||||
<item name="exposure_limits">
|
||||
<value xml:lang="ko"><![CDATA[노출 제한]]></value>
|
||||
<value xml:lang="en"><![CDATA[Exposure limits]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[Exposure limits]]></value>
|
||||
</item>
|
||||
</lang>
|
||||
|
|
|
|||
|
|
@ -138,8 +138,11 @@
|
|||
unset($source_args->act);
|
||||
if($source_args->menu_open_window!="Y") $source_args->menu_open_window = "N";
|
||||
if($source_args->menu_expand !="Y") $source_args->menu_expand = "N";
|
||||
|
||||
if($source_args->menu_grant_default == -1) $source_args->group_srls = -1;
|
||||
if(!is_array($source_args->group_srls)) $source_args->group_srls = str_replace('|@|',',',$source_args->group_srls);
|
||||
else $source_args->group_srls = implode(',', $source_args->group_srls);
|
||||
|
||||
$source_args->parent_srl = (int)$source_args->parent_srl;
|
||||
|
||||
if($source_args->cType == 'CREATE') $source_args->menu_url = $source_args->create_menu_url;
|
||||
|
|
@ -713,7 +716,7 @@
|
|||
'$group_srls = array_keys($logged_info->group_list); '.
|
||||
'} else { '.
|
||||
'$is_admin = false; '.
|
||||
'$group_srsl = array(); '.
|
||||
'$group_srls = array(); '.
|
||||
'}';
|
||||
// Create the xml cache file (a separate session is needed for xml cache)
|
||||
$xml_buff = sprintf(
|
||||
|
|
@ -812,7 +815,7 @@
|
|||
$link = '<?php print $_names[$lang_type]; ?>';
|
||||
}
|
||||
// If the value of node->group_srls exists
|
||||
if($group_srls) $group_check_code = sprintf('($is_admin==true||(is_array($group_srls)&&count(array_intersect($group_srls, array(%s)))))',$group_srls);
|
||||
if($group_srls)$group_check_code = sprintf('($is_admin==true||(is_array($group_srls)&&count(array_intersect($group_srls, array(%s))))||($is_logged&&%s))',$group_srls,$group_srls === -1?1:-1);
|
||||
else $group_check_code = "true";
|
||||
$attribute = sprintf(
|
||||
'node_srl="%s" parent_srl="%s" text="<?php if(%s) { %s }?>" url="<?php print(%s?"%s":"")?>" href="<?php print(%s?"%s":"")?>" open_window="%s" expand="%s" normal_btn="%s" hover_btn="%s" active_btn="%s" link="<?php if(%s) {?>%s<?php }?>"',
|
||||
|
|
@ -871,7 +874,7 @@
|
|||
if($node->url) $child_output['url_list'][] = $node->url;
|
||||
$output['url_list'] = array_merge($output['url_list'], $child_output['url_list']);
|
||||
// If node->group_srls value exists
|
||||
if($node->group_srls) $group_check_code = sprintf('($is_admin==true||(is_array($group_srls)&&count(array_intersect($group_srls, array(%s)))))',$node->group_srls);
|
||||
if($node->group_srls)$group_check_code = sprintf('($is_admin==true||(is_array($group_srls)&&count(array_intersect($group_srls, array(%s))))||($is_logged && %s))',$node->group_srls,$node->group_srls === -1?1:-1);
|
||||
else $group_check_code = "true";
|
||||
// List variables
|
||||
$href = str_replace(array('&','"','<','>'),array('&','"','<','>'),$node->href);
|
||||
|
|
|
|||
|
|
@ -5,6 +5,11 @@ jQuery(function($){
|
|||
var $lang = $('#editMenu h2:first span');
|
||||
xe.lang.add_menu = $lang.eq(0).text();
|
||||
xe.lang.edit_menu = $lang.eq(1).text();
|
||||
|
||||
var $grant_lang = $('#groupList select[name=menu_grant_default] option');
|
||||
xe.lang.grant_to_all = $grant_lang.eq(0).text();
|
||||
xe.lang.grant_to_login_user = $grant_lang.eq(1).text();
|
||||
xe.lang.grant_to_group = $grant_lang.eq(2).text();
|
||||
$lang.empty();
|
||||
|
||||
$('form.siteMap')
|
||||
|
|
@ -96,6 +101,15 @@ $('form.siteMap')
|
|||
if(menuItem.active_btn) $('#active_btn_preview').html('<img src="'+menuItem.active_btn+'" /><input type="checkbox" name="isActiveDelete" value="Y"> Delete');
|
||||
|
||||
var htmlBuffer = '';
|
||||
|
||||
htmlBuffer+='<select name="menu_grant_default" class="grant_default" onChange="doShowMenuGrantZone()"><option value="0">'+xe.lang.grant_to_all+'</option><option value="-1"';
|
||||
if(menuItem.group_srls != null && menuItem.group_srls.item == '-1') htmlBuffer += ' selected="selected" ';
|
||||
htmlBuffer += '>'+xe.lang.grant_to_login_user+'</option> <option value=""';
|
||||
if(menuItem.group_srls != null &&menuItem.group_srls.item!='-1') htmlBuffer += ' selected="selected" ';
|
||||
htmlBuffer += '>'+xe.lang.grant_to_group+'</option></select> <div id="zone_menu_grant"';
|
||||
if(!menuItem.group_srls == null ||menuItem.group_srls.item=='-1') htmlBuffer +='style="display:none"';
|
||||
htmlBuffer +='>';
|
||||
|
||||
for(x in menuItem.groupList.item)
|
||||
{
|
||||
var groupObj = menuItem.groupList.item[x];
|
||||
|
|
@ -104,6 +118,7 @@ $('form.siteMap')
|
|||
if(groupObj.isChecked) htmlBuffer += ' checked="checked" ';
|
||||
htmlBuffer += '/> <label for="group_srls_'+groupObj.group_srl+'">'+groupObj.title+'</label>'
|
||||
}
|
||||
htmlBuffer +='</div>';
|
||||
$('#groupList').html(htmlBuffer);
|
||||
|
||||
// reset label
|
||||
|
|
@ -305,3 +320,13 @@ function confirmDelete()
|
|||
if(confirm(xe.lang.confirm_delete)) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 메뉴 권한 선택용 */
|
||||
function doShowMenuGrantZone() {
|
||||
jQuery(".grant_default").each( function() {
|
||||
var id = "#zone_menu_grant";
|
||||
if(!jQuery(this).val()) jQuery(id).css("display","block");
|
||||
else jQuery(id).css("display","none");
|
||||
} );
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
<script type="text/javascript">
|
||||
xe.lang.confirm_delete = "{$lang->confirm_delete}";
|
||||
jQuery( function() { jQuery('.grant_default').change( function(event) { doShowMenuGrantZone(); } ); doShowMenuGrantZone() } );
|
||||
</script>
|
||||
<load target="./js/menu_admin.js" usecdn="true" />
|
||||
<load target="../../admin/tpl/js/sitemap.js" usecdn="true" />
|
||||
|
|
@ -154,9 +155,16 @@ xe.lang.confirm_delete = "{$lang->confirm_delete}";
|
|||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p class="q">{$lang->menu_group_srls}</p>
|
||||
<p class="q">{$lang->exposure_limits}</p>
|
||||
<p class="a" id="groupList">
|
||||
<block loop="$group_list=>$key,$value"><input type="checkbox" name="group_srls[]" id="group_srls_{$value->group_srl}" value="{$value->group_srl}" /> <label for="group_srls_{$value->group_srl}">{$value->title}</label></block>
|
||||
<select name="menu_grant_default" class="grant_default">
|
||||
<option value="0" selected="selected">{$lang->grant_to_all}</option>
|
||||
<option value="-1">{$lang->grant_to_login_user}</option>
|
||||
<option value="">{$lang->grant_to_group}</option>
|
||||
</select>
|
||||
<div id="zone_menu_grant" style="display:none">
|
||||
<block loop="$group_list=>$key,$value"><input type="checkbox" name="group_srls[]" id="group_srls_{$value->group_srl}" value="{$value->group_srl}" /> <label for="group_srls_{$value->group_srl}">{$value->title}</label></block>
|
||||
</div>
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue