Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Forgot Password Email Problems.

RyRy
edited November 2007 in Vanilla 1.0 Help
When people click "forgot password" for vanilla to email them their password i get the following error : A fatal, non-recoverable error has occurred Technical information (for support personel): Error Message An error occurred while sending the email. Affected Elements Email.Send(); The error occurred on or near: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/London' for 'BST/1.0/DST' instead For additional support documentation, visit the Lussumo Documentation website at: lussumo.com/docs Could you provide a solution please? I Tried changing the SMTP settings from blank, to my email servers one, but that provides an autentication error......

Comments

  • In /library/Framework/Framework.Class.Email.php at Line 107 add:
    date_default_timezone_set('Europe/London');

    So that this part looks like:
    function Send($FatalError = 1) { date_default_timezone_set('Europe/London'); $this->FatalError = $FatalError;

    List of PHP Supported Timezones
  • thanks for the response, I tried what you suggested, and now i get this error : Notice: Undefined variable: php_errormsg in /home/fhlinux164/g/glosunit.co.uk/user/htdocs/library/Framework/Framework.Class.Email.php on line 147 A fatal, non-recoverable error has occurred Technical information (for support personel): Error Message An error occurred while sending the email. Affected Elements Email.Send(); For additional support documentation, visit the Lussumo Documentation website at: lussumo.com/docs :( Any more ideas?
  • edited August 2007
    same file, line 147 change @mail to mail and change $php_errormsg to ""

    than you get the right error message...


    if (!mail($To, $this->Subject, $Message, $Header) && $this->FatalError) $this->Context->ErrorManager->AddError($this->Context, $this->Name, "Send", "An error occurred while sending the email.", "");
  • Is this a bug in Vanilla?
  • Sure looks like it. $php_errormsg is blank by default, but if you have track_errors turned on in php.ini then it will contain the error message.
  • not defined by default ;-) the date_default_timezone_set bug seems to be a hoster "bug", since I never saw it before the $php_errormsg bug is a vanilla "bugged feature" ;-) it's in several more files
  • haha thanks, done all that, now its just a simple error message saying it couldnt send the email and the affected elements are Email.Send(); not sure what this means! haha. Why wont it send an email?
  • can you create a test.php and write in it:
    <? date_default_timezone_set('Europe/London'); mail("your@email.com", "test", "lalala"); ?>

    than open it in your browser.
    if there is no error message you should receive a email, if there is one contact your hoster
  • Another thing that may work is get some SMTP settings (mail host, username, password) from your host and enter them in the Vanilla application settings. Regarding $php_errormsg--it appears that track_errors is turned on for Vanilla in appg/headers.php, but I don't know why its not being defined...
  • @ $php_errormsg right, sry. maybe some restriction by his hoster or an old php version
  • May not be related, but I had e-mail problems when the SMTP user name didn't match that on the support e-mail address. When I made them the same, all was well.
  • check if you have sendmail installed, my ubuntu doesn't have it in fresh installation anyway I had to use both workarounds: timezone (actually I set this in php.ini) and php_message
This discussion has been closed.