SAAS-945: Language + Timezone Setup Popup
forgot to auto detect user's timezone
This commit is contained in:
parent
ee2bfe7664
commit
989b4994aa
5 changed files with 30 additions and 26 deletions
|
@ -18,31 +18,24 @@ class SetupController extends Zend_Controller_Action
|
|||
|
||||
if ($request->isPost()) {
|
||||
|
||||
$postData = $request->getPost();
|
||||
$formData = array();
|
||||
foreach ($postData["data"] as $key => $value) {
|
||||
if ($value["name"] == "csrf") continue;
|
||||
$formData[$value["name"]] = $value["value"];
|
||||
}
|
||||
$formData = $request->getPost();
|
||||
if ($form->isValid($formData)) {
|
||||
$userService = new Application_Service_UserService();
|
||||
$currentUser = $userService->getCurrentUser();
|
||||
$currentUserId = $currentUser->getDbId();
|
||||
|
||||
Application_Model_Preference::SetUserTimezone($formData["timezone"], $currentUserId);
|
||||
Application_Model_Preference::SetDefaultTimezone($formData["timezone"]);
|
||||
Application_Model_Preference::SetUserTimezone($formData["setup_timezone"], $currentUserId);
|
||||
Application_Model_Preference::SetDefaultTimezone($formData["setup_timezone"]);
|
||||
|
||||
Application_Model_Preference::SetUserLocale($formData["language"], $currentUserId);
|
||||
Application_Model_Preference::SetDefaultLocale($formData["language"]);
|
||||
Application_Model_Preference::SetUserLocale($formData["setup_language"], $currentUserId);
|
||||
Application_Model_Preference::SetDefaultLocale($formData["setup_language"]);
|
||||
|
||||
Application_Model_Preference::setLangTimezoneSetupComplete(true);
|
||||
|
||||
$this->_helper->json->sendJson(null);
|
||||
} else {
|
||||
$this->_helper->json->sendJson($form->get);
|
||||
$this->_redirect('/Showbuilder');
|
||||
}
|
||||
} else {
|
||||
$this->_helper->json->sendJson($form);
|
||||
}
|
||||
$this->_redirect('/Showbuilder');
|
||||
}
|
||||
|
||||
}
|
|
@ -45,6 +45,7 @@ class ShowbuilderController extends Zend_Controller_Action
|
|||
//$this->view->headScript()->appendFile($baseUrl.'js/datatables/plugin/dataTables.ColReorder.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||
$this->view->headScript()->appendFile($baseUrl.'js/datatables/plugin/dataTables.FixedColumns.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||
$this->view->headScript()->appendFile($baseUrl.'js/datatables/plugin/dataTables.columnFilter.js?'.$CC_CONFIG['airtime_version'], 'text/javascript');
|
||||
$this->view->headScript()->appendFile($baseUrl.'js/js-timezone-detect/jstz-1.0.4.min.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||
|
||||
$this->view->headScript()->appendFile($baseUrl.'js/blockui/jquery.blockUI.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||
$this->view->headScript()->appendFile($baseUrl.'js/airtime/buttons/buttons.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||
|
@ -64,7 +65,6 @@ class ShowbuilderController extends Zend_Controller_Action
|
|||
// and they have not seen the setup popup before
|
||||
if ($currentUser->getDbType() == "S" && strpos(strtolower($previousPage), 'login') !== false
|
||||
&& empty($setupComplete)) {
|
||||
Logging::info("hello");
|
||||
$lang_tz_popup_form = new Application_Form_SetupLanguageTimezone();
|
||||
$this->view->lang_tz_popup_form = $lang_tz_popup_form;
|
||||
$this->view->headScript()->appendFile($baseUrl.'js/airtime/nowplaying/lang-timezone-setup.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<div id="lang-timezone-popup" class="dialogPopup register-dialog" title="<?php echo _("Setup Station Language and Timezone") ?>" style="display: none;">
|
||||
<form id="lang-timezone-form">
|
||||
<form id="lang-timezone-form" method="post" action="/setup/setup-language-timezone">
|
||||
<fieldset>
|
||||
<dl class="zend_form">
|
||||
<?php echo $this->element->getElement('csrf') ?>
|
||||
|
@ -7,6 +7,9 @@
|
|||
<?php echo $this->element->getElement('setup_language')->render(); ?>
|
||||
|
||||
<?php echo $this->element->getElement('setup_timezone')->render(); ?>
|
||||
|
||||
<br>
|
||||
You can set these settings later under Preferences and your user settings.
|
||||
</dl>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
|
|
@ -22,19 +22,25 @@ $(document).ready(function() {
|
|||
text: $.i18n._("OK"),
|
||||
"class": "btn",
|
||||
click: function() {
|
||||
var formValues = $("#lang-timezone-form").serializeArray();
|
||||
$.post(baseUrl+"setup/setup-language-timezone",
|
||||
{
|
||||
format: "json",
|
||||
data: formValues
|
||||
}, function(json) {
|
||||
console.log(json);
|
||||
$("#lang-timezone-popup").dialog("close");
|
||||
});
|
||||
$("#lang-timezone-form").submit();
|
||||
}
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
var language = window.navigator.userLanguage || window.navigator.language;
|
||||
if (language === undefined) {
|
||||
language = "en_CA";
|
||||
}
|
||||
language = language.replace("-", "_");
|
||||
$("#setup_language").val(language);
|
||||
|
||||
var timezone = jstz.determine();
|
||||
var timezone_name = timezone.name();
|
||||
if (timezone_name === undefined) {
|
||||
timezone_name = "America/Toronto";
|
||||
}
|
||||
$("#setup_timezone").val(timezone_name);
|
||||
|
||||
dialog.dialog('open');
|
||||
});
|
||||
|
|
2
airtime_mvc/public/js/js-timezone-detect/jstz-1.0.4.min.js
vendored
Normal file
2
airtime_mvc/public/js/js-timezone-detect/jstz-1.0.4.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue