[ Index ] |
|
Code source de osCommerce 2.2ms2-060817 |
1 <?php 2 /* 3 $Id: index.php,v 1.1 2003/06/11 17:37:59 hpdl Exp $ 4 5 osCommerce, Open Source E-Commerce Solutions 6 http://www.oscommerce.com 7 8 Copyright (c) 2003 osCommerce 9 10 Released under the GNU General Public License 11 */ 12 13 require ('includes/application_top.php'); 14 15 // the following cPath references come from application_top.php 16 $category_depth = 'top'; 17 if (isset($cPath) && tep_not_null($cPath)) { 18 $categories_products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'"); 19 $cateqories_products = tep_db_fetch_array($categories_products_query); 20 if ($cateqories_products['total'] > 0) { 21 $category_depth = 'products'; // display products 22 } else { 23 $category_parent_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$current_category_id . "'"); 24 $category_parent = tep_db_fetch_array($category_parent_query); 25 if ($category_parent['total'] > 0) { 26 $category_depth = 'nested'; // navigate through the categories 27 } else { 28 $category_depth = 'products'; // category has no products, but display the 'no products' message 29 } 30 } 31 } 32 33 require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_DEFAULT); 34 ?> 35 <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> 36 <html <?php echo HTML_PARAMS; ?>> 37 <head> 38 <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>"> 39 <title><?php echo TITLE; ?></title> 40 <base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>"> 41 <link rel="stylesheet" type="text/css" href="stylesheet.css"> 42 </head> 43 <body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0"> 44 <!-- header //--> 45 <?php require(DIR_WS_INCLUDES . 'header.php'); ?> 46 <!-- header_eof //--> 47 48 <!-- body //--> 49 <table border="0" width="100%" cellspacing="3" cellpadding="3"> 50 <tr> 51 <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2"> 52 <!-- left_navigation //--> 53 <?php require(DIR_WS_INCLUDES . 'column_left.php'); ?> 54 <!-- left_navigation_eof //--> 55 </table></td> 56 <!-- body_text //--> 57 <?php 58 if ($category_depth == 'nested') { 59 $category_query = tep_db_query("select cd.categories_name, c.categories_image from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'"); 60 $category = tep_db_fetch_array($category_query); 61 ?> 62 <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> 63 <tr> 64 <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> 65 <tr> 66 <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> 67 <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . $category['categories_image'], $category['categories_name'], HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td> 68 </tr> 69 </table></td> 70 </tr> 71 <tr> 72 <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 73 </tr> 74 <tr> 75 <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> 76 <tr> 77 <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> 78 <tr> 79 <?php 80 if (isset($cPath) && strpos('_', $cPath)) { 81 // check to see if there are deeper categories within the current category 82 $category_links = array_reverse($cPath_array); 83 for($i=0, $n=sizeof($category_links); $i<$n; $i++) { 84 $categories_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "'"); 85 $categories = tep_db_fetch_array($categories_query); 86 if ($categories['total'] < 1) { 87 // do nothing, go through the loop 88 } else { 89 $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name"); 90 break; // we've found the deepest category the customer is in 91 } 92 } 93 } else { 94 $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name"); 95 } 96 97 $number_of_categories = tep_db_num_rows($categories_query); 98 99 $rows = 0; 100 while ($categories = tep_db_fetch_array($categories_query)) { 101 $rows++; 102 $cPath_new = tep_get_path($categories['categories_id']); 103 $width = (int)(100 / MAX_DISPLAY_CATEGORIES_PER_ROW) . '%'; 104 echo ' <td align="center" class="smallText" width="' . $width . '" valign="top"><a href="' . tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">' . tep_image(DIR_WS_IMAGES . $categories['categories_image'], $categories['categories_name'], SUBCATEGORY_IMAGE_WIDTH, SUBCATEGORY_IMAGE_HEIGHT) . '<br>' . $categories['categories_name'] . '</a></td>' . "\n"; 105 if ((($rows / MAX_DISPLAY_CATEGORIES_PER_ROW) == floor($rows / MAX_DISPLAY_CATEGORIES_PER_ROW)) && ($rows != $number_of_categories)) { 106 echo ' </tr>' . "\n"; 107 echo ' <tr>' . "\n"; 108 } 109 } 110 111 // needed for the new products module shown below 112 $new_products_category_id = $current_category_id; 113 ?> 114 </tr> 115 </table></td> 116 </tr> 117 <tr> 118 <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 119 </tr> 120 <tr> 121 <td><?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?></td> 122 </tr> 123 </table></td> 124 </tr> 125 </table></td> 126 <?php 127 } elseif ($category_depth == 'products' || isset($HTTP_GET_VARS['manufacturers_id'])) { 128 // create column list 129 $define_list = array('PRODUCT_LIST_MODEL' => PRODUCT_LIST_MODEL, 130 'PRODUCT_LIST_NAME' => PRODUCT_LIST_NAME, 131 'PRODUCT_LIST_MANUFACTURER' => PRODUCT_LIST_MANUFACTURER, 132 'PRODUCT_LIST_PRICE' => PRODUCT_LIST_PRICE, 133 'PRODUCT_LIST_QUANTITY' => PRODUCT_LIST_QUANTITY, 134 'PRODUCT_LIST_WEIGHT' => PRODUCT_LIST_WEIGHT, 135 'PRODUCT_LIST_IMAGE' => PRODUCT_LIST_IMAGE, 136 'PRODUCT_LIST_BUY_NOW' => PRODUCT_LIST_BUY_NOW); 137 138 asort($define_list); 139 140 $column_list = array(); 141 reset($define_list); 142 while (list($key, $value) = each($define_list)) { 143 if ($value > 0) $column_list[] = $key; 144 } 145 146 $select_column_list = ''; 147 148 for ($i=0, $n=sizeof($column_list); $i<$n; $i++) { 149 switch ($column_list[$i]) { 150 case 'PRODUCT_LIST_MODEL': 151 $select_column_list .= 'p.products_model, '; 152 break; 153 case 'PRODUCT_LIST_NAME': 154 $select_column_list .= 'pd.products_name, '; 155 break; 156 case 'PRODUCT_LIST_MANUFACTURER': 157 $select_column_list .= 'm.manufacturers_name, '; 158 break; 159 case 'PRODUCT_LIST_QUANTITY': 160 $select_column_list .= 'p.products_quantity, '; 161 break; 162 case 'PRODUCT_LIST_IMAGE': 163 $select_column_list .= 'p.products_image, '; 164 break; 165 case 'PRODUCT_LIST_WEIGHT': 166 $select_column_list .= 'p.products_weight, '; 167 break; 168 } 169 } 170 171 // show the products of a specified manufacturer 172 if (isset($HTTP_GET_VARS['manufacturers_id'])) { 173 if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) { 174 // We are asked to show only a specific category 175 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "'"; 176 } else { 177 // We show them all 178 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'"; 179 } 180 } else { 181 // show the products in a given categorie 182 if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) { 183 // We are asked to show only specific catgeory 184 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'"; 185 } else { 186 // We show them all 187 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'"; 188 } 189 } 190 191 if ( (!isset($HTTP_GET_VARS['sort'])) || (!ereg('[1-8][ad]', $HTTP_GET_VARS['sort'])) || (substr($HTTP_GET_VARS['sort'], 0, 1) > sizeof($column_list)) ) { 192 for ($i=0, $n=sizeof($column_list); $i<$n; $i++) { 193 if ($column_list[$i] == 'PRODUCT_LIST_NAME') { 194 $HTTP_GET_VARS['sort'] = $i+1 . 'a'; 195 $listing_sql .= " order by pd.products_name"; 196 break; 197 } 198 } 199 } else { 200 $sort_col = substr($HTTP_GET_VARS['sort'], 0 , 1); 201 $sort_order = substr($HTTP_GET_VARS['sort'], 1); 202 $listing_sql .= ' order by '; 203 switch ($column_list[$sort_col-1]) { 204 case 'PRODUCT_LIST_MODEL': 205 $listing_sql .= "p.products_model " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name"; 206 break; 207 case 'PRODUCT_LIST_NAME': 208 $listing_sql .= "pd.products_name " . ($sort_order == 'd' ? 'desc' : ''); 209 break; 210 case 'PRODUCT_LIST_MANUFACTURER': 211 $listing_sql .= "m.manufacturers_name " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name"; 212 break; 213 case 'PRODUCT_LIST_QUANTITY': 214 $listing_sql .= "p.products_quantity " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name"; 215 break; 216 case 'PRODUCT_LIST_IMAGE': 217 $listing_sql .= "pd.products_name"; 218 break; 219 case 'PRODUCT_LIST_WEIGHT': 220 $listing_sql .= "p.products_weight " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name"; 221 break; 222 case 'PRODUCT_LIST_PRICE': 223 $listing_sql .= "final_price " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name"; 224 break; 225 } 226 } 227 ?> 228 <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> 229 <tr> 230 <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> 231 <tr> 232 <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> 233 <?php 234 // optional Product List Filter 235 if (PRODUCT_LIST_FILTER > 0) { 236 if (isset($HTTP_GET_VARS['manufacturers_id'])) { 237 $filterlist_sql = "select distinct c.categories_id as id, cd.categories_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where p.products_status = '1' and p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and p2c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' order by cd.categories_name"; 238 } else { 239 $filterlist_sql= "select distinct m.manufacturers_id as id, m.manufacturers_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$current_category_id . "' order by m.manufacturers_name"; 240 } 241 $filterlist_query = tep_db_query($filterlist_sql); 242 if (tep_db_num_rows($filterlist_query) > 1) { 243 echo ' <td align="center" class="main">' . tep_draw_form('filter', FILENAME_DEFAULT, 'get') . TEXT_SHOW . ' '; 244 if (isset($HTTP_GET_VARS['manufacturers_id'])) { 245 echo tep_draw_hidden_field('manufacturers_id', $HTTP_GET_VARS['manufacturers_id']); 246 $options = array(array('id' => '', 'text' => TEXT_ALL_CATEGORIES)); 247 } else { 248 echo tep_draw_hidden_field('cPath', $cPath); 249 $options = array(array('id' => '', 'text' => TEXT_ALL_MANUFACTURERS)); 250 } 251 echo tep_draw_hidden_field('sort', $HTTP_GET_VARS['sort']); 252 while ($filterlist = tep_db_fetch_array($filterlist_query)) { 253 $options[] = array('id' => $filterlist['id'], 'text' => $filterlist['name']); 254 } 255 echo tep_draw_pull_down_menu('filter_id', $options, (isset($HTTP_GET_VARS['filter_id']) ? $HTTP_GET_VARS['filter_id'] : ''), 'onchange="this.form.submit()"'); 256 echo '</form></td>' . "\n"; 257 } 258 } 259 260 // Get the right image for the top-right 261 $image = DIR_WS_IMAGES . 'table_background_list.gif'; 262 if (isset($HTTP_GET_VARS['manufacturers_id'])) { 263 $image = tep_db_query("select manufacturers_image from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'"); 264 $image = tep_db_fetch_array($image); 265 $image = $image['manufacturers_image']; 266 } elseif ($current_category_id) { 267 $image = tep_db_query("select categories_image from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'"); 268 $image = tep_db_fetch_array($image); 269 $image = $image['categories_image']; 270 } 271 ?> 272 <td align="right"><?php echo tep_image(DIR_WS_IMAGES . $image, HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td> 273 </tr> 274 </table></td> 275 </tr> 276 <tr> 277 <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 278 </tr> 279 <tr> 280 <td><?php include(DIR_WS_MODULES . FILENAME_PRODUCT_LISTING); ?></td> 281 </tr> 282 </table></td> 283 <?php 284 } else { // default page 285 ?> 286 <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> 287 <tr> 288 <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> 289 <tr> 290 <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> 291 <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . 'table_background_default.gif', HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td> 292 </tr> 293 </table></td> 294 </tr> 295 <tr> 296 <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 297 </tr> 298 <tr> 299 <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> 300 <tr> 301 <td class="main"><?php echo tep_customer_greeting(); ?></td> 302 </tr> 303 <tr> 304 <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 305 </tr> 306 <tr> 307 <td class="main"><?php echo TEXT_MAIN; ?></td> 308 </tr> 309 <tr> 310 <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 311 </tr> 312 <tr> 313 <td><?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?></td> 314 </tr> 315 <?php 316 include(DIR_WS_MODULES . FILENAME_UPCOMING_PRODUCTS); 317 ?> 318 </table></td> 319 </tr> 320 </table></td> 321 <?php 322 } 323 ?> 324 <!-- body_text_eof //--> 325 <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2"> 326 <!-- right_navigation //--> 327 <?php require(DIR_WS_INCLUDES . 'column_right.php'); ?> 328 <!-- right_navigation_eof //--> 329 </table></td> 330 </tr> 331 </table> 332 <!-- body_eof //--> 333 334 <!-- footer //--> 335 <?php require(DIR_WS_INCLUDES . 'footer.php'); ?> 336 <!-- footer_eof //--> 337 <br> 338 </body> 339 </html> 340 <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Mon Nov 26 19:48:25 2007 | par Balluche grâce à PHPXref 0.7 |
![]() |