CC-4954: Please make Library page remember the status per user

-done
This commit is contained in:
denise 2013-02-19 10:58:48 -05:00
parent 9715a9ad6d
commit d1301ff676
5 changed files with 72 additions and 4 deletions

View file

@ -77,6 +77,17 @@ class LibraryController extends Zend_Controller_Action
}
}
//get user settings and determine if we need to hide
// or show the playlist editor
$showPlaylist = false;
$data = Application_Model_Preference::getLibraryScreenSettings();
if (!is_null($data)) {
if ($data["playlist"] == "true") {
$showLib = true;
}
}
$this->view->showPlaylist = $showPlaylist;
$formatter = new LengthFormatter($obj->getLength());
$this->view->length = $formatter->format();
$this->view->type = $obj_sess->type;

View file

@ -15,6 +15,7 @@ class UsersettingsController extends Zend_Controller_Action
->addActionContext('remindme', 'json')
->addActionContext('remindme-never', 'json')
->addActionContext('donotshowregistrationpopup', 'json')
->addActionContext('set-library-screen-settings', 'json')
->initContext();
}
@ -54,6 +55,7 @@ class UsersettingsController extends Zend_Controller_Action
{
$request = $this->getRequest();
$settings = $request->getParam("settings");
Application_Model_Preference::setTimelineDatatableSetting($settings);
}
@ -91,4 +93,11 @@ class UsersettingsController extends Zend_Controller_Action
// unset session
Zend_Session::namespaceUnset('referrer');
}
public function setLibraryScreenSettingsAction()
{
$request = $this->getRequest();
$settings = $request->getParam("settings");
Application_Model_Preference::setLibraryScreenSettings($settings);
}
}

View file

@ -1262,7 +1262,19 @@ class Application_Model_Preference
$data = self::getValue("nowplaying_screen", true);
return ($data != "") ? unserialize($data) : null;
}
public static function setLibraryScreenSettings($settings)
{
$data = serialize($settings);
self::setValue("library_screen", $data, true);
}
public static function getLibraryScreenSettings()
{
$data = self::getValue("library_screen", true);
return ($data != "") ? unserialize($data) : null;
}
public static function SetEnableReplayGain($value) {
self::setValue("enable_replay_gain", $value, false);
}

View file

@ -2,7 +2,14 @@
<?php echo $this->render('library/library.phtml') ?>
</div>
<div id="side_playlist" class="pl-content ui-widget ui-widget-content block-shadow omega-block padded" style="height:697px; width:720px;">
<?php
if ($this->showPlaylist) {
$display = "";
} else {
$display = "display:none";
}
?>
<div id="side_playlist" class="pl-content ui-widget ui-widget-content block-shadow omega-block padded" style="height:697px; width:720px;<?php echo $display?>">
<?php if ($this->type == 'block') {
echo $this->render('playlist/smart-block.phtml');
} else if ($this->type == 'playlist') {