/** * Generates breadcrumb for a category. * @see get_cat_display_name() * * @param int $cat_id * @param string|null $url * @return string */ function get_cat_display_name_from_id($cat_id, $url = '') { $cat_info = get_cat_info($cat_id); return get_cat_display_name($cat_info['upper_names'], $url); }
// In case of incompatibility, the session stored image_order is removed. if ($orders[$image_order_id][2]) { $conf['order_by'] = str_replace('ORDER BY ', 'ORDER BY ' . $orders[$image_order_id][1] . ',', $conf['order_by']); $page['super_order_by'] = true; } else { pwg_unset_session_var('image_order'); $page['super_order_by'] = false; } } $forbidden = get_sql_condition_FandF(array('forbidden_categories' => 'category_id', 'visible_categories' => 'category_id', 'visible_images' => 'id'), 'AND'); // +-----------------------------------------------------------------------+ // | category | // +-----------------------------------------------------------------------+ if ('categories' == $page['section']) { if (isset($page['category'])) { $page = array_merge($page, array('comment' => trigger_change('render_category_description', $page['category']['comment'], 'main_page_category_description'), 'title' => get_cat_display_name($page['category']['upper_names'], '', false))); } else { $page['title'] = ''; // will be set later } // GET IMAGES LIST if ($page['startcat'] == 0 and !isset($page['chronology_field']) and (isset($page['category']) or isset($page['flat']))) { if (!empty($page['category']['image_order']) and !isset($page['super_order_by'])) { $conf['order_by'] = ' ORDER BY ' . $page['category']['image_order']; } // flat categories mode if (isset($page['flat'])) { // get all allowed sub-categories if (isset($page['category'])) { $query = ' SELECT id
foreach ($related_categories as $category) { // add all uppercats to $ids $ids = array_merge($ids, explode(',', $category['uppercats'])); } $ids = array_unique($ids); $query = ' SELECT id, name, permalink FROM ' . CATEGORIES_TABLE . ' WHERE id IN (' . implode(',', $ids) . ')'; $cat_map = hash_from_query($query, 'id'); foreach ($related_categories as $category) { $cats = array(); foreach (explode(',', $category['uppercats']) as $id) { $cats[] = $cat_map[$id]; } $template->append('related_categories', get_cat_display_name($cats)); } } // maybe someone wants a special display (call it before page_header so that // they can add stylesheets) $element_content = trigger_change('render_element_content', '', $picture['current']); $template->assign('ELEMENT_CONTENT', $element_content); if (isset($picture['next']) and $picture['next']['src_image']->is_original() and $template->get_template_vars('U_PREFETCH') == null and strpos(@$_SERVER['HTTP_USER_AGENT'], 'Chrome/') === false) { $template->assign('U_PREFETCH', $picture['next']['derivatives'][pwg_get_session_var('picture_deriv', $conf['derivative_default_size'])]->get_url()); } $template->assign('U_CANONICAL', make_picture_url(array('image_id' => $picture['current']['id'], 'image_file' => $picture['current']['file']))); // +-----------------------------------------------------------------------+ // | sub pages | // +-----------------------------------------------------------------------+ include PHPWG_ROOT_PATH . 'include/picture_rate.inc.php'; if ($conf['activate_comments']) {
if ('search' == $page['section']) { $template->assign('U_SEARCH_RULES', get_root_url() . 'search_rules.php?search_id=' . $page['search']); } if (isset($page['category']) and is_admin()) { $template->assign('U_EDIT', get_root_url() . 'admin.php?page=album-' . $page['category']['id']); } if (is_admin() and !empty($page['items'])) { $template->assign('U_CADDIE', add_url_params(duplicate_index_url(), array('caddie' => 1))); } if ($page['section'] == 'search' and $page['start'] == 0 and !isset($page['chronology_field']) and isset($page['qsearch_details'])) { $cats = array_merge((array) @$page['qsearch_details']['matching_cats_no_images'], (array) @$page['qsearch_details']['matching_cats']); if (count($cats)) { usort($cats, 'name_compare'); $hints = array(); foreach ($cats as $cat) { $hints[] = get_cat_display_name(array($cat), ''); } $template->assign('category_search_results', $hints); } $tags = (array) @$page['qsearch_details']['matching_tags']; foreach ($tags as $tag) { $tag['URL'] = make_index_url(array('tags' => array($tag))); $template->append('tag_search_results', $tag); } if (empty($page['items'])) { $template->append('no_search_results', htmlspecialchars($page['qsearch_details']['q'])); } elseif (!empty($page['qsearch_details']['unmatched_terms'])) { $template->assign('no_search_results', array_map('htmlspecialchars', $page['qsearch_details']['unmatched_terms'])); } } // image order