Jump to content

gewoon09

Members
  • Content count

    25
  • Joined

  • Last visited

1 Follower

Profile Information

Recent Profile Visitors

3,246 profile views
  1. gewoon09

    [Addon] AjaxCheckoutAddress

    Hi, You wrote it does not update the address book. Do you mean people need to update the address every time they checkout? If so, returning cutomers would be annoyed, I'd say? Is it difficult to integrate this? Kind regards, Michiel
  2. Hi, I am trying to Activate MailBeez Analytics, but when I click on it, a pop-up screen shows this error: This page can't be shown (translated from Dutch: Deze webpagina kan niet worden weergegeven) HTTP 403 Does anyone know what I causing this error and what to do? Kind regards, Michiel
  3. gewoon09

    Links Manager II

    I would like to make a suggestion for development (I am sorry I am not very capable of coding myself), and that is, to add a functionality of removing multiple links at once by selecting more than one link and then clicking delete. Now, I am getting LOTS of spam link requests, that are overloading my link manager and it takes a lot of time deleting them. Hope someone knows how to do this.
  4. gewoon09

    Links Manager II

    ... and why are the images in images/links_manager_uploads themselves also set to 777 and not to a usual 644? Could that be more of a threat?
  5. gewoon09

    Links Manager II

    Hi Jack, I set the permissions of images/links_manager_uploads correct: 777. It does work when I upload a category image from admin side. However, when someone requests a link (/links_submit.php), and uploads an image, they get a succesful message, but the image is not uploaded, not in /images, nor in /images/links_manager_uploads. I tried .gif, .jpg and .png. Another thing: the date button in admin/links_featured.php gives the error: "Your specials.php was patched incorrectly. Look especially for all calls of showCalendar and if they have at least 6 parameters." which is in admin/includes/javascript/calendarcode.js. Could it be, that this has something to do with dutch date settings? (day-month-year)? Maybe it would be an idea to use spiffycalendar instead, for user friendlier interface? Michiel
  6. gewoon09

    Links Manager II

    Hi Jack, Thank you for your reply. Yes, I did run the links_setup. I found the little problem in includes/modules/link_listing.php line 34 causing the error: $listing_split = new splitPageResults($listing_sql, MAX_LINKS_DISPLAY, 'l.links_id'); I removed l.links_id so now it looks like this: $listing_split = new splitPageResults($listing_sql, MAX_LINKS_DISPLAY); Now it seems to work fine. Allthough I am not sure if this would cause problems elsewhere... Another thing I changed, is in includes/functions/links.php line 66 , because when creating or editing a category, category images were not uploaded right and not showing on my website. Please check for me if I made any damage to the function by changing this. I changed the last line in this piece of code: //// // The HTML image wrapper function function tep_links_image($src, $alt = '', $width = '', $height = '', $parameters = '') { if ( (empty($src) || ($src == DIR_WS_IMAGES)) && (IMAGE_REQUIRED == 'false') ) { return false; } /****************** check if image is on another site ******************/ if (strpos($src, 'http') === FALSE) { $src = DIR_WS_IMAGES . 'links_manager_uploads/' . $src; } To this: //// // The HTML image wrapper function function tep_links_image($src, $alt = '', $width = '', $height = '', $parameters = '') { if ( (empty($src) || ($src == DIR_WS_IMAGES)) && (IMAGE_REQUIRED == 'false') ) { return false; } /****************** check if image is on another site ******************/ if (strpos($src, 'http') === FALSE) { $src = $src; } Thanks, Michiel
  7. gewoon09

    Links Manager II

    Hi Jack, I installed the latest version, LM II - V1.29. The database setup worked fine. In admin I added a category, and then tried to add a link. When I look on my website, I get this error: 1054 - Unknown column 'l.links_id' in 'field list' select count(l.links_id) as total from (select ld.links_title, ld.links_description, l.links_url, l.links_clicked, l.links_id from links_description ld left join links l on ld.links_id = l.links_id left join links_to_link_categories l2lc on l.links_id = l2lc.links_id where l.links_status = '2' and CHAR_LENGTH(ld.links_title) > '0'and l2lc.link_categories_id = '1' and ( ld.language_id = '4' or ld.language_id = 99 ) order by ld.links_title) as t My site is in dutch www.gewoongezond.be/links.php , I don't know if it could have anything to do with language, because in admin>configuration>links there is no entry for dutch links? Please, could you help me? I am grateful for any help, thanks. Michiel
  8. gewoon09

    Request add on to Easy advanced specials

    Hi, is there anyone that could help me integrate the database field valid_from_date in the table sessions. The field is in my database. I am using the latest original admin/specials.php file of this contribution, and I started to edit it. It is now showing the right fields to enter, but when I hit update, the valid_from_date entry is used to save to the expire_date. Please help, I know I did make some mistakes, but that's because I am an amateur, I must admit. The valid_from_date should also be checked in order set the flag to green or red. The special should be flagged green, when between valid_from_date and expire_date. Here are my additions to the file, search for valid_from_date: <?php /* osCommerce 2.2MS2 Contribution Easy advanced specials This contribution lets you easily administrate your special offers and discounts. - products filtering by category (can include subcategory products) and / or manufacturers - can apply discounts (fixed price or percentual) and / or expiration dates at one time - flexible inline edit of single product discount: can edit directly the rows of the filterd products list. --------- Gestione avanzata offerte e sconti Questa contribution permette di gestire gli sconti e le offerte speciali per categoria / produttore / tutti / singolarmente - filtraggio dei prodotti per categoria (si possono includere anche i prodotti delle sottocategorie) e/o produttore - applicazione di offerte con prezzo fisso o sconto percentuale alla lista filtrata - applicazione della data di scadenza alla lista filtrata - modifica diretta delle singole offerte: è possibile modificare direttamente le singole righe della lista filtrata --------- 05/07/2007 Eugenio Bonifacio (eugh@libero.it) - Comiso (RG) - Italy The author is not responsible for any damage caused by the use of this code and any derivatives of it. So use it at your own risk. This code is released under the terms of the GNU/GPL v2 http://www.gnu.org/copyleft/gpl.html ------- INSTALLATION: Just copy the following files in the corresponding folder: /admin/specials.php /admin/includes/languages/english/specials.php /admin/includes/languages/italian/specials.php /admin/includes/languages/italian/images/buttons/*.gif /admin/includes/languages/english/images/buttons/*.gif /admin/images/*.gif WARNING: Starting from v1.3.2 this contribution overwrites the original oscommerce specials administration. So, backup your files first! ------- CHANGES LOG v1.3.3 (06/06/2010) Full Package - Due to some possible server-side problem when using '%' character directly inside the amount, a selectbox has been added for choosing either percent or currency. You can also use the '%' character as ever. v1.3.2 (09/02/2010) Full Package - starting from this version the contributions replaces the original oscommerce specials administration. So BACKUP YOUR FILES first!!! - UI Improvements - Merges all the previous bugfixes, thanks to all contributors - Product Name Filtering v1.3 (11/11/2008) Full Package - product name / model sorting added - spanish language (Thanks to Denox) v1.2.1 (10/09/2007) Full Package - buttons images changed: their names could have been in conflict with other contribs v1.2 (10/09/2007) Full package - few bug fixes - now reflects 100% current currency settings - Added Dutch translation, specials thanks to frankschoutens. v1.1.1 (10/07/2007) - Added German translation, specials thanks to Craxx. v1.1 (09/07/2007) - now it manages the tax value according to the 'Display prices with tax' global setting. v1.0.1 (07/07/2007) - few bugs fixed (thanks to Craxx for his feedback, i was using a modified version of osCommerce) v1.0 (05/07/2007) - first release */ require('includes/application_top.php'); require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SPECIALS); require(DIR_WS_CLASSES . 'currencies.php'); $currencies = new currencies(); $action = (isset($HTTP_GET_VARS['action']) ? $HTTP_GET_VARS['action'] : 'list'); $categories_head = array( array( 'id' => '', 'text' => @SPECIALS_ENHANCED_CATEGORIES ) ); $categories_list = array_merge($categories_head, tep_get_category_tree()); $manufacturers_list = array( array( 'id' => '', 'text' => @SPECIALS_ENHANCED_MANUFACTURERS ) ); $manufacturers_query = tep_db_query("select manufacturers_id, manufacturers_name from " . TABLE_MANUFACTURERS . " order by manufacturers_name"); while ($manufacturers = tep_db_fetch_array($manufacturers_query)) { $manufacturers_list[] = array( 'id' => $manufacturers['manufacturers_id'], 'text' => $manufacturers['manufacturers_name'] ); } $sort_fields = array( 'product_id' => array( 'text' => '', 'field' => 'p.products_id' ), 'product_model' => array( 'text' => @SPECIALS_ENHANCED_TH_MODEL, 'field' => 'p.products_model' ), 'product_name' => array( 'text' => @SPECIALS_ENHANCED_TH_PRODUCTS, 'field' => 'pd.products_name' ) ); $sort_list = array(); foreach($sort_fields as $k => $v) { $sort_list[] = array( 'id' => $k, 'text' => $v['text'] ); } $product_name = (isset($HTTP_GET_VARS['product_name']) && !empty($HTTP_GET_VARS['product_name']) ? trim($HTTP_GET_VARS['product_name']):null); $sort_type = (isset($HTTP_GET_VARS['sort_type']) && in_array($HTTP_GET_VARS['sort_type'], array('asc', 'desc')) ? $HTTP_GET_VARS['sort_type'] : 'asc'); $sort = (isset($HTTP_GET_VARS['sort']) && isset($sort_fields[$HTTP_GET_VARS['sort']]['field']) ? $HTTP_GET_VARS['sort'] : 'product_id'); $sort_field = $sort_fields[$sort]['field'] . ($sort != 'product_id' ? ' ' . $sort_type : ''); $category_id = (isset($HTTP_GET_VARS['cPath']) && $HTTP_GET_VARS['cPath'] != '' ? intval($HTTP_GET_VARS['cPath']) : null); $subcats_flag = (isset($HTTP_GET_VARS['subcats_flag']) && $HTTP_GET_VARS['subcats_flag'] == '1' ? true:false); $specials_flag = (isset($HTTP_GET_VARS['specials_flag']) && $HTTP_GET_VARS['specials_flag'] == '1' ? true:false); $manufacturer_id = (isset($HTTP_GET_VARS['manufacturer_id']) && $HTTP_GET_VARS['manufacturer_id'] != '' ? intval($HTTP_GET_VARS['manufacturer_id']) : null); $current_category_id = (isset($HTTP_GET_VARS['cPath']) && $HTTP_GET_VARS['cPath'] != '' ? intval($HTTP_GET_VARS['cPath']) : ''); $discount_percent = (isset($HTTP_GET_VARS['percent_flag']) && $HTTP_GET_VARS['percent_flag'] == '1' ? true:false); $discount = (isset($HTTP_GET_VARS['discount']) && !empty($HTTP_GET_VARS['discount']) ? trim($HTTP_GET_VARS['discount']):null); if($discount !== null) { if(!$discount_percent && preg_match("/^(.*)(%|p)$/", $discount)) { $discount_percent = true; } $discount = floatval(str_replace($currencies->currencies[DEFAULT_CURRENCY]["decimal_point"], ".", $discount)); } $date = (isset($HTTP_GET_VARS['date']) && !empty($HTTP_GET_VARS['date']) ? trim($HTTP_GET_VARS['date']):null); if(preg_match('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{4,4})$/',$date)) { $date_array = explode('/',$date); $date = strftime("%Y-%m-%d %H:%M:%S", mktime(23, 59, 59, $date_array[1], $date_array[0], $date_array[2])); } $valid_from_date = (isset($HTTP_GET_VARS['valid_from_date']) && !empty($HTTP_GET_VARS['valid_from_date']) ? trim($HTTP_GET_VARS['valid_from_date']):null); if(preg_match('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{4,4})$/',$valid_from_date)) { $date_array = explode('/',$valid_from_date); $valid_from_date = strftime("%Y-%m-%d %H:%M:%S", mktime(00, 00, 00, $date_array[1], $date_array[0], $date_array[2])); } $page = (isset($HTTP_GET_VARS['page']) && intval($HTTP_GET_VARS['page']) > 0 ? intval($HTTP_GET_VARS['page']):1); /* FUNCTIONS *********************************************************************** */ /* gets the id list of the filtered products */ function specials_enhanced_get_all_id() { global $category_id, $subcats_flag, $manufacturer_id, $specials_flag, $product_name, $languages_id; $tables = array(); if($specials_flag) $tables[] = TABLE_PRODUCTS . ' p INNER JOIN ' . TABLE_SPECIALS . ' s ON p.products_id = s.products_id'; else $tables[] = TABLE_PRODUCTS . ' p LEFT JOIN ' . TABLE_SPECIALS . ' s ON p.products_id = s.products_id'; $clauses = array(); if ($product_name != null) { $tables[] = ' INNER JOIN ' . TABLE_PRODUCTS_DESCRIPTION . ' pd ON p.products_id = pd.products_id'; $clauses[] = "pd.products_name LIKE '%" . $product_name . "%'"; $clauses[] = 'pd.language_id = '. (int)$languages_id; } if($category_id !== null && $category_id >= 0) { $tables[] = 'INNER JOIN ' . TABLE_PRODUCTS_TO_CATEGORIES . ' p2c ON p.products_id = p2c.products_id'; if($subcats_flag) { $categories_array = tep_get_category_tree($category_id,'','0','', true); $cats = array(); foreach($categories_array as $cat) $cats[] = $cat['id']; $clauses[] = "p2c.categories_id IN (" . implode(',',$cats) . ")"; } else $clauses[] = "p2c.categories_id = '$category_id'"; } if($manufacturer_id !== null) { $clauses[] = "p.manufacturers_id = '$manufacturer_id'"; } $tables_text = implode(' ', $tables); $clauses_text = '1=1'; if(count($clauses) > 0) $clauses_text = implode(' AND ', $clauses); $ids_query = tep_db_query("SELECT p.products_id AS pid, s.specials_id AS sid FROM $tables_text WHERE $clauses_text"); $ids = array(); while($id = tep_db_fetch_array($ids_query)) $ids[] = $id; return $ids; } /* gets all the filtered products */ function specials_enhanced_get_all_products(&$products_split, &$products_query_numrows) { global $category_id, $subcats_flag, $manufacturer_id, $specials_flag, $languages_id, $page, $sort_field, $product_name; $tables = array(); $clauses = array(); $fields = 'p.products_id, p.products_price, p.products_tax_class_id, p.products_model, pd.products_name, s.specials_id, s.specials_new_products_price, s.valid_from_date, s.expires_date, s.status'; if($specials_flag) { $tables[] = TABLE_PRODUCTS . ' p INNER JOIN ' . TABLE_SPECIALS . ' s ON p.products_id = s.products_id INNER JOIN ' . TABLE_PRODUCTS_DESCRIPTION . ' pd ON p.products_id = pd.products_id'; } else { $tables[] = TABLE_PRODUCTS . ' p LEFT JOIN ' . TABLE_SPECIALS . ' s ON p.products_id = s.products_id INNER JOIN ' . TABLE_PRODUCTS_DESCRIPTION . ' pd ON p.products_id = pd.products_id'; } $clauses[] = 'pd.language_id = '. (int)$languages_id; if($category_id !== null && $category_id >= 0) { $tables[] = 'INNER JOIN ' . TABLE_PRODUCTS_TO_CATEGORIES . ' p2c ON p.products_id = p2c.products_id'; if($subcats_flag) { $categories_array = tep_get_category_tree($category_id,'','0','', true); $cats = array(); foreach($categories_array as $cat) $cats[] = $cat['id']; $clauses[] = "p2c.categories_id IN (" . implode(',',$cats) . ")"; } else $clauses[] = "p2c.categories_id = '$category_id'"; } if($manufacturer_id !== null && $manufacturer_id > 0) { $clauses[] = "p.manufacturers_id = '$manufacturer_id'"; } if ($product_name != null) { $clauses[] = "pd.products_name LIKE '%" . $product_name . "%'"; } $tables_text = implode(' ', $tables); $clauses_text = '1=1'; if(count($clauses) > 0) $clauses_text = implode(' AND ', $clauses); $products_query_text = "select $fields from $tables_text WHERE $clauses_text ORDER BY $sort_field"; $products_split = new splitPageResults($page, MAX_DISPLAY_SEARCH_RESULTS, $products_query_text, $products_query_numrows); $products_query = tep_db_query($products_query_text); $products = array(); while ($product = tep_db_fetch_array($products_query)) $products[] = $product; return $products; } /* rewrited tep_set_specials_status, the osCommerce one has a strange behaviour when setting the status to 1 */ function specials_enhanced_set_status($specials_id, $status) { if ($status == '1') { return tep_db_query("update " . TABLE_SPECIALS . " set status = '1', date_status_change = NULL where specials_id = '" . (int)$specials_id . "'"); } elseif ($status == '0') { return tep_db_query("update " . TABLE_SPECIALS . " set status = '0', date_status_change = now() where specials_id = '" . (int)$specials_id . "'"); } else { return -1; } } /* Updates a product special offer */ function specials_enhanced_update_product($product_id, $discount = null, $discount_percent = false, $date = null) { $product_query = tep_db_query("SELECT p.products_id AS id, p.products_price AS price, p.products_tax_class_id AS tax FROM " . TABLE_PRODUCTS . " p WHERE p.products_id = $product_id"); $product = tep_db_fetch_array($product_query); $fields = array(); if($discount !== null) { if($discount_percent) $discounted_price = ($product['price'] - (($discount / 100) * $product['price'])); elseif(DISPLAY_PRICE_WITH_TAX == 'true') { $discounted_price = floatval($discount/(1 + tep_get_tax_rate_value($product['tax'])/100)); } else { $discounted_price = floatval($discount); } $fields['specials_new_products_price'] = $discounted_price; } if($date !== null) { $fields['expires_date'] = $date; } if($valid_from_date !== null) { $fields['valid_from_date'] = $valid_from_date; } if(tep_db_num_rows(tep_db_query("SELECT specials_id FROM " . TABLE_SPECIALS . " WHERE products_id = $product_id")) == 1) { $set_fields = array(); foreach($fields as $k => $v) $set_fields[] = "$k = '$v'"; $set_fields = implode(', ', $set_fields); tep_db_query("UPDATE " . TABLE_SPECIALS . " SET $set_fields WHERE products_id = '$product_id'"); } else { $key_fields = array(); $value_fields = array(); foreach($fields as $k => $v) { $key_fields[] = $k; $value_fields[] = "'$v'"; } $key_fields = implode(', ', $key_fields); $value_fields = implode(', ', $value_fields); tep_db_query("INSERT INTO " . TABLE_SPECIALS . " (products_id, specials_date_added, status, $key_fields) VALUES ('" . (int)$product_id . "', now(), '0', $value_fields)"); } return true; } /* *********************************************************************** */ if (tep_not_null($action)) { switch ($action) { // Enables/disables the special offer case 'setflag': specials_enhanced_set_status($HTTP_GET_VARS['id'], $HTTP_GET_VARS['flag']); tep_redirect(tep_href_link(FILENAME_SPECIALS, tep_get_all_get_params(array('action','flag','id')), 'NONSSL')); break; // Enables/disables the specials of the filtered products case 'setflag_all': $specials_flag = 1; $ids = specials_enhanced_get_all_id(); foreach($ids as $id) { if($id['sid'] != null) specials_enhanced_set_status($id['sid'], $HTTP_GET_VARS['flag']); } tep_redirect(tep_href_link(FILENAME_SPECIALS, tep_get_all_get_params(array('action','flag','id')), 'NONSSL')); break; // Lists the filtered products case 'list': $specials_array = specials_enhanced_get_all_products($products_split, $products_query_numrows); break; // Updates a single product/special offer case 'update': $id = (isset($HTTP_GET_VARS['id']) ? intval($HTTP_GET_VARS['id']):0); if($id && $discount !== null) specials_enhanced_update_product($id, $discount, $discount_percent, $valid_from_date, $date); tep_redirect(tep_href_link(FILENAME_SPECIALS, tep_get_all_get_params(array('action','id','discount','valid_from_date','date')), 'NONSSL')); break; // Updates all the filtered products/special offers case 'update_all': if($discount !== null || $date !== null) { if($discount === null && $date != null) $specials_flag = 1; $ids = specials_enhanced_get_all_id(); foreach($ids as $id) specials_enhanced_update_product($id['pid'], $discount, $discount_percent, $valid_from_date, $date); } tep_redirect(tep_href_link(FILENAME_SPECIALS, tep_get_all_get_params(array('action','id','discount','valid_from_date','date')), 'NONSSL')); break; // removes a single special offer case 'remove': $id = (isset($HTTP_GET_VARS['id']) ? intval($HTTP_GET_VARS['id']):0); tep_db_query("DELETE FROM " . TABLE_SPECIALS . " WHERE products_id = $id"); tep_redirect(tep_href_link(FILENAME_SPECIALS, tep_get_all_get_params(array('action','id')), 'NONSSL')); break; // removes all the filtered special offers case 'remove_all': $specials_flag = 1; $ids = specials_enhanced_get_all_id(); foreach($ids as $id) { if($id['sid'] != null) tep_db_query("DELETE FROM " . TABLE_SPECIALS . " WHERE specials_id = $id[sid]"); } tep_redirect(tep_href_link(FILENAME_SPECIALS, tep_get_all_get_params(array('action')), 'NONSSL')); break; } } ?> <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> <html <?php echo HTML_PARAMS; ?>> <head> <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>"> <title><?php echo TITLE; ?></title> <link rel="stylesheet" type="text/css" href="includes/stylesheet.css"> <script language="javascript" src="includes/general.js"></script> </head> <body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF" onLoad="SetFocus();"> <div id="popupcalendar" class="text"></div> <!-- header //--> <?php require(DIR_WS_INCLUDES . 'header.php'); ?> <!-- header_eof //--> <!-- body //--> <table border="0" width="100%" cellspacing="2" cellpadding="2"> <tr> <td width="<?php echo BOX_WIDTH; ?>" valign="top"> <table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="1" cellpadding="1" class="columnLeft"> <!-- left_navigation //--> <?php require(DIR_WS_INCLUDES . 'column_left.php'); ?> <!-- left_navigation_eof //--> </table> </td> <!-- body_text //--> <td width="100%" valign="top"> <table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td width="100%"> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> <td class="pageHeading" align="right"><?php echo tep_draw_separator('pixel_trans.gif', HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td> </tr> </table> </td> </tr> <tr> <td> <form> <input name="action" type="hidden" value="list"/> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td> <table> <tr> <td class="main"><b><?php echo @SPECIALS_ENHANCED_FILTER;?></b></td> <td class="main"> <?php echo @SPECIALS_ENHANCED_NAME;?> <input name="product_name" type="text" value="<?php echo $product_name; ?>" size="20" maxlength="100"/> <?php echo tep_draw_pull_down_menu('cPath', $categories_list, $current_category_id, '');?> <?php echo tep_draw_pull_down_menu('manufacturer_id', $manufacturers_list, $current_manufacturer_id);?> </td> <td><input type="image" src="includes/languages/<?php echo $language;?>/images/buttons/button_specials_enh_apply.gif" onClick="this.form.action.value='list';this.form.submit();" alt="<?php echo @SPECIALS_ENHANCED_LIST; ?>"/></td> </tr> <tr> <td class="main"><b><?php echo @SPECIALS_ENHANCED_ORDERING;?></b></td> <td> <?php echo tep_draw_pull_down_menu('sort', $sort_list, $sort, '');?> <?php echo tep_draw_pull_down_menu('sort_type', array(array('id' => 'asc', 'text' => @SPECIALS_ENHANCED_ASC), array('id' => 'desc', 'text' => @SPECIALS_ENHANCED_DESC)), $sort_type, '');?> </td> <td></td> </tr> <tr> <td></td> <td> <input type="checkbox" name="subcats_flag" value="1"<?php echo (isset($HTTP_GET_VARS['subcats_flag']) && $HTTP_GET_VARS['subcats_flag'] == '1' ? 'checked="checked"':'') ?>/><span class="main"><?php echo @SPECIALS_ENHANCED_INCLUDE_SUBCATEGORIES; ?></span> <br/> <input type="checkbox" name="specials_flag" value="1"<?php echo (isset($HTTP_GET_VARS['specials_flag']) && $HTTP_GET_VARS['specials_flag'] == '1' ? 'checked="checked"':'') ?>/><span class="main"><?php echo @SPECIALS_ENHANCED_ONLY_SPECIALS; ?></span> </td> <td></td> </tr> </table> </td> </tr> <tr> <td><hr/></td> </tr> <tr> <td> <input type="hidden" name="flag" value=""/> <table width="100%" cellspacing="0" cellpadding="0"> <tr> <td> <table border="0" cellpadding="0" cellspacing="0"> <tr> <td><span class="main"><?php echo @SPECIALS_ENHANCED_DISCOUNT; ?></span></td> <td> <input name="discount" type="text" value="" size="10"/> <?php ob_start(); ?> <select name="percent_flag"> <option value="0"><?php echo !empty($currencies->currencies[DEFAULT_CURRENCY]['symbol_left']) ? $currencies->currencies[DEFAULT_CURRENCY]['symbol_left']:$currencies->currencies[DEFAULT_CURRENCY]['symbol_right'] ; ?></option> <option value="1">%</option> </select> <?php $percent_select = ob_get_contents(); ob_end_clean(); echo $percent_select; ?> </td> <td> <input type="image" src="includes/languages/<?php echo $language;?>/images/buttons/button_specials_enh_apply_discount.gif" onClick="this.form.action.value='update_all';this.form.submit();" alt="<?php echo @SPECIALS_ENHANCED_APPLY_DISCOUNT; ?>"/></td> </tr> <tr> <td><span class="main"><?php echo @SPECIALS_ENHANCED_VALID_FROM_DATE; ?></span></td> <td><input name="valid_from_date" type="text" value="" size="10" maxlength="10"/></td> <td></td> </tr> <tr> <td><span class="main"><?php echo @SPECIALS_ENHANCED_DATE; ?></span></td> <td><input name="date" type="text" value="" size="10" maxlength="10"/></td> <td></td> </tr> <tr> </tr> </table> </td> <td align="right" valign="bottom"> <input type="image" src="includes/languages/<?php echo $language;?>/images/buttons/button_specials_enh_activate.gif" onClick="if(!confirm('<?php echo @SPECIALS_ENHANCED_GENERAL_CONFIRM;?>')) return false;this.form.action.value='setflag_all';this.form.flag.value='1';this.form.submit();" alt="<?php echo @SPECIALS_ENHANCED_ACTIVATE_ALL; ?>"/> <input type="image" src="includes/languages/<?php echo $language;?>/images/buttons/button_specials_enh_deactivate.gif" onClick="if(!confirm('<?php echo @SPECIALS_ENHANCED_GENERAL_CONFIRM;?>')) return false;this.form.action.value='setflag_all';this.form.flag.value='0';this.form.submit();" alt="<?php echo @SPECIALS_ENHANCED_DEACTIVATE_ALL; ?>"/> <input type="image" src="includes/languages/<?php echo $language;?>/images/buttons/button_specials_enh_remove.gif" onClick="if(!confirm('<?php echo @SPECIALS_ENHANCED_GENERAL_CONFIRM;?>')) return false;this.form.action.value='remove_all';this.form.submit();" alt="<?php echo @SPECIALS_ENHANCED_REMOVE_ALL; ?>"/> </td> </tr> </table> </td> </tr> </table> </form> </td> </tr> <tr> <td> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td valign="top"> <table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr class="dataTableHeadingRow"> <td width="15%" class="dataTableHeadingContent"><?php echo @SPECIALS_ENHANCED_TH_MODEL; ?></td> <td width="10%" class="dataTableHeadingContent"><?php echo @SPECIALS_ENHANCED_TH_PRODUCTS; ?></td> <td width="15%" class="dataTableHeadingContent" align="center"><?php echo @SPECIALS_ENHANCED_TH_PRICE . '(' . (DISPLAY_PRICE_WITH_TAX == 'true' ? SPECIALS_ENHANCED_TH_GROSS:SPECIALS_ENHANCED_TH_NET) . ')'; ?></td> <td width="15%" class="dataTableHeadingContent" align="center"><?php echo @SPECIALS_ENHANCED_TH_DISCOUNTED_PRICE . '(' . (DISPLAY_PRICE_WITH_TAX == 'true' ? SPECIALS_ENHANCED_TH_GROSS:SPECIALS_ENHANCED_TH_NET) . ') / %'; ?></td> <td width="8%" class="dataTableHeadingContent" align="center"><?php echo @SPECIALS_ENHANCED_TH_DISCOUNT_PERCENT; ?></td> <td width="15%" class="dataTableHeadingContent" align="center"><?php echo @SPECIALS_ENHANCED_TH_VALID_FROM_DATE; ?></td> <td width="15%" class="dataTableHeadingContent" align="center"><?php echo @SPECIALS_ENHANCED_TH_DATE; ?></td> <td width="8%" class="dataTableHeadingContent" align="center"><?php echo @SPECIALS_ENHANCED_TH_STATUS; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo @SPECIALS_ENHANCED_TH_ACTIONS; ?></td> </tr> <?php foreach($specials_array as $specials) { $tax_rate = tep_get_tax_rate_value($specials['products_tax_class_id']); ?> <tr class="dataTableRow" onMouseOver="rowOverEffect(this)" onMouseOut="rowOutEffect(this)"> <td colspan="8"> <form> <input type="hidden" name="cPath" value="<?php echo $category_id;?>"/> <input type="hidden" name="manufacturer_id" value="<?php echo $manufacturer_id;?>"/> <input type="hidden" name="subcats_flag" value="<?php echo ($subcats_flag ? '1':'');?>"/> <input type="hidden" name="specials_flag" value="<?php echo ($specials_flag ? '1':'');?>"/> <input type="hidden" name="sort" value="<?php echo $sort;?>"/> <input type="hidden" name="sort_type" value="<?php echo $sort_type;?>"/> <input type="hidden" name="page" value="<?php echo $page;?>"/> <input type="hidden" name="product_name" value="<?php echo $product_name;?>"/> <input type="hidden" name="action" value="update"/> <input type="hidden" name="id" value="<?php echo $specials['products_id'];?>"/> <table width="100%"> <tr> <td width="10%" class="dataTableContent"><?php echo $specials['products_model']; ?></td> <td width="15%" class="dataTableContent"><?php echo $specials['products_name']; ?></td> <td width="15%" class="dataTableContent" align="center"><?php echo $currencies->display_price($specials['products_price'], $tax_rate); ?></td> <td width="15%" class="dataTableContent" align="center"><input name="discount" style="border:1px solid #ccc;text-align:right" type="text" size="8" value="<?php echo number_format(tep_add_tax($specials['specials_new_products_price'], $tax_rate),intval($currencies->currencies[DEFAULT_CURRENCY]["decimal_places"]), $currencies->currencies[DEFAULT_CURRENCY]["decimal_point"], $currencies->currencies[DEFAULT_CURRENCY]["thousands_point"]);?>"/> <?php echo $percent_select; ?></td> <td width="8%" class="dataTableContent" align="center"><?php if($specials['specials_new_products_price']){echo number_format(-1*($specials['products_price'] - $specials['specials_new_products_price'])*100/$specials['products_price'], intval($currencies->currencies[DEFAULT_CURRENCY]["decimal_places"]), $currencies->currencies[DEFAULT_CURRENCY]["decimal_point"], $currencies->currencies[DEFAULT_CURRENCY]["thousands_point"]).'%';}else{ echo '---';} ?></td> <td width="15%" class="dataTableContent" align="center"><input name="valid_from_date" style="border:1px solid #ccc;" type="text" value="<?php echo (!empty($specials['valid_from_date']) && $specials['valid_from_date'] != '0000-00-00 00:00:00' ? preg_replace('/([0-9]{4,4})-([0-9]{2,2})-([0-9]{2,2}) ([0-9]{2,2}):([0-9]{2,2}):([0-9]{2,2})/','$3/$2/$1', $specials['valid_from_date']):''); ?>" size="10" maxlength="10" onFocus="this.select();"/></td> <td width="15%" class="dataTableContent" align="center"><input name="date" style="border:1px solid #ccc;" type="text" value="<?php echo (!empty($specials['expires_date']) && $specials['expires_date'] != '0000-00-00 00:00:00' ? preg_replace('/([0-9]{4,4})-([0-9]{2,2})-([0-9]{2,2}) ([0-9]{2,2}):([0-9]{2,2}):([0-9]{2,2})/','$3/$2/$1', $specials['expires_date']):''); ?>" size="10" maxlength="10" onFocus="this.select();"/></td> <td width="8%" class="dataTableContent" align="center"> <?php if($specials['status'] != null) { if ($specials['status'] == '1') { echo tep_image(DIR_WS_IMAGES . 'icon_status_green.gif', IMAGE_ICON_STATUS_GREEN, 10, 10) . ' <a href="' . tep_href_link(FILENAME_SPECIALS, 'action=setflag&flag=0&id=' . $specials['specials_id']. '&' . tep_get_all_get_params(array('id','flag','action','valid_from_date','date','discount')), 'NONSSL') . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_red_light.gif', IMAGE_ICON_STATUS_RED_LIGHT, 10, 10) . '</a>'; } else { echo '<a href="' . tep_href_link(FILENAME_SPECIALS, 'action=setflag&flag=1&id=' . $specials['specials_id'] . '&' . tep_get_all_get_params(array('id','flag','action','valid_from_date','date','discount')), 'NONSSL') . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_green_light.gif', IMAGE_ICON_STATUS_GREEN_LIGHT, 10, 10) . '</a> ' . tep_image(DIR_WS_IMAGES . 'icon_status_red.gif', IMAGE_ICON_STATUS_RED, 10, 10); } } else echo '----'; ?> </td> <td align="right"> <input type="image" src="images/button_specials_enh_update.gif" alt="<?php echo @SPECIALS_ENHANCED_UPDATE; ?>" style="border:1px solid #ccc;margin-right:5px;"/><?php if($specials['specials_new_products_price']) { ?><input type="image" src="images/button_specials_enh_remove.gif" alt="<?php echo @SPECIALS_ENHANCED_REMOVE; ?>" onClick="if(!confirm('<?php echo @SPECIALS_ENHANCED_REMOVE_CONFIRM; ?>')) return false;this.form.action.value ='remove';this.form.submit();" style="border:1px solid #ccc;"/><?php }else{?><img src="images/button_specials_enh_no_remove.gif" alt="<?php echo @SPECIALS_ENHANCED_REMOVE; ?>" style="border:1px solid #ccc;"/><?php } ?> </td> </tr> </table> </form> </td> </tr> <?php } ?> <tr> <td colspan="4"> <table border="0" width="100%" cellpadding="0"cellspacing="2"> <tr> <td class="smallText" valign="top"><?php echo $products_split->display_count($products_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, $page, TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td> <td class="smallText" align="right"><?php echo $products_split->display_links($products_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, MAX_DISPLAY_PAGE_LINKS, $page, tep_get_all_get_params(array('page', 'x', 'y'))); ?></td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </td> <!-- body_text_eof //--> </tr> </table> <!-- footer //--> <?php require(DIR_WS_INCLUDES . 'footer.php'); ?> <!-- footer_eof //--> </body> </html> <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?> Thanks! Michiel
  9. Hi, I hope someone can help me out with this problem, that I already pointed out in an earlier post. I still get these errors, when I enter a product on special. The errors than bother me most are the date errors. The last error is because the special price must be entered without tax. Invalid Start Date: 04/04/2012!! Invalid End Date: 05/05/2012!! Sale Price 5.65 must be less than Product Price 5. I cán enter a special, without filling out the start and end dates, but I need dates to work. Thank you!
  10. gewoon09

    Optional Related Products, Version 4.0

    Hi, I've installed the contribution, but I cannot get it running. Everything in configuration is visible, no problem, but when I click catalogue>related products, I see this error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'RELATED_PRODUCTS_MAX_ROW_LISTS_OPTIONS' at line 8 SELECT pa.* FROM products_related_products pa LEFT JOIN products_description pd ON pa.pop_products_id_master = pd.products_id AND pd.language_id = '4' WHERE pd.products_id = '31' ORDER BY pd.products_name, pa.pop_order_id, pa.pop_id LIMIT 0, RELATED_PRODUCTS_MAX_ROW_LISTS_OPTIONS On the live website likewise: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'RELATED_PRODUCTS_MAX_DISP' at line 14 SELECT pop_products_id_slave, products_name, products_model, products_price, products_quantity, products_tax_class_id, products_image FROM products_related_products, products_description pa, products pb WHERE pop_products_id_slave = pa.products_id AND pa.products_id = pb.products_id AND language_id = '4' AND pop_products_id_master = '31' AND products_status='1' ORDER BY rand() limit RELATED_PRODUCTS_MAX_DISP In this thread, someone else had this problem, but didn't share the answer when fixed. Can anyone help me out? I have installed the osc 2.2 version. Thank you! Michiel
  11. Thank you for your response. 1. Ok thanks, hopefully you can fdind anything to change this to prices incl tax. I t would be a lot easier and that woul mean a lot to me. 2. I tried several different options, including $list and strftime options (also jjjj, yyyy, dd mm yyyy or dd mm jjjj), but still I am getting the message: Invalid End Date: 01/01/2012!! I just cant figure out why this is. Below my last version: function gfc_date_format($date) { $new_array = false; $format_string = explode("/", DOB_FORMAT_STRING); $compare_format = array('dd','mm','jjjj'); $date_array = explode("/", $date); foreach($format_string as $kf=>$vf) { foreach($compare_format as $kc=>$vc) { if($vf == $vc) { $new_array[$k] = $date_array[$kf]; break; } } } return $date = ($new_array) ? implode("/", $new_array) : $date; } function gfc_format_date($date, $time=false) { $date = gfc_date_format($date); if($time === false) { if(preg_match('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{4,4})$/',$date)) { list($day, $month, $year) = explode('/', $date); $date = strftime("%d-%m-%Y %H:%M:%S", mktime(00, 00, 00, $day, $month, $year)); } } else { if(preg_match('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{4,4})$/',substr($date, 0, strrpos($date, '/')+5))) { list($day, $month, $year) = explode('/', substr($date, 0, strrpos($date, '/')+5)); list($hours, $minute, $seconds) = explode(':', substr($date, strrpos($date, '/')+5)); $date = strftime("%d-%m-%Y %H:%M:%S", mktime($hours, $minute, $seconds, $day, $month, $year)); } } return $date; } function gfc_current_date($time=false) { $timestamp = getdate(); if($time === false) { $date = gfc_format_date($timestamp['mday'].'/'.$timestamp['mon'].'/'.$timestamp['year'], $time); } else { $date = gfc_format_date($timestamp['mday'].'/'.$timestamp['mon'].'/'.$timestamp['year'].' '. $timestamp['hours'].':'.$timestamp['minutes'].':'.$timestamp['seconds'], $time); } return $date; } Thank you and have a great New Year's eve! Michiel
  12. Hi, Thank you for your work, this can be a great contribution. I tried these instructions. However, I still get errors. 1. Let's say, my price w/tax is 68.50 and I want to make my sale price w/tax 60.00. I get the error: Sale Price 60 must be less than Product Price 56.6116. 2. In the date sections, I see this: dd/mm/jjjj, this is dutch (not dd/mm/yyyy and not mm/dd/yyyy). If I fill out a date, say 31/12/2011, even after above changes, I get the error: Invalid End Date: 31/12/2011!! Thank you in advance!
  13. hi, I tried to install iDEAL (ideal-for-oscommerce-2-2). The problem I encountered is that after installing iDEAL, it is the only available payment method at checkout_payment.php I selected 3 modules in admin: moneyorder, paylater, iDEAL. The sortorders are set as 1, 2, and 3. Moneyorder and paylater used to work just fine, before installing iDEAL. I can't figure out why they don't show up anymore. Can anyone please help me? Perhaps it has anything to do with ideal_install.php, which is as following: <?php // Load database settings require_once(dirname(__FILE__) . '/ideal/include.php'); $aQueries = array(); // Add #_transactions table $aQueries[] = "CREATE TABLE IF NOT EXISTS `" . DATABASE_PREFIX . "transactions` (`id` int(11) unsigned NOT NULL auto_increment, `order_id` varchar(100) default NULL, `order_code` varchar(100) default NULL, `transaction_id` varchar(100) default NULL, `transaction_code` varchar(100) default NULL, `transaction_method` varchar(100) default NULL, `transaction_date` int(11) unsigned default NULL, `transaction_amount` decimal(10,2) unsigned default NULL, `transaction_description` varchar(100) default NULL, `transaction_status` varchar(16) default NULL, `transaction_url` varchar(255) default NULL, `transaction_payment_url` varchar(255) default NULL, `transaction_success_url` varchar(255) default NULL, `transaction_pending_url` varchar(255) default NULL, `transaction_failure_url` varchar(255) default NULL, `transaction_params` text, `transaction_log` text, PRIMARY KEY (`id`));"; // Add default labels for iDEAL status $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('100', '1', 'Payment success (verified)')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('101', '1', 'Payment success')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('102', '1', 'Payment pending')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('103', '1', 'Payment open')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('104', '1', 'Payment canceled')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('105', '1', 'Payment failure')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('106', '1', 'Payment expired')"; // Add dutch labels for iDEAL status $sql = "SELECT `languages_id` AS `id` FROM `" . DATABASE_PREFIX . "languages` WHERE `code` = 'nl' LIMIT 1;"; $oRecordset = mysql_query($sql) or die('QUERY: ' . $sql . ', ERROR: ' . mysql_error()); if(mysql_num_rows($oRecordset)) { $oRecord = mysql_fetch_assoc($oRecordset); if(strcmp($oRecord['id'], '1') !== 0) { $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('100', '" . $oRecord['id'] . "', 'Betaling ontvangen (gecheckt)')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('101', '" . $oRecord['id'] . "', 'Betaling ontvangen')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('102', '" . $oRecord['id'] . "', 'Betaling in behandeling')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('103', '" . $oRecord['id'] . "', 'Betaling open')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('104', '" . $oRecord['id'] . "', 'Betaling geannuleerd')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('105', '" . $oRecord['id'] . "', 'Betaling mislukte')"; $aQueries[] = "INSERT INTO `" . DATABASE_PREFIX . "orders_status` (`orders_status_id`, `language_id`, `orders_status_name`) VALUES ('106', '" . $oRecord['id'] . "', 'Betaling verlopen')"; } } $query_html = ''; for($i = 0; $i < sizeof($aQueries); $i++) { if(mysql_query($aQueries[$i])) { // Query success } else { $query_html .= '<b>Query:</b> ' . $aQueries[$i] . '<br><b>Error:</b> ' . mysql_error() . '<br><br><br>'; } } // Validate files & directories $sBasePath = dirname(__FILE__) . '/'; $aPaths = array(); // Gateway files $aPaths[] = array('path' => $sBasePath . 'ideal', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/certificates', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/gateways', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/gateways/gateway.core.cls.4.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/gateways/gateway.core.cls.5.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/images', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/images/ideal.gif', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/temp', 'write' => true); $aPaths[] = array('path' => $sBasePath . 'ideal/.htaccess', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/config.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/include.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/index.html', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/report.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/return.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/setup.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/transaction.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'ideal/validate.php', 'write' => false); // Application files $aPaths[] = array('path' => $sBasePath . 'includes/languages/dutch/modules/payment/ideal.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'includes/languages/english/modules/payment/ideal.php', 'write' => false); $aPaths[] = array('path' => $sBasePath . 'includes/modules/payment/ideal.php', 'write' => false); $files_html = ''; for($i = 0; $i < sizeof($aPaths); $i++) { if(is_file($aPaths[$i]['path'])) { if($aPaths[$i]['write'] && !is_writable($aPaths[$i]['path'])) { $files_html .= 'File <b>' . $aPaths[$i]['path'] . '</b> not writable.<br>'; } } elseif(is_dir($aPaths[$i]['path'])) { if($aPaths[$i]['write'] && !is_writable($aPaths[$i]['path'])) { $files_html .= 'Directory <b>' . $aPaths[$i]['path'] . '</b> not writable.<br>'; } } else { $files_html .= 'File <b>' . $aPaths[$i]['path'] . '</b> does not exist.<br>'; } } echo ' <h1>IDEAL INSTALL LOG</h1> <p style="color: red;">Please remove this file after installation!</p> <h3>Queries:</h3> <code>' . ($query_html ? $query_html : 'No warnings found') . '</code> <h3>Files & Folders:</h3> <code>' . ($files_html ? $files_html : 'No warnings found') . '</code> <h3>Configuration</h3> <p>You can change your gateway settings in <b>/ideal/config.php</b>!</p> '; ?> Thank you in advance
  14. Hi all, First of all, THANKS FOR THIS GREAT CONTRIB to the creators. I have a little problem. I made a lot of link categories, in two languages: English, Dutch. Now I am adding other languages and when I am trying to edit a link category, two new entry fields (category name and description) appear for the new language. So far so good. But when I am trying to save the changes in the new language fields, it won't update info for the new language, the fields remain empty. (Changes in the other 2 languages, do update as usual.) When I make a whole new category, then it is not a problem: All languages are saved. It is only when I am trying to update an existing link category. I would like to resolve this, because I will be adding more languages in the future and hope I won't have to make new categories every time I install a new language.
  15. Hi, I am trying to use ultimate SEO urls for Extra Pages Infobox Version 4.3. It seems to work with some mods. It now makes an url like this: www.domain.com/information.php?pages_id=2 look like this: www.domain.com//test-2.html in the address line in my browser. The thing is, that the links from other pages, to these information pages, when I look at the source of my pages, look like this: www.domain.com//information.php/pages_id/2 So I have been desperately trying to find the problem, without result. I hope somebody can help me out. I will include the code that shows the links to the information pages. In advance, thank you very much. <?php $page_query = tep_db_query("select p.pages_id, p.sort_order, p.status, s.pages_title, s.pages_html_text, s.intorext, s.externallink, s.link_target from " . TABLE_PAGES . " p LEFT JOIN " .TABLE_PAGES_DESCRIPTION . " s on p.pages_id = s.pages_id where p.status = 1 and p.page_type != 9 and s.language_id = '" . (int)$languages_id . "' order by p.sort_order, s.pages_title"); ?> <!-- info_pages //--> <tr> <td class="smallText"><div align="center"><br> <?php $page_list = ''; $rows = 0; while ($page = tep_db_fetch_array($page_query)) { $rows++; $target=""; if($page['link_target']== 1) { $target="_blank"; } $link = FILENAME_INFORMATION . '?pages_id=' . $page['pages_id']; if($page['intorext'] == 1) { $page_list .= '<a target="'.$target.'" href="' . $page['externallink'] . '">' . $page['pages_title'] . '</a> | '; } else { $page_list .= '<a target="'.$target.'" href="' . tep_href_link($link) . '">' . $page['pages_title'] . '</a> | '; } } $page_list .= ''; echo $page_list; ?> </div></td> </tr> <!-- info_pages_eof //--> ------------------------------ and I added this line to my .htaccess: RewriteRule ^(.*)-(.*).html$ information.php?pages_id=$2&%{QUERY_STRING}
×