Вход Регистрация
Файл: admin/applets/menu.php
Строк: 761
<?php
/******************************************************************************/
//                                                                            //
//                             InstantCMS v1.10                               //
//                        http://www.instantcms.ru/                           //
//                                                                            //
//                   written by InstantCMS Team, 2007-2012                    //
//                produced by InstantSoft, (www.instantsoft.ru)               //
//                                                                            //
//                        LICENSED BY GNU/GPL v2                              //
//                                                                            //
/******************************************************************************/

if(!defined('VALID_CMS_ADMIN')) { die('ACCESS DENIED'); }

function 
iconList(){
    if (
$handle opendir(PATH.'/images/menuicons')) {
        
$n 0;
        while (
false !== ($file readdir($handle))) {
            if (
$file != '.' && $file != '..' && mb_strstr($file'.gif')){
                
$tag str_replace('.gif'''$file);
                
$dir '/images/menuicons/';
                echo 
'<a style="width:20px;height:20px;display:block; float:left; padding:2px" href="javascript:selectIcon(''.$file.'')"><img alt="'.$file.'"src="'.$dir.$file.'" border="0" /></a>';
                 
$n++;
            }
        }
        
closedir($handle);
    }

    if (!
$n) { echo '<p>Папка "/images/menuicons" пуста!</p>'; }

    echo 
'<div align="right" style="clear:both">[<a href="javascript:selectIcon('')">Без иконки</a>] [<a href="javascript:hideIcons()">Закрыть</a>]</div>';

    return;
}

