<?php namespace hypeJunction\Categories; $container = elgg_extract('container', $vars); $count = get_subcategories($container->guid, array('count' => true)); if (!$count) { return; } $title = elgg_echo('categories:subcategories'); $body = elgg_view('framework/categories/tree', $vars); echo elgg_view_module('info', $title, $body, array('class' => 'categories-subcategories-module'));
function get_categories($cat_id = 0) { global $site_template, $site_db, $site_sess, $config, $lang; global $cat_cache, $cat_parent_cache, $new_image_cache, $subcat_ids; $cattable_width = ceil(intval($config['cat_table_width']) / $config['cat_cells']); if (substr($config['cat_table_width'], -1) == "%") { $cattable_width .= "%"; } if (!isset($cat_parent_cache[$cat_id])) { return ""; } $visible_cat_cache = array(); foreach ($cat_parent_cache[$cat_id] as $key => $val) { if (check_permission("auth_viewcat", $val)) { $visible_cat_cache[$key] = $val; } } if (empty($visible_cat_cache)) { return ""; } $total = sizeof($visible_cat_cache); $table_columns = intval($config['cat_cells']) ? intval($config['cat_cells']) : 2; if ($total <= $table_columns) { $table_rows = 1; } else { $table_rows = $total / $table_columns; if ($total >= $table_columns && !is_integer($table_rows)) { $table_rows = intval($table_rows) + 1; } } $categories = "\n<table width=\"" . $config['cat_table_width'] . "\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n<tr>\n<td valign=\"top\" width=\"" . $cattable_width . "\" class=\"catbgcolor\">\n"; $categories .= "<table border=\"0\" cellpadding=\"" . $config['cat_table_cellpadding'] . "\" cellspacing=\"" . $config['cat_table_cellspacing'] . "\">\n"; $count = 0; $count2 = 0; foreach ($visible_cat_cache as $key => $category_id) { $categories .= "<tr>\n<td valign=\"top\">\n"; $is_new = isset($new_image_cache[$category_id]) && $new_image_cache[$category_id] > 0 ? 1 : 0; $num_images = isset($cat_cache[$category_id]['num_images']) ? $cat_cache[$category_id]['num_images'] : 0; $subcat_ids = array(); get_subcat_ids($category_id, $category_id, $cat_parent_cache); if (isset($subcat_ids[$category_id])) { foreach ($subcat_ids[$category_id] as $val) { if (isset($new_image_cache[$val]) && $new_image_cache[$val] > 0) { $is_new = 1; } if (isset($cat_cache[$val]['num_images'])) { $num_images += $cat_cache[$val]['num_images']; } } } if (defined("SHOW_RANDOM_IMAGE") && SHOW_RANDOM_IMAGE == 0 || defined("SHOW_RANDOM_CAT_IMAGE") && SHOW_RANDOM_CAT_IMAGE == 0) { $random_cat_image_file = ""; } else { $random_cat_image_file = get_random_image($category_id, 0, 1); } $site_template->register_vars(array("cat_id" => $category_id, "cat_name" => format_text($cat_cache[$category_id]['cat_name'], 2), "cat_description" => format_text($cat_cache[$category_id]['cat_description'], 1), "cat_hits" => $cat_cache[$category_id]['cat_hits'], "cat_is_new" => $is_new, "lang_new" => $lang['new'], "sub_cats" => get_subcategories($category_id), "cat_url" => $site_sess->url(ROOT_PATH . "categories.php?" . URL_CAT_ID . "=" . $category_id), "random_cat_image_file" => $random_cat_image_file, "num_images" => $num_images)); $categories .= $site_template->parse_template("category_bit"); $count++; $count2++; $categories .= "</td>\n</tr>\n"; if ($count == $table_rows && $count2 < sizeof($visible_cat_cache)) { $categories .= "</table></td>\n"; $categories .= "<td valign=\"top\" width=\"" . $cattable_width . "\" class=\"catbgcolor\">\n"; $categories .= "<table border=\"0\" cellpadding=\"" . $config['cat_table_cellpadding'] . "\" cellspacing=\"" . $config['cat_table_cellspacing'] . "\">\n"; $total = $total - $count2; $table_columns = $table_columns - 1; /*if ($total <= $table_columns && $table_columns > 1) { $table_rows = 1; } else { $table_rows = $total / $table_columns; if ($total >= $table_columns && !is_integer($table_rows)) { $table_rows = intval($table_rows) + 1; } }*/ $count = 0; } } $categories .= "</table>\n</td>\n</tr>\n</table>\n"; return $categories; }
function get_subcategories($id_cat, $std_link, $n, $padri) { $n--; $ret = ""; $query = "SELECT idCategory, path" . " FROM %lms_category" . " WHERE idParent=" . $id_cat; $result = sql_query($query); if (isset($_GET['m'])) { $month_param = "&m=" . $_GET['m']; } else { $month_param = ""; } if ($id_cat == $padri[$n]) { $status = "block"; } else { $status = "none"; } $m = $n; $ret .= "<ul id='parent_" . $id_cat . "' style=\"display:" . $status . "\";>"; while (list($id_subcat, $path) = sql_fetch_row($result)) { $subname = end(explode('/', $path)); $expanded = ''; if (in_array($id_subcat, $padri)) { $expanded = 'expanded '; } $ret .= '<li class="' . $expanded . ($_GET['id_cat'] == $id_subcat ? 'selected' : '') . '"><a id="' . $id_subcat . '" href="' . $std_link . '&id_cat=' . $id_subcat . $month_param . '">' . $subname . '</a></li>'; $query = "SELECT COUNT(idCategory)" . " FROM %lms_category" . " WHERE idParent=" . $id_subcat; $result2 = sql_query($query); $row = sql_fetch_row($result2); $m = $n; if ($row[0] > 0) { list($_ret, $n) = get_subcategories($id_subcat, $std_link, $n, $padri); $ret .= $_ret; } } $n = $m + 1; $ret .= "</ul>"; return array($ret, $n); }
} if (!($conn = mysql_connect($ini_array['ServerName'], $ini_array['UserName'], $ini_array['Password']))) { echo 'Невозможно установить соединение. Перейдите к <a href="install.php">установке</a>'; exit; } if (!mysql_select_db($ini_array['Database'])) { echo 'БД не найдена. Перейдите к <a href="install.php">установке</a>'; exit; } $ini_string = 'SET NAMES utf8'; mysql_query($ini_string) or die("Невозможно выполнить запрос: " . mysql_error()); $cities = get_cities(); // Загрузка данных для селектора "Города" $metro_stations = get_metro(); // Загрузка данных для селектора "Метро" $subcategory = get_subcategories(); // Загрузка данных для селектора "Категории" print_r($subcategory); $msg_ad_status = ''; // Информационная строка, которая будет выводиться перед формой, и будет уведомлять пользователя о том сохранено ли его объявление if (isset($_POST['seller_name'])) { // Кнопка 'Отправить' нажата? //print_r($_POST);exit; $err_msg = ad_check_n_view_errors(); if ($err_msg) { // Заполнены ли все необходимые поля? $ad = $_POST; $ad_flag = 1; // Установка флага в значение 1: не заполнены нужные поля, пользователь должен внести все необходимые данные } else { $post = escape_POST();
<?php namespace hypeJunction\Categories; $entity = elgg_extract('entity', $vars); $input_params = elgg_extract('input', $vars, array()); $name = elgg_extract('name', $input_params, 'categories'); $value = elgg_extract('value', $input_params, array()); $multiple = elgg_extract('multiple', $input_params, HYPECATEGORIES_INPUT_MULTIPLE); if (elgg_instanceof($entity, 'object', HYPECATEGORIES_SUBTYPE)) { $children = get_subcategories($entity->guid, array('count' => true)); if ($children == 0) { $checkbox_attr = elgg_format_attributes(array('type' => $multiple === false ? 'radio' : 'checkbox', 'name' => "{$name}[]", 'value' => $entity->guid, 'checked' => is_array($value) && in_array($entity->guid, $value))); $checkbox = "<input {$checkbox_attr} />"; } $attr = $entity->title; } else { if (elgg_instanceof($entity, 'site')) { $attr = elgg_echo('categories:select:site'); } else { $attr = elgg_echo('categories:select:group'); } } echo '<label>' . $checkbox . $attr . '</label>';
"><?php echo $category['name']; ?> </option> <?php } ?> </select> </div> <label for="subcategory" class="col-sm-2 control-label">Sub Category</label> <div class="col-sm-10 col-md-4"> <select class="form-control" name="subcategory"> <option value="0">None</option> <?php foreach (get_subcategories() as $subcategory) { ?> <option value="<?php echo $subcategory['ID']; ?> "><?php echo $subcategory['name']; ?> </option> <?php } ?> </select> </div> </div>
function get_categories() { global $LSP_URL; $dbh =& get_db(); $stmt = $dbh->prepare('SELECT categories.name AS name, COUNT(files.id) AS file_count, categories.id AS id ' . 'FROM categories LEFT JOIN files ON files.category = categories.id ' . 'GROUP BY categories.name ' . 'ORDER BY categories.name '); echo '<ul class="lsp-categories">'; $sort = GET('sort', 'date'); if ($stmt->execute()) { while ($object = $stmt->fetch(PDO::FETCH_ASSOC)) { echo '<li class="lsp-category"><a href="' . htmlentities($LSP_URL . "?action=browse&category=" . rawurlencode($object['name']) . "&sort={$sort}") . '">' . $object['name'] . ' <span class="count">(' . $object['file_count'] . ")</span></a>"; if (!GET_EMPTY('category') && GET('category') == $object['name']) { get_subcategories($object['name'], $object['id']); } echo '</li>'; } } echo "</ul>"; $stmt = null; $dbh = null; }
if ($_GET['action'] == 'edit' && isset($_GET['id'])) { $post_edit = get_post($_GET['id']); $subcategory_list = get_subcategories($post_edit['type']); } $category_list = get_categories(); $tpl = "posts_add_tpl.php"; } // форма добавления и редактирования раздела if ($_GET['id'] && $_GET['action'] == 'edit_category' || $_GET['action'] == 'add_category') { $category_edit = get_category($_GET['id']); $tpl = "posts_edit_category_tpl.php"; } // Вывод списка разделов и категорий if ($_GET['action'] == 'category') { $category_list = get_categories(); $subcategory_list = get_subcategories(); $tpl = "posts_list_category_tpl.php"; } // Форма добавления новой категории if ($_GET['action'] == 'add_subcategory') { $tpl = "posts_add_subcategory_tpl.php"; } // Вывод комментариев if ($_GET['action'] == 'comments') { $limit = '15'; page_limit($limit); $comments_list = get_comments_list($limit); $tpl = "posts_list_comments_tpl.php"; } // Форма изменения комментария if ($_GET['action'] == 'edit_comment') {
exit; } if (!$mysqli->select_db($ini_array['Database'])) { echo 'БД не найдена. Перейдите к <a href="install.php">установке</a>'; $mysqli->close(); exit; } $ini_string = 'SET NAMES utf8'; if (!$mysqli->query($ini_string)) { die('Ошибка при выполении инструкции. ' . $ini_string . ' ' . mysqli_connect_error()); } $cities = get_cities($mysqli); // Загрузка данных для селектора "Города" $metro_stations = get_metro($mysqli); // Загрузка данных для селектора "Метро" $subcategory = get_subcategories($mysqli); // Загрузка данных для селектора "Категории" $msg_ad_status = ''; // Информационная строка, которая будет выводиться перед формой, и будет уведомлять пользователя о том сохранено ли его объявление if (isset($_POST['seller_name'])) { // Кнопка 'Отправить' нажата? $err_msg = ad_check_n_view_errors(); if ($err_msg) { // Заполнены ли все необходимые поля? $ad = $_POST; $ad_flag = 1; // Установка флага в значение 1: не заполнены нужные поля, пользователь должен внести все необходимые данные } else { $post = escape_POST($mysqli); if (!isset($post['allow_mails'])) { $post['allow_mails'] = 0;
ossim_valid($action, OSS_DIGIT, 'illegal:' . _("Action")); if (ossim_error()) { die(ossim_error()); } if ($action != '' && isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') { switch ($action) { case 1: $response = get_policy_groups($conn, $data); break; case 2: $response = get_policy_actions($conn, $data); break; case 3: $response = get_targets($conn, $data); break; case 4: $response = get_plugin_groups($conn, $data); break; case 5: $response = get_categories($conn, $data); break; case 6: $response = get_subcategories($conn, $data); break; default: $response['error'] = TRUE; $response['msg'] = 'Wrong Option Chosen'; } echo json_encode($response); $db->close(); }