diff --git a/airtime_mvc/application/controllers/LoginController.php b/airtime_mvc/application/controllers/LoginController.php
index fe30097f4..926e49252 100644
--- a/airtime_mvc/application/controllers/LoginController.php
+++ b/airtime_mvc/application/controllers/LoginController.php
@@ -13,7 +13,7 @@ class LoginController extends Zend_Controller_Action
$request = $this->getRequest();
- Application_Model_Locale::configureLocalization($request->getcookie('airtime_locale'));
+ Application_Model_Locale::configureLocalization($request->getcookie('airtime_locale', 'en_CA'));
if (Zend_Auth::getInstance()->hasIdentity())
{
diff --git a/airtime_mvc/application/controllers/UserController.php b/airtime_mvc/application/controllers/UserController.php
index e959a5758..bb7a9b263 100644
--- a/airtime_mvc/application/controllers/UserController.php
+++ b/airtime_mvc/application/controllers/UserController.php
@@ -129,12 +129,7 @@ class UserController extends Zend_Controller_Action
$request = $this->getRequest();
$form = new Application_Form_EditUser();
if ($request->isPost()) {
- $params = $request->getPost();
- $postData = explode('&', $params['data']);
- foreach($postData as $k=>$v) {
- $v = explode('=', $v);
- $formData[$v[0]] = urldecode($v[1]);
- }
+ $formData = $request->getPost();
if (isset($CC_CONFIG['demo']) && $CC_CONFIG['demo'] == 1
&& $formData['cu_login'] == 'admin') {
@@ -157,12 +152,18 @@ class UserController extends Zend_Controller_Action
$user->setSkype($formData['cu_skype']);
$user->setJabber($formData['cu_jabber']);
$user->save();
+
+ //configure localization with new locale setting
+ Application_Model_Locale::configureLocalization($formData['cu_locale']);
+ //reinitialize form so language gets translated
+ $form = new Application_Form_EditUser();
+
Application_Model_Preference::SetUserLocale($user->getId(), $formData['cu_locale']);
Application_Model_Preference::SetUserTimezone($user->getId(), $formData['cu_timezone']);
- $this->view->successMessage = "
"._("User updated successfully!")."
";
+ $this->view->successMessage = ""._("Settings updated successfully!")."
";
}
$this->view->form = $form;
- die(json_encode(array("locale"=>$formData['cu_locale'], "html"=>$this->view->render('user/edit-user.phtml'))));
+ $this->view->html = $this->view->render('user/edit-user.phtml');
}
$this->view->form = $form;
$this->view->html = $this->view->render('user/edit-user.phtml');
diff --git a/airtime_mvc/application/forms/EditUser.php b/airtime_mvc/application/forms/EditUser.php
index f266f2368..7e9d78456 100644
--- a/airtime_mvc/application/forms/EditUser.php
+++ b/airtime_mvc/application/forms/EditUser.php
@@ -18,7 +18,7 @@ class Application_Form_EditUser extends Zend_Form
$emailValidator = Application_Form_Helper_ValidationTypes::overrideEmailAddressValidator();
$this->setDecorators(array(
- array('ViewScript', array('viewScript' => 'form/edit-user.phtml'))));
+ array('ViewScript', array('viewScript' => 'form/edit-user.phtml', "currentUser" => $currentUser->getLogin()))));
$this->setAttrib('id', 'current-user-form');
$hidden = new Zend_Form_Element_Hidden('cu_user_id');
diff --git a/airtime_mvc/application/views/scripts/form/edit-user.phtml b/airtime_mvc/application/views/scripts/form/edit-user.phtml
index e7996a25d..094cf440e 100644
--- a/airtime_mvc/application/views/scripts/form/edit-user.phtml
+++ b/airtime_mvc/application/views/scripts/form/edit-user.phtml
@@ -1,5 +1,6 @@
+ echo sprintf(_("%s's Settings"), $this->currentUser) ?>
\ No newline at end of file
diff --git a/airtime_mvc/application/views/scripts/user/edit-user.phtml b/airtime_mvc/application/views/scripts/user/edit-user.phtml
index 34f811f1b..dd8dfcd6b 100644
--- a/airtime_mvc/application/views/scripts/user/edit-user.phtml
+++ b/airtime_mvc/application/views/scripts/user/edit-user.phtml
@@ -1,5 +1,4 @@
-
echo _("Edit User") ?>
successMessage ?>
form?>
diff --git a/airtime_mvc/public/js/airtime/dashboard/dashboard.js b/airtime_mvc/public/js/airtime/dashboard/dashboard.js
index c213c945d..eba3060b5 100644
--- a/airtime_mvc/public/js/airtime/dashboard/dashboard.js
+++ b/airtime_mvc/public/js/airtime/dashboard/dashboard.js
@@ -462,14 +462,7 @@ $(document).ready(function() {
});
$('#cu_save_user').live('click', function() {
- var data = $('#current-user-form').serialize();
- $.post(baseUrl+'/user/edit-user', {format: 'json', data: data}, function(data) {
- var json = $.parseJSON(data);
- $('.edit-current-user').parent().empty().append(json.html);
- $.cookie("airtime_locale", json.locale, {path: '/'});
- setCurrentUserPseudoPassword();
- setTimeout(removeSuccessMsg, 5000);
- });
+ $.cookie("airtime_locale", $('#cu_locale').val(), {path: '/'});
});
// When the 'Listen' button is clicked we set the width