Ejemplo n.º 1
0
<?php

# MediaLinks - Administration
# $Id: keywords.php,v 1.1 2007/11/25 04:04:55 nobu Exp $
include '../../../include/cp_header.php';
include_once '../functions.php';
include_once XOOPS_ROOT_PATH . '/class/pagenav.php';
$keywords = new KeyWords();
$op = isset($_GET['op']) ? $_GET['op'] : '';
if (isset($_POST['keys'])) {
    $myts =& MyTextSanitizer::getInstance();
    $keys = array('name', 'weight', 'description');
    $nodetype = intval($_POST['nodetype']);
    $par = intval($_POST['parent']);
    if ($par == 0) {
        $nodetype = 1;
    }
    // only for category
    $vals = array('nodetype' => $nodetype, 'parent' => $par, 'relay' => $nodetype != 1 ? 0 : intval($_POST['relay']));
    foreach ($keys as $k) {
        $vals[$k] = $xoopsDB->quoteString($myts->stripSlashesGPC($_POST[$k]));
    }
    $keyid = intval($_POST['keyid']);
    redirect_result($keywords->insert($keyid, $vals));
} elseif (isset($_POST['delkey'])) {
    $keyid = intval($_POST['keyid']);
    redirect_result($keywords->delete($keyid));
}
xoops_cp_header();
include "mymenu.php";
$keyid = isset($_GET['keyid']) ? intval($_GET['keyid']) : 0;
Ejemplo n.º 2
0
function keywords_widget(&$ret, &$relays, &$roots)
{
    global $content, $keywords;
    $keywords = new KeyWords();
    $tree = $keywords->getTree();
    if (empty($tree)) {
        return null;
    }
    $keys = $content->getKeywords();
    $ret = array();
    $relays = array();
    $all = $keywords->get();
    foreach ($all as $key) {
        if (!empty($key['relay'])) {
            $root = $key;
            while ($root['parent']) {
                $root = $all[$root['parent']];
            }
            $relays[$key['keyid']] = array('keyid' => $key['relay'], 'root' => $root['keyid'], 'values' => array(), 'labels' => array());
        }
    }
    $roots = array();
    foreach ($tree as $key) {
        // makes toplevel widget
        $keyid = $key['keyid'];
        $roots[] = $keyid;
        $name = "keywords[{$keyid}]";
        $words = new KeyFormSelect('', $name);
        $words->addOption('', _MD_KEY_NONE);
        $opts = key_expand($key['child']);
        $words->addOptions($opts);
        $find = null;
        foreach ($opts as $opt) {
            $oid = $opt['keyid'];
            $check = true;
            if (empty($oid)) {
                continue;
            }
            foreach (explode(',', $oid) as $id) {
                if (!in_array($id, $keys)) {
                    $check = false;
                }
                $pid = $all[$id]['parent'];
                if (isset($relays[$pid])) {
                    $relays[$pid]['values'][] = $opt['keyid'];
                    $relays[$pid]['labels'][] = $opt['name'];
                }
            }
            if ($check) {
                $find = $oid;
            }
        }
        if ($find) {
            $words->setValue($find);
        }
        $words->setExtra('onchange="changeKeyword(this);"');
        $ret[$key['keyid']] = $words->render();
    }
    return $ret;
}
Ejemplo n.º 3
0
 function keys_path($id = 0, $find = 0, $force = false)
 {
     global $keywords;
     if (!$id) {
         return $this->find_keylist();
     }
     if (empty($keywords)) {
         $keywords = new KeyWords();
     }
     return $keywords->keys_path($id, $find, $force);
 }
Ejemplo n.º 4
0
<?php

# Medialinks index page
# $Id: index.php,v 1.3 2007/11/25 06:34:37 nobu Exp $
include "../../mainfile.php";
include_once "functions.php";
include_once XOOPS_ROOT_PATH . '/class/pagenav.php';
$keywords = new KeyWords();
$isadmin = is_object($xoopsUser) && $xoopsUser->isAdmin($xoopsModule->getVar('mid'));
include XOOPS_ROOT_PATH . "/header.php";
$xoopsOption['template_main'] = 'medialinks_index.html';
$keyid = isset($_GET['keyid']) ? intval($_GET['keyid']) : 0;
$xoopsTpl->assign('keyid', $keyid);
$keypath = $keywords->keys_path($keyid, 0, true);
$xoopsTpl->assign('keypath', $keypath);
set_ml_breadcrumbs($keypath);
$xoopsTpl->assign(get_keyword_index($keyid, $isadmin));
$start = isset($_GET['start']) ? intval($_GET['start']) : 0;
$max = $xoopsModuleConfig['max_rows'];
$verb = intval($GLOBALS['mlModuleConfig']['list_style']);
$media = ml_index_view($keyid ? 'weight, mid' : 'ctime DESC', 0, $keyid, $verb, $max, $start);
$xoopsTpl->assign('media', $media);
$n = $media['count'];
$nav = new XoopsPageNav($n, $max, $start, "start", "keyid=" . $keyid);
if ($n > $max) {
    $xoopsTpl->assign('pagenav', $nav->renderNav());
}
include XOOPS_ROOT_PATH . "/footer.php";
exit;
function get_keyword_index($keyid, $isadmin = false)
{