From 3d20ded1701e39f19c31eaeb4b502b8f0723b0ba Mon Sep 17 00:00:00 2001 From: denise Date: Tue, 28 Aug 2012 17:30:34 -0400 Subject: [PATCH] CC-4307: Add "Never show again" to the pop-up registration prompt -done --- .../controllers/UsersettingsController.php | 8 ++++++++ airtime_mvc/application/models/Preference.php | 18 +++++++++++++----- .../public/js/airtime/nowplaying/register.js | 12 ++++++++++++ 3 files changed, 33 insertions(+), 5 deletions(-) diff --git a/airtime_mvc/application/controllers/UsersettingsController.php b/airtime_mvc/application/controllers/UsersettingsController.php index b999b8ed1..2050961e0 100644 --- a/airtime_mvc/application/controllers/UsersettingsController.php +++ b/airtime_mvc/application/controllers/UsersettingsController.php @@ -13,6 +13,7 @@ class UsersettingsController extends Zend_Controller_Action ->addActionContext('get-timeline-datatable', 'json') ->addActionContext('set-timeline-datatable', 'json') ->addActionContext('remindme', 'json') + ->addActionContext('remindme-never', 'json') ->addActionContext('donotshowregistrationpopup', 'json') ->initContext(); } @@ -88,6 +89,13 @@ class UsersettingsController extends Zend_Controller_Action Zend_Session::namespaceUnset('referrer'); Application_Model_Preference::SetRemindMeDate(); } + + public function remindmeNeverAction() + { + Zend_Session::namespaceUnset('referrer'); + //pass in true to indicate 'Remind me never' was clicked + Application_Model_Preference::SetRemindMeDate(true); + } public function donotshowregistrationpopupAction() { diff --git a/airtime_mvc/application/models/Preference.php b/airtime_mvc/application/models/Preference.php index 48506660e..0541ba153 100644 --- a/airtime_mvc/application/models/Preference.php +++ b/airtime_mvc/application/models/Preference.php @@ -587,10 +587,14 @@ class Application_Model_Preference } } - public static function SetRemindMeDate() + public static function SetRemindMeDate($p_never = false) { - $weekAfter = mktime(0, 0, 0, gmdate("m"), gmdate("d")+7, gmdate("Y")); - self::setValue("remindme", $weekAfter); + if ($p_never) { + self::setValue("remindme", -1); + } else { + $weekAfter = mktime(0, 0, 0, gmdate("m"), gmdate("d")+7, gmdate("Y")); + self::setValue("remindme", $weekAfter); + } } public static function GetRemindMeDate() @@ -1105,9 +1109,13 @@ class Application_Model_Preference { $today = mktime(0, 0, 0, gmdate("m"), gmdate("d"), gmdate("Y")); $remindDate = Application_Model_Preference::GetRemindMeDate(); - if ($remindDate == NULL || $today >= $remindDate) { - return true; + $retVal = false; + + if ($remindDate == NULL || ($remindDate != -1 && $today >= $remindDate)) { + $retVal = true; } + + return $retVal; } public static function getCurrentLibraryTableSetting(){ diff --git a/airtime_mvc/public/js/airtime/nowplaying/register.js b/airtime_mvc/public/js/airtime/nowplaying/register.js index fc3b98a51..3d13367f1 100644 --- a/airtime_mvc/public/js/airtime/nowplaying/register.js +++ b/airtime_mvc/public/js/airtime/nowplaying/register.js @@ -26,6 +26,18 @@ $(document).ready(function(){ $(this).dialog("close"); } }, + { + id: "remind_never", + text: "Remind me never", + click: function() { + var url ='/Usersettings/remindme-never'; + $.ajax({ + url: url, + data: {format:"json"} + }); + $(this).dialog("close"); + } + }, { id: "help_airtime", text: "Yes, help Airtime",