Ejemplo n.º 1
0
function menu_content(&$a)
{
    $uid = local_channel();
    if ($a->is_sys && is_site_admin()) {
        $sys = get_sys_channel();
        $uid = intval($sys['channel_id']);
    }
    if (!$uid) {
        notice(t('Permission denied.') . EOL);
        return '';
    }
    if (argc() == 1) {
        // list menus
        $x = menu_list($uid);
        if ($x) {
            for ($y = 0; $y < count($x); $y++) {
                $x[$y]['bookmark'] = $x[$y]['menu_flags'] & MENU_BOOKMARK ? true : false;
            }
        }
        $o = replace_macros(get_markup_template('menulist.tpl'), array('$title' => t('Manage Menus'), '$menus' => $x, '$edit' => t('Edit'), '$drop' => t('Drop'), '$new' => t('New'), '$bmark' => t('Bookmarks allowed'), '$hintnew' => t('Create a new menu'), '$hintdrop' => t('Delete this menu'), '$hintcontent' => t('Edit menu contents'), '$hintedit' => t('Edit this menu')));
        return $o;
    }
    if (argc() > 1) {
        if (argv(1) === 'new') {
            $o = replace_macros(get_markup_template('menuedit.tpl'), array('$header' => t('New Menu'), '$menu_name' => array('menu_name', t('Menu name'), '', t('Must be unique, only seen by you'), '*'), '$menu_desc' => array('menu_desc', t('Menu title'), '', t('Menu title as seen by others'), ''), '$menu_bookmark' => array('menu_bookmark', t('Allow bookmarks'), 0, t('Menu may be used to store saved bookmarks'), ''), '$submit' => t('Create')));
            return $o;
        } elseif (intval(argv(1))) {
            $m = menu_fetch_id(intval(argv(1)), $uid);
            if (!$m) {
                notice(t('Menu not found.') . EOL);
                return '';
            }
            if (argc() == 3 && argv(2) == 'drop') {
                $r = menu_delete_id(intval(argv(1)), $uid);
                if ($r) {
                    info(t('Menu deleted.') . EOL);
                } else {
                    notice(t('Menu could not be deleted.') . EOL);
                }
                goaway(z_root() . '/menu' . ($a->is_sys ? '?f=&sys=1' : ''));
            } else {
                $o = replace_macros(get_markup_template('menuedit.tpl'), array('$header' => t('Edit Menu'), '$menu_id' => intval(argv(1)), '$hintedit' => t('Add or remove entries to this menu'), '$editcontents' => t('Edit menu contents'), '$menu_name' => array('menu_name', t('Menu name'), $m['menu_name'], t('Must be unique, only seen by you'), '*'), '$menu_desc' => array('menu_desc', t('Menu title'), $m['menu_desc'], t('Menu title as seen by others'), ''), '$menu_bookmark' => array('menu_bookmark', t('Allow bookmarks'), $m['menu_flags'] & MENU_BOOKMARK ? 1 : 0, t('Menu may be used to store saved bookmarks'), ''), '$menu_system' => $m['menu_flags'] & MENU_SYSTEM ? 1 : 0, '$submit' => t('Modify')));
                return $o;
            }
        } else {
            notice(t('Not found.') . EOL);
            return;
        }
    }
}
Ejemplo n.º 2
0
Archivo: mitem.php Proyecto: Mauru/red
function mitem_init(&$a)
{
    if (!local_user()) {
        return;
    }
    if (argc() < 2) {
        return;
    }
    $m = menu_fetch_id(intval(argv(1)), local_user());
    if (!$m) {
        notice(t('Menu not found.') . EOL);
        return '';
    }
    $a->data['menu'] = $m;
}
Ejemplo n.º 3
0
Archivo: menu.php Proyecto: Mauru/red
function menu_content(&$a)
{
    if (!local_user()) {
        notice(t('Permission denied.') . EOL);
        return '';
    }
    //	$a->set_widget('design',design_tools());
    if (argc() == 1) {
        // list menus
        $x = menu_list(local_user());
        $o = replace_macros(get_markup_template('menulist.tpl'), array('$title' => t('Manage Menus'), '$menus' => $x, '$edit' => t('Edit'), '$drop' => t('Drop'), '$new' => t('New'), '$hintnew' => t('Create a new menu'), '$hintdrop' => t('Delete this menu'), '$hintcontent' => t('Edit menu contents'), '$hintedit' => t('Edit this menu')));
        return $o;
    }
    if (argc() > 1) {
        if (argv(1) === 'new') {
            $o = replace_macros(get_markup_template('menuedit.tpl'), array('$header' => t('New Menu'), '$menu_name' => array('menu_name', t('Menu name'), '', t('Must be unique, only seen by you'), '*'), '$menu_desc' => array('menu_desc', t('Menu title'), '', t('Menu title as seen by others'), ''), '$menu_bookmark' => array('menu_bookmark', t('Allow bookmarks'), 0, t('Menu may be used to store saved bookmarks'), ''), '$submit' => t('Create')));
            return $o;
        } elseif (intval(argv(1))) {
            $m = menu_fetch_id(intval(argv(1)), local_user());
            if (!$m) {
                notice(t('Menu not found.') . EOL);
                return '';
            }
            if (argc() == 3 && argv(2) == 'drop') {
                $r = menu_delete_id(intval(argv(1)), local_user());
                if ($r) {
                    info(t('Menu deleted.') . EOL);
                } else {
                    notice(t('Menu could not be deleted.') . EOL);
                }
                goaway(z_root() . '/menu');
            } else {
                $o = replace_macros(get_markup_template('menuedit.tpl'), array('$header' => t('Edit Menu'), '$menu_id' => intval(argv(1)), '$hintedit' => t('Add or remove entries to this menu'), '$editcontents' => t('Edit menu contents'), '$menu_name' => array('menu_name', t('Menu name'), $m['menu_name'], t('Must be unique, only seen by you'), '*'), '$menu_desc' => array('menu_desc', t('Menu title'), $m['menu_desc'], t('Menu title as seen by others'), ''), '$menu_bookmark' => array('menu_bookmark', t('Allow bookmarks'), $m['menu_flags'] & MENU_BOOKMARK ? 1 : 0, t('Menu may be used to store saved bookmarks'), ''), '$menu_system' => $m['menu_flags'] & MENU_SYSTEM ? 1 : 0, '$submit' => t('Modify')));
                return $o;
            }
        } else {
            notice(t('Not found.') . EOL);
            return;
        }
    }
}
Ejemplo n.º 4
0
function mitem_init(&$a)
{
    $uid = local_channel();
    if (array_key_exists('sys', $_REQUEST) && $_REQUEST['sys'] && is_site_admin()) {
        $sys = get_sys_channel();
        $uid = intval($sys['channel_id']);
        $a->is_sys = true;
    }
    if (!$uid) {
        return;
    }
    if (argc() < 2) {
        return;
    }
    $m = menu_fetch_id(intval(argv(1)), $uid);
    if (!$m) {
        notice(t('Menu not found.') . EOL);
        return '';
    }
    $a->data['menu'] = $m;
}
Ejemplo n.º 5
0
function menu_content(&$a)
{
    $uid = local_channel();
    if ($a->is_sys && is_site_admin()) {
        $sys = get_sys_channel();
        $uid = intval($sys['channel_id']);
    }
    if (!$uid) {
        notice(t('Permission denied.') . EOL);
        return '';
    }
    if (argc() == 1) {
        // list menus
        $x = menu_list($uid);
        if ($x) {
            for ($y = 0; $y < count($x); $y++) {
                $m = menu_fetch($x[$y]['menu_name'], $uid, get_observer_hash());
                if ($m) {
                    $x[$y]['element'] = '[element]' . base64url_encode(json_encode(menu_element($m))) . '[/element]';
                }
                $x[$y]['bookmark'] = $x[$y]['menu_flags'] & MENU_BOOKMARK ? true : false;
            }
        }
        $create = replace_macros(get_markup_template('menuedit.tpl'), array('$menu_name' => array('menu_name', t('Menu Name'), '', t('Unique name (not visible on webpage) - required'), '*'), '$menu_desc' => array('menu_desc', t('Menu Title'), '', t('Visible on webpage - leave empty for no title'), ''), '$menu_bookmark' => array('menu_bookmark', t('Allow Bookmarks'), 0, t('Menu may be used to store saved bookmarks'), array(t('No'), t('Yes'))), '$submit' => t('Submit and proceed'), '$sys' => $a->is_sys, '$display' => 'none'));
        $o = replace_macros(get_markup_template('menulist.tpl'), array('$title' => t('Menus'), '$create' => $create, '$menus' => $x, '$nametitle' => t('Menu Name'), '$desctitle' => t('Menu Title'), '$edit' => t('Edit'), '$drop' => t('Drop'), '$created' => t('Created'), '$edited' => t('Edited'), '$new' => t('New'), '$bmark' => t('Bookmarks allowed'), '$hintnew' => t('Create'), '$hintdrop' => t('Delete this menu'), '$hintcontent' => t('Edit menu contents'), '$hintedit' => t('Edit this menu'), '$sys' => $a->is_sys));
        return $o;
    }
    if (argc() > 1) {
        if (intval(argv(1))) {
            if (argc() == 3 && argv(2) == 'drop') {
                menu_sync_packet($uid, get_observer_hash(), intval(argv(1)), true);
                $r = menu_delete_id(intval(argv(1)), $uid);
                if (!$r) {
                    notice(t('Menu could not be deleted.') . EOL);
                }
                goaway(z_root() . '/menu' . ($a->is_sys ? '?f=&sys=1' : ''));
            }
            $m = menu_fetch_id(intval(argv(1)), $uid);
            if (!$m) {
                notice(t('Menu not found.') . EOL);
                return '';
            }
            $o = replace_macros(get_markup_template('menuedit.tpl'), array('$header' => t('Edit Menu'), '$sys' => $a->is_sys, '$menu_id' => intval(argv(1)), '$menu_edit_link' => 'mitem/' . intval(argv(1)) . ($a->is_sys ? '?f=&sys=1' : ''), '$hintedit' => t('Add or remove entries to this menu'), '$editcontents' => t('Edit menu contents'), '$menu_name' => array('menu_name', t('Menu name'), $m['menu_name'], t('Must be unique, only seen by you'), '*'), '$menu_desc' => array('menu_desc', t('Menu title'), $m['menu_desc'], t('Menu title as seen by others'), ''), '$menu_bookmark' => array('menu_bookmark', t('Allow bookmarks'), $m['menu_flags'] & MENU_BOOKMARK ? 1 : 0, t('Menu may be used to store saved bookmarks'), array(t('No'), t('Yes'))), '$menu_system' => $m['menu_flags'] & MENU_SYSTEM ? 1 : 0, '$submit' => t('Submit and proceed')));
            return $o;
        } else {
            notice(t('Not found.') . EOL);
            return;
        }
    }
}
Ejemplo n.º 6
0
function menu_sync_packet($uid, $observer_hash, $menu_id, $delete = false)
{
    $r = menu_fetch_id($menu_id, $uid);
    if ($r) {
        $m = menu_fetch($r['menu_name'], $uid, $observer_hash);
        if ($m) {
            if ($delete) {
                $m['menu_delete'] = 1;
            }
            build_sync_packet($uid, array('menu' => array(menu_element($m))));
        }
    }
}