Jump to content
  • Checkout
  • Login
  • Get in touch


The e-commerce.


  • Content count

  • Joined

  • Last visited

1 Follower

About devosc

  • Birthday 07/04/1971

Profile Information

Recent Profile Visitors

10,748 profile views
  1. devosc

    PayPal IPN "Return To Merchant" not returning

    Hiya, If I can recall etc, there shouldn't be any need to configure anything over at PayPal in regard to using the Auto-Return, or atmost it just needs to be enabled. PPSCIPN will specify the actual URL location to return to, since a merchant may have more than one store etc.... And there should be no need to enable/configure IPN in the PayPal account profile either. The matter mentioned above in the customer's session being lost when returning to the site is because PayPal are/were not transposing the GET params of the form action into POST params (hidden fields) when returning the customer back to the store via the GET method when processing (non-paypal-member) CC payments (or something like that etc).
  2. devosc

    PayPal IPN "Return To Merchant" not returning

    Set it to 2 (Post), there is a problem at PP's end seemedly still not resolved.
  3. devosc

    PayPal IPN "Return To Merchant" not returning

    For PPSCIPN, it is checkout_sucess.php. The problem, in general, is most likely because the store is configured (includes/configure.php etc) with ENABLE_SSL enabled (i.e. true) but HTTPS_SERVER is empty (''), so the return param provided to PayPal is not a fully qualified URL. If the site does not have SSL, then ENABLE_SSL should be false (or atleast specify something for HTTPS_SERVER).
  4. devosc

    [Contribution]Paypal IPN - Devosc

    From the above, either the edit for this contrib (PayPal_Shopping_Cart_IPN) has been skipped, or reference is being made to another IPN contribution. There is a subtle difference between PayPal_Shopping_Cart_IPN and the other recent IPN module, the former only creates the order once the customer has clicked the order confirmation button, as opposed to the latter which creates the order when loading the checkout_confirmation page. PayPal_Shopping_Cart_IPN, will only populate the orders download database table once an IPN has been received notifying that the Payment is Completed, so downloads will not be immediately available until then. However in order to use this contribution in conjunction with the Downloads Controller contribution, the DC contrib needs to be updated because of its use of order status #s, a search in this forum channel for Download Controller would show: http://forums.oscommerce.com/index.php?act...ndpost&p=504989 However that post-page wont seem to load at the moment, but its contents can be found in the search. It should work, but I only quickly looked into it back then. ---- Leslie, thank you.
  5. $rQuery = tep_db_query("select orders_id from " . TABLE_ORDERS . " order by orders_id desc limit 1"); $aQuery = tep_db_fetch_array($rQuery); $new_order_id = $aQuery['orders_id'] + 1;
  6. I havent installed and ran it but Doesnt look like osCommerce MS2-2.2 code. If I can recall it should look something like $rQuery = tep_db_query("select orders_id from " . TABLE_ORDERS . " order by orders_id desc limit 1"); $new_order_id = $rQuery['orders_id'] + 1;
  7. devosc

    Question for those using Pay Pay Mod by Devosc

    catalog/includes/modules/payment/paypal/classes/osC/Order.class.php line 214 function notifyCustomer I think www.wingrep.com might of helped here, in searching for particular named constants..
  8. Have you tried dropping these contrib classes into an MS2-2.2 catalog ? It should work with only one change in specifying in the DIR_FS_WORK dir... in the osC_Cache dir (which needs to have write permissions -- the default is 'oscommerce_data')... Not sure I understand, forward compatibility --- to me, in this instance, this means having the finalized version (or staying current etc..) and making it backwards compatible ? The contribution classes provide backward compatibility (to the largest, or most common, degree), however intepretations have been made for forward compatibility, primarily to make where possible classes available via static calls, e.g. osC_MessageStack::add() rather than $osC_MessageStack.. subtle changes such as this would not be difficult for those familiar with osCommerce and some understanding of PHP... But maintenance of these classes to accomodate future or later revisions for compatibility would be required if neccessary.. So this features are available only if they wish to be used, in terms of MS2-2.2 they are transparent. Some changes & additions, for personal accomodation has been made, such as setResults, there are times when a query is made and its results merged with another set of results, and batch links similiar to here in the forums, but these are additional changes which cause no noticeable affects etc...
  9. Would it be of interest to anyone if a set of MS3 (type) class files and their corresponding MS2 functions be made as a contribution ? For example, I currently have a development catalog, which now has the following MS3 type class files, these files are intended to be forwarded compatible (with some minor changes) but also having functions (methods) that can the be called by the current MS2-2.2 functions, for tep_db_perform. osC_Database, osC_Session, osC_Cache osC_MessageStack As said these classes are my intepretations, and hopefully will provide forward compatibility, the only dubious one is osC_Session if they decide to remove the methods [exists, set, value] hopefully they won't because I believe it better to still protect $_SESSION in case code is written setting this autoglobal prior to the session actually starting (the data will be lost)... osC_MessageStack is not a drop in, but it is self contained and is used db class - wouldn't be hard to replace with existing messageStack (as it is now a static class). Small caveat, MS3 db class does not die on error so this would have to figured out (or forced for MS2-2.2 installations)... So for example as a replacement for the MS2-2.2 tep_db_perform function the corresponding function is now: ?function tep_db_perform($table, $data, $action = 'insert', $parameters = '', $link = 'db_link') { ? ?if ($action == 'insert') { ? ? ?$GLOBALS['osC_Database']->insert($table, $data); ? ?} elseif ($action == 'update') { ? ? ?$GLOBALS['osC_Database']->update($table, $data, $parameters); ? ?} ?} And the corresponding MS3 (type) database class is (in the case of an 'insert') ? ?function insert($table, $data) ? ?{ ? ? ?if (!is_array($data) || empty($data)) { ? ? ? ?return FALSE; ? ? ?} ? ? ?$_Result = & new osC_Database_Result($this); ? ? ?$_Result->setQuery('INSERT INTO '.$table.' ('.implode(', ',array_keys($data)).') VALUES ('.implode(', ',array_values(array_map(array(&$_Result,'buildEscapedString'),$data))).');'); ? ? ?$_Result->execute(); ? ? ?return $this->nextID(); ? ?} So with the newly revised tep_ functions, these files can be dropped into and MS2-2.2 catalog and seemlessly immediately integrated, while giving any future code the ability to use the new MS3 style methods... One benefit is the less cumbersome cohersion between database queries and caching the results.... Obviously this is would be for seasoned users. Thought to propose this question before uploading etc ? Give a shout if of any interest --- although please note, I have only quickly tested things out, so if any existing code is not MS2-2.2 standards compliant - and in _any-event_ I won't be responsible :blush: *Edit* - The files may be found here
  10. devosc

    [Contribution]Paypal IPN - Devosc

    Not sure, but last time I saw something like that I put it down to possible whitespace errors / output. look at the end of file in paypal/database_tables.inc.php and paypal/classes/osC.class.php and if there is a blank line (or space) after the last '?>' try removing it.
  11. devosc

    [Contribution]Paypal IPN - Devosc

    The IPN module verifies that the person receiving the money is who it is expected to be as specified by the storeowner for their 'Primary Email Address' and their Business ID... this is compared to the IPN information that PayPal provides in the IPN... so if they do not match then the IPN is ignored by the IPN module.... Prior to this test the IPN received is POSTed back to PayPal for PayPal to verify that they themselves actually sent the IPN.... So sending spoof IPNs is pratically impossible since the information is being posted directly back to PayPal for verification. If you are receiving duff IPNs... contact PayPal. Have you got the debug emails for these IPNs ? Steve.... enable your other payment modules.... I' think you'll find the order totals don't work as expected for them also ? G.
  12. Hi Bobby, Might be overlooking somethings, but why would there be a need to have two or more subcategories with exactly the same name (in that category) ? i.e. software/action, software/action ? If a site maintained correct naming / organization conventions then there would be be no need to to worry about two categories with the same name [ * ] ? Also whats all this about redirects ? is this just support for backwards compatibility ? [*] Actually I'm looking into a slightly different approach. That is when creating / editing a category in the admin, the full path to that category is stored in a db column in the description table, i.e. dvd_movies/thriller, so look ups are now not by the cPath but by the cd.categories_full_path. This info is cached for the categories box. So either a db query could be done to find the category id or travse the category_tree array etc... I'm also currently in two minds about doing the same thing with products, i.e. to store dvd_movies/thriller/frantic.html as the products respective full path or just to tag on the product_id, ie. dvd_movies/thriller/15 (although it should be possible to handle both, i.e. /catalog/15 or /catalog/dvd_movies/thriller/frantic.html) I'm also using MultiViews instead of rewrites_ ..... although I would be interested in doing / forcing rewrites for the not found errors if it will suppress these errors from the error logs... this way I could force / (the defaultIndex script) to handle to above urls rather than /catalog/ etc.... I noticed mention above also about keywords in the url... wouldn't this be difficult to do if removing the -p- or -c-'s ? since some uniqueness still needs to be automatically maintained ? So far the only difference I can see between the two approaches is that with the -p- -c- ids the urls can be much shorter as opposed to specifying the full path, but for my needs at present the full path has a little bit more clarity for its intended prupose. Out of interest is there any performance overhead with using MultiViews ? FWIW, the above MultiView approach seems to be what is used for the oscommerce.info/kb site... One last thought, is re relative urls.... as long as the url is not changing to ssl, would there be any benefit in ( trying to ? ) using relative urls instead ?
  13. devosc

    [Contribution]Paypal IPN - Devosc

    Looks fine, you're welcome... thanks.
  14. devosc

    [Contribution]Paypal IPN - Devosc

  15. devosc

    [Contribution]Paypal IPN - Devosc

    I would suggest that you create a sandbox with just the MS2-2.2 and ppscipn installed (there are overwrite and run files provided). The orignal checkout_process is terminated early with an exit statement, so it is not possible to have duplicate orders as suggested above, the problem is elsewhere and since this isn't a known (common) issue, seems as if something particular is occuring in your scripts... Wrong support thread. Look at this post (re one of your earlier posts). Re applying credit prior to the customers departure, well this whole process is not quite adequate, but we try to work with what is there, and the reason by default that the credit is applied, is exactly to prevent what you want it to allow it do, i.e. for someone to apply the *same* credit to a new / different purchase - the train of thought here was better to safekeep from the storeowners perspective and let the customer contact you to get the funds back (reavailable)... however you can override this in paypal/catalog/checkout_process.inc.php by commenting out: if(is_callable(array($order_total_modules, 'apply_credit'))) $order_total_modules->apply_credit(); Bad hair day....