Jump to content

ecartz

♥Ambassador
  • Content count

    3,315
  • Joined

  • Last visited

  • Days Won

    47

Everything posted by ecartz

  1. Note that CHARSET is still in the latest Phoenix: https://github.com/gburton/CE-Phoenix/blob/master/includes/languages/english.php#L34 It's almost certainly also present in the default Frozen. Perhaps you edited it out but need to put it back?
  2. ecartz

    Store Search Bar (BS)

    This suggests that there is something missing from your App install. As that isn't a core function. And includes/modules/content/header/cm_header_store_search.php isn't a core file. Note that tep_navbar_store_search is in that file. So presumably you broke something in one of your edits to that file. This isn't something that could be broken by folder structure changes, as it is in the same file.
  3. Phoenix is the successor to Edge. Either 1.0.7.1 or 1.0.7.5 could be considered successors for Frozen. There is at least one discussion in the Phoenix Club about migrating customers and products from an older store.
  4. ecartz

    Paypal Module Express Checkout Error

    This says that you have display_errors turned on. You can add ini_set('display_errors', '0'); to includes/configure.php to turn it off. Or turn it off in your hosting account if they allow you to do that. You should not have display_errors turned on in your live store. The warning and notices will be fixed in the 1.0.7.8 release.
  5. ecartz

    ULTIMATE Seo Urls 5 - by FWR Media

    The language class may have been moved, but it is unlikely it was removed. If that were the one and only problem, it could presumably be fixed if you explained what the actual problem was. If it's that there is code that you used to add immediately after the language code, then you can just move it into the i() function. Change if ( !self::$_singleton instanceof Usu_Main ) { self::$_singleton = new self; } to if ( !self::$_singleton instanceof Usu_Main ) { self::$_singleton = new self(); global $lng; self::$_singleton->setVar( 'languages_id', $_SESSION['languages_id'] ) ->setVar( 'request_type', $GLOBALS['request_type'] ) ->setVar( 'session_started', $GLOBALS['session_started'] ) ->setVar( 'sid', $GLOBALS['SID'] ) ->setVar( 'language', $_SESSION['language'] ) ->setVar( 'filename', $GLOBALS['PHP_SELF'] ) ->initiate( ( isset( $lng ) && ( $lng instanceof language ) ) ? $lng : [], $_SESSION['languages_id'], $_SESSION['language'] ); } And you can add the other change to includes/classes/application.php -- find $_SESSION['navigation']->add_current_page(); and add after it if (USU5_MULTI_LANGUAGE_SEO_SUPPORT == 'true') { include_once 'includes/modules/ultimate_seo_urls5/includes/hreflang.php'; global $lng; $GLOBALS['usu5_multi'] = new FWR_hreflang( $_SESSION['navigation'], $_SESSION['language'], (isset( $lng ) && ( $lng instanceof language ) ) ? $lng : [], $GLOBALS['session_started'] ); } That's not the ideal solution, but it should get you around your immediate problem. A better solution would rename the file and/or class so that the autoloader would load it (no more include_once). And create a no-arg factory method for it that could be called from a hook. Then you wouldn't need to make a core edit. But if the only thing keeping you from using this App is that you can't find the code to edit in application_top.php, there it is. Presumably something like this is part of what piernas needs to test.
  6. ecartz

    Error With Checkout Paypal

    To fix this, turn off display_errors in the PHP configuration. Then the notices will not be displayed on the screen and won't break redirects. I do not know why you are getting these notices though. It seems to be saying that no payment module has been selected.
  7. ecartz

    Conexion a la base de datos

    includes/configure.php But maybe you want https://apps.oscommerce.com/VJEMI&wholesale-sppc-lite-phoenix ?
  8. ecartz

    Payments by credit card stopped working on Friday

    PayPal ships with Phoenix. The certificate file is at https://github.com/gburton/CE-Phoenix/blob/master/ext/modules/payment/paypal/paypal.com.crt or just download the distribution.
  9. ecartz

    Stripe SCA module installation error

    That sounds like you are using a very old version of PHP. 5.3 maybe? If you can't update PHP, perhaps try an older version of Stripe SCA. You could try replacing the [ on that line with array( and the ] with ). Not sure how many times you'd have to do that in the file though.
  10. ecartz

    Checkout problem

    There is a forum for PayPal questions: https://forums.oscommerce.com/forum/54-paypal/ There are several recent topics that say that PayPal made a change that requires an updated certificate. If you made no coding changes and it just stopped working, that seems the most likely explanation. The up-to-date version is at https://github.com/gburton/CE-Phoenix/blob/master/ext/modules/payment/paypal/paypal.com.crt If that is not it, it is barely possible that your host updated PHP in a way that broke your site. But the certificate is both more likely and an easier fix, so I would check that before talking to your host.
  11. ecartz

    SMTP with authentication on Phoenix 1.0.5.0

    OK. But what actual error was that file causing? It's possible that someone might be able to help you with that. Note that while Stewart has not gotten it working by following those instructions, he has gotten it working by jamming the contents of the file in a different location. It does still require installing PHPMailer and configuring it. I know nothing about configuring PHPMailer, so I can't give you any guidance with that. But still, someone else might be able to do so. For example, Stewart did apparently get that part of it working. This seems more like a hosting problem. I have certainly sent emails to my gmail address through a sendmail executable. If your host doesn't support that, I would recommend switching hosts to one that does. Note that talking about non-SMTP emails is simply nonsense. All emails are SMTP. The difference is the three kinds of access to SMTP. The sendmail kind is a local executable on the PHP server. The "SMTP" kind is a local SMTP server on the PHP server (primarily for Windows). The authenticated kind is a remote SMTP server. So what your host is saying is that rather than handling the authentication for you, they want you to authenticate manually. Because that's less work for them. I'd suggest saving them even more work and switching to a different host. Note that two of the certified developers are associated with hosting services. Eventually, I'm sure that someone is going to have to spend resources to get authenticated SMTP working. There seems to be a hope that "someone" will be either me or Burt. But even if it was, then I can tell you, that it would be released as a supporters' code rather than in core. So it might be better to approach one of the certified developers about it. As they are more likely to simply update the existing authenticated SMTP App with PHPMailer to work with Phoenix. It shouldn't even be that difficult, as I already rewrote and posted the code to do it. So what's left is essentially writing the instructions for installing and configuring PHPMailer and bundling the files properly. Rainer supports a large number of legacy Apps that are no longer supported by their writers. John has experience with custom email configuration. Preston likes to write Javascript package installers. It's possible that any or all of them might be interested in that kind of project. Another alternative would be filing a feature request with PHP. There is of course no reason why they couldn't implement authenticated SMTP in PHP itself. Then you would just have to configure it properly and you'd be able to use the mail function normally with a remote SMTP server. That would fix not just this software but PHP software in general.
  12. ecartz

    SMTP with authentication on Phoenix 1.0.5.0

    A 500 error is simply telling you that there was an error on the server. Check the error logs for a more precise error.
  13. ecartz

    Admin Load Time - strange this morning

    If you want, you can turn off the partner news and the other dashboard module that accesses the osC site. Then it won't matter.
  14. ecartz

    switching the site to https

    In the two configure.php files, change the things that say http: to https: Note that this assumes that your host is answering on https. If there's a problem with that, you'd have to take it up with your host.
  15. https://github.com/gburton/CE-Phoenix/commit/03411792e3fe0c344f6dbbb78dc92afcc2d3014a
  16. ecartz

    connecting to database issues

    Is your configure.php file pointing to the old database or the new database? Are you using MySQL or file sessions? Are your cookie settings for the dev location?
  17. ecartz

    Remove products that have the word sex in the title

    UPDATE products p INNER JOIN products_description pd on p.products_id = pd.products_id SET p.products_status = 0 WHERE pd.products_name LIKE '%sex%' Joins before set. You can see this in the documentation: UPDATE [LOW_PRIORITY] [IGNORE] table_references SET assignment_list [WHERE where_condition] Joins are hidden inside what it is calling table_references.
  18. ecartz

    PayPal transactions broken...?

    You might verify that you don't need to follow the steps at That was a problem in the UK last year. It may have spread to other countries this year. Note that if you use CE Phoenix, that wouldn't be a problem, as the file has already been updated.
  19. Note that these notices have been there all along. The update would only have revealed them. Most likely by defaulting display_errors to on. It should never be set on in production. So you should get that turned off regardless. In general, replacing $variable with (isset($variable) ? $variable : null) will get rid of the notices. However, this is essentially the same as just turning down the error reporting, as null is the default value of an undeclared variable. The notice is basically telling you that it is doing this for you. The real fix is often to code the add-ons differently. E.g. in if (false) { $variable = 'value'; } if ('value' == $variable) { If those are the only two occurrences, you could fix this by $variable = null; if (false) { $variable = 'value'; } if ('value' == $variable) { But watch out that it isn't really if (true) { $variable = 'default'; } // doing $variable = null here would overwrite the previous value if (false) { $variable = 'value'; } if ('value' == $variable) { Note that these statements do not have to be in the same file. There isn't a strictly mechanical solution. Removing the notices properly requires understanding why they are shown and changing appropriately to that particular situation. There isn't a simple rule to apply that would be better than turning down the error reporting. Sometimes the notice may be telling you that something is wrong. E.g. $typo = true; if ($tyop) { Which can be fixed by correcting the spelling in the second line.
  20. Shop version? Edit the error_reporting in includes/application_top.php in older versions. Or in the configure.php files in the latest Phoenix. Adding & ~E_NOTICE should suppress those messages. If it is already there, this may require a conversation with your host. Turn off display_errors in php.ini or however your host does it. This may require talking to your host, although some allow you to configure this yourself. It may help to refer your host to https://stackoverflow.com/a/54215956
  21. ecartz

    Where to buy templates for Phoenix?

    More constructively, if you want to exchange money to get a template implemented, there are resources in the Phoenix Club to get a quote or you could post in the Commercial Inquiries forum. I don't know of anyone creating an off-the-shelf template for Phoenix that you can just install. Phoenix has the capacity for drop-in templates. But no one is currently using it.
  22. That is a bad use of array_key_exists. Replacing it with if (isset($GLOBALS['customer']) && $GLOBALS['customer'] instanceof customer) { will always return the same answer and be faster. Because isset is faster than array_key_exists and because it saves the instanceof check in a circumstance when it always fails. The only time to use array_key_exists is when you need to know the difference between never set and defined but set to null. Which you don't here. Because if it is null, it is not an instance of customer. So the expression will return false whenever isset and array_key_exists return different results regardless of which is used. It is pretty rare to be in a situation where one should use array_key_exists. It gets recommended by people who are offended that PHP traditionally treated all undeclared variables as having a value of null. But the truth is that there are very few situations where one wants to know if something was not declared versus declared with a null value. And of course most of those situations can be fixed by simply setting explicitly to false rather than null. So it's pretty much only when interacting with someone else's code that one has any reason to use array_key_exists over isset. In this particular case, array_key_exists is itself slower and in addition, whenever it returns true and isset false, the instanceof will be false. So it will be even slower (because it does the instanceof check after getting a true from array_key_exists) to return the exact same result as isset. Note that (isset($GLOBALS['customer']) || array_key_exists('customer', $GLOBALS)) is faster (on average) than using array_key_exists alone. But as I said, in this particular case, you want a false result when the two differ anyway. So it's both easier and faster to just use isset.
  23. ecartz

    Thinking of Payment Gateway Integration: Choose ZaakPay

    Or to be more precise, replace " . TABLE_CONFIGURATION . " with configuration The change of case and removal of quotes is intentional. In this particular example, it would probably end up looking like tep_db_query("select configuration_value from configuration where configuration_key = 'MODULE_PAYMENT_ZAAKPAY_STATUS'"); There's probably more stuff on the same line that you would need to keep.
  24. ecartz

    admin/reviews.php

    This is telling you that there is no entry for the given product and language in the products_description table. Either switch to a language that does have an entry in the table or add an entry for your current language.
  25. ecartz

    fix 1525 error on website

    It occurs to me that it might need to be $banners_query = tep_db_query("SELECT banners_id, date_scheduled FROM banners WHERE date_scheduled > '2000-01-01' AND date_scheduled < NOW()"); Since you want to mask out zero dates. It's possible that $banners_query = tep_db_query("SELECT banners_id, date_scheduled FROM banners WHERE date_scheduled IS NOT NULL AND date_scheduled < NOW()"); would work. And considering what the function does, replacing the contents with tep_db_query("UPDATE banners SET status = 1, date_status_change = NOW(), date_scheduled = NULL WHERE date_scheduled IS NOT NULL AND date_scheduled < NOW()"); would most likely work and be simpler.
×