ZenCart_Documentation  1.5.0
http://www.collinsharper.com
C:/xampp/htdocs/zen-cart/admin/store_manager.php
Go to the documentation of this file.
00001 <?php
00010   require('includes/application_top.php');
00011 
00012   require(DIR_WS_CLASSES . 'currencies.php');
00013   $currencies = new currencies();
00014 
00015   $languages = zen_get_languages();
00016 
00017   $products_filter = (isset($_GET['products_filter']) ? $_GET['products_filter'] : $products_filter);
00018 
00019   $action = (isset($_GET['action']) ? $_GET['action'] : '');
00020 
00021   $current_category_id = (isset($_GET['current_category_id']) ? (int)$_GET['current_category_id'] : (int)$current_category_id);
00022 
00023   $processing_message = '';
00024   $processing_action_url = '';
00025 
00026   zen_set_time_limit(600);
00027   switch($action) {
00028 
00029 // update all products in catalog
00030     case ('update_all_products_attributes_sort_order'):
00031       if (isset($_POST['confirm']) && $_POST['confirm'] == 'yes')
00032       {
00033         $all_products_attributes= $db->Execute("select p.products_id, pa.products_attributes_id from " .
00034         TABLE_PRODUCTS . " p, " .
00035         TABLE_PRODUCTS_ATTRIBUTES . " pa " . "
00036         where p.products_id= pa.products_id"
00037         );
00038         while (!$all_products_attributes->EOF)
00039         {
00040           $count++;
00041           $product_id_updated .= ' - ' . $all_products_attributes->fields['products_id'] . ':' . $all_products_attributes->fields['products_attributes_id'];
00042           zen_update_attributes_products_option_values_sort_order($all_products_attributes->fields['products_id']);
00043           $all_products_attributes->MoveNext();
00044         }
00045         $messageStack->add_session(SUCCESS_PRODUCT_UPDATE_SORT_ALL, 'success');
00046         $action='';
00047         zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00048       }
00049       break;
00050 
00051     case ('update_all_products_price_sorter'):
00052       if (isset($_POST['confirm']) && $_POST['confirm'] == 'yes')
00053       {
00054       // reset products_price_sorter for searches etc.
00055         $sql = "select products_id from " . TABLE_PRODUCTS;
00056         $update_prices = $db->Execute($sql);
00057 
00058         while (!$update_prices->EOF)
00059         {
00060           zen_update_products_price_sorter($update_prices->fields['products_id']);
00061           $update_prices->MoveNext();
00062         }
00063         $messageStack->add_session(SUCCESS_PRODUCT_UPDATE_PRODUCTS_PRICE_SORTER, 'success');
00064         $action='';
00065         zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00066       }
00067     break;
00068 
00069     case ('update_all_products_viewed'):
00070     // reset products_viewed to 0
00071       if (isset($_POST['confirm']) && $_POST['confirm'] == 'yes')
00072       {
00073         $sql = "update " . TABLE_PRODUCTS_DESCRIPTION . " set products_viewed= '0'";
00074         $update_viewed = $db->Execute($sql);
00075 
00076         $messageStack->add_session(SUCCESS_PRODUCT_UPDATE_PRODUCTS_VIEWED, 'success');
00077         $action='';
00078         zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00079       }
00080     break;
00081 
00082     case ('update_all_products_ordered'):
00083       if (isset($_POST['confirm']) && $_POST['confirm'] == 'yes')
00084       {
00085       // reset products_ordered to 0
00086         $sql = "update " . TABLE_PRODUCTS . " set products_ordered= '0'";
00087         $update_viewed = $db->Execute($sql);
00088 
00089         $messageStack->add_session(SUCCESS_PRODUCT_UPDATE_PRODUCTS_ORDERED, 'success');
00090         $action='';
00091         zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00092       }
00093     break;
00094 
00095     case ('update_counter'):
00096     if ($_POST['new_counter'] == '' || strval($_POST['new_counter']) != strval((int)$_POST['new_counter'])) break;
00097     $sql = "update " . TABLE_COUNTER . " set counter= '" . (int)$_POST['new_counter'] . "'";
00098     $update_counter = $db->Execute($sql);
00099 
00100     $messageStack->add_session(SUCCESS_UPDATE_COUNTER . (int)$_POST['new_counter'], 'success');
00101     $action='';
00102     zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00103     break;
00104 
00105     case ('optimize_db_start'):
00106       $processing_message = TEXT_INFO_OPTIMIZING_DATABASE_TABLES;
00107       $processing_action_url = zen_href_link(FILENAME_STORE_MANAGER, 'action=optimize_db_do');
00108     break;
00109     case ('optimize_db_do'):
00110     // clean out unused space in database
00111       if (isset($_POST['confirm']) && $_POST['confirm'] == 'yes')
00112       {
00113         $sql = "SHOW TABLE STATUS FROM `" . DB_DATABASE ."`";
00114         $tables = $db->Execute($sql);
00115         while(!$tables->EOF) {
00116           // skip tables not matching prefixes
00117           if (DB_PREFIX != '' && substr($tables->fields['Name'], 0, strlen(DB_PREFIX)) != DB_PREFIX) {
00118             $tables->MoveNext();
00119             continue;
00120           }
00121           zen_set_time_limit(600);
00122           $db->Execute("OPTIMIZE TABLE `" . $tables->fields['Name'] . "`");
00123           $i++;
00124           if ($i/7 == (int)($i/7)) sleep(2);
00125           $tables->MoveNext();
00126         }
00127         $messageStack->add_session(SUCCESS_DB_OPTIMIZE . ' ' . $i, 'success');
00128         $action='';
00129         zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00130       }
00131     break;
00132 
00133 // clean out old DEBUG logfiles
00134     case 'clean_debug_files':
00135       $purgeFolder = rtrim(DIR_FS_SQL_CACHE, '/');
00136       $dir = dir($purgeFolder);
00137       while ($file = $dir->read()) {
00138         if ( ($file != '.') && ($file != '..') && substr($file, 0, 1) != '.') {
00139           if (preg_match('/^(myDEBUG-|AIM_Debug_|SIM_Debug_|FirstData_Debug_|Linkpoint_Debug_|Paypal|paypal|ipn_|zcInstall).*\.log$/', $file)) {
00140             if (is_writeable($purgeFolder . '/' . $file)) {
00141               zen_remove($purgeFolder . '/' . $file);
00142             }
00143           }
00144         }
00145       }
00146       $dir->close();
00147       unset($dir);
00148       $messageStack->add_session(SUCCESS_CLEAN_DEBUG_FILES, 'success');
00149       zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00150     break;
00151 
00152     case ('update_all_master_categories_id'):
00153     // reset products master categories ID
00154       if (isset($_POST['confirm']) && $_POST['confirm'] == 'yes')
00155       {
00156 
00157         $sql = "select products_id from " . TABLE_PRODUCTS;
00158         $check_products = $db->Execute($sql);
00159         while (!$check_products->EOF) {
00160 
00161           $sql = "select products_id, categories_id from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id='" . $check_products->fields['products_id'] . "'";
00162           $check_category = $db->Execute($sql);
00163 
00164           $sql = "update " . TABLE_PRODUCTS . " set master_categories_id='" . $check_category->fields['categories_id'] . "' where products_id='" . $check_products->fields['products_id'] . "'";
00165           $update_viewed = $db->Execute($sql);
00166 
00167           $check_products->MoveNext();
00168         }
00169 
00170         $messageStack->add_session(SUCCESS_UPDATE_ALL_MASTER_CATEGORIES_ID, 'success');
00171         $action='';
00172         zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00173       }
00174     break;
00175 
00176     case ('update_orders_id'):
00177       global $db;
00178       $new_orders_id = zen_db_prepare_input((int)$_POST['new_orders_id']);
00179       $result = $db->Execute("select max(orders_id) as maxorder from " . TABLE_ORDERS);
00180       $max_order1 = $result->fields['maxorder'];
00181       $result = $db->Execute("select max(orders_id) as maxorder from " . TABLE_ORDERS_PRODUCTS);
00182       $max_order2 = $result->fields['maxorder'];
00183       if ($new_orders_id <= $max_order1 || $new_orders_id <= $max_order2)
00184       {
00185         $new_orders_id = max($max_order1, $max_order2) + 1;
00186         $messageStack->add_session(sprintf(TEXT_MSG_NEXT_ORDER_MAX, $new_orders_id), 'caution');
00187       } elseif ($new_orders_id > 2000000000) {
00188         $messageStack->add_session(TEXT_MSG_NEXT_ORDER_TOO_LARGE, 'error');
00189       } else {
00190         $db->Execute("ALTER TABLE " . TABLE_ORDERS . " AUTO_INCREMENT = " . $new_orders_id);
00191         $messageStack->add_session(sprintf(TEXT_MSG_NEXT_ORDER, $new_orders_id), 'success');
00192       }
00193       zen_redirect(zen_href_link(FILENAME_STORE_MANAGER));
00194     break;
00195 
00196     } // eof: action
00197 
00198 ?>
00199 <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
00200 <html <?php echo HTML_PARAMS; ?>>
00201 <head>
00202 <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
00203 <title><?php echo TITLE; ?></title>
00204 <link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
00205 <link rel="stylesheet" type="text/css" href="includes/cssjsmenuhover.css" media="all" id="hoverJS">
00206 <script language="javascript" src="includes/menu.js"></script>
00207 <script language="javascript" src="includes/general.js"></script>
00208 <script type="text/javascript">
00209   <!--
00210   function init()
00211   {
00212     cssjsmenu('navbar');
00213     if (document.getElementById)
00214     {
00215       var kill = document.getElementById('hoverJS');
00216       kill.disabled = true;
00217     }
00218   }
00219   // -->
00220 </script>
00221 <?php if ($processing_message != '' && $processing_action_url != '') echo '<meta http-equiv="refresh" content="2;URL=' . $processing_action_url . '">'; ?>
00222 
00223 </head>
00224 <body onLoad="init()">
00225 <!-- header //-->
00226 <?php require(DIR_WS_INCLUDES . 'header.php'); ?>
00227 <!-- header_eof //-->
00228 
00229 <!-- body //-->
00230 <table border="0" width="100%" cellspacing="2" cellpadding="2">
00231   <tr>
00232 <!-- body_text //-->
00233     <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0">
00234       <tr>
00235         <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
00236         <td class="pageHeading" align="right"><?php echo zen_draw_separator('pixel_trans.gif', HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
00237       </tr>
00238 
00239 <?php
00240 if ($processing_message != '') {
00241 ?>
00242   <tr><td><?php echo $processing_message; ?></td></tr>
00243   <tr><td align="center"><?php echo zen_image(DIR_WS_IMAGES . 'loadingsmall.gif'); ?></td></tr>
00244 <?php
00245 } else {
00246 ?>
00247 
00248 <!-- bof: update all option values sort orders -->
00249       <tr>
00250         <td colspan="2"><br /><table border="0" cellspacing="0" cellpadding="2">
00251           <tr>
00252             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_ATTRIBUTES_FEATURES_UPDATES; ?></td>
00253             <td class="main" align="right" valign="middle"><?php echo zen_draw_form('update_all_products_attributes_sort_order', FILENAME_STORE_MANAGER, 'action=update_all_products_attributes_sort_order')?><input type="hidden" name="confirm" value="yes" /><?php echo zen_image_submit('button_update.gif', IMAGE_UPDATE); ?></form></td>
00254           </tr>
00255         </table></td>
00256       </tr>
00257 <!-- eof: update all option values sort orders -->
00258 
00259 <!-- bof: update all products price sorter -->
00260       <tr>
00261         <td colspan="2"><br /><table border="0" cellspacing="0" cellpadding="2">
00262           <tr>
00263             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_PRODUCTS_PRICE_SORTER_UPDATE; ?></td>
00264             <td class="main" align="right" valign="middle"><?php echo zen_draw_form('update_all_products_price_sorter', FILENAME_STORE_MANAGER, 'action=update_all_products_price_sorter')?><input type="hidden" name="confirm" value="yes" /><?php echo zen_image_submit('button_update.gif', IMAGE_UPDATE); ?></form></td>
00265           </tr>
00266         </table></td>
00267       </tr>
00268 <!-- eof: update all products price sorter -->
00269 
00270 <!-- bof: reset all counter to 0 -->
00271       <tr>
00272         <td colspan="2"><br /><table border="0" cellspacing="0" cellpadding="2">
00273           <tr><form name = "update_counter" action="<?php echo zen_href_link(FILENAME_STORE_MANAGER, 'action=update_counter', 'NONSSL'); ?>" method="post">
00274           <?php echo zen_draw_hidden_field('securityToken', $_SESSION['securityToken']); ?>
00275             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_COUNTER_UPDATE; ?></td>
00276             <td class="main" align="left" valign="bottom"><?php echo zen_draw_input_field('new_counter'); ?></td>
00277             <td class="main" align="right" valign="middle"><?php echo zen_image_submit('button_reset.gif', IMAGE_RESET); ?></td>
00278           </form></tr>
00279         </table></td>
00280       </tr>
00281 <!-- eof: reset all counter to 0 -->
00282 
00283 <!-- bof: reset all products_viewed to 0 -->
00284       <tr>
00285         <td colspan="2"><br /><table border="0" cellspacing="0" cellpadding="2">
00286           <tr>
00287             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_PRODUCTS_VIEWED_UPDATE; ?></td>
00288             <td class="main" align="right" valign="middle"><?php echo zen_draw_form('update_all_products_viewed', FILENAME_STORE_MANAGER, 'action=update_all_products_viewed')?><input type="hidden" name="confirm" value="yes" /><?php echo zen_image_submit('button_reset.gif', IMAGE_UPDATE); ?></form></td>
00289           </tr>
00290         </table></td>
00291       </tr>
00292 <!-- eof: reset all products_viewed to 0 -->
00293 
00294 <!-- bof: reset all products_ordered to 0 -->
00295       <tr>
00296         <td colspan="2"><br /><table border="0" cellspacing="0" cellpadding="2">
00297           <tr>
00298             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_PRODUCTS_ORDERED_UPDATE; ?></td>
00299             <td class="main" align="right" valign="middle"><?php echo zen_draw_form('update_all_products_ordered', FILENAME_STORE_MANAGER, 'action=update_all_products_ordered')?><input type="hidden" name="confirm" value="yes" /><?php echo zen_image_submit('button_reset.gif', IMAGE_UPDATE); ?></form></td>
00300           </tr>
00301         </table></td>
00302       </tr>
00303 <!-- eof: reset all products_ordered to 0 -->
00304 
00305 <!-- bof: reset all master_categories_id -->
00306       <tr>
00307         <td colspan="2"><br /><table border="0" cellspacing="0" cellpadding="2">
00308           <tr>
00309             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_MASTER_CATEGORIES_ID_UPDATE; ?></td>
00310             <td class="main" align="right" valign="middle"><?php echo zen_draw_form('update_all_master_categories_id', FILENAME_STORE_MANAGER, 'action=update_all_master_categories_id')?><input type="hidden" name="confirm" value="yes" /><?php echo zen_image_submit('button_reset.gif', IMAGE_UPDATE); ?></form></td>
00311           </tr>
00312         </table></td>
00313       </tr>
00314 <!-- eof: reset all master_categories_id -->
00315 
00316 <!-- bof: reset next order to new order number -->
00317       <tr>
00318         <td colspan="2"><br /><table border="0" cellspacing="0" cellpadding="2">
00319           <tr><form name="update_orders" action="<?php echo zen_href_link(FILENAME_STORE_MANAGER, 'action=update_orders_id', 'NONSSL'); ?>" method="post">
00320           <?php echo zen_draw_hidden_field('securityToken', $_SESSION['securityToken']); ?>
00321             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_SET_NEXT_ORDER_NUMBER; ?>
00322             <br />
00323             <?php echo TEXT_NEW_ORDERS_ID . '&nbsp;' . zen_draw_input_field('new_orders_id', $nextOrderNumber); ?>
00324             <?php echo zen_image_submit('button_reset.gif', IMAGE_RESET); ?></td>
00325             </form>
00326           </tr>
00327         </table>
00328         </td>
00329       </tr>
00330 <!-- eof: reset next order to new order number -->
00331 
00332 <!-- bof: database table-optimize -->
00333       <tr>
00334         <td colspan="2"><br /><br /><table border="0" cellspacing="0" cellpadding="2">
00335           <tr>
00336             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_DATABASE_OPTIMIZE; ?></td>
00337             <td class="main" align="right" valign="middle"><?php echo zen_draw_form('optimize_db_start', FILENAME_STORE_MANAGER, 'action=optimize_db_start')?><input type="hidden" name="confirm" value="yes" /><?php echo zen_image_submit('button_reset.gif', IMAGE_UPDATE); ?></form></td>
00338           </tr>
00339         </table></td>
00340       </tr>
00341 <!-- eof: database table-optimize -->
00342 
00343 <!-- bof: clean_debug_files -->
00344       <tr>
00345         <td colspan="2"><br /><br /><table border="0" cellspacing="0" cellpadding="2">
00346           <tr>
00347             <td class="main" align="left" valign="top"><?php echo TEXT_INFO_PURGE_DEBUG_LOG_FILES; ?></td>
00348             <td class="main" align="right" valign="middle"><?php echo zen_draw_form('clean_debug_files', FILENAME_STORE_MANAGER, 'action=clean_debug_files', 'post') . zen_image_submit('button_confirm.gif', IMAGE_UPDATE) . '</form>'; ?>
00349           </tr>
00350         </table></td>
00351       </tr>
00352 <!-- eof: clean_debug_files -->
00353 
00354 <?php
00355 } // eof configure
00356 ?>
00357       <tr>
00358         <td colspan="2"><?php echo '<br />' . zen_draw_separator('pixel_black.gif', '100%', '2'); ?></td>
00359       </tr>
00360     </table></td>
00361 <!-- body_text_eof //-->
00362   </tr>
00363 </table>
00364 <!-- body_eof //-->
00365 
00366 <!-- footer //-->
00367 <?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
00368 <!-- footer_eof //-->
00369 </body>
00370 </html>
00371 <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
 All Data Structures Namespaces Files Functions Variables Enumerations