From 514815a55967df8582f71bd76e5fb6d0491da070 Mon Sep 17 00:00:00 2001 From: Awilum Date: Sat, 19 Jan 2013 23:55:20 +0200 Subject: [PATCH] Users Plugin: New html email template added. PHPMailer class used. --- plugins/box/users/users.plugin.php | 50 ++-- .../users/views/emails/layout_email.view.php | 226 ++++++++++++++++++ .../views/emails/new_password_email.view.php | 12 + .../views/emails/new_user_email.view.php | 8 + .../emails/reset_password_email.view.php | 17 ++ .../frontend/new_password_email.view.php | 12 - .../frontend/registration_email.view.php | 8 - .../frontend/reset_password_email.view.php | 17 -- 8 files changed, 296 insertions(+), 54 deletions(-) create mode 100644 plugins/box/users/views/emails/layout_email.view.php create mode 100644 plugins/box/users/views/emails/new_password_email.view.php create mode 100644 plugins/box/users/views/emails/new_user_email.view.php create mode 100644 plugins/box/users/views/emails/reset_password_email.view.php delete mode 100644 plugins/box/users/views/frontend/new_password_email.view.php delete mode 100644 plugins/box/users/views/frontend/registration_email.view.php delete mode 100644 plugins/box/users/views/frontend/reset_password_email.view.php diff --git a/plugins/box/users/users.plugin.php b/plugins/box/users/users.plugin.php index 777040b..c389768 100644 --- a/plugins/box/users/users.plugin.php +++ b/plugins/box/users/users.plugin.php @@ -140,14 +140,19 @@ class Users extends Frontend Session::set('user_login', (string) $user['login']); Session::set('user_role', (string) $user['role']); - // Message - $message = View::factory('box/users/views/frontend/registration_email') + $mail = new PHPMailer(); + $mail->CharSet = 'utf-8'; + $mail->ContentType = 'text/html'; + $mail->SetFrom(Option::get('system_email')); + $mail->AddReplyTo(Option::get('system_email')); + $mail->AddAddress($user['email'], $user['login']); + $mail->Subject = Option::get('sitename'); + $mail->MsgHTML(View::factory('box/users/views/emails/layout_email') ->assign('site_name', Option::get('sitename')) ->assign('user_login', $user['login']) - ->render(); - - // Send - @mail($user['email'], Option::get('sitename'), $message); + ->assign('view', 'new_user_email') + ->render()); + $mail->Send(); // Redirect to user profile Request::redirect(Option::get('siteurl').'users/'.Users::$users->lastId()); @@ -281,17 +286,23 @@ class Users extends Frontend // Set new hash and new password Users::$users->updateWhere("[login='" . $user['login'] . "']", array('hash' => Text::random('alnum', 12), 'password' => Security::encryptPassword($new_password))); - // Message - $message = View::factory('box/users/views/frontend/new_password_email') + $mail = new PHPMailer(); + $mail->CharSet = 'utf-8'; + $mail->ContentType = 'text/html'; + $mail->SetFrom(Option::get('system_email')); + $mail->AddReplyTo(Option::get('system_email')); + $mail->AddAddress($user['email'], $user['login']); + $mail->Subject = __('Your new password for :site_name', 'users', array(':site_name' => $site_name)); + $mail->MsgHTML(View::factory('box/users/views/emails/layout_email') ->assign('site_url', $site_url) ->assign('site_name', $site_name) ->assign('user_id', $user['id']) ->assign('user_login', $user['login']) ->assign('new_password', $new_password) - ->render(); + ->assign('view', 'new_password_email') + ->render()); + $mail->Send(); - // Send - @mail($user['email'], __('Your new password for :site_name', 'users', array(':site_name' => $site_name)), $message); // Set notification Notification::set('success', __('New password has been sent', 'users')); @@ -325,17 +336,22 @@ class Users extends Frontend // Update user hash Users::$users->updateWhere("[login='" . $user_login . "']", array('hash' => $new_hash)); - // Message - $message = View::factory('box/users/views/frontend/reset_password_email') + $mail = new PHPMailer(); + $mail->CharSet = 'utf-8'; + $mail->ContentType = 'text/html'; + $mail->SetFrom(Option::get('system_email')); + $mail->AddReplyTo(Option::get('system_email')); + $mail->AddAddress($user['email'], $user['login']); + $mail->Subject = __('Your login details for :site_name', 'users', array(':site_name' => $site_name)); + $mail->MsgHTML(View::factory('box/users/views/emails/layout_email') ->assign('site_url', $site_url) ->assign('site_name', $site_name) ->assign('user_id', $user['id']) ->assign('user_login', $user['login']) ->assign('new_hash', $new_hash) - ->render(); - - // Send - @mail($user['email'], __('Your login details for :site_name', 'users', array(':site_name' => $site_name)), $message); + ->assign('view', 'reset_password_email') + ->render()); + $mail->Send(); // Set notification Notification::set('success', __('Your login details for :site_name has been sent', 'users', array(':site_name' => $site_name))); diff --git a/plugins/box/users/views/emails/layout_email.view.php b/plugins/box/users/views/emails/layout_email.view.php new file mode 100644 index 0000000..ac494d1 --- /dev/null +++ b/plugins/box/users/views/emails/layout_email.view.php @@ -0,0 +1,226 @@ + + + + + + <?php echo Option::get('sitename'); ?> + + + + + + + + + + + + + + + +
+ + + + + + +
+ + + + + + + + + + + + + + + + +
+ + + + + + + + +
+ + + + +
+

+ +

+
+
+ + +
+ + + + +
+

© 2012 - 2013 MONSTRA.ORG

+
+
+
+ +
+ + \ No newline at end of file diff --git a/plugins/box/users/views/emails/new_password_email.view.php b/plugins/box/users/views/emails/new_password_email.view.php new file mode 100644 index 0000000..5df6bea --- /dev/null +++ b/plugins/box/users/views/emails/new_password_email.view.php @@ -0,0 +1,12 @@ +Dear , +

+As you requested, your password has now been reset.
+Your new details are as follows: +

+Username:
+Password: +

+To change your password, please visit this page: users/ +

+All the best,
+ diff --git a/plugins/box/users/views/emails/new_user_email.view.php b/plugins/box/users/views/emails/new_user_email.view.php new file mode 100644 index 0000000..1809b32 --- /dev/null +++ b/plugins/box/users/views/emails/new_user_email.view.php @@ -0,0 +1,8 @@ +Welcome to ! +

+Dear , +

+Thanks for registering at !
We are glad you have chosen to be a part of our community and we hope you enjoy your stay. +

+All the best,
+ diff --git a/plugins/box/users/views/emails/reset_password_email.view.php b/plugins/box/users/views/emails/reset_password_email.view.php new file mode 100644 index 0000000..d4c2793 --- /dev/null +++ b/plugins/box/users/views/emails/reset_password_email.view.php @@ -0,0 +1,17 @@ +Dear , +

+You have requested to reset your password on because you have forgotten your password. +If you did not request this, please ignore it. +

+To reset your password, please visit the following page:
+users/password-reset?hash= +

+When you visit that page, your password will be reset, and the new password will be emailed to you. +

+Your username is: +

+To edit your profile, go to this page:
+users/ +

+All the best,
+ diff --git a/plugins/box/users/views/frontend/new_password_email.view.php b/plugins/box/users/views/frontend/new_password_email.view.php deleted file mode 100644 index 1154b15..0000000 --- a/plugins/box/users/views/frontend/new_password_email.view.php +++ /dev/null @@ -1,12 +0,0 @@ -Dear , - -As you requested, your password has now been reset. Your new details are as follows: - -Username: - -Password: - -To change your password, please visit this page: users/ - -All the best, - diff --git a/plugins/box/users/views/frontend/registration_email.view.php b/plugins/box/users/views/frontend/registration_email.view.php deleted file mode 100644 index fe189f1..0000000 --- a/plugins/box/users/views/frontend/registration_email.view.php +++ /dev/null @@ -1,8 +0,0 @@ -Welcome to ! - -Dear , - -Thanks for registering at ! We are glad you have chosen to be a part of our community and we hope you enjoy your stay. - -All the best, - diff --git a/plugins/box/users/views/frontend/reset_password_email.view.php b/plugins/box/users/views/frontend/reset_password_email.view.php deleted file mode 100644 index f957eab..0000000 --- a/plugins/box/users/views/frontend/reset_password_email.view.php +++ /dev/null @@ -1,17 +0,0 @@ -Dear , - -You have requested to reset your password on because you have forgotten your password. -If you did not request this, please ignore it. - -To reset your password, please visit the following page: -users/password-reset?hash= - -When you visit that page, your password will be reset, and the new password will be emailed to you. - -Your username is: - -To edit your profile, go to this page: -users/ - -All the best, -