$dialogBox->form($htmlAddForum); } if ($cmd == 'exEdCat') { if (trim($_REQUEST['catName']) != '') { if (update_category_title($_REQUEST['catId'], $_REQUEST['catName'])) { $dialogBox->success(get_lang('Category updated')); } else { $dialogBox->error(get_lang('Unable to update category')); } } else { $dialogBox->error(get_lang('Missing field(s)')); $cmd = 'rqEdCat'; } } if ($cmd == 'rqEdCat') { $categorySettingList = get_category_settings($_REQUEST['catId']); if ($categorySettingList) { $htmlEditCat = '<strong>' . get_lang('Edit category') . '</strong>' . "\n" . '<form action="' . $_SERVER['PHP_SELF'] . '" method="post">' . "\n" . '<input type="hidden" name="claroFormId" value="' . uniqid('') . '" />' . "\n" . '<input type="hidden" name="catId" value="' . $categorySettingList['cat_id'] . '" />' . "\n" . '<input type="hidden" name="cmd" value="exEdCat" />' . "\n" . '<label for="catName">' . get_lang('Name') . ' : </label><br />' . "\n" . '<input type="text" name="catName" id="catName"' . ' value="' . $categorySettingList['cat_title'] . '" /><br /><br />' . "\n" . '<input type="submit" value="' . get_lang('Ok') . '" /> ' . claro_html_button($_SERVER['PHP_SELF'], get_lang('Cancel')) . '</form>' . "\n" . "\n"; $dialogBox->form($htmlEditCat); } } if ($cmd == 'exEdForum') { $forumPostAllowed = isset($_REQUEST['forumPostUnallowed']) ? false : true; if (trim($_REQUEST['forumName'] != '')) { if (update_forum_settings($_REQUEST['forumId'], $_REQUEST['forumName'], $_REQUEST['forumDesc'], $forumPostAllowed, $_REQUEST['forumCatId'])) { $dialogBox->success(get_lang('Forum updated')); } else { $dialogBox->error(get_lang('Unable to update forum')); } } else { $dialogBox->error(get_lang('Missing field(s)'));
if (claro_debug_mode()) { $dialogBox->error('<pre>' . $ex->__toString() . '</pre>'); } else { $dialogBox->error($ex->getMessage()); } } } if ('exEdCat' == $cmd) { if (update_category_title($catId, $catName)) { $dialogBox->success(get_lang('Category updated')); } else { $dialogBox->error(get_lang('Unable to update category')); } } if ('rqEdCat' == $cmd) { $categorySettingList = get_category_settings($catId); if ($categorySettingList) { try { $form = new ModuleTemplate('CLFRM', 'forum_editcat.tpl.php'); $form->assign('header', get_lang('Edit category')); $form->assign('catName', $categorySettingList['cat_title']); $form->assign('nextCommand', 'exEdCat'); $form->assign('catId', $catId); $dialogBox->form($form->render()); } catch (Exception $ex) { if (claro_debug_mode()) { $dialogBox->error('<pre>' . $ex->__toString() . '</pre>'); } else { $dialogBox->error($ex->getMessage()); } }
/** * Change change rank of a category * * @param integer $currCatId id of category * @param string $direction (UP|DOWN) * @return boolean true wheater success */ function move_category_rank($currCatId, $direction) { if (strtoupper($direction) == 'UP') { $operator = ' < '; $orderDirection = ' DESC '; } elseif (strtoupper($direction) == 'DOWN') { $operator = ' > '; $orderDirection = ' ASC '; } else { return claro_failure::set_failure('WRONG DIRECTION'); } $tbl_cdb_names = claro_sql_get_course_tbl(); $tbl_forum_categories = $tbl_cdb_names['bb_categories']; $categorySettingList = get_category_settings($currCatId); $currCatRank = $categorySettingList['cat_order']; $tbl_cdb_names = claro_sql_get_course_tbl(); $tbl_forum_categories = $tbl_cdb_names['bb_categories']; $sql = 'SELECT cat_id AS id, cat_order AS rank FROM `' . $tbl_forum_categories . '` WHERE cat_order ' . $operator . ' ' . (int) $currCatRank . ' ORDER BY cat_order ' . $orderDirection . ' LIMIT 1'; $adjacentCategory = claro_sql_query_get_single_row($sql); if (is_array($adjacentCategory)) { // SWAP BOTH RANK $sql = 'UPDATE `' . $tbl_forum_categories . '` SET cat_order = ' . (int) $adjacentCategory['rank'] . ' WHERE cat_id = ' . (int) $currCatId; if (claro_sql_query($sql) == false) { return false; } $sql = 'UPDATE `' . $tbl_forum_categories . '` SET cat_order = ' . (int) $currCatRank . ' WHERE cat_id = ' . (int) $adjacentCategory['id']; if (claro_sql_query($sql) == false) { return false; } } else { return false; } return true; }