CC-2511:Phone Home Metric: add error display on popup
- refactoring was needed to solve this problem. - javascript error check is not necessary anymore. - The form is preloaded to nowplaying page, only when it's needed, hence ajax call to pull up the form is not needed anymore.
This commit is contained in:
parent
883cacd220
commit
daf6f9963f
6 changed files with 155 additions and 143 deletions
|
@ -7,6 +7,8 @@ class NowplayingController extends Zend_Controller_Action
|
|||
{
|
||||
$ajaxContext = $this->_helper->getHelper('AjaxContext');
|
||||
$ajaxContext->addActionContext('get-data-grid-data', 'json')
|
||||
->addActionContext('register', 'json')
|
||||
->addActionContext('remindme', 'json')
|
||||
->initContext();
|
||||
}
|
||||
|
||||
|
@ -23,10 +25,46 @@ class NowplayingController extends Zend_Controller_Action
|
|||
$refer_sses = new Zend_Session_Namespace('referrer');
|
||||
$userInfo = Zend_Auth::getInstance()->getStorage()->read();
|
||||
$user = new User($userInfo->id);
|
||||
|
||||
if($refer_sses->referrer == 'login' && Application_Model_Nowplaying::ShouldShowPopUp()
|
||||
&& !Application_Model_Preference::GetSupportFeedback() && $user->isAdmin()){
|
||||
$this->view->headScript()->appendFile($baseUrl.'/js/airtime/nowplaying/register.js','text/javascript');
|
||||
|
||||
$form = new Application_Form_RegisterAirtime();
|
||||
|
||||
if ($request->isPost()) {
|
||||
$values = $request->getPost();
|
||||
if ($values["Publicise"] == '1' && $form->isValid($values)) {
|
||||
Application_Model_Preference::SetHeadTitle($values["stnName"], $this->view);
|
||||
Application_Model_Preference::SetPhone($values["Phone"]);
|
||||
Application_Model_Preference::SetEmail($values["Email"]);
|
||||
Application_Model_Preference::SetStationWebSite($values["StationWebSite"]);
|
||||
Application_Model_Preference::SetPublicise($values["Publicise"]);
|
||||
|
||||
$form->Logo->receive();
|
||||
$imagePath = $form->Logo->getFileName();
|
||||
|
||||
Application_Model_Preference::SetStationCountry($values["Country"]);
|
||||
Application_Model_Preference::SetStationCity($values["City"]);
|
||||
Application_Model_Preference::SetStationDescription($values["Description"]);
|
||||
Application_Model_Preference::SetStationLogo($imagePath);
|
||||
Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
|
||||
// unset session
|
||||
Zend_Session::namespaceUnset('referrer');
|
||||
}else{
|
||||
$logo = Application_Model_Preference::GetStationLogo();
|
||||
if($logo){
|
||||
$this->view->logoImg = $logo;
|
||||
}
|
||||
$this->view->dialog = $form;
|
||||
$this->view->headScript()->appendFile($baseUrl.'/js/airtime/nowplaying/register.js','text/javascript');
|
||||
}
|
||||
}else{
|
||||
if($refer_sses->referrer == 'login' && Application_Model_Nowplaying::ShouldShowPopUp()
|
||||
&& !Application_Model_Preference::GetSupportFeedback() && $user->isAdmin()){
|
||||
$logo = Application_Model_Preference::GetStationLogo();
|
||||
if($logo){
|
||||
$this->view->logoImg = $logo;
|
||||
}
|
||||
$this->view->dialog = $form;
|
||||
$this->view->headScript()->appendFile($baseUrl.'/js/airtime/nowplaying/register.js','text/javascript');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -53,6 +91,59 @@ class NowplayingController extends Zend_Controller_Action
|
|||
$this->view->headScript()->appendFile($baseUrl.'/js/airtime/nowplaying/nowplayingdatagrid.js','text/javascript');
|
||||
$this->view->headScript()->appendFile($baseUrl.'/js/airtime/nowplaying/dayview.js','text/javascript');
|
||||
}
|
||||
|
||||
/*public function registerAction(){
|
||||
//$request = $this->getRequest();
|
||||
//$baseUrl = $request->getBaseUrl();
|
||||
|
||||
//$this->view->headScript()->appendFile($baseUrl.'/js/airtime/preferences/preferences.js','text/javascript');
|
||||
|
||||
$form = new Application_Form_RegisterAirtime();
|
||||
|
||||
/*if ($request->isPost()) {
|
||||
$values = $request->getPost();
|
||||
if ($values["Publicise"] == '1' && $form->isValid($values)) {
|
||||
Application_Model_Preference::SetHeadTitle($values["stnName"], $this->view);
|
||||
Application_Model_Preference::SetPhone($values["Phone"]);
|
||||
Application_Model_Preference::SetEmail($values["Email"]);
|
||||
Application_Model_Preference::SetStationWebSite($values["StationWebSite"]);
|
||||
Application_Model_Preference::SetPublicise($values["Publicise"]);
|
||||
|
||||
$form->Logo->receive();
|
||||
$imagePath = $form->Logo->getFileName();
|
||||
|
||||
Application_Model_Preference::SetStationCountry($values["Country"]);
|
||||
Application_Model_Preference::SetStationCity($values["City"]);
|
||||
Application_Model_Preference::SetStationDescription($values["Description"]);
|
||||
Application_Model_Preference::SetStationLogo($imagePath);
|
||||
Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
|
||||
// unset session
|
||||
Zend_Session::namespaceUnset('referrer');
|
||||
}
|
||||
}else
|
||||
$logo = Application_Model_Preference::GetStationLogo();
|
||||
if($logo){
|
||||
$this->view->logoImg = $logo;
|
||||
}
|
||||
$this->view->dialog = $form->render($this->view);
|
||||
//}
|
||||
}*/
|
||||
|
||||
public function remindmeAction()
|
||||
{
|
||||
// unset session
|
||||
Zend_Session::namespaceUnset('referrer');
|
||||
$now = date("Y-m-d H:i:s");
|
||||
Application_Model_Preference::SetRemindMeDate($now);
|
||||
die();
|
||||
}
|
||||
|
||||
public function donotshowpopupAction()
|
||||
{
|
||||
// unset session
|
||||
Zend_Session::namespaceUnset('referrer');
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -7,8 +7,8 @@ class PreferenceController extends Zend_Controller_Action
|
|||
{
|
||||
/* Initialize action controller here */
|
||||
$ajaxContext = $this->_helper->getHelper('AjaxContext');
|
||||
$ajaxContext->addActionContext('register', 'json')
|
||||
->addActionContext('remindme', 'json')
|
||||
$ajaxContext/*->addActionContext('register', 'json')
|
||||
->addActionContext('remindme', 'json')*/
|
||||
->addActionContext('server-browse', 'json')
|
||||
->addActionContext('change-stor-directory', 'json')
|
||||
->addActionContext('reload-watch-directory', 'json')
|
||||
|
@ -68,61 +68,6 @@ class PreferenceController extends Zend_Controller_Action
|
|||
$this->view->form = $form;
|
||||
}
|
||||
|
||||
public function registerAction(){
|
||||
$request = $this->getRequest();
|
||||
$baseUrl = $request->getBaseUrl();
|
||||
|
||||
$this->view->headScript()->appendFile($baseUrl.'/js/airtime/preferences/preferences.js','text/javascript');
|
||||
|
||||
$form = new Application_Form_RegisterAirtime();
|
||||
|
||||
if ($request->isPost()) {
|
||||
$values = $request->getPost();
|
||||
if ($values["Publicise"] == '1' && $form->isValid($values)) {
|
||||
Application_Model_Preference::SetHeadTitle($values["stnName"], $this->view);
|
||||
Application_Model_Preference::SetPhone($values["Phone"]);
|
||||
Application_Model_Preference::SetEmail($values["Email"]);
|
||||
Application_Model_Preference::SetStationWebSite($values["StationWebSite"]);
|
||||
Application_Model_Preference::SetPublicise($values["Publicise"]);
|
||||
|
||||
$form->Logo->receive();
|
||||
$imagePath = $form->Logo->getFileName();
|
||||
|
||||
Application_Model_Preference::SetStationCountry($values["Country"]);
|
||||
Application_Model_Preference::SetStationCity($values["City"]);
|
||||
Application_Model_Preference::SetStationDescription($values["Description"]);
|
||||
Application_Model_Preference::SetStationLogo($imagePath);
|
||||
}
|
||||
Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
|
||||
// unset session
|
||||
Zend_Session::namespaceUnset('referrer');
|
||||
$this->_redirect('Nowplaying');
|
||||
}else{
|
||||
$logo = Application_Model_Preference::GetStationLogo();
|
||||
if($logo){
|
||||
$this->view->logoImg = $logo;
|
||||
}
|
||||
|
||||
$this->view->dialog = $form->render($this->view);
|
||||
}
|
||||
}
|
||||
|
||||
public function remindmeAction()
|
||||
{
|
||||
// unset session
|
||||
Zend_Session::namespaceUnset('referrer');
|
||||
$now = date("Y-m-d H:i:s");
|
||||
Application_Model_Preference::SetRemindMeDate($now);
|
||||
die();
|
||||
}
|
||||
|
||||
public function donotshowpopupAction()
|
||||
{
|
||||
// unset session
|
||||
Zend_Session::namespaceUnset('referrer');
|
||||
die();
|
||||
}
|
||||
|
||||
public function directoryConfigAction()
|
||||
{
|
||||
$request = $this->getRequest();
|
||||
|
|
|
@ -5,7 +5,7 @@ class Application_Form_RegisterAirtime extends Zend_Form
|
|||
|
||||
public function init()
|
||||
{
|
||||
$this->setAction('/Preference/register');
|
||||
$this->setAction('/Nowplaying');
|
||||
$this->setMethod('post');
|
||||
|
||||
$country_list = Application_Model_Preference::GetCountryList();
|
||||
|
@ -95,14 +95,14 @@ class Application_Form_RegisterAirtime extends Zend_Form
|
|||
$upload = new Zend_Form_Element_File('Logo');
|
||||
$upload->setLabel('Station Logo:')
|
||||
->setRequired(false)
|
||||
->setDecorators(array('File'));
|
||||
/*->addValidator('Count', false, 1)
|
||||
->setDecorators(array('File'))
|
||||
->addValidator('Count', false, 1)
|
||||
->addValidator('Extension', false, 'jpg,png,gif')
|
||||
->addValidator('ImageSize', false, array(
|
||||
'minwidth' => 200,
|
||||
'minheight' => 200,
|
||||
'maxwidth' => 600,
|
||||
'maxheight' => 600));*/
|
||||
'maxheight' => 600));
|
||||
$this->addElement($upload);
|
||||
|
||||
//enable support feedback
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<div class="dialogPopup register-dialog" title="Register Airtime">
|
||||
<div id="register_popup" class="dialogPopup register-dialog" title="Register Airtime" style="display: none;">
|
||||
<form id="register-form" method="<?php echo $this->element->getMethod() ?>" action="<?php echo $this->element->getAction() ?>" enctype="multipart/form-data">
|
||||
<fieldset>
|
||||
<dl class="zend_form">
|
||||
|
|
|
@ -2,3 +2,4 @@
|
|||
<span class="toggle-button-active end-button" id="now_view">Now View</span><span class="toggle-button" id="day_view">Day View</span>
|
||||
</div>
|
||||
<table cellpadding="0" cellspacing="0" border="0" class="datatable" id="nowplayingtable"></table>
|
||||
<?php echo $this->dialog?>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue