function ems_edit_category_field($tag) { $value = get_option('cat-template-' . $tag->term_id); echo '<tr class="form-field"> <th scope="row"><label for="cat-template">内容显示方式</label></th> <td> <select name="cat-template" id="cat-template">' . get_select($value) . '</select> <br> <span class="cat-template">内容显示方式.</span> </td> </tr>'; }
if (isset($_REQUEST['c'])) { $cat_id = (int) $_REQUEST['c']; } } $catlist = get_list('category', $cat_id, TRUE); $forumlocked = $forumunlocked = ''; $forumstatus == FORUM_LOCKED ? $forumlocked = 'selected="selected"' : ($forumunlocked = 'selected="selected"'); $statuslist = '<option value="' . FORUM_UNLOCKED . '" ' . $forumunlocked . '>' . $lang['STATUS_UNLOCKED'] . '</option>\\n'; $statuslist .= '<option value="' . FORUM_LOCKED . '" ' . $forumlocked . '>' . $lang['STATUS_LOCKED'] . '</option>\\n'; $forum_display_sort_list = get_forum_display_sort_option($forum_display_sort, 'list', 'sort'); $forum_display_order_list = get_forum_display_sort_option($forum_display_order, 'list', 'order'); $s_hidden_fields = '<input type="hidden" name="mode" value="' . $newmode . '" /><input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" />'; $s_parent = '<option value="-1"> ' . $lang['SF_NO_PARENT'] . '</option>\\n'; $sel_forum = $forum_parent && !isset($_REQUEST['forum_parent']) ? $forum_id : $forum_parent; $s_parent .= sf_get_list('forum', $forum_id, $sel_forum); $template->assign_vars(array('TPL_EDIT_FORUM' => true, 'S_FORUM_DISPLAY_SORT_LIST' => $forum_display_sort_list, 'S_FORUM_DISPLAY_ORDER_LIST' => $forum_display_order_list, 'S_FORUM_ACTION' => 'admin_forums.php', 'S_HIDDEN_FIELDS' => $s_hidden_fields, 'S_SUBMIT_VALUE' => $buttonvalue, 'S_CAT_LIST' => $catlist, 'S_STATUS_LIST' => $statuslist, 'SHOW_ON_INDEX' => $show_on_index, 'S_PARENT_FORUM' => $s_parent, 'CAT_LIST_CLASS' => $forum_parent ? 'hidden' : '', 'SHOW_ON_INDEX_CLASS' => !$forum_parent ? 'hidden' : '', 'TPL_SELECT' => get_select('forum_tpl', $forum_tpl_id, 'html', $lang['TEMPLATE_DISABLE']), 'ALLOW_REG_TRACKER' => build_select('allow_reg_tracker', array($lang['DISALLOWED'] => 0, $lang['ALLOWED'] => 1), $allow_reg_tracker), 'ALLOW_PORNO_TOPIC' => build_select('allow_porno_topic', array($lang['NONE'] => 0, $lang['YES'] => 1), $allow_porno_topic), 'SELF_MODERATED' => build_select('self_moderated', array($lang['NONE'] => 0, $lang['YES'] => 1), $self_moderated), 'L_FORUM_TITLE' => $l_title, 'PRUNE_DAYS' => $prune_days, 'FORUM_NAME' => htmlCHR($forumname), 'DESCRIPTION' => htmlCHR($forumdesc))); break; case 'createforum': // // Create a forum in the DB // $cat_id = intval($_POST[POST_CAT_URL]); $forum_name = (string) $_POST['forumname']; $forum_desc = (string) $_POST['forumdesc']; $forum_status = intval($_POST['forumstatus']); $prune_days = intval($_POST['prune_days']); $forum_parent = $_POST['forum_parent'] != -1 ? intval($_POST['forum_parent']) : 0; $show_on_index = $forum_parent ? intval($_POST['show_on_index']) : 1; $forum_display_sort = intval($_POST['forum_display_sort']); $forum_display_order = intval($_POST['forum_display_order']); $forum_tpl_id = (int) $_POST['forum_tpl_select'];
} $sql_args = DB()->build_array('UPDATE', $sql_ary); // Update group's data DB()->query("UPDATE " . BB_GROUPS . " SET {$sql_args} WHERE group_id = {$group_id}"); $message = $lang['UPDATED_GROUP'] . '<br /><br />'; $message .= sprintf($lang['CLICK_RETURN_GROUPSADMIN'], '<a href="admin_groups.php">', '</a>') . '<br /><br />'; $message .= sprintf($lang['CLICK_RETURN_ADMIN_INDEX'], '<a href="index.php?pane=right">', '</a>'); bb_die($message); } else { if ($mode == 'newgroup') { $sql_ary['group_time'] = $sql_ary['mod_time'] = TIMENOW; $sql_args = DB()->build_array('INSERT', $sql_ary); // Create new group DB()->query("INSERT INTO " . BB_GROUPS . " {$sql_args}"); $new_group_id = DB()->sql_nextid(); // Create user_group for group's moderator add_user_into_group($new_group_id, $group_moderator); $message = $lang['ADDED_NEW_GROUP'] . '<br /><br />'; $message .= sprintf($lang['CLICK_RETURN_GROUPSADMIN'], '<a href="admin_groups.php">', '</a>') . '<br /><br />'; $message .= sprintf($lang['CLICK_RETURN_ADMIN_INDEX'], '<a href="index.php?pane=right">', '</a>'); bb_die($message); } else { bb_die($lang['NO_GROUP_ACTION']); } } } } else { $template->assign_vars(array('TPL_GROUP_SELECT' => true, 'S_GROUP_ACTION' => "admin_groups.php", 'S_GROUP_SELECT' => stripslashes(get_select('groups')))); } } print_page('admin_groups.tpl', 'admin');
} $template->assign_block_vars('c.f.acl', array('DISABLED' => $disabled, 'PERM_SIGN' => $perm_sign, 'ACL_CLASS' => $acl_class, 'FORUM_ID' => $f_id, 'ACL_TYPE_BF' => $bf_num, 'ACL_VAL' => $auth_via_acl ? 1 : 0)); } } } $template->assign_vars(array('AUTH_MOD_BF' => AUTH_MOD)); $s_column_span = 2; foreach ($forum_auth_fields as $auth_type) { $template->assign_block_vars('acltype', array('ACL_TYPE_NAME' => preg_replace("#(.{5})#u", "\\1<br />", $lang[strtoupper($auth_type)]), 'ACL_TYPE_BF' => $bf['forum_perm'][$auth_type])); $s_column_span++; } unset($forums, $ug_data, $u_access); $datastore->rm('cat_forums'); $s_hidden_fields = ' <input type="hidden" name="mode" value="' . $mode . '" /> <input type="hidden" name="g" value="' . $group_id . '" /> '; $template->assign_vars(array('TPL_AUTH_UG_MAIN' => true, 'T_USER_OR_GROUPNAME' => $lang['GROUP_NAME'], 'USER_LEVEL' => false, 'T_AUTH_TITLE' => $lang['AUTH_CONTROL_GROUP'], 'T_AUTH_EXPLAIN' => $lang['GROUP_AUTH_EXPLAIN'], 'USER_OR_GROUPNAME' => htmlCHR($group_data['group_name']), 'S_COLUMN_SPAN' => $s_column_span, 'S_HIDDEN_FIELDS' => $s_hidden_fields)); } else { // Select a user/group if ($mode == 'user') { $template->assign_vars(array('TPL_SELECT_USER' => true, 'U_SEARCH_USER' => BB_ROOT . "search.php?mode=searchuser")); } else { $template->assign_vars(array('TPL_SELECT_GROUP' => true, 'S_GROUP_SELECT' => get_select('groups'))); } $s_hidden_fields = '<input type="hidden" name="mode" value="' . $mode . '" />'; $template->assign_vars(array('S_HIDDEN_FIELDS' => $s_hidden_fields)); } } $template->assign_vars(array('YES_SIGN' => $yes_sign, 'NO_SIGN' => $no_sign, 'T_MOD_YES' => $lang['MODERATOR'], 'T_MOD_NO' => $lang['NO'], 'S_AUTH_ACTION' => "admin_ug_auth.php", 'SELECTED_CAT' => !empty($_REQUEST['c']) ? $_REQUEST['c'] : '', 'U_ALL_FORUMS' => !empty($base_url) ? "{$base_url}&c=all" : '')); print_page('admin_ug_auth.tpl', 'admin');
/** * return the html for a tabel that contains current list that is being build * @param array $definition defintion of current list that is being build * @return string html of current list */ function get_field_definition_table($definition) { global $logging; $logging->trace("getting field definition table"); $input_html_id = "<input type=text size=\"2\" maxlength=\"2\""; $input_html_name = "<input type=text size=\"24\" maxlength=\"40\""; $input_html_options = "<input type=text size=\"32\" maxlength=\"200\""; $input_html_value_invisible = "<input style=\"visibility: hidden;\" type=text size=\"1\" maxlength=\"100\""; $html_str = ""; $html_str .= " <div class=\"corner top_left_normal\"></div>\n"; $html_str .= " <div class=\"corner top_right_normal\"></div>\n"; $html_str .= " <div class=\"listbuilder_title\">" . translate("LABEL_DEFINE_TABLE_FIELDS") . "</div>\n"; $html_str .= " <div id=\"listbuilder_contents\" class=\"listbuilder_contents\">\n"; $html_str .= " <form id=\"database_definition_form\" action=\"javascript:void(0);\" method=\"javascript:void(0);\" onsubmit=\"javascript:void(0);\">\n"; $html_str .= " <table id=\"listbuilder_definition\" align=\"left\" border=\"0\" cellspacing=\"0\">\n"; $html_str .= " <thead>\n"; $html_str .= " <tr>\n"; $html_str .= " <th>" . translate("LABEL_FIELDTYPE") . "</th>\n"; $html_str .= " <th>" . translate("LABEL_FIELDNAME") . "</th>\n"; $html_str .= " <th>" . translate("LABEL_OPTIONS") . "</th>\n"; $html_str .= " <th> </th>\n"; $html_str .= " <th colspan=\"3\"> </th>\n"; $html_str .= " </tr>\n"; $html_str .= " </thead>\n"; $html_str .= " <tbody>\n"; for ($row = 0; $row < count($definition) / 4; $row += 1) { $position_id = $row * 4; $position_type = $row * 4 + 1; $position_name = $row * 4 + 2; $position_options = $row * 4 + 3; $logging->debug("row " . $row . " (id=" . $definition[$position_id] . ", type=" . $definition[$position_type] . ", name=" . $definition[$position_name] . ", opt=" . $definition[$position_options] . ")"); # do not display a row for the attachment field if ($definition[$position_type] == FIELD_TYPE_DEFINITION_ATTACHMENTS && $definition[$position_name] == DB_ATTACHMENTS_NAME) { $html_str .= " <tr class=\"invisible_collapsed\">\n"; } else { $html_str .= " <tr>\n"; } # first an invisible column $html_str .= " <td class=\"invisible_collapsed\">" . $input_html_id . " readonly "; $html_str .= "name=\"row_" . $row . "_0\" value=\"" . $definition[$position_id] . "\"</td>\n"; # the first column - type # create a different kind of select for the first row and for the attachment row if ($row == 0 || $definition[$position_type] == FIELD_TYPE_DEFINITION_ATTACHMENTS && $definition[$position_name] == DB_ATTACHMENTS_NAME) { $html_str .= " <td id=\"row_" . $row . "_1\"><select class=\"inactive_input\" name=\"row_" . $row . "_1\">\n"; $html_str .= " <option value=\"" . $definition[$position_type] . "\" selected>" . translate($definition[$position_type]) . "</option>\n"; $html_str .= " </select></td>\n"; } else { $html_str .= " <td id=\"row_" . $row . "_1\">" . get_select("", $row, $definition[$position_type]) . "</td>\n"; } # the second column - name $html_str .= " <td id=\"row_" . $row . "_2\">" . $input_html_name . " name=\"row_" . $row . "_2\" "; if ($row == 0) { $html_str .= "readonly class=\"inactive_input\" "; } else { $html_str .= "class=\"input_box\" "; } $html_str .= "value=\"" . $definition[$position_name] . "\"></td>\n"; # the third column - options if ($definition[$position_type] == FIELD_TYPE_DEFINITION_SELECTION) { $html_str .= " <td id=\"row_" . $row . "_3\">" . $input_html_options . " name=\"row_" . $row . "_3\" value=\"" . $definition[$position_options] . "\"></td>\n"; } else { if ($definition[$position_type] == FIELD_TYPE_DEFINITION_NUMBER || $definition[$position_type] == FIELD_TYPE_DEFINITION_FLOAT) { $html_str .= " <td id=\"row_" . $row . "_3\"><select class=\"selection_box\" name=\"row_" . $row . "_3\">\n"; $html_str .= " <option value=\"" . NUMBER_COLUMN_NO_SUMMATION . "\""; if ($definition[$position_options] == NUMBER_COLUMN_NO_SUMMATION) { $html_str .= " selected"; } $html_str .= ">" . translate("LABEL_NUMBER_COLUMN_NO_SUMMATION") . "</option>\n"; $html_str .= " <option value=\"" . NUMBER_COLUMN_SUMMATION . "\""; if ($definition[$position_options] == NUMBER_COLUMN_SUMMATION) { $html_str .= " selected"; } $html_str .= ">" . translate("LABEL_NUMBER_COLUMN_SUMMATION") . "</option>\n"; $html_str .= " </select></td>\n"; } else { if ($definition[$position_type] == FIELD_TYPE_DEFINITION_AUTO_NUMBER) { $html_str .= " <td id=\"row_" . $row . "_3\"><select class=\"selection_box\" name=\"row_" . $row . "_3\">\n"; $html_str .= " <option value=\"" . COLUMN_SHOW . "\""; if ($definition[$position_options] == COLUMN_SHOW) { $html_str .= " selected"; } $html_str .= ">" . translate("LABEL_COLUMN_SHOW") . "</option>\n"; $html_str .= " <option value=\"" . COLUMN_NO_SHOW . "\""; if ($definition[$position_options] == COLUMN_NO_SHOW) { $html_str .= " selected"; } $html_str .= ">" . translate("LABEL_COLUMN_NO_SHOW") . "</option>\n"; $html_str .= " </select></td>\n"; } else { if ($definition[$position_type] == FIELD_TYPE_DEFINITION_AUTO_CREATED || $definition[$position_type] == FIELD_TYPE_DEFINITION_AUTO_MODIFIED) { $html_str .= " <td id=\"row_" . $row . "_3\"><select class=\"selection_box\" name=\"row_" . $row . "_3\">\n"; $html_str .= " <option value=\"" . NAME_DATE_OPTION_DATE_NAME . "\""; if ($definition[$position_options] == NAME_DATE_OPTION_DATE_NAME) { $html_str .= " selected"; } $html_str .= ">" . translate("LABEL_DATE_NAME") . "</option>\n"; $html_str .= " <option value=\"" . NAME_DATE_OPTION_DATE . "\""; if ($definition[$position_options] == NAME_DATE_OPTION_DATE) { $html_str .= " selected"; } $html_str .= ">" . translate("LABEL_DATE_ONLY") . "</option>\n"; $html_str .= " <option value=\"" . NAME_DATE_OPTION_NAME . "\""; if ($definition[$position_options] == NAME_DATE_OPTION_NAME) { $html_str .= " selected"; } $html_str .= ">" . translate("LABEL_NAME_ONLY") . "</option>\n"; $html_str .= " </select></td>\n"; } else { $html_str .= " <td> - " . $input_html_value_invisible . " name=\"row_" . $row . "_3\" value=\"\"></td>\n"; } } } } # the fourth column - remarks $html_str .= " <td>" . translate($definition[$position_type] . "_EXPLANATION") . "</td>\n"; # the fifth column - up if ($row > 1 && $row < count($definition) / 4 - 1) { $html_str .= " <td width=\"1%\">"; $html_str .= get_href(get_onclick(ACTION_MOVE_LISTBUILDER_ROW, HTML_NO_LIST_PERMISSION_CHECK, "", "", "({$row}, %27up%27, xajax.getFormValues(%27database_definition_form%27))"), " ", "icon_up"); $html_str .= "</td>\n"; } else { $html_str .= " <td width=\"1%\">"; $html_str .= "<p style=\"visibility: hidden;\">up</p>"; $html_str .= "</td>\n"; } # the sixth column - down if ($row > 0 && $row < count($definition) / 4 - 2) { $html_str .= " <td width=\"1%\">"; $html_str .= get_href(get_onclick(ACTION_MOVE_LISTBUILDER_ROW, HTML_NO_LIST_PERMISSION_CHECK, "", "", "({$row}, %27down%27, xajax.getFormValues(%27database_definition_form%27))"), " ", "icon_down"); $html_str .= "</td>\n"; } else { $html_str .= " <td width=\"1%\">"; $html_str .= "<p style=\"visibility: hidden;\">dn</p>"; $html_str .= "</td>\n"; } # the seventh column - delete if ($row > 0 && $row < count($definition) / 4 - 1) { $html_str .= " <td width=\"1%\">"; $html_str .= get_href(get_onclick(ACTION_DELETE_LISTBUILDER_ROW, HTML_NO_LIST_PERMISSION_CHECK, "", "", "({$row}, xajax.getFormValues(%27database_definition_form%27))"), translate("BUTTON_DELETE"), "icon_delete"); $html_str .= "</td>\n"; } else { $html_str .= " <td width=\"1%\">"; $html_str .= "<p style=\"visibility: hidden;\">dl</p>"; $html_str .= "</td>\n"; } $html_str .= " </tr>\n"; } $html_str .= " </tbody>\n"; $html_str .= " </table> <!-- listbuilder_general_settings -->\n"; $html_str .= " </form> <!-- database_definition_form -->\n\n"; $html_str .= " </div> <!-- listbuilder_contents -->\n"; $html_str .= " <div class=\"corner bottom_left_normal\"></div>\n"; $html_str .= " <div class=\"corner bottom_right_normal\"></div>\n"; $logging->trace("got field definition table"); return $html_str; }
$sql = "SELECT forum_name, allow_reg_tracker, forum_tpl_id FROM " . BB_FORUMS . " WHERE forum_id = {$forum_id} LIMIT 1"; if (!$forum_id or !($f_data = DB()->fetch_row($sql))) { bb_die($lang['FORUM_NOT_EXIST']); } // tpl_data $tpl_data = array(); $sql = "SELECT * FROM " . BB_TOPIC_TPL . " WHERE tpl_id = {$f_data['forum_tpl_id']} LIMIT 1"; if (!$f_data['forum_tpl_id'] or !($tpl_data = DB()->fetch_row($sql))) { if (!$edit_tpl_mode) { redirect(POSTING_URL . "?mode=newtopic&f={$forum_id}"); } } $template->assign_vars(array('PAGE_TITLE' => $lang['NEW_RELEASE'], 'FORUM_NAME' => $f_data['forum_name'], 'FORUM_ID' => $forum_id, 'TPL_FORM_ACTION' => POSTING_URL . "?mode=newtopic&f={$forum_id}", 'REGULAR_TOPIC_HREF' => POSTING_URL . "?mode=newtopic&f={$forum_id}", 'TOR_REQUIRED' => $f_data['allow_reg_tracker'], 'EDIT_TPL' => $edit_tpl_mode, 'CAN_EDIT_TPL' => $can_edit_tpl, 'EDIT_TPL_URL' => POSTING_URL . "?mode=new_rel&f={$forum_id}&edit_tpl=1")); if ($tpl_data) { // tpl_rules_html $tpl_rules_html = ''; if ($tpl_data['tpl_rules_post_id']) { if (!($tpl_rules_html = bbcode2html(DB()->fetch_row("SELECT post_text FROM " . BB_POSTS_TEXT . " WHERE post_id = " . $tpl_data['tpl_rules_post_id'], 'post_text')))) { $tpl_data['tpl_rules_post_id'] = 0; DB()->query("UPDATE " . BB_TOPIC_TPL . " SET tpl_rules_post_id = 0 WHERE tpl_id = {$f_data['forum_tpl_id']} LIMIT 1"); } } $template->assign_vars(array('TPL_ID' => $tpl_data['tpl_id'], 'TPL_NAME' => $tpl_data['tpl_name'], 'TPL_SRC_FORM_VAL' => $tpl_data['tpl_src_form'], 'TPL_SRC_TITLE_VAL' => $tpl_data['tpl_src_title'], 'TPL_SRC_MSG_VAL' => $tpl_data['tpl_src_msg'], 'TPL_RULES_HTML' => $tpl_rules_html)); } if ($edit_tpl_mode) { $template->assign_vars(array('NO_TPL_ASSIGNED' => !$f_data['forum_tpl_id'], 'TPL_SELECT' => get_select('forum_tpl', $f_data['forum_tpl_id']))); if ($tpl_data) { $template->assign_vars(array('TPL_COMMENT' => $tpl_data['tpl_comment'], 'TPL_RULES_POST_ID' => $tpl_data['tpl_rules_post_id'], 'TPL_LAST_EDIT_TIME' => bb_date($tpl_data['tpl_last_edit_tm'], 'd-M-y H:i'), 'TPL_LAST_EDIT_USER' => get_username(intval($tpl_data['tpl_last_edit_by'])), 'TPL_LAST_EDIT_TIMESTAMP' => $tpl_data['tpl_last_edit_tm'])); } } print_page(TEMPLATES_DIR . 'posting_tpl.tpl');
/** * <pre>skip_select( $name, $elements, $args );</pre> * * Adding a select field. * * <b>Default Usage</b> * <code> * skip_select( 'myselect', '1,2,3,4,5,6,7,8,9,10' ); * </code> * This will create an automated saved select field with values 1 till 10. * * <b>Parameters</b> * * <code> * $name // (string) (required) The name of the field. * $elements // (array/string) (required) The elements to show in Select. * $args // (array/string) (optional) Values for further settings. * </code> * * <b>$args Settings</b> * * <ul> * <li>id (string) ID if the HTML Element.</li> * <li>label (string) Label for Element.</li> * <li>default (string) Default Value if no Value is set before ('checked' if value have to be checked on default).</li> * <li>classes (string) Name of CSS Classes which will be inserted into HTML seperated by empty space.</li> * <li>before_element (string) Content before the element.</li> * <li>after_element (string) Content after the element.</li> * <li>save (boolean) TRUE if value of field have to be saved in Database, FALSE if not (default TRUE).</li> * </ul> * * <b>Example</b> * * Creating a select field with values Opion 1 till 3 in a form. * <code> * skip_form_start( 'myformname' ); * * $elements = array( * array( 'label' => 'Option 1', 'value' => '1' ), * array( 'label' => 'Option 2', 'value' => '2' ), * array( 'label' => 'Option 3', 'value' => '3' ), * ); * * $args = array( * 'id' = 'myelementid', * 'label' => 'Option' * ); * skip_select( 'myselect', $elements, $args ); * * skip_form_end(); * </code> * * Getting back the saved data. * <code> * $value = skip_value( 'myformname', 'myselect' ); * </code> * @package Skip\Forms * @since 1.0 * @param string $name The name of the checkbox field. * @param array/string $elements The elements to show in Select. * @param array/string $args List of Arguments. */ function select($name, $elements, $label = FALSE, $args = array()) { echo get_select($name, $elements, $label, $args); }