Jump to content

pafranklin

Members
  • Content count

    290
  • Joined

  • Last visited

Everything posted by pafranklin

  1. pafranklin

    Jssor Slider

    Thanks for the thoughts everyone.. I think it would be interesting and keep thinks fresh, but how do we achieve this??
  2. pafranklin

    Jssor Slider

    Hi All, I'm loving this slider (kindly provided by Jack_mcs) and just one question if anyone familiar. Is there a way for the display of the slider images to be random rather than in the order they were added? A random display would make it look fresh and different every time. Many thanks in advance. Paul
  3. pafranklin

    PayPal Website Payments Pro Hosted Solution (Official)

    Hi, I have been using PayPal Website Payments Pro Hosted for over a year without issue and the other day it simply stopped working. I receive a debug email which states.......... $HTTP_POST_VARS: x=71 y=12 $HTTP_GET_VARS: https://api-3t.paypal.com/nvp - array ( ) Can anyone point me in the right direction please to resolve this? Many thanks in advance. Paul
  4. pafranklin

    Manual Order Maker

    I installed this contribution after Order Editor and had a similar problem to a number of others. Upon creating a customer or selecting an existing customer and clicking on "Save" on the create_order.php page I would be taken to the create_order_process.php page which was blank. The fix in my case was to copy the password_funcs.php page from includes/functions/ to admin/includes/functions/ All works!
  5. pafranklin

    NEW! Complete Order Editing Tool!

    Although this thread is looking as though it gets very few visitors, I just wanted to post my solution to the problem (5.09 not working with PHP5.3) Having investigated with my host and an expert coder, no solution could be found. Therefore I went back to basics, uninstalled the contribution and then re-installed version 2.8.2 (link below) http://addons.oscommerce.com/info/1435 It works perfectly and I can always work thrugh the modifications since this older version to make any changes later. However for anyone having a problem with 5.0.9 on a PHP5.3 server then this may help! Paul
  6. pafranklin

    NEW! Complete Order Editing Tool!

    I have just installed 5.0.9 from scratch, uploaded the files and made the necessary amends. However, when I click on the edit button I receive a blank page (error 500). If I enter an incorrect order number I can see that the page is available and working due to the "Error: Order 4251 does not exist." I am running osC 2.2-MS2 with PHP5.3.10 and wonder if the PHP version may be the issue. I have scoured dozens of pages through the forum where there is a reference to blank pages but so far no luck. Has anyone come across this problem or can anyone poiunt me in the right direction please? Many thanks. Paul
  7. Further to the post above from andrew71 my host has moved to PHP5.3 and my product images no longer work. Is there a work around available to overcome the issue ( with register_long_arrays set to off, imagemagic doesn't work for me and just displays "error, file path incorrect, check configure.php". If I switch register_long_arrays back on, it works, but under PHP5.3, register_long_arrays is deprecated and can't be switched back on.) Please can anyone advise of a fix or work around? Many thanks. Paul
  8. pafranklin

    [Contribution] Ship In Cart

    Hi there, I haven't trawled every page in this thread but wanted to post an update for all of those who have experienced an error on the product page whereby anyone clicking on the "update cart" button gets an error of page cannot be dispayed and the url appears something like http://www.xyzdomain.com/_. To correct this find: <tr> <td> <br> <?php $cart->add_cart($product_info['products_id']); //add current to cart for estimator if (CARTSHIP_ONOFF == 'Enabled') { require(DIR_WS_MODULES . 'product_shipping_estimator.php'); } else {}; $cart->remove($product_info['products_id']); //lets remove current product from cart ?> </td> </tr> and add </form> just before it so that the code looks something like: </form> <tr> <td> <br> <?php $cart->add_cart($product_info['products_id']); //add current to cart for estimator if (CARTSHIP_ONOFF == 'Enabled') { require(DIR_WS_MODULES . 'product_shipping_estimator.php'); } else {}; $cart->remove($product_info['products_id']); //lets remove current product from cart ?> </td> </tr> I hope this helps someone - It worked for me and the module works well, so thanks to those for developing it. Paul.
  9. pafranklin

    API Certificate v API Signature

    Hi there, I am hoping to install this version but see that you need an API Certificate? Unfortunately I have (and still use) the more modern API Signature. According to PayPal you cannot have both an API Certificate and an API Signature. Is there away around this? Will this module be upgraded to use the API Signature method? Any comments would be greatly appreciated. Many thanks. Paul
  10. pafranklin

    Actual Attribute Price V1.0

    Thanks for the reply which is much appreciated. Unfortunately I think I will have to decide not to install this contrib as I have 192 fairly complex Attribute Sets with lots of attribues in each set so having to re-do each of them would be an absolute nightmare. Its a real shame as the current setup is not ideal for customers. Thanks again for the assistance and information!! Kind regards. Paul
  11. pafranklin

    Actual Attribute Price V1.0

    Sorry for the basic question but before I attempt the install of Actual Attribute Price v1.7 I just wanted to ask if this woks with Attribute Sets or if they would be incompatable? As I have an existing shop with lots of attributes and lots of Attribute Sets, I am just a little nervous about installing and then running the attribute update utility to change everything (even allowing for file and database backups) Any thoughts or information would be appreciated. Thanks. Paul
  12. pafranklin

    Opening Links in a new Window

    This is very helpful. Many thanks! Paul
  13. Hi there, Probably a really stupid question but I have a link that I want to have open in a new window. How do I change the code below to enable this please?? Many thanks. Paul
  14. Hi there, I have been doing some work on one of my sites and have come across an error. I have not installed any contribs but must have made some code changes somewhere. When I am updating a product information from the admin side (catalog/admin/categories.php) and I click on the "Update" button, I am now receiving the following two error messages.......... Line 98 - 100 in my admin/includes/functions/database.php file is as follows: Line 54 from my admin/includes/functions/general.php file is as follows: I am sure ther must be a simple solution but I cannot find the error. Please would someone be kind enough to point me in the right direction? Many thanks. Paul
  15. pafranklin

    PayPal WPP Direct Payments & Express Checkout Support

    Thanks Glen and good luck with the development. I see that the contrib listed is quite old (2004) and Centinel have just provided me with what may be a newer version of the osC Cartridge. I didn't like to upload this against the existing version as I was not sure but it can be found (for the next few days anyway) from this link. Centinel osC Cartridge If it is appropriate I will add this to the contrib? Thanks again. Paul
  16. pafranklin

    PayPal WPP Direct Payments & Express Checkout Support

    Hi Glen, I am one of probably many UK site owners using PayPal WPP. I have registered with Centinel and received their guides (including the Thin Client) and must confess that even for someone with a moderat level of knowledge and experience with osC, this looks complicated. Do you envisage the upgrade to the PayPal WPP Module including the Centinel Thin Client or will we need to arrange to have this installed separately? Many thanks in advance. Paul
  17. pafranklin

    Shipping Table Rate

    Hi there, I believe (and I could be wrong) so worth a test possibly that you need to confirm the zero range by adding something like 3.99:0, 4:4, 5:5, 8:6,13:8,27:15,49:28,57:33,69:41,87:54,94:60,103:68,117:83,140:95 This should set anything up to and including 3.99 as nil and then up to 4 as 4 and so on. Hope this helps. Paul
  18. pafranklin

    PayPal Payflow Pro [New Version]

    Hi there, I am really sorry for the apparently "stupid" question but I am using PayPal WPP Pro, although it does still have some glitches which can affect the ability of some to complete their transactions. Is PayPal Payflow Pro the same as PayPal WPP Pro or something entirely different? Also does this work with UK based PayPal accounts? Many thanks!! Paul
  19. pafranklin

    PayPal WPP Module - Adding Maestro Card option

    Hi again, I am getting more confused by the minute. I have made changes to remove Switch and replace with Maestro but from information I have not all Maestro cards have a "valid from" date (which the module seems to need. Therefore I am getting the following error............ "Error Your credit card was declined. Please try another card or contact your bank for more info. No response from PayPal No response was received from PayPal. Please contact the store owner for assistance." In this instance there is definitely no problem with the card and funds are available for the transaction but I get a PayPal error. Can anyone answer these questions: 1. Does the module need a "Valid From" date for Maestro cards or has simply replacing Switch with Maestro caused this problem? 2. Is there any other explanation for the error that I may have missed? 3. Is there a newer version of the module available somewhere which has Maestro instead of Switch? Any help would be very much appreciated............!! Thank you!!
  20. Hello, I have had installed (thanks to Monika) the PayPal WPP contribution which works excellently. However, I have had a question from a customer who wishes to pay using his Maestro card (which is the debit card equivalent for MasetrCard). My question relates to how I can add this as an option to the paypal_wpp.php page (extract below). Is it possible to simply add array('id' => 'Maestro', 'text' => 'Maestro'), just below the "Visa" line? I did not wish to even attempt a change without checking as I would hate to mess up the payment module which is working so well and in case this would impact somewhere else on this page or elsewhere. $accepted_card_types = array(array('id' => 'Visa', 'text' => 'Visa'), array('id' => 'MasterCard', 'text' => 'MasterCard'), array('id' => 'Discover', 'text' => 'Discover')); //Amex is not supported for UK merchants if (MODULE_PAYMENT_PAYPAL_DP_UK_ENABLED != 'Yes') { $accepted_card_types[] = array('id' => 'Amex', 'text' => 'American Express'); } else { $accepted_card_types[] = array('id' => 'Solo', 'text' => 'Solo'); $accepted_card_types[] = array('id' => 'Switch', 'text' => 'Switch'); } Many thanks for the pointer! Paul
  21. pafranklin

    [Contrib] Your Recent History V2.0

    Hello, I have installed the very useful "Your Recent History Contribution". I have made a couple of slight changes but because of my lack of skill with PHP, I am struggling with a small element. If at all possible I would like to limit the number of products displayed (from recently viewed) to 4 products but more importantly, if the number of recently viewed products is more than 2, for this colume to split into two columns. The recently visited categoires to stay on the left of the box. Here is the code of my page so far and please would someone point me in the right direction? Thank you so much!!! Paul
  22. pafranklin

    Your Recent History - Code help please

    Please would someone be kind enough to point me in the right direction? Thank you :rolleyes:
  23. Hello, I have installed the very useful "Your Recent History Contribution". I have made a couple of slight changes but because of my lack of skill with PHP, I am struggling with a small element. If at all possible I would like to limit the number of products displayed (from recently viewed) to 4 products but more importantly, if the nuber of recently viewed products is more than 2, for this colume to split into two columns. The recently visited categoires to stay on the left of the box. Here is the code of the page so far and please would someone point me in the right direction? <?php if (is_object($your_recent_history)) { if ( (($your_recent_history->count_viewed() > 0) || ($your_recent_history->count_searches() > 0) || ($your_recent_history->count_viewed_cats() > 0)) // we have content and ($your_recent_history->on) // we want it and ($request_type != 'SSL') // we are not secure ) { // displaying //******************************************************************************* DEFINE('SHOW_ADD', false); // show the extra product DEFINE('SHOW_AP', false); // show also purchased product DEFINE('AP_PRE', false); // use ap preselection query //******************************************************************************* require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_YOUR_RECENT_HISTORY); // initialize variable $yrh=''; // start output buffer ob_start(); echo '<table border="0" width="100%" cellspacing="0" cellpadding="0" align="center"> <tr> <td> <table border="0" width="100%" cellpadding="0" align="center"> <tr> <td> <table style="border: 1px solid gray" width="100%" align="center" cellpadding="0"> <tr> <td> <table border="0" width="100%" cellpadding="2" >'; echo '<tr> <td nowrap colspan="40" class="infoBoxHeadingBig">' . YOUR_RECENT_HISTORY . '</td> <td class="boxtext" align="left"><a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action','lng','currency')) . 'action=vr'). '"><img src="images/erase.gif" border="0" alt="' . ERASE_MY_RECENT_HISTORY . '" title="' . ERASE_MY_RECENT_HISTORY . '"></a> <a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action','lng','currency')) . 'action=vs'). '"><img src="images/erase2.gif" border="0" alt="' . DO_NOT_SHOW_ME_AGAIN . '" title="' . DO_NOT_SHOW_ME_AGAIN . '"></a></td> </tr><tr>'; $row = 0; // PRODUCTS DISPLAY START /* get the products array from the class containing all products */ $items = $your_recent_history->get_viewed_items(); $n=sizeof($items); $index = 0; /* fetch the info for products */ for ($i=0; $i<$n; $i++) { $viewed_query = tep_db_query("select pd.products_name, p.products_image from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p where p.products_id = '" . $items[$i] . "' and pd.products_id = p.products_id and p.products_status = 1 and pd.language_id = '" . $languages_id . "'"); if ($viewed_info = tep_db_fetch_array($viewed_query)) { $items_on_display[$i] = array('id' => $items[$i], 'image' => $viewed_info['products_image'], 'name' => $viewed_info['products_name']); } else { // in case a product is recorded which is not active, set the image in language file $items_on_display[$i] = array('id' => $items[$i], 'image' => UNAVAILABLE_IMAGE, 'name' => UNAVAILABLE); } } $col = 0; $pwidth = 50; echo '<td> </td><td class="tableHeading" width="'.$pwidth.'%" valign="top" align="left">'; if ($n > 0) { $col++; echo '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action','lng','currency')) . 'action=cp'). '"><img src="images/erase.gif" border="0" alt="' . ERASE_MY_RECENT_HISTORY . _OF_PRODUCTS . '" title="' . ERASE_MY_RECENT_HISTORY . _OF_PRODUCTS . '"></a> '.VIEWED.PRODUCTS .'<br>' . tep_draw_separator('pixel_trans.gif', '100%', 2); echo '<table cellpadding="2">'; for ($i=0; $i<$n; $i++) { echo '<tr height="40px"><td valign="top" align="center">' . '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $items_on_display[$i]['id']) . '">' . tep_image(DIR_WS_IMAGES . $items_on_display[$i]['image'],$items_on_display[$i]['name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>'; echo '</td><td class="main" valign="top">'; echo '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $items_on_display[$i]['id']) . '">' . $items_on_display[$i]['name'] . '</a>'; echo '</td></tr>'; } echo '</table>'; } echo '</td>'; // PRODUCTS DISPLY END // CATEGORIES DISPLAY START $cats = $your_recent_history->get_viewed_cats(); $m=sizeof($cats); $index = 0; for ($i=0; $i<$m; $i++) { $mcPath_array = tep_parse_category_path($cats[$i]); $mcPath = implode('_', $mcPath_array); $v_category_id = $mcPath_array[(sizeof($mcPath_array)-1)]; $category_query = tep_db_query("select cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$v_category_id . "' and cd.categories_id = '" . (int)$v_category_id . "' and cd.language_id = '" . (int)$languages_id . "'"); $category = tep_db_fetch_array($category_query); $parent_id = $category['parent_id']; if ($parent_id > 0) { $category_parent_query = tep_db_query("select categories_name from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$category['parent_id'] . "' and language_id = '" . (int)$languages_id . "'"); $category_parent = tep_db_fetch_array($category_parent_query); $parent_name = $category_parent['categories_name']; $sep = ' ~ '; } else { $parent_name = ''; $sep = ''; } $cats_on_display[$i] = array('id' => $cats[$i],'name' => $parent_name . $sep . $category[categories_name]); } $cwidth = 33; echo '<td> </td><td class="tableHeading" width="'.$cwidth.'%" valign="top" align="right">'; if ($m > 0) { $col++; echo '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action','lng','currency')) . 'action=cc'). '"><img src="images/erase.gif" border="0" alt="' . ERASE_MY_RECENT_HISTORY . _OF_CATEGORIES . '" title="' . ERASE_MY_RECENT_HISTORY . _OF_CATEGORIES . '"></a> '.VIEWED.CATEGORIES . '<br>' . tep_draw_separator('pixel_trans.gif', '100%', 2); echo '<table cellpadding="2" cellspacing="0">'; for ($i=0; $i<$m; $i++) { echo '<tr><td valign="right">' . tep_image(DIR_WS_IMAGES . 'ico_arrow.gif', CATEGORY); echo '</td><td class="main">'; echo '<a href="' . tep_href_link(FILENAME_DEFAULT, 'cPath=' . $cats_on_display[$i]['id']) . '">' . $cats_on_display[$i]['name'] . '</a>'; echo '</td></tr>'; } echo '</table>'; } echo '</td>'; // CATEGORIES DISPLAY END // SEARCHES DISPLY START // $searches = $your_recent_history->get_searches(); // $ss=sizeof($searches); // echo '<td> </td><td class="tableHeading" width="33%" valign="top" align="left">'; // if ($ss > 0) { // $col++; // echo '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action','lng','currency')) . 'action=cs'). '"><img src="images/erase.gif" border="0" alt="' . ERASE_MY_RECENT_HISTORY . _OF_SEARCHES . '" title="' . ERASE_MY_RECENT_HISTORY . _OF_SEARCHES . '"></a> '.SUCCESSFUL.SEARCHES . '<br>' . tep_draw_separator('pixel_trans.gif', '100%', 4); // echo '<table cellpadding="2" cellspacing="0">'; // for ($i=0; $i<$ss; $i++) { // echo '<tr><td valign="middle">' . tep_image(DIR_WS_IMAGES . 'search_icon_s.gif', SEARCH); // echo '</td><td class="main">'; // echo '<a href="' . tep_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $searches[$i] .'&inc_subcat=1&search_in_description=1') . '">' . $searches[$i] . '</a>'; // echo '</td></tr>'; // } // echo '</table>'; // } //echo '</td>'; // SEARCHES DISPLAY END /* try to find also purchased products based on all products in the history */ /* any other than currently on the product info page */ if (SHOW_AP) { $mtm = rand(); // Also Purchased query based on Also Purchased Preselection if (AP_PRE) { # First let's get all the orders for this product $ap_query = tep_db_query("select ap.ap_id, p.products_image, p.products_price, p.products_tax_class_id, pd.products_name from ap_preselection ap, products_description pd, products p where ap.products_id in ('" . implode("','", $items) . "') and p.products_id = ap.ap_id and pd.products_id = ap.ap_id and p.products_id != '" . $HTTP_GET_VARS['products_id'] . "' and pd.language_id = '" . $languages_id . "' and p.products_quantity >= 0 and p.products_status = '1' order by rand($mtm) limit 1 "); } else { // The original also purchased query, use this if you have no ap preselection and hope for the best (performance-wise) $ap_query = tep_db_query("select p.products_id, p.products_price, p.products_tax_class_id, p.products_image, pd.products_name from " . TABLE_ORDERS_PRODUCTS . " opa, " . TABLE_ORDERS_PRODUCTS . " opb, " . TABLE_ORDERS . " o, " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where opa.products_id in ('" . implode("','", $items) . "') and opa.orders_id = opb.orders_id and opb.products_id != '" . (int)$HTTP_GET_VARS['products_id'] . "' and opb.products_id = p.products_id and opb.orders_id = o.orders_id and pd.products_id = p.products_id and pd.language_id = '" . $languages_id . "' and p.products_status = '1' group by p.products_id order by rand($mtm) limit 1 "); } /* if we find results, display the also purchased product */ $ap_found = false; $fwidth = ceil(100/($col+1)); if ($ap = tep_db_fetch_array($ap_query)) { $ap_found = true; $ap['special_price'] = tep_get_products_special_price($ap['products_id']); if (tep_not_null($ap['special_price'])) { $ap_price = '<s>' . $currencies->display_price($ap['products_price'], tep_get_tax_rate($ap['products_tax_class_id'])) . '</s><br>'; $ap_price .= '<span class="productSpecialPrice">' . $currencies->display_price($ap['special_price'], tep_get_tax_rate($ap['products_tax_class_id'])) . '</span>'; } else { $ap_price = $currencies->display_price($ap['products_price'], tep_get_tax_rate($ap['products_tax_class_id'])); } echo '<td width="'.$fwidth.'%" colspan="2" align="right" valign="top"> <table width="100%" align="center" border="0"> <tr> <td align="center" class="main">'; echo CUSTOMERS_HISTORY_ALSO_PURCHASED . '<br>'; echo '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $orders['ap_id']) . '">' . tep_image(DIR_WS_IMAGES . $ap['products_image'], $ap['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '<br>' . $ap['products_name'] . '</a>' . '<br>' . $ap_price; echo ' </td> </tr> </table> </td>'; } } /* if there are no also purchased results we display a random product */ /* any other than in the history or on the product info page */ if (((!SHOW_AP) && (SHOW_ADD)) || ((SHOW_AP) && (SHOW_ADD) && (!$ap_found))) { $mtm= rand(); $add_query = tep_db_query("select p.products_id, pd.products_name, p.products_image, p.products_tax_class_id, p.products_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = pd.products_id and p.products_id not in ('" . implode("','", $items) . "') and p.products_id != '" . $HTTP_GET_VARS['products_id'] . "' and p.products_status = 1 and pd.language_id ='" . (int)$languages_id . "' order by rand($mtm) limit 1"); if ($add_info = tep_db_fetch_array($add_query)) { $add_info['special_price'] = tep_get_products_special_price($add_info['products_id']); if (tep_not_null($add_info['special_price'])) { $add_price = '<s>' . $currencies->display_price($add_info['products_price'], tep_get_tax_rate($add_info['products_tax_class_id'])) . '</s><br>'; $add_price .= '<span class="productSpecialPrice">' . $currencies->display_price($add_info['special_price'], tep_get_tax_rate($add_info['products_tax_class_id'])) . '</span>'; } else { $add_price = $currencies->display_price($add_info['products_price'], tep_get_tax_rate($add_info['products_tax_class_id'])); } echo '<td width="'.$fwidth.'%" colspan="2" valign="top" align="right"> <table align="center" border="0"> <tr> <td align="center" class="main">'; echo YOU_MAY_ALSO_APPRECIATE . '<br>'; echo '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $add_info['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $add_info['products_image'], $add_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '<br>' . $add_info['products_name'] . '</a>' . '<br>' . $add_price; echo ' </td> </tr> </table> </td>'; } } echo ' </tr> </table> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table>'; // put output buffer in the variable for later use $yrh = ob_get_clean(); } // Displaying } // object check ?> Thank you so much!!! Paul
  24. pafranklin

    [contribution] Super Download Store

    Hi there, This looks like a greta contribution and having looked at the installation file there do not appear to be any step by step instructions for amending the existing files. Is it possible to provide this please? Many thanks. Paul
  25. In my categories box I have approximately 24 high level categories that all work well. What I would like to do is to have one of these linking to an external site or page. Is is possible to change where one of these category links goes to. For exapmle: My current url = http://www.mysite.co.uk/ category link pqrstuvwxyz instead of linking the the appropriate category I would like ot to link to http://www.differentsite.co.uk/ Alternatively how could I place a link to an external site at the bottom of the categories box?? Any advise would be great thanks!
×