diff options
author | rvelices <rv-github@modusoptimus.com> | 2007-02-27 01:56:16 +0000 |
---|---|---|
committer | rvelices <rv-github@modusoptimus.com> | 2007-02-27 01:56:16 +0000 |
commit | 47512ce6a64fa356214c162a8313480c6aed41d2 (patch) | |
tree | a0e35e2f89ef789f380adc5b8951444c189de4e7 | |
parent | bfb4b15d2f75835033d9bbb865edd77dcb282bb6 (diff) |
- refactoring page['category'] before 1.7 release
page['category'] is not an id anymore, but an associative array of category info
all of page['cat_xxx'] or page['uppercats'] merged into one
simplifies calls to make_index_url
give plugins a clean start for page variables for version 1.7
git-svn-id: http://piwigo.org/svn/trunk@1861 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to '')
-rw-r--r-- | admin/cat_list.php | 14 | ||||
-rw-r--r-- | admin/cat_modify.php | 8 | ||||
-rw-r--r-- | admin/element_set.php | 10 | ||||
-rw-r--r-- | admin/picture_modify.php | 8 | ||||
-rw-r--r-- | admin/waiting.php | 7 | ||||
-rw-r--r-- | category.php | 7 | ||||
-rw-r--r-- | comments.php | 5 | ||||
-rw-r--r-- | include/category_cats.inc.php | 12 | ||||
-rw-r--r-- | include/category_default.inc.php | 2 | ||||
-rw-r--r-- | include/functions.inc.php | 3 | ||||
-rw-r--r-- | include/functions_calendar.inc.php | 12 | ||||
-rw-r--r-- | include/functions_category.inc.php | 47 | ||||
-rw-r--r-- | include/functions_html.inc.php | 59 | ||||
-rw-r--r-- | include/functions_url.inc.php | 34 | ||||
-rw-r--r-- | include/menubar.inc.php | 5 | ||||
-rw-r--r-- | include/section_init.inc.php | 23 | ||||
-rw-r--r-- | include/ws_functions.inc.php | 17 | ||||
-rw-r--r-- | index.php | 4 | ||||
-rw-r--r-- | picture.php | 6 | ||||
-rw-r--r-- | upload.php | 17 |
20 files changed, 128 insertions, 172 deletions
diff --git a/admin/cat_list.php b/admin/cat_list.php index 82a272639..c34754f87 100644 --- a/admin/cat_list.php +++ b/admin/cat_list.php @@ -2,10 +2,9 @@ // +-----------------------------------------------------------------------+ // | PhpWebGallery - a PHP based picture gallery | // | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | -// | Copyright (C) 2003-2005 PhpWebGallery Team - http://phpwebgallery.net | +// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) -// | file : $RCSfile$ +// | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ // | revision : $Revision$ @@ -172,10 +171,8 @@ if (isset($_GET['parent_id'])) { $navigation.= $conf['level_separator']; - $current_category = get_cat_info($_GET['parent_id']); - - $navigation.= get_cat_display_name( - $current_category['name'], + $navigation.= get_cat_display_name_from_id( + $_GET['parent_id'], $base_url.'&parent_id=', false ); @@ -277,8 +274,7 @@ foreach ($categories as $category) 'U_JUMPTO' => make_index_url( array( - 'category' => $category['id'], - 'cat_name' => $category['name'], + 'category' => $category ) ), diff --git a/admin/cat_modify.php b/admin/cat_modify.php index e87a6aee5..065983070 100644 --- a/admin/cat_modify.php +++ b/admin/cat_modify.php @@ -2,10 +2,9 @@ // +-----------------------------------------------------------------------+ // | PhpWebGallery - a PHP based picture gallery | // | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | -// | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net | +// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) -// | file : $RCSfile$ +// | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ // | revision : $Revision$ @@ -279,8 +278,7 @@ $template->assign_vars( 'U_JUMPTO' => make_index_url( array( - 'category' => $category['id'], - 'cat_name' => $category['name'], + 'category' => $category ) ), diff --git a/admin/element_set.php b/admin/element_set.php index ee9884e31..fe005ee44 100644 --- a/admin/element_set.php +++ b/admin/element_set.php @@ -2,10 +2,9 @@ // +-----------------------------------------------------------------------+ // | PhpWebGallery - a PHP based picture gallery | // | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | -// | Copyright (C) 2003-2005 PhpWebGallery Team - http://phpwebgallery.net | +// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) -// | file : $RCSfile$ +// | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ // | revision : $Revision$ @@ -109,10 +108,9 @@ DELETE if (is_numeric($_GET['cat'])) { - $cat_infos = get_cat_info($_GET['cat']); $page['title'] = - get_cat_display_name( - $cat_infos['name'], + get_cat_display_name_from_id( + $_GET['cat'], PHPWG_ROOT_PATH.'admin.php?page=cat_modify&cat_id=', false ); diff --git a/admin/picture_modify.php b/admin/picture_modify.php index 9f6877167..0dd6a237b 100644 --- a/admin/picture_modify.php +++ b/admin/picture_modify.php @@ -253,8 +253,8 @@ $template->assign_vars( 'TAG_SELECTION' => $tag_selection, 'DESCRIPTION' => - isset($_POST['description']) ? - stripslashes($_POST['description']) : @$row['comment'], + htmlspecialchars( isset($_POST['description']) ? + stripslashes($_POST['description']) : @$row['comment'] ), 'F_ACTION' => PHPWG_ROOT_PATH.'admin.php' @@ -347,7 +347,7 @@ if (isset($_GET['cat_id']) array( 'image_id' => $_GET['image_id'], 'image_file' => $image_file, - 'category' => $_GET['cat_id'], + 'category' => $cache['cat_names'][ $_GET['cat_id'] ], ) ); } @@ -359,7 +359,7 @@ else array( 'image_id' => $_GET['image_id'], 'image_file' => $image_file, - 'category' => $category, + 'category' => $cache['cat_names'][ $category ], ) ); break; diff --git a/admin/waiting.php b/admin/waiting.php index 8a63ac17a..30bd6f37c 100644 --- a/admin/waiting.php +++ b/admin/waiting.php @@ -2,10 +2,9 @@ // +-----------------------------------------------------------------------+ // | PhpWebGallery - a PHP based picture gallery | // | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | -// | Copyright (C) 2003-2005 PhpWebGallery Team - http://phpwebgallery.net | +// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) -// | file : $RCSfile$ +// | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ // | revision : $Revision$ @@ -161,7 +160,7 @@ while ( $row = mysql_fetch_array( $result ) ) $cat_names[$row['storage_category_id']]['dir'] = PHPWG_ROOT_PATH.get_complete_dir( $row['storage_category_id'] ); $cat_names[$row['storage_category_id']]['display_name'] = - get_cat_display_name($cat['name']); + get_cat_display_name($cat['upper_names']); } $preview_url = PHPWG_ROOT_PATH.$cat_names[$row['storage_category_id']]['dir'].$row['file']; $class='row1'; diff --git a/category.php b/category.php index 8b0ade406..16d7a127e 100644 --- a/category.php +++ b/category.php @@ -38,10 +38,11 @@ if ( isset($_GET['cat']) ) if ( is_numeric($_GET['cat']) ) { $url_params['section'] = 'categories'; - $url_params['category'] = $_GET['cat']; - $result = get_cat_info($url_params['category']); + $result = get_cat_info( $_GET['cat'] ); if ( !empty($result) ) - $url_params['cat_name'] = $result['name']; + { + $url_params['category'] = $result; + } } elseif ( in_array($_GET['cat'], array('best_rated','most_visited','recent_pics','recent_cats') diff --git a/comments.php b/comments.php index 0c0735447..9a41dcb2b 100644 --- a/comments.php +++ b/comments.php @@ -205,7 +205,7 @@ $template->assign_block_vars( )); $query = ' -SELECT id,name,uppercats,global_rank +SELECT id, name, uppercats, global_rank FROM '.CATEGORIES_TABLE.' '.get_sql_condition_FandF ( @@ -398,8 +398,7 @@ SELECT id, name, uppercats // link to the full size picture $url = make_picture_url( array( - 'category' => $comment['category_id'], - 'cat_name' => $categories[ $comment['category_id']] ['name'], + 'category' => $categories[ $comment['category_id'] ], 'image_id' => $comment['image_id'], 'image_file' => $elements[$comment['image_id']]['file'], ) diff --git a/include/category_cats.inc.php b/include/category_cats.inc.php index 2acb05f13..e9549ba44 100644 --- a/include/category_cats.inc.php +++ b/include/category_cats.inc.php @@ -35,7 +35,7 @@ if ($page['section']=='recent_cats') // $user['forbidden_categories'] including with USER_CACHE_CATEGORIES_TABLE $query = ' SELECT - id,name, representative_picture_id, comment, nb_images, uppercats, + id, name, representative_picture_id, comment, nb_images, uppercats, date_last, max_date_last, count_images, count_categories, global_rank FROM '.CATEGORIES_TABLE.' INNER JOIN '.USER_CACHE_CATEGORIES_TABLE.' ON id = cat_id and user_id = '.$user['id'].' @@ -57,12 +57,12 @@ else // $user['forbidden_categories'] including with USER_CACHE_CATEGORIES_TABLE $query = ' SELECT - id,name, representative_picture_id, comment, nb_images, + id, name, representative_picture_id, comment, nb_images, date_last, max_date_last, count_images, count_categories FROM '.CATEGORIES_TABLE.' INNER JOIN '.USER_CACHE_CATEGORIES_TABLE.' ON id = cat_id and user_id = '.$user['id'].' WHERE id_uppercat '. - (!isset($page['category']) ? 'is NULL' : '= '.$page['category']).' + (!isset($page['category']) ? 'is NULL' : '= '.$page['category']['id']).' '.get_sql_condition_FandF ( array @@ -206,8 +206,7 @@ if (count($categories) > 0) 'URL' => make_index_url( array( - 'category' => $category['id'], - 'cat_name' => $category['name'], + 'category' => $category ) ), 'CAPTION_NB_IMAGES' => get_display_images_count @@ -258,8 +257,7 @@ if (count($categories) > 0) 'U_IMG_LINK' => make_index_url( array( - 'category' => $category['id'], - 'cat_name' => $category['name'], + 'category' => $category ) ), 'CLASS' => 'thumbCat', diff --git a/include/category_default.inc.php b/include/category_default.inc.php index bb6b5a089..1d8438d93 100644 --- a/include/category_default.inc.php +++ b/include/category_default.inc.php @@ -157,7 +157,7 @@ foreach ($pictures as $row) if ($user['show_nb_comments'] and isset($page['category']) - and $page['cat_commentable']) + and $page['category']['commentable']) { $query = ' SELECT COUNT(*) AS nb_comments diff --git a/include/functions.inc.php b/include/functions.inc.php index 4666c0fcb..50f247a47 100644 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -4,7 +4,6 @@ // | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | // | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) // | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ @@ -482,7 +481,7 @@ INSERT INTO '.HISTORY_TABLE.' '.$user['id'].', \''.$_SERVER['REMOTE_ADDR'].'\', '.(isset($page['section']) ? "'".$page['section']."'" : 'NULL').', - '.(isset($page['category']) ? $page['category'] : 'NULL').', + '.(isset($page['category']) ? $page['category']['id'] : 'NULL').', '.(isset($image_id) ? $image_id : 'NULL').', '.(isset($image_id) ? "'".$image_type."'" : 'NULL').', '.(isset($tags_string) ? "'".$tags_string."'" : 'NULL').' diff --git a/include/functions_calendar.inc.php b/include/functions_calendar.inc.php index a29536c71..86ef40837 100644 --- a/include/functions_calendar.inc.php +++ b/include/functions_calendar.inc.php @@ -1,10 +1,9 @@ <?php // +-----------------------------------------------------------------------+ // | PhpWebGallery - a PHP based picture gallery | -// | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net | +// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) -// | file : $RCSfile$ +// | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ // | revision : $Revision$ @@ -34,17 +33,16 @@ function initialize_calendar() //------------------ initialize the condition on items to take into account --- $inner_sql = ' FROM ' . IMAGES_TABLE; - if ($page['section']=='categories' or - ( isset($page['category']) and is_numeric($page['category']) ) ) + if ($page['section']=='categories') { // we will regenerate the items by including subcats elements $page['items'] = array(); $inner_sql .= ' INNER JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id'; - if (isset($page['category']) and is_numeric($page['category'])) + if ( isset($page['category']) ) { $sub_ids = array_diff( - get_subcat_ids(array($page['category'])), + get_subcat_ids(array($page['category']['id'])), explode(',', $user['forbidden_categories']) ); diff --git a/include/functions_category.inc.php b/include/functions_category.inc.php index 8ed10de3e..66b8865da 100644 --- a/include/functions_category.inc.php +++ b/include/functions_category.inc.php @@ -77,7 +77,7 @@ WHERE (id_uppercat is NULL'; if (isset($page['category'])) { - $query.= ' OR id_uppercat IN ('.$page['uppercats'].')'; + $query.= ' OR id_uppercat IN ('.$page['category']['uppercats'].')'; } $query.= ')'; } @@ -111,7 +111,7 @@ WHERE update_cats_with_filtered_data($cats); } - return get_html_menu_category($cats); + return get_html_menu_category($cats, @$page['category'] ); } @@ -134,62 +134,48 @@ WHERE */ function get_cat_info( $id ) { - $infos = array('nb_images','id_uppercat','comment','site_id' - ,'dir','date_last','uploadable','status','visible' - ,'representative_picture_id','uppercats','commentable' - ,'image_order'); - $query = ' -SELECT '.implode(',', $infos).' +SELECT * FROM '.CATEGORIES_TABLE.' WHERE id = '.$id.' ;'; - $row = mysql_fetch_array(pwg_query($query)); - if (empty($row)) + $cat = mysql_fetch_assoc(pwg_query($query)); + if (empty($cat)) return null; - $cat = array(); - foreach ($infos as $info) + foreach ($cat as $k => $v) { - if (isset($row[$info])) - { - $cat[$info] = $row[$info]; - } - else - { - $cat[$info] = ''; - } // If the field is true or false, the variable is transformed into a // boolean value. - if ($cat[$info] == 'true' or $cat[$info] == 'false') + if ($cat[$k] == 'true' or $cat[$k] == 'false') { - $cat[$info] = get_boolean( $cat[$info] ); + $cat[$k] = get_boolean( $cat[$k] ); } } global $conf; if ( !( $conf['allow_html_descriptions'] and preg_match('/<(div|br|img|script).*>/i', $cat['comment']) ) ) { - $cat['comment'] = nl2br($cat['comment']); + $cat['comment'] = nl2br(@$cat['comment']); } $names = array(); $query = ' -SELECT name,id +SELECT id, name FROM '.CATEGORIES_TABLE.' WHERE id IN ('.$cat['uppercats'].') ;'; $result = pwg_query($query); - while($row = mysql_fetch_array($result)) + while($row = mysql_fetch_assoc($result)) { - $names[$row['id']] = $row['name']; + $names[$row['id']] = $row; } // category names must be in the same order than uppercats list - $cat['name'] = array(); + $cat['upper_names'] = array(); foreach (explode(',', $cat['uppercats']) as $cat_id) { - $cat['name'][$cat_id] = $names[$cat_id]; + $cat['upper_names'][$cat_id] = $names[$cat_id]; } return $cat; @@ -345,6 +331,11 @@ SELECT DISTINCT(id) WHERE '; foreach ($ids as $num => $category_id) { + is_numeric($category_id) + or trigger_error( + 'get_subcat_ids expecting numeric, not '.gettype($category_id), + E_USER_WARNING + ); if ($num > 0) { $query.= ' diff --git a/include/functions_html.inc.php b/include/functions_html.inc.php index 60f26a45a..dcb42cdb1 100644 --- a/include/functions_html.inc.php +++ b/include/functions_html.inc.php @@ -235,7 +235,7 @@ function create_navigation_bar( * * categories string returned contains categories as given in the input * array $cat_informations. $cat_informations array must be an association - * of {category_id => category_name}. If url input parameter is null, + * of {category_id => array( id, name) }. If url input parameter is null, * returns only the categories name without links. * * @param array cat_informations @@ -251,8 +251,11 @@ function get_cat_display_name($cat_informations, $output = ''; $is_first = true; - foreach ($cat_informations as $id => $name) + foreach ($cat_informations as $id => $cat) { + is_array($cat) or trigger_error( + 'get_cat_display_name wrong type for cat '.$id, E_USER_WARNING + ); if ($is_first) { $is_first = false; @@ -264,24 +267,23 @@ function get_cat_display_name($cat_informations, if ( !isset($url) ) { - $output.= $name; + $output.= $cat['name']; } elseif ($url == '') { $output.= '<a href="' .make_index_url( array( - 'category'=>$id, - 'cat_name'=>$name + 'category' => $cat, ) ) .'">'; - $output.= $name.'</a>'; + $output.= $cat['name'].'</a>'; } else { $output.= '<a href="'.PHPWG_ROOT_PATH.$url.$id.'">'; - $output.= $name.'</a>'; + $output.= $cat['name'].'</a>'; } } if ($replace_space) @@ -311,18 +313,18 @@ function get_cat_display_name_cache($uppercats, $url = '', $replace_space = true) { - global $cat_names, $conf; + global $cache, $conf; - if (!isset($cat_names)) + if (!isset($cache['cat_names'])) { $query = ' -SELECT id,name +SELECT id, name FROM '.CATEGORIES_TABLE.' ;'; $result = pwg_query($query); - while ($row = mysql_fetch_array($result)) + while ($row = mysql_fetch_assoc($result)) { - $cat_names[$row['id']] = $row['name']; + $cache['cat_names'][$row['id']] = $row; } } @@ -330,7 +332,7 @@ SELECT id,name $is_first = true; foreach (explode(',', $uppercats) as $category_id) { - $name = $cat_names[$category_id]; + $cat = $cache['cat_names'][$category_id]; if ($is_first) { @@ -343,7 +345,7 @@ SELECT id,name if ( !isset($url) ) { - $output.= $name; + $output.= $cat['name']; } elseif ($url == '') { @@ -351,16 +353,15 @@ SELECT id,name <a href="' .make_index_url( array( - 'category'=>$category_id, - 'cat_name'=>$name + 'category' => $cat, ) ) - .'">'.$name.'</a>'; + .'">'.$cat['name'].'</a>'; } else { $output.= ' -<a href="'.PHPWG_ROOT_PATH.$url.$category_id.'">'.$name.'</a>'; +<a href="'.PHPWG_ROOT_PATH.$url.$category_id.'">'.$cat['name'].'</a>'; } } if ($replace_space) @@ -384,21 +385,14 @@ SELECT id,name * @param array categories * @return string */ -function get_html_menu_category($categories) +function get_html_menu_category($categories, $selected_category) { - global $page, $lang; + global $lang; $ref_level = 0; $level = 0; $menu = ''; - // $page_cat value remains 0 for special sections - $page_cat = 0; - if (isset($page['category'])) - { - $page_cat = $page['category']; - } - foreach ($categories as $category) { $level = substr_count($category['global_rank'], '.') + 1; @@ -419,7 +413,7 @@ function get_html_menu_category($categories) $ref_level = $level; $menu.= "\n\n".'<li'; - if ($category['id'] == $page_cat) + if ($category['id'] == @$selected_category['id']) { $menu.= ' class="selected"'; } @@ -427,14 +421,13 @@ function get_html_menu_category($categories) $url = make_index_url( array( - 'category'=>$category['id'], - 'cat_name'=>$category['name'] + 'category' => $category ) ); $menu.= "\n".'<a href="'.$url.'"'; - if ($page_cat != 0 - and $category['id'] == $page['cat_id_uppercat']) + if ($selected_category!=null + and $category['id'] == $selected_category['id_uppercat']) { $menu.= ' rel="up"'; } @@ -509,7 +502,7 @@ function get_cat_display_name_from_id($cat_id, $replace_space = true) { $cat_info = get_cat_info($cat_id); - return get_cat_display_name($cat_info['name'], $url, $replace_space); + return get_cat_display_name($cat_info['upper_names'], $url, $replace_space); } /** diff --git a/include/functions_url.inc.php b/include/functions_url.inc.php index 4f9b15b4b..b96ed82b7 100644 --- a/include/functions_url.inc.php +++ b/include/functions_url.inc.php @@ -3,7 +3,6 @@ // | PhpWebGallery - a PHP based picture gallery | // | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) // | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ @@ -133,9 +132,11 @@ function make_index_url($params = array()) * build an index URL with current page parameters, but with redefinitions * and removes. * - * duplicate_index_url(array('category' => 12), array('start')) will create - * an index URL on the current section (categories), but on a redefined - * category and without the start URL parameter. + * duplicate_index_url( array( + * 'category' => array('id'=>12, 'name'=>'toto'), + * array('start') + * ) will create an index URL on the current section (categories), but on + * a redefined category and without the start URL parameter. * * @param array redefined keys * @param array removed keys @@ -325,19 +326,20 @@ function make_section_in_url($params) } else { - $section_string.= '/category/'.$params['category']; - if ($conf['category_url_style']=='id-name' and isset($params['cat_name']) ) + is_array($params['category']) or trigger_error( + 'make_section_in_url wrong type for category', E_USER_WARNING + ); + is_numeric($params['category']['id']) or trigger_error( + 'make_section_in_url category id not numeric', E_USER_WARNING + ); + isset($params['category']['name']) or trigger_error( + 'make_section_in_url category name not set', E_USER_WARNING + ); + + $section_string.= '/category/'.$params['category']['id']; + if ( $conf['category_url_style']=='id-name' ) { - if ( is_string($params['cat_name']) ) - { - $section_string.= '-'.str2url($params['cat_name']); - } - elseif ( is_array( $params['cat_name'] ) and - isset( $params['cat_name'][$params['category']] ) ) - { - $section_string.= '-' - .str2url($params['cat_name'][$params['category']]); - } + $section_string.= '-'.str2url($params['category']['name']); } } diff --git a/include/menubar.inc.php b/include/menubar.inc.php index d38290704..1ddc59882 100644 --- a/include/menubar.inc.php +++ b/include/menubar.inc.php @@ -4,7 +4,6 @@ // | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | // | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | // +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) // | file : $Id$ // | last update : $Date$ // | last modifier : $Author$ @@ -333,9 +332,9 @@ $template->assign_block_vars( ) ); -if (isset($page['category']) and $page['cat_uploadable'] ) +if (isset($page['category']) and $page['category']['uploadable'] ) { // upload a picture in the category - $url = get_root_url().'upload.php?cat='.$page['category']; + $url = get_root_url().'upload.php?cat='.$page['category']['id']; $template->assign_block_vars( 'upload', array( diff --git a/include/section_init.inc.php b/include/section_init.inc.php index 4239ebd93..4434ec542 100644 --- a/include/section_init.inc.php +++ b/include/section_init.inc.php @@ -34,15 +34,14 @@ * */ -// "index.php?/category/12-foo/start-24&action=fill_caddie" or -// "index.php/category/12-foo/start-24&action=fill_caddie" +// "index.php?/category/12-foo/start-24" or +// "index.php/category/12-foo/start-24" // must return : // // array( // 'section' => 'categories', -// 'category' => 12, +// 'category' => array('id'=>12, ...), // 'start' => 24 -// 'action' => 'fill_caddie' // ); $page['items'] = array(); @@ -87,7 +86,7 @@ if (script_basename() == 'picture') // basename without file extention {// url compatibility with versions below 1.6 $url = make_picture_url( array( 'section' => 'categories', - 'category' => $_GET['cat'], + 'category' => get_cat_info($_GET['cat']), 'image_id' => $_GET['image_id'] ) ); redirect($url); @@ -360,15 +359,9 @@ if ('categories' == $page['section']) $page, array( 'comment' => $result['comment'], - 'cat_dir' => $result['dir'], - 'cat_name' => $result['name'], - 'cat_site_id' => $result['site_id'], - 'cat_uploadable' => $result['uploadable'], - 'cat_commentable' => $result['commentable'], - 'cat_id_uppercat' => $result['id_uppercat'], - 'uppercats' => $result['uppercats'], + 'category' => $result, 'title' => - get_cat_display_name($result['name'], '', false), + get_cat_display_name($result['upper_names'], '', false), ) ); } @@ -395,7 +388,7 @@ if ('categories' == $page['section']) {// flat categories mode if ( isset($page['category']) ) { - $subcat_ids = get_subcat_ids( array($page['category']) ); + $subcat_ids = get_subcat_ids( array($page['category']['id']) ); $where_sql = 'category_id IN ('.implode(',',$subcat_ids).')'; } else @@ -405,7 +398,7 @@ if ('categories' == $page['section']) } else {// Normal mode - $where_sql = 'category_id = '.$page['category']; + $where_sql = 'category_id = '.$page['category']['id']; } // Main query diff --git a/include/ws_functions.inc.php b/include/ws_functions.inc.php index e19966673..c8e2a0fe0 100644 --- a/include/ws_functions.inc.php +++ b/include/ws_functions.inc.php @@ -386,14 +386,12 @@ LIMIT '.$params['per_page']*$params['page'].','.$params['per_page']; { $url = make_index_url( array( - 'category' => $cat_id, - 'cat_name' => $cats[$cat_id]['name'], + 'category' => $cats[$cat_id], ) ); $page_url = make_picture_url( array( - 'category' => $cat_id, - 'cat_name' => $cats[$cat_id]['name'], + 'category' => $cats[$cat_id], 'image_id' => $row['id'], 'image_file' => $row['file'], ) @@ -484,8 +482,7 @@ ORDER BY global_rank'; { $row['url'] = make_index_url( array( - 'category' => $row['id'], - 'cat_name' => $row['name'], + 'category' => $row ) ); foreach( array('id','nb_images','total_nb_images','nb_categories') as $key) @@ -599,7 +596,7 @@ LIMIT 1;'; //-------------------------------------------------------- related categories $query = ' -SELECT id,name,uppercats,global_rank,commentable +SELECT id, name, uppercats, global_rank, commentable FROM '.IMAGE_CATEGORY_TABLE.' INNER JOIN '.CATEGORIES_TABLE.' ON category_id = id WHERE image_id = '.$image_row['id'].' @@ -617,8 +614,7 @@ SELECT id,name,uppercats,global_rank,commentable unset($row['commentable']); $row['url'] = make_index_url( array( - 'category' => $row['id'], - 'cat_name' => $row['name'], + 'category' => $row ) ); @@ -626,8 +622,7 @@ SELECT id,name,uppercats,global_rank,commentable array( 'image_id' => $image_row['id'], 'image_file' => $image_row['file'], - 'category' => $row['id'], - 'cat_name' => $row['name'], + 'category' => $row ) ); $row['id']=(int)$row['id']; @@ -65,7 +65,7 @@ if (!isset($page['start'])) // access authorization check if (isset($page['category'])) { - check_restrictions($page['category']); + check_restrictions($page['category']['id']); } if ( count($page['items']) > $user['nb_image_page']) @@ -193,7 +193,7 @@ if (isset($page['category']) and is_admin()) array( 'URL' => get_root_url().'admin.php?page=cat_modify' - .'&cat_id='.$page['category'] + .'&cat_id='.$page['category']['id'] ) ); } diff --git a/picture.php b/picture.php index a917d0888..2366987c6 100644 --- a/picture.php +++ b/picture.php @@ -36,7 +36,7 @@ check_status(ACCESS_GUEST); // access authorization check if (isset($page['category'])) { - check_restrictions($page['category']); + check_restrictions($page['category']['id']); } // if this image_id doesn't correspond to this category, an error message is @@ -199,7 +199,7 @@ DELETE FROM '.FAVORITES_TABLE.' $query = ' UPDATE '.CATEGORIES_TABLE.' SET representative_picture_id = '.$page['image_id'].' - WHERE id = '.$page['category'].' + WHERE id = '.$page['category']['id'].' ;'; pwg_query($query); } @@ -420,7 +420,7 @@ if (!empty($picture['current']['width'])) $url_admin = get_root_url().'admin.php?page=picture_modify' - .'&cat_id='.(isset($page['category']) ? $page['category'] : '') + .'&cat_id='.(isset($page['category']) ? $page['category']['id'] : '') .'&image_id='.$page['image_id'] ; diff --git a/upload.php b/upload.php index 16dba838b..380abc46d 100644 --- a/upload.php +++ b/upload.php @@ -132,13 +132,10 @@ if (is_numeric($_GET['cat'])) if (isset($page['category'])) { check_restrictions( $page['category'] ); - $result = get_cat_info( $page['category'] ); - $page['cat_dir'] = get_complete_dir( $page['category'] ); - $page['cat_site_id'] = $result['site_id']; - $page['cat_name'] = $result['name']; - $page['cat_uploadable'] = $result['uploadable']; + $category = get_cat_info( $page['category'] ); + $category['cat_dir'] = get_complete_dir( $page['category'] ); - if (url_is_remote($page['cat_dir']) or !$page['cat_uploadable']) + if (url_is_remote($category['cat_dir']) or !$category['uploadable']) { die('Fatal: you take a wrong way, bye bye'); } @@ -154,7 +151,7 @@ if ( isset( $_GET['waiting_id'] ) ) // verfying fields if ( isset( $_POST['submit'] ) and !isset( $_GET['waiting_id'] ) ) { - $path = $page['cat_dir'].$_FILES['picture']['name']; + $path = $category['cat_dir'].$_FILES['picture']['name']; if ( @is_file( $path ) ) { array_push( $error, l10n('upload_file_exists') ); @@ -241,7 +238,7 @@ if ( isset( $_POST['submit'] ) and isset( $_GET['waiting_id'] ) ) $file = substr ( $row['file'], 0, strrpos ( $row['file'], ".") ); $extension = get_extension( $_FILES['picture']['name'] ); - if (($path = mkget_thumbnail_dir($page['cat_dir'], $error)) != false) + if (($path = mkget_thumbnail_dir($category['cat_dir'], $error)) != false) { $path.= '/'.$conf['prefix_thumbnail'].$file.'.'.$extension; $result = validate_upload( $path, $conf['upload_maxfilesize'], @@ -285,7 +282,7 @@ if ( isset( $page['waiting_id'] ) ) else { $advise_title = l10n('upload_advise'); - $advise_title.= get_cat_display_name($page['cat_name']); + $advise_title.= get_cat_display_name($category['upper_names']); } $template->assign_vars( @@ -302,7 +299,7 @@ $template->assign_vars( 'F_ACTION' => $u_form, - 'U_RETURN' => make_index_url(array('category' => $page['category'])), + 'U_RETURN' => make_index_url(array('category' => $category)), ) ); |