function d3forum_updatecategory($mydirname, $cat_id)
{
    $db =& Database::getInstance();
    $requests = d3forum_get_requests4sql_category($mydirname);
    // get children
    include_once XOOPS_ROOT_PATH . "/class/xoopstree.php";
    $mytree = new XoopsTree($db->prefix($mydirname . "_categories"), "cat_id", "pid");
    $children = $mytree->getAllChildId($cat_id);
    $children[] = $cat_id;
    // loop check
    if (in_array($requests['pid'], $children)) {
        die(_MD_D3FORUM_ERR_PIDLOOP);
    }
    if (!$db->query("UPDATE " . $db->prefix($mydirname . "_categories") . " SET cat_title='{$requests['title']}', cat_desc='{$requests['desc']}', cat_weight='{$requests['weight']}', cat_options='{$requests['options']}', pid='{$requests['pid']}' WHERE cat_id={$cat_id}")) {
        die(_MD_D3FORUM_ERR_SQL . __LINE__);
    }
    // rebuild category tree
    d3forum_sync_cattree($mydirname);
    return $cat_id;
}
示例#2
0
    exit;
}
if (!empty($_POST['do_syncforums'])) {
    set_time_limit(0);
    // sync all forums
    $result = $db->query("SELECT forum_id FROM " . $db->prefix($mydirname . "_forums"));
    while (list($forum_id) = $db->fetchRow($result)) {
        d3forum_sync_forum($mydirname, $forum_id, false);
    }
    redirect_header(XOOPS_URL . "/modules/{$mydirname}/admin/index.php?page=advanced_admin", 3, _MD_A_D3FORUM_MSG_SYNCTABLESDONE);
    exit;
}
if (!empty($_POST['do_synccategories'])) {
    set_time_limit(0);
    // rebuild category's tree
    d3forum_sync_cattree($mydirname);
    // sync all categories
    $result = $db->query("SELECT cat_id FROM " . $db->prefix($mydirname . "_categories") . " ORDER BY cat_order_in_tree DESC");
    while (list($cat_id) = $db->fetchRow($result)) {
        d3forum_sync_category($mydirname, $cat_id);
    }
    redirect_header(XOOPS_URL . "/modules/{$mydirname}/admin/index.php?page=advanced_admin", 3, _MD_A_D3FORUM_MSG_SYNCTABLESDONE);
    exit;
}
if (!empty($_POST['do_import']) && !empty($_POST['import_mid'])) {
    set_time_limit(0);
    if (!$xoopsGTicket->check(true, 'd3forum_admin')) {
        redirect_header(XOOPS_URL . '/', 3, $xoopsGTicket->getErrors());
    }
    $import_mid = intval(@$_POST['import_mid']);
    if (empty($importable_modules[$import_mid])) {