function 
applet_menu(){

    
$inCore cmsCore::getInstance();
    
$inDB   cmsDatabase::getInstance();

    global 
$adminAccess;
    if (!
cmsUser::isAdminCan('admin/menu'$adminAccess)) { cpAccessDenied(); }

    
$GLOBALS['cp_page_title'] = 'Меню';
     
cpAddPathway('Меню сайта''index.php?view=menu');

    
$do cmsCore::request('do''str''list');
    
$id cmsCore::request('id''int', -1);

    if (
$do == 'list'){
        
$toolmenu = array();
        
$toolmenu[0]['icon'] = 'new.gif';
        
$toolmenu[0]['title'] = 'Добавить пункт меню';
        
$toolmenu[0]['link'] = '?view=menu&do=add';

        
$toolmenu[1]['icon'] = 'newmenu.gif';
        
$toolmenu[1]['title'] = 'Добавить меню';
        
$toolmenu[1]['link'] = '?view=menu&do=addmenu';

        
$toolmenu[2]['icon'] = 'edit.gif';
        
$toolmenu[2]['title'] = 'Редактировать выбранные';
        
$toolmenu[2]['link'] = "javascript:checkSel('?view=menu&do=edit&multiple=1');";

        
$toolmenu[5]['icon'] = 'delete.gif';
        
$toolmenu[5]['title'] = 'Удалить выбранные';
        
$toolmenu[5]['link'] = "javascript:checkSel('?view=menu&do=delete&multiple=1');";

        
$toolmenu[3]['icon'] = 'show.gif';
        
$toolmenu[3]['title'] = 'Публиковать выбранные';
        
$toolmenu[3]['link'] = "javascript:checkSel('?view=menu&do=show&multiple=1');";

        
$toolmenu[4]['icon'] = 'hide.gif';
        
$toolmenu[4]['title'] = 'Скрыть выбранные';
        
$toolmenu[4]['link'] = "javascript:checkSel('?view=menu&do=hide&multiple=1');";

        
$toolmenu[8]['icon'] = 'help.gif';
        
$toolmenu[8]['title'] = 'Помощь';
        
$toolmenu[8]['link'] = "?view=help&topic=menu";

        
cpToolMenu($toolmenu);

        
//TABLE COLUMNS
        
$fields = array();

        
$fields[0]['title'] = 'Lt';            $fields[0]['field'] = 'NSLeft';            $fields[0]['width'] = '30';

        
$fields[1]['title'] = 'Название';    $fields[1]['field'] = 'title';        $fields[1]['width'] = '';        $fields[1]['link'] = '?view=menu&do=edit&id=%id%';

        
$fields[2]['title'] = 'Показ';        $fields[2]['field'] = 'published';    $fields[2]['width'] = '40';

        
$fields[3]['title'] = 'Порядок';    $fields[3]['field'] = 'ordering';    $fields[3]['width'] = '100';

        
$fields[4]['title'] = 'Ссылка';        $fields[4]['field'] = 'id';        $fields[4]['width'] = '240';
        
$fields[4]['prc'] = 'cpMenutypeById';

        
$fields[5]['title'] = 'Меню';        $fields[5]['field'] = 'menu';        $fields[5]['width'] = '70';    $fields[5]['filter'] = 10;
        
$fields[5]['filterlist'] = cpGetList('menu');

        
$fields[6]['title'] = 'Шаблон';        $fields[6]['field'] = 'template';    $fields[6]['width'] = '70';
        
$fields[6]['prc'] = 'cpTemplateById';

        
//ACTIONS
        
$actions = array();
        
$actions[0]['title'] = 'Редактировать';
        
$actions[0]['icon']  = 'edit.gif';
        
$actions[0]['link']  = '?view=menu&do=edit&id=%id%';

        
$actions[1]['title'] = 'Удалить';
        
$actions[1]['icon']  = 'delete.gif';
        
$actions[1]['confirm'] = 'Удалить пункт меню?';
        
$actions[1]['link']  = '?view=menu&do=delete&id=%id%';

        
//Print table
        
cpListTable('cms_menu'$fields$actions'parent_id>0''NSLeft, ordering');
    }

    if (
$do == 'move_up'){
        
$inDB->moveNsCategory('cms_menu'$id'up');
        
cmsCore::redirectBack();
    }

    if (
$do == 'move_down'){
        
$inDB->moveNsCategory('cms_menu'$id'down');;
        
cmsCore::redirectBack();
    }

    if (
$do == 'show'){
        if (!isset(
$_REQUEST['item'])){
            if (
$id >= 0){ dbShow('cms_menu'$id);  }
            echo 
'1'; exit;
        } else {
            
dbShowList('cms_menu'$_REQUEST['item']);
            
cmsCore::redirectBack();
        }
    }

    if (
$do == 'hide'){
        if (!isset(
$_REQUEST['item'])){
            if (
$id >= 0){ dbHide('cms_menu'$id);  }
            echo 
'1'; exit;
        } else {
            
dbHideList('cms_menu'$_REQUEST['item']);
            
cmsCore::redirectBack();
        }
    }

    if (
$do == 'delete'){
        if (!isset(
$_REQUEST['item'])){
            if (
$id >= 0){ dbDeleteNS('cms_menu'$id);  }
        } else {
            
dbDeleteListNS('cms_menu'$_REQUEST['item']);
        }
        
cmsCore::redirectBack();
    }

    if (
$do == 'update'){

        if (!
cmsCore::validateForm()) { cmsCore::error404(); }

        
$id cmsCore::request('id''int'0);
        if(!
$id){ cmsCore::redirectBack(); }

        
$title     cmsCore::request('title''str''');
        
$menu      cmsCore::request('menu''str''');
        
$linktype  cmsCore::request('mode''str''');
        
$linkid    cmsCore::request($linktype'str''');
        
$link      $inCore->getMenuLink($linktype$linkid);
        
$target    cmsCore::request('target''str''');
        
$published cmsCore::request('published''int'0);
        
$template  cmsCore::request('template''str''');
        
$iconurl   cmsCore::request('iconurl''str''');
        
$parent_id cmsCore::request('parent_id''int'0);
        
$oldparent cmsCore::request('oldparent''int'0);

        
$is_public cmsCore::request('is_public''int''');
        if (!
$is_public){
            
$access_list cmsCore::arrayToYaml(cmsCore::request('allow_group''array_int'));
        }

        
$ns $inCore->nestedSetsInit('cms_menu');

        if (
$oldparent!=$parent_id){
            
$ns->MoveNode($id$parent_id);
        }

        
$sql "UPDATE cms_menu
                SET title='
$title',
                    menu='
$menu',
                    link='
$link',
                    linktype='
$linktype',
                    linkid='
$linkid',
                    target='
$target',
                    published='
$published',
                    template='
$template',
                    access_list='
$access_list',
                    iconurl='
$iconurl'
                WHERE id = '
$id'
                LIMIT 1"
;
        
$inDB->query($sql) ;

        if (!isset(
$_SESSION['editlist']) || @sizeof($_SESSION['editlist'])==0){
            
cmsCore::redirect('?view=menu');
        } else {
            
cmsCore::redirect('?view=menu&do=edit');
        }

    }

    if (
$do == 'submit'){

        if (!
cmsCore::validateForm()) { cmsCore::error404(); }

        
$title     cmsCore::request('title''str''');
        
$menu      cmsCore::request('menu''str''');
        
$linktype  cmsCore::request('mode''str''');
        
$linkid    cmsCore::request($linktype'str''');
        
$link      $inCore->getMenuLink($linktype$linkid);
        
$target    cmsCore::request('target''str''');
        
$published cmsCore::request('published''int'0);
        
$template  cmsCore::request('template''str''');
        
$iconurl   cmsCore::request('iconurl''str''');
        
$parent_id cmsCore::request('parent_id''int'0);

        
$is_public cmsCore::request('is_public''int''');
        if (!
$is_public){
            
$access_list cmsCore::arrayToYaml(cmsCore::request('allow_group''array_int'));
        }

        
$ns $inCore->nestedSetsInit('cms_menu');
        
$myid $ns->AddNode($parent_id);

        
$sql "UPDATE cms_menu
                SET menu='
$menu',
                    title='
$title',
                    link='
$link',
                    linktype='
$linktype',
                    linkid='
$linkid',
                    target='
$target',
                    published='
$published',
                    template='
$template',
                    access_list='
$access_list',
                    iconurl='
$iconurl'
                WHERE id = '
$myid'";

        
$inDB->query($sql);

        
cmsCore::redirect('?view=menu');

    }

    if (
$do == 'submitmenu'){

        if (!
cmsCore::validateForm()) { cmsCore::error404(); }

        
$sql "SELECT ordering as max_o FROM cms_modules ORDER BY ordering DESC LIMIT 1";
        
$result $inDB->query($sql) ;
        
$row $inDB->fetch_assoc($result);
        
$maxorder $row['max_o'] + 1;

        
$menu       cmsCore::request('menu''str''');
        
$title      cmsCore::request('title''str''');
        
$position   cmsCore::request('position''str''');
        
$published  cmsCore::request('published''int'0);
        
$css_prefix cmsCore::request('css_prefix''str''');
        
$is_public  cmsCore::request('is_public''int''');
        if (!
$is_public){
            
$access_list $inCore->arrayToYaml(cmsCore::request('allow_group''array_int'));
        }

        
$cfg['menu'] = $menu;
        
$cfg_str cmsCore::arrayToYaml($cfg);

        
$sql "INSERT INTO cms_modules (position, name, title, is_external, content, ordering, showtitle, published, user, config, css_prefix, access_list)
                VALUES ('"
.$position."',
                        'Меню',
                        '"
.$title."',
                        1,
                        'mod_menu',
                        
$maxorder,
                        1,
                        
$published,
                        0,
                        '
$cfg_str',
                        '
$css_prefix',
                        '
$access_list')";

        
$inDB->query($sql) ;

        
$newid $inDB->get_last_id('cms_modules');

        
cmsCore::redirect('?view=modules&do=edit&id='.$newid);

    }

   if (
$do == 'addmenu'){

        
$GLOBALS['cp_page_head'][] = '<script language="JavaScript" type="text/javascript" src="js/menu.js"></script>';

        
$toolmenu = array();
        
$toolmenu[0]['icon'] = 'save.gif';
        
$toolmenu[0]['title'] = 'Сохранить';
        
$toolmenu[0]['link'] = 'javascript:document.addform.submit();';

        
$toolmenu[1]['icon'] = 'cancel.gif';
        
$toolmenu[1]['title'] = 'Отмена';
        
$toolmenu[1]['link'] = 'javascript:history.go(-1);';

        
cpToolMenu($toolmenu);

        
$GLOBALS['cp_page_title'] = 'Добавить меню';
        
cpAddPathway('Добавить меню''index.php?view=menu&do=addmenu');

        echo 
'<h3>Добавить меню</h3>';

        
?>
        <form id="addform" name="addform" action="index.php?view=menu&do=submitmenu" method="post">
            <input type="hidden" name="csrf_token" value="<?php echo cmsUser::getCsrfToken(); ?>" />
            <table class="proptable" width="650" cellspacing="10" cellpadding="10">
                <tr>
                    <td width="300" valign="top">
                        <strong>Название модуля меню:</strong>
                    </td>
                    <td valign="top">
                        <input name="title" type="text" id="title2" style="width:200px" value=""/>
                    </td>
                </tr>
                <tr>
                    <td valign="top">
                        <strong>Меню для показа: </strong><br/>
                        <span class="hinttext">При создании пунктов нового меню выбирайте такое же значение в поле &quot;меню&quot;, для привязки </span>
                    </td>
                    <td valign="top">
                        <select name="menu" id="menu" style="width:200px">
                                <option value="mainmenu" <?php if (@$mod['menu']=='mainmenu' || !isset($mod['menu'])) { echo 'selected="selected"'; }?>>Главное меню</option>
                                <?php for($m=1;$m<=15;$m++){ ?>
                                    <option value="menu<?php echo $m?><?php if (@$mod['menu']=='menu'.$m) { echo 'selected="selected"'; }?>>Дополнительное меню <?php echo $m?></option>
                                <?php ?>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td valign="top">
                        <strong>Позиция показа:</strong><br />
                        <span class="hinttext">Позиция должна присутствовать в шаблоне</span>
                    </td>
                    <td valign="top">
                        <?php
                            $pos 
cpModulePositions(cmsConfig::getConfig('template'));
                        
?>
                        <select name="position" id="position" style="width:200px">
                            <?php
                                
if ($pos){
                                    foreach(
$pos as $key=>$position){
                                        if (@
$mod['position']==$position){
                                            echo 
'<option value="'.$position.'" selected>'.$position.'</option>';
                                        } else {
                                            echo 
'<option value="'.$position.'">'.$position.'</option>';
                                        }
                                    }
                                }
                            
?>
                        </select>
                        <input name="is_external" type="hidden" id="is_external" value="0" />
                    </td>
                </tr>
                <tr>
                    <td valign="top"><strong>Публиковать меню?</strong></td>
                    <td valign="top">
                        <input name="published" type="radio" value="1" checked="checked" <?php if (@$mod['published']) { echo 'checked="checked"'; } ?> /> Да
                        <input name="published" type="radio" value="0"  <?php if (@!$mod['published']) { echo 'checked="checked"'; } ?> /> Нет
                    </td>
                </tr>
                <tr>
                    <td valign="top"><strong>CSS префикс:</strong></td>
                    <td valign="top">
                        <input name="css_prefix" type="text" id="css_prefix" value="<?php echo @$mod['css_prefix'];?>" style="width:200px" />
                    </td>
                </tr>
                <tr>
                    <td valign="top">
                        <strong>Доступ:</strong><br />
                        <span class="hinttext">Какой группе пользователей показывать это меню</span>
                    </td>
                    <td valign="top">
                    <table width="100%" cellpadding="0" cellspacing="0" border="0" class="checklist" style="margin-top:5px">
                        <tr>
                            <td width="20">
                                <?php

                                    $groups 
cmsUser::getGroups();

                                    
$style  'disabled="disabled"';
                                    
$public 'checked="checked"';

                                    if (
$do == 'edit'){

                                        if (
$mod['access_list']){
                                            
$public '';
                                            
$style  '';

                                            
$access_list $inCore->yamlToArray($mod['access_list']);

                                        }
                                    }
                                
?>
                                <input name="is_public" type="checkbox" id="is_public" onclick="checkAccesList()" value="1" <?php echo $public?> />
                            </td>
                            <td><label for="is_public"><strong>Общий доступ</strong></label></td>
                        </tr>
                    </table>
                    <div style="padding:5px">
                        <span class="hinttext">
                            Если отмечено, назначение пункта меню будет видно всем пользователям. Снимите галочку, чтобы вручную выбрать разрешенные группы пользователей.
                        </span>
                    </div>

                    <div style="margin-top:10px;padding:5px;padding-right:0px;" id="grp">
                        <div>
                            <strong>Показывать группам:</strong><br />
                            <span class="hinttext">
                                Можно выбрать несколько, удерживая CTRL.
                            </span>
                        </div>
                        <div>
                            <?php
                                
echo '<select style="width: 99%" name="allow_group[]" id="allow_group" size="6" multiple="multiple" '.$style.'>';

                                if (
$groups){
                                    foreach(
$groups as $group){
                                        echo 
'<option value="'.$group['id'].'"';
                                        if (
$do=='edit'){
                                            if (
inArray($access_list$group['id'])){
                                                echo 
'selected="selected"';
                                            }
                                        }

                                        echo 
'>';
                                        echo 
$group['title'].'</option>';
                                    }

                                }

                                echo 
'</select>';
                            
?>
                        </div>
                    </div>
                    </td>
                </tr>
                <tr>
                    <td colspan="2" valign="top">
                        <div style="padding:10px;margin:4px;background-color:#EBEBEB;border:solid 1px gray">
                            Создавая новое меню, вы создаете новый модуль. Он будет доступен в разделе "Модули" вместе с остальными. После создания меню
                            вы будете перенаправлены в настройки нового модуля, где вы сможете выбрать в каких разделах сайта следует его показывать.
                        </div>
                    </td>
                </tr>
            </table>
            <div style="margin-top:5px">
                <input name="save" type="submit" id="save" value="Создать меню" />
                <input name="back" type="button" id="back" value="Отмена" onclick="window.location.href='index.php?view=menu';" />
            </div>
        </form>
        <?php

   
}


   if (
$do == 'add' || $do == 'edit'){

        
$GLOBALS['cp_page_head'][] = '<script language="JavaScript" type="text/javascript" src="js/menu.js"></script>';

        require(
'../includes/jwtabs.php');
        
$GLOBALS['cp_page_head'][] = jwHeader();

        
$toolmenu = array();
        
$toolmenu[0]['icon'] = 'save.gif';
        
$toolmenu[0]['title'] = 'Сохранить';
        
$toolmenu[0]['link'] = 'javascript:document.addform.submit();';

        
$toolmenu[1]['icon'] = 'cancel.gif';
        
$toolmenu[1]['title'] = 'Отмена';
        
$toolmenu[1]['link'] = 'javascript:history.go(-1);';

        
cpToolMenu($toolmenu);

        if (
$do=='add'){
             echo 
'<h3>Добавить пункт меню</h3>';
               
cpAddPathway('Добавить пункт меню''index.php?view=menu&do=add');
        } else {
                     if(isset(
$_REQUEST['multiple'])){
                        if (isset(
$_REQUEST['item'])){
                            
$_SESSION['editlist'] = $_REQUEST['item'];
                        } else {
                            echo 
'<p class="error">Нет выбранных объектов!</p>';
                            return;
                        }
                     }

                     
$ostatok '';

                     if (isset(
$_SESSION['editlist'])){
                        
$id array_shift($_SESSION['editlist']);
                        if (
sizeof($_SESSION['editlist'])==0) { unset($_SESSION['editlist']); } else
                        { 
$ostatok '(На очереди: '.sizeof($_SESSION['editlist']).')'; }
                     } else { 
$id = (int)$_REQUEST['id']; }

                     
$sql "SELECT * FROM cms_menu WHERE id = $id LIMIT 1";
                     
$result $inDB->query($sql) ;
                     if (
$inDB->num_rows($result)){
                        
$mod $inDB->fetch_assoc($result);
                     }

                     echo 
'<h3>Редактировать пункт меню '.$ostatok.'</h3>';

                     
cpAddPathway($mod['title'], 'index.php?view=menu&do=edit&id='.$mod['id']);
            }
    
?>
    <form id="addform" name="addform" method="post" action="index.php">
        <input type="hidden" name="csrf_token" value="<?php echo cmsUser::getCsrfToken(); ?>" />
        <input type="hidden" name="view" value="menu" />

        <table class="proptable" width="100%" cellpadding="15" cellspacing="2">
            <tr>

                <!-- главная ячейка -->
                <td valign="top">

                    <div><strong>Заголовок пункта меню</strong> <span class="hinttext">&mdash; отображается на сайте</span></div>
                    <div><input name="title" type="text" id="title" style="width:100%" value="<?php echo htmlspecialchars($mod['title']);?>" /></div>

                    <div>
                        <select name="menu" id="menu" style="width:100%">
                            <option value="mainmenu" <?php if (@$mod['menu']=='mainmenu' || !isset($mod['menu'])) { echo 'selected="selected"'; }?>>Главное меню</option>
                            <?php for($m=1;$m<=15;$m++){ ?>
                                <option value="menu<?php echo $m?><?php if (@$mod['menu']=='menu'.$m) { echo 'selected="selected"'; }?>>Дополнительное меню <?php echo $m?></option>
                            <?php ?>
                        </select>
                    </div>

                    <div><strong>Родительский пункт</strong></div>
                    <div>
                        <?php
                            $rootid 
$inDB->get_field('cms_menu''parent_id=0''id');
                        
?>
                        <select name="parent_id" size="10" id="parent_id" style="width:100%">
                            <option value="<?php echo $rootid?><?php if (@$mod['parent_id']==$rootid || !isset($mod['parent_id'])) { echo 'selected="selected"'; }?>>-- Корень меню --</option>
                            <?php
                                
if (isset($mod['parent_id'])){
                                    echo 
$inCore->getListItemsNS('cms_menu'$mod['parent_id']);
                                } else {
                                    echo 
$inCore->getListItemsNS('cms_menu');
                                }
                            
?>
                        </select>
                        <input type="hidden" name="oldparent" value="<?php echo @$mod['parent_id'];?>" />
                    </div>

                    <div><strong>Действие пункта меню</strong></div>
                    <div>
                        <select name="mode" id="linktype" style="width:100%" onchange="showMenuTarget()">
                            <option value="link" <?php if (@$mod['linktype']=='link' || !isset($mod['mode'])) { echo 'selected="selected"'; }?>>Открыть ссылку</option>
                            <option value="content" <?php if (@$mod['linktype']=='content') { echo 'selected="selected"'; }?>>Открыть статью</option>
                            <option value="category" <?php if (@$mod['linktype']=='category') { echo 'selected="selected"'; }?>>Открыть раздел (список статей)</option>
                            <option value="component" <?php if (@$mod['linktype']=='component') { echo 'selected="selected"'; }?>>Открыть компонент</option>
                            <option value="blog" <?php if (@$mod['linktype']=='blog') { echo 'selected="selected"'; }?>>Открыть блог</option>
                            <option value="uccat" <?php if (@$mod['linktype']=='uccat') { echo 'selected="selected"'; }?>>Открыть категорию каталога</option>
                            <option value="photoalbum" <?php if (@$mod['linktype']=='photoalbum') { echo 'selected="selected"'; }?>>Открыть альбом фотогалереи</option>
                        </select>
                    </div>

                    <div id="t_link" class="menu_target" style="display:<?php if ($mod['linktype']=='link'||$mod['linktype']=='ext'||!$mod['linktype']) { echo  'block'; } else { echo 'none'; } ?>">
                        <div>
                            <strong>Адрес ссылки</strong> <span class="hinttext">&mdash; для внешних ссылок не забывайте префикс <b>http://</b></span>
                        </div>
                        <div>
                            <input name="link" type="text" id="link" size="50" style="width:100%" <?php if (@$mod['linktype']=='link'||@$mod['linktype']=='ext') { echo  'value="'.$mod['link'].'"'; } ?>/>
                        </div>
                    </div>

                    <div id="t_content" class="menu_target" style="display:<?php if ($mod['linktype']=='content') { echo  'block'; } else { echo 'none'; } ?>">
                        <div>
                            <strong>Выберите статью</strong>
                        </div>
                        <div>
                            <select name="content" id="content" style="width:100%">
                                <?php
                                    
if (@$mod['linktype']=='content') {
                                        echo 
$inCore->getListItems('cms_content'$mod['linkid']);
                                    } else {
                                        echo 
$inCore->getListItems('cms_content');
                                    }
                                
?>
                            </select>
                        </div>
                    </div>

                    <div id="t_category" class="menu_target" style="display:<?php if ($mod['linktype']=='category') { echo  'block'; } else { echo 'none'; } ?>">
                        <div>
                            <strong>Выберите раздел</strong>
                        </div>
                        <div>
                            <select name="category" id="category" style="width:100%">
                                    <?php
                                    
if (@$mod['linktype']=='category') {
                                        echo 
$inCore->getListItemsNS('cms_category'$mod['linkid']);
                                    } else {
                                        echo 
$inCore->getListItemsNS('cms_category');
                                    }
                                
?>
                            </select>
                        </div>
                    </div>

                    <div id="t_component" class="menu_target" style="display:<?php if ($mod['linktype']=='component') { echo  'block'; } else { echo 'none'; } ?>">
                        <div>
                            <strong>Выберите компонент</strong>
                        </div>
                        <div>
                           <select name="component" id="component" style="width:100%">
                                <?php
                                    
if (@$mod['linktype']=='component') {
                                        echo 
$inCore->getListItems('cms_components'$mod['linkid'], 'title''asc''internal=0''link');
                                    } else {
                                        echo 
$inCore->getListItems('cms_components'0'title''asc''internal=0''link');
                                    }
                                
?>
                            </select>
                        </div>
                    </div>

                    <div id="t_blog" class="menu_target" style="display:<?php if ($mod['linktype']=='blog') { echo  'block'; } else { echo 'none'; } ?>">
                        <div>
                            <strong>Выберите блог</strong>
                        </div>
                        <div>
                           <select name="blog" id="blog" style="width:100%">
                                <?php
                                    
if (@$mod['linktype']=='blog') {
                                        echo 
$inCore->getListItems('cms_blogs'$mod['linkid'], 'title''asc'"owner='user'");
                                    } else {
                                        echo 
$inCore->getListItems('cms_blogs'0'title''asc'"owner='user'");
                                    }
                                
?>
                            </select>
                        </div>
                    </div>

                    <div id="t_uccat" class="menu_target" style="display:<?php if ($mod['linktype']=='uccat') { echo  'block'; } else { echo 'none'; } ?>">
                        <div>
                            <strong>Выберите категорию каталога</strong>
                        </div>
                        <div>
                           <select name="uccat" id="uccat" style="width:100%">
                                <?php
                                    
if (@$mod['linktype']=='uccat') {
                                        echo 
$inCore->getListItems('cms_uc_cats'$mod['linkid']);
                                    } else {
                                        echo 
$inCore->getListItems('cms_uc_cats');
                                    }
                                
?>
                            </select>
                        </div>
                    </div>

                    <div id="t_photoalbum" class="menu_target" style="display:<?php if ($mod['linktype']=='photoalbum') { echo  'block'; } else { echo 'none'; } ?>">
                        <div>
                            <strong>Выберите фотоальбом</strong>
                        </div>
                        <div>
                           <select name="photoalbum" id="photoalbum" style="width:100%">
                                <?php
                                    
if (@$mod['linktype']=='photoalbum') {
                                        echo 
$inCore->getListItems('cms_photo_albums'$mod['linkid'], 'id''ASC''NSDiffer = ""');
                                    } else {
                                        echo 
$inCore->getListItems('cms_photo_albums'0'id''ASC''NSDiffer = ""');
                                    }
                                
?>
                            </select>
                        </div>
                    </div>

                </td>

                <!-- боковая ячейка -->
                <td width="300" valign="top" style="background:#ECECEC;">

                    <?php ob_start(); ?>

                    {tab=Публикация}

                        <table width="100%" cellpadding="0" cellspacing="0" border="0" class="checklist">
                            <tr>
                                <td width="20"><input type="checkbox" name="published" id="published" value="1" <?php if ($mod['published'] || $do=='add') { echo 'checked="checked"'; } ?>/></td>
                                <td><label for="published"><strong>Публиковать пункт меню</strong></label></td>
                            </tr>
                        </table>

                        <div style="margin-top:15px">
                            <strong>Открывать пункт меню</strong>
                        </div>
                        <div>
                            <select name="target" id="target" style="width:100%">
                                <option value="_self" <?php if (@$mod['target']=='_self') { echo 'selected="selected"'; }?>>В этом же окне (self)</option>
                                <option value="_parent">В родительском окне (parent)</option>
                                <option value="_blank" <?php if (@$mod['target']=='_blank') { echo 'selected="selected"'; }?>>В новом окне (blank)</option>
                                <option value="_top" <?php if (@$mod['target']=='_top') { echo 'selected="selected"'; }?>>Поверх всех окон (top)</option>
                            </select>
                        </div>

                        <div style="margin-top:15px">
                            <strong>Шаблон сайта</strong><br/>
                            <span class="hinttext">Выберите, если нужно чтобы открытие пункта меню сопровождалось сменой дизайна сайта</span>
                        </div>
                        <div>
                            <select name="template" id="template" style="width:100%">
                                <option value="0" <?php if (@$mod['template']==|| !$mod['template']) { echo 'selected="selected"'; } ?>>По-умолчанию</option>
                                <?php
                                $templates 
cmsCore::getDirsList('/templates');
                                foreach (
$templates as $template) {
                                    echo 
'<option value="'.$template.'" '.(@$mod['template'] == $template 'selected="selected"''').'>'.$template.'</option>';
                                }
                                
?>
                            </select>
                        </div>

                        <div style="margin-top:15px">
                            <strong>Иконка</strong><br/>
                            <span class="hinttext">Название файла в папке "/images/menuicons"</span>
                        </div>
                        <div>
                            <input name="iconurl" type="text" id="iconurl" size="30" value="<?php echo @$mod['iconurl'];?>" style="width:100%"/>
                            <div>
                                <a id="iconlink" style="display:block;" href="javascript:showIcons()"> Выбрать иконку</a>
                                <div id="icondiv" style="display:none; padding:6px;border:solid 1px gray;background:#FFF">
                                    <div><?php iconList(); ?></div>
                                </div>
                            </div>
                        </div>

                    {tab=Доступ}
                    <table width="100%" cellpadding="0" cellspacing="0" border="0" class="checklist" style="margin-top:5px">
                        <tr>
                            <td width="20">
                                <?php

                                    $groups 
cmsUser::getGroups();

                                    
$style  'disabled="disabled"';
                                    
$public 'checked="checked"';

                                    if (
$do == 'edit'){

                                        if (
$mod['access_list']){
                                            
$public '';
                                            
$style  '';

                                            
$access_list $inCore->yamlToArray($mod['access_list']);

                                        }
                                    }
                                
?>
                                <input name="is_public" type="checkbox" id="is_public" onclick="checkAccesList()" value="1" <?php echo $public?> />
                            </td>
                            <td><label for="is_public"><strong>Общий доступ</strong></label></td>
                        </tr>
                    </table>
                    <div style="padding:5px">
                        <span class="hinttext">
                            Если отмечено, назначение пункта меню будет видно всем пользователям. Снимите галочку, чтобы вручную выбрать разрешенные группы пользователей.
                        </span>
                    </div>

                    <div style="margin-top:10px;padding:5px;padding-right:0px;" id="grp">
                        <div>
                            <strong>Показывать группам:</strong><br />
                            <span class="hinttext">
                                Можно выбрать несколько, удерживая CTRL.
                            </span>
                        </div>
                        <div>
                            <?php
                                
echo '<select style="width: 99%" name="allow_group[]" id="allow_group" size="6" multiple="multiple" '.$style.'>';

                                if (
$groups){
                                    foreach(
$groups as $group){
                                        echo 
'<option value="'.$group['id'].'"';
                                        if (
$do=='edit' && $mod['access_list']){
                                            if (
inArray($access_list$group['id'])){
                                                echo 
'selected="selected"';
                                            }
                                        }

                                        echo 
'>';
                                        echo 
$group['title'].'</option>';
                                    }

                                }

                                echo 
'</select>';
                            
?>
                        </div>
                    </div>

                    {/tabs}

                    <?php echo jwTabs(ob_get_clean()); ?>

                </td>

            </tr>
        </table>

        <p>
            <input name="add_mod" type="button" onclick="submitItem()" id="add_mod" <?php if ($do=='add') { echo 'value="Создать пункт"'; } else { echo 'value="Сохранить пункт"'; } ?> />
            <input name="back" type="button" id="back" value="Отмена" onclick="window.location.href='index.php?view=menu';" />
            <input name="do" type="hidden" id="do" <?php if ($do=='add') { echo 'value="submit"'; } else { echo 'value="update"'; } ?> />
            <?php
                
if ($do=='edit'){
                    echo 
'<input name="id" type="hidden" value="'.$mod['id'].'" />';
                }
            
?>
        </p>
    </form>
    <?php
   
}
}

?>
Онлайн: 1
Реклама