Merge branch 'devel' of dev.sourcefabric.org:airtime into devel
This commit is contained in:
commit
57d45a4f84
15 changed files with 650 additions and 785 deletions
|
@ -36,7 +36,7 @@ class LibraryController extends Zend_Controller_Action
|
||||||
|
|
||||||
$this->view->headLink()->appendStylesheet($baseUrl.'/css/media_library.css');
|
$this->view->headLink()->appendStylesheet($baseUrl.'/css/media_library.css');
|
||||||
$this->view->headLink()->appendStylesheet($baseUrl.'/css/contextmenu.css');
|
$this->view->headLink()->appendStylesheet($baseUrl.'/css/contextmenu.css');
|
||||||
|
|
||||||
|
|
||||||
$this->_helper->layout->setLayout('library');
|
$this->_helper->layout->setLayout('library');
|
||||||
$this->_helper->viewRenderer->setResponseSegment('library');
|
$this->_helper->viewRenderer->setResponseSegment('library');
|
||||||
|
@ -90,7 +90,7 @@ class LibraryController extends Zend_Controller_Action
|
||||||
$url = $file->getRelativeFileUrl($baseUrl).'/download/true';
|
$url = $file->getRelativeFileUrl($baseUrl).'/download/true';
|
||||||
$menu[] = array('action' => array('type' => 'gourl', 'url' => $url),
|
$menu[] = array('action' => array('type' => 'gourl', 'url' => $url),
|
||||||
'title' => 'Download');
|
'title' => 'Download');
|
||||||
|
|
||||||
if (Application_Model_Preference::GetUploadToSoundcloudOption()) {
|
if (Application_Model_Preference::GetUploadToSoundcloudOption()) {
|
||||||
$text = "Upload to SoundCloud";
|
$text = "Upload to SoundCloud";
|
||||||
if(!is_null($file->getSoundCloudId())){
|
if(!is_null($file->getSoundCloudId())){
|
||||||
|
@ -98,12 +98,12 @@ class LibraryController extends Zend_Controller_Action
|
||||||
}
|
}
|
||||||
$menu[] = array('action' => array('type' => 'ajax', 'url' => '/Library/upload-file-soundcloud/id/#id#',
|
$menu[] = array('action' => array('type' => 'ajax', 'url' => '/Library/upload-file-soundcloud/id/#id#',
|
||||||
'callback'=>"window['addProgressIcon']('$file_id')"),'title' => $text);
|
'callback'=>"window['addProgressIcon']('$file_id')"),'title' => $text);
|
||||||
|
|
||||||
$scid = $file->getSoundCloudId();
|
$scid = $file->getSoundCloudId();
|
||||||
|
|
||||||
if($scid > 0){
|
if($scid > 0){
|
||||||
$link_to_file = $file->getSoundCloudLinkToFile();
|
$link_to_file = $file->getSoundCloudLinkToFile();
|
||||||
$menu[] = array('action' => array('type' => 'fn',
|
$menu[] = array('action' => array('type' => 'fn',
|
||||||
'callback' => "window['openFileOnSoundCloud']('$link_to_file')"),
|
'callback' => "window['openFileOnSoundCloud']('$link_to_file')"),
|
||||||
'title' => 'View on SoundCloud');
|
'title' => 'View on SoundCloud');
|
||||||
}
|
}
|
||||||
|
@ -132,8 +132,6 @@ class LibraryController extends Zend_Controller_Action
|
||||||
'title' => 'Close');
|
'title' => 'Close');
|
||||||
}
|
}
|
||||||
|
|
||||||
//$menu[] = array('action' => array('type' => 'ajax', 'url' => '/Playlist/metadata/format/json/id/#id#', 'callback' => 'window["createPlaylistMetaForm"]'), 'title' => 'Edit Metadata');
|
|
||||||
|
|
||||||
$menu[] = array('action' => array('type' => 'fn',
|
$menu[] = array('action' => array('type' => 'fn',
|
||||||
'callback' => "window['confirmDeletePlaylist']('$paramsPop')"),
|
'callback' => "window['confirmDeletePlaylist']('$paramsPop')"),
|
||||||
'title' => 'Delete');
|
'title' => 'Delete');
|
||||||
|
@ -210,7 +208,7 @@ class LibraryController extends Zend_Controller_Action
|
||||||
{
|
{
|
||||||
$request = $this->getRequest();
|
$request = $this->getRequest();
|
||||||
$form = new Application_Form_EditAudioMD();
|
$form = new Application_Form_EditAudioMD();
|
||||||
|
|
||||||
$file_id = $this->_getParam('id', null);
|
$file_id = $this->_getParam('id', null);
|
||||||
$file = Application_Model_StoredFile::Recall($file_id);
|
$file = Application_Model_StoredFile::Recall($file_id);
|
||||||
$form->populate($file->getDbColMetadata());
|
$form->populate($file->getDbColMetadata());
|
||||||
|
@ -222,7 +220,7 @@ class LibraryController extends Zend_Controller_Action
|
||||||
$file->setDbColMetadata($formdata);
|
$file->setDbColMetadata($formdata);
|
||||||
|
|
||||||
$data = $file->getMetadata();
|
$data = $file->getMetadata();
|
||||||
|
|
||||||
// set MDATA_KEY_FILEPATH
|
// set MDATA_KEY_FILEPATH
|
||||||
$data['MDATA_KEY_FILEPATH'] = $file->getFilePath();
|
$data['MDATA_KEY_FILEPATH'] = $file->getFilePath();
|
||||||
Logging::log($data['MDATA_KEY_FILEPATH']);
|
Logging::log($data['MDATA_KEY_FILEPATH']);
|
||||||
|
@ -254,14 +252,14 @@ class LibraryController extends Zend_Controller_Action
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function uploadFileSoundcloudAction(){
|
public function uploadFileSoundcloudAction(){
|
||||||
$id = $this->_getParam('id');
|
$id = $this->_getParam('id');
|
||||||
$res = exec("/usr/lib/airtime/utils/soundcloud-uploader $id > /dev/null &");
|
$res = exec("/usr/lib/airtime/utils/soundcloud-uploader $id > /dev/null &");
|
||||||
// we should die with ui info
|
// we should die with ui info
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getUploadToSoundcloudStatusAction(){
|
public function getUploadToSoundcloudStatusAction(){
|
||||||
$id = $this->_getParam('id');
|
$id = $this->_getParam('id');
|
||||||
$type = $this->_getParam('type');
|
$type = $this->_getParam('type');
|
||||||
|
@ -278,7 +276,7 @@ class LibraryController extends Zend_Controller_Action
|
||||||
$this->view->error_msg = $file->getSoundCloudErrorMsg();
|
$this->view->error_msg = $file->getSoundCloudErrorMsg();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Stores the number of entries user chose to show in the Library
|
* Stores the number of entries user chose to show in the Library
|
||||||
* to the pref db
|
* to the pref db
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
class PlaylistController extends Zend_Controller_Action
|
class PlaylistController extends Zend_Controller_Action
|
||||||
{
|
{
|
||||||
|
|
||||||
protected $pl_sess = null;
|
protected $pl_sess = null;
|
||||||
|
|
||||||
public function init()
|
public function init()
|
||||||
|
@ -15,7 +14,6 @@ class PlaylistController extends Zend_Controller_Action
|
||||||
->addActionContext('move-item', 'json')
|
->addActionContext('move-item', 'json')
|
||||||
->addActionContext('close', 'json')
|
->addActionContext('close', 'json')
|
||||||
->addActionContext('new', 'json')
|
->addActionContext('new', 'json')
|
||||||
->addActionContext('metadata', 'json')
|
|
||||||
->addActionContext('edit', 'json')
|
->addActionContext('edit', 'json')
|
||||||
->addActionContext('delete-active', 'json')
|
->addActionContext('delete-active', 'json')
|
||||||
->addActionContext('delete', 'json')
|
->addActionContext('delete', 'json')
|
||||||
|
@ -102,58 +100,11 @@ class PlaylistController extends Zend_Controller_Action
|
||||||
$pl->setPLMetaData('dc:creator', $userInfo->login);
|
$pl->setPLMetaData('dc:creator', $userInfo->login);
|
||||||
|
|
||||||
$this->changePlaylist($pl->getId());
|
$this->changePlaylist($pl->getId());
|
||||||
$form = new Application_Form_PlaylistMetadata();
|
|
||||||
$this->view->fieldset = $form;
|
|
||||||
$this->view->form = $this->view->render('playlist/new.phtml');
|
|
||||||
}
|
|
||||||
|
|
||||||
public function metadataAction()
|
$this->view->pl = $pl;
|
||||||
{
|
$this->view->pl_id = $pl->getId();
|
||||||
$request = $this->getRequest();
|
$this->view->html = $this->view->render('playlist/index.phtml');
|
||||||
$form = new Application_Form_PlaylistMetadata();
|
unset($this->view->pl);
|
||||||
|
|
||||||
$pl_id = $this->_getParam('id', null);
|
|
||||||
//not a new playlist
|
|
||||||
if(!is_null($pl_id)) {
|
|
||||||
$this->changePlaylist($pl_id);
|
|
||||||
|
|
||||||
$pl = $this->getPlaylist();
|
|
||||||
if($pl === false){
|
|
||||||
$this->view->playlist_error = true;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
$title = $pl->getPLMetaData("dc:title");
|
|
||||||
$desc = $pl->getPLMetaData("dc:description");
|
|
||||||
|
|
||||||
$data = array( 'title' => $title, 'description' => $desc);
|
|
||||||
$form->populate($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($request->isPost()) {
|
|
||||||
$title = $this->_getParam('title', null);
|
|
||||||
$description = $this->_getParam('description', null);
|
|
||||||
|
|
||||||
$pl = $this->getPlaylist();
|
|
||||||
if($pl === false){
|
|
||||||
$this->view->playlist_error = true;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if($title)
|
|
||||||
$pl->setName($title);
|
|
||||||
|
|
||||||
if(isset($description)) {
|
|
||||||
$pl->setPLMetaData("dc:description", $description);
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->view->pl = $pl;
|
|
||||||
$this->view->html = $this->view->render('playlist/index.phtml');
|
|
||||||
unset($this->view->pl);
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->view->pl_id = $pl_id;
|
|
||||||
$this->view->fieldset = $form;
|
|
||||||
$this->view->form = $this->view->render('playlist/new.phtml');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function editAction()
|
public function editAction()
|
||||||
|
@ -256,42 +207,37 @@ class PlaylistController extends Zend_Controller_Action
|
||||||
$this->view->description = $pl->getDescription();
|
$this->view->description = $pl->getDescription();
|
||||||
|
|
||||||
unset($this->view->pl);
|
unset($this->view->pl);
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setCueAction()
|
public function setCueAction()
|
||||||
{
|
{
|
||||||
$request = $this->getRequest();
|
|
||||||
$pos = $this->_getParam('pos');
|
$pos = $this->_getParam('pos');
|
||||||
$pl = $this->getPlaylist();
|
$pl = $this->getPlaylist();
|
||||||
if($pl === false){
|
if ($pl === false){
|
||||||
$this->view->playlist_error = true;
|
$this->view->playlist_error = true;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($request->isPost()) {
|
$cueIn = $this->_getParam('cueIn', null);
|
||||||
$cueIn = $this->_getParam('cueIn', null);
|
$cueOut = $this->_getParam('cueOut', null);
|
||||||
$cueOut = $this->_getParam('cueOut', null);
|
|
||||||
|
|
||||||
$response = $pl->changeClipLength($pos, $cueIn, $cueOut);
|
$response = $pl->changeClipLength($pos, $cueIn, $cueOut);
|
||||||
|
|
||||||
$this->view->response = $response;
|
$this->view->response = $response;
|
||||||
return;
|
|
||||||
|
if(!isset($response["error"])) {
|
||||||
|
$this->view->pl = $pl;
|
||||||
|
$this->view->html = $this->view->render('playlist/update.phtml');
|
||||||
|
$this->view->name = $pl->getName();
|
||||||
|
$this->view->length = $pl->getLength();
|
||||||
|
$this->view->description = $pl->getDescription();
|
||||||
|
|
||||||
|
unset($this->view->pl);
|
||||||
}
|
}
|
||||||
|
|
||||||
$cues = $pl->getCueInfo($pos);
|
|
||||||
|
|
||||||
$this->view->pos = $pos;
|
|
||||||
$this->view->cueIn = $cues[0];
|
|
||||||
$this->view->cueOut = $cues[1];
|
|
||||||
$this->view->origLength = $cues[2];
|
|
||||||
$this->view->html = $this->view->render('playlist/set-cue.phtml');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setFadeAction()
|
public function setFadeAction()
|
||||||
{
|
{
|
||||||
$request = $this->getRequest();
|
|
||||||
$pos = $this->_getParam('pos');
|
$pos = $this->_getParam('pos');
|
||||||
$pl = $this->getPlaylist();
|
$pl = $this->getPlaylist();
|
||||||
if($pl === false){
|
if($pl === false){
|
||||||
|
@ -299,24 +245,22 @@ class PlaylistController extends Zend_Controller_Action
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($request->isPost()) {
|
$fadeIn = $this->_getParam('fadeIn', null);
|
||||||
$fadeIn = $this->_getParam('fadeIn', null);
|
$fadeOut = $this->_getParam('fadeOut', null);
|
||||||
$fadeOut = $this->_getParam('fadeOut', null);
|
|
||||||
|
|
||||||
$response = $pl->changeFadeInfo($pos, $fadeIn, $fadeOut);
|
$response = $pl->changeFadeInfo($pos, $fadeIn, $fadeOut);
|
||||||
|
|
||||||
$this->view->response = $response;
|
$this->view->response = $response;
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->view->pos = intval($pos);
|
if(!isset($response["error"])) {
|
||||||
|
$this->view->pl = $pl;
|
||||||
|
$this->view->html = $this->view->render('playlist/update.phtml');
|
||||||
|
$this->view->name = $pl->getName();
|
||||||
|
$this->view->length = $pl->getLength();
|
||||||
|
$this->view->description = $pl->getDescription();
|
||||||
|
|
||||||
$fades = $pl->getFadeInfo($pos+1);
|
unset($this->view->pl);
|
||||||
$this->view->fadeIn = $fades[0];
|
}
|
||||||
|
|
||||||
$fades = $pl->getFadeInfo($pos);
|
|
||||||
$this->view->fadeOut = $fades[1];
|
|
||||||
$this->view->html = $this->view->render('playlist/set-fade.phtml');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function deleteAction()
|
public function deleteAction()
|
||||||
|
@ -430,7 +374,5 @@ class PlaylistController extends Zend_Controller_Action
|
||||||
|
|
||||||
$this->view->playlistDescription = $description;
|
$this->view->playlistDescription = $description;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
class Application_Form_PlaylistMetadata extends Zend_Form{
|
|
||||||
|
|
||||||
public function init()
|
|
||||||
{
|
|
||||||
// Add username element
|
|
||||||
$this->addElement('text', 'title', array(
|
|
||||||
'label' => 'Title:',
|
|
||||||
'class' => 'input_text',
|
|
||||||
'required' => false,
|
|
||||||
'filters' => array('StringTrim'),
|
|
||||||
'validators' => array(
|
|
||||||
'NotEmpty',
|
|
||||||
)
|
|
||||||
));
|
|
||||||
|
|
||||||
// Add the comment element
|
|
||||||
$this->addElement('textarea', 'description', array(
|
|
||||||
'label' => 'Description:',
|
|
||||||
'class' => 'input_text_area',
|
|
||||||
'required' => false,
|
|
||||||
));
|
|
||||||
|
|
||||||
// Add the comment element
|
|
||||||
$this->addElement('button', 'new_playlist_submit', array(
|
|
||||||
'label' => 'Save',
|
|
||||||
'ignore' => true
|
|
||||||
));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
<br /><br /><center>View script for controller <b>Playlist</b> and script/action name <b>addItem</b></center>
|
|
|
@ -1 +0,0 @@
|
||||||
<br /><br /><center>View script for controller <b>Playlist</b> and script/action name <b>close</b></center>
|
|
|
@ -1 +0,0 @@
|
||||||
<br /><br /><center>View script for controller <b>Playlist</b> and script/action name <b>deleteActive</b></center>
|
|
|
@ -1 +0,0 @@
|
||||||
<br /><br /><center>View script for controller <b>Playlist</b> and script/action name <b>deleteItem</b></center>
|
|
|
@ -1 +0,0 @@
|
||||||
<br /><br /><center>View script for controller <b>Playlist</b> and script/action name <b>delete</b></center>
|
|
|
@ -1,3 +0,0 @@
|
||||||
<form method="post" action="" enctype="application/x-www-form-urlencoded">
|
|
||||||
<?php echo $this->view->fieldset; ?>
|
|
||||||
</form>
|
|
|
@ -1 +0,0 @@
|
||||||
<br /><br /><center>View script for controller <b>Playlist</b> and script/action name <b>moveItem</b></center>
|
|
|
@ -1,6 +0,0 @@
|
||||||
<h3 class="plain">Playlist Metadata</h3>
|
|
||||||
<form method="post" action="" enctype="application/x-www-form-urlencoded">
|
|
||||||
<fieldset>
|
|
||||||
<?php echo $this->fieldset; ?>
|
|
||||||
</fieldset>
|
|
||||||
</form>
|
|
|
@ -1 +0,0 @@
|
||||||
<br /><br /><center>View script for controller <b>Playlist</b> and script/action name <b>setPlaylistFades</b></center>
|
|
|
@ -4,10 +4,10 @@ if (count($items)) : ?>
|
||||||
|
|
||||||
<?php $i = 0; ?>
|
<?php $i = 0; ?>
|
||||||
<?php foreach($items as $item) : ?>
|
<?php foreach($items as $item) : ?>
|
||||||
<li class="ui-state-default" id="spl_<?php echo $i ?>">
|
<li class="ui-state-default" id="spl_<?php echo $i ?>" unqid="<?php echo $item["CcFiles"]["gunid"]."_".$i; ?>">
|
||||||
<div class="list-item-container">
|
<div class="list-item-container">
|
||||||
<a href="javascript:void(0);" class="big_play"
|
<a href="javascript:void(0);" class="big_play"
|
||||||
onclick="audioPreview('<?php echo $item["CcFiles"]["gunid"].".".pathinfo($item["CcFiles"]["filepath"], PATHINFO_EXTENSION);?>',
|
onclick="audioPreview('<?php echo $item["CcFiles"]["gunid"].".".pathinfo($item["CcFiles"]["filepath"], PATHINFO_EXTENSION);?>',
|
||||||
'spl_<?php echo $i ?>')"><span class="ui-icon ui-icon-play"></span></a>
|
'spl_<?php echo $i ?>')"><span class="ui-icon ui-icon-play"></span></a>
|
||||||
|
|
||||||
<div class="text-row top">
|
<div class="text-row top">
|
||||||
|
@ -19,16 +19,33 @@ if (count($items)) : ?>
|
||||||
<span class="spl_artist"><?php echo $item["CcFiles"]['artist_name'] ?></span>
|
<span class="spl_artist"><?php echo $item["CcFiles"]['artist_name'] ?></span>
|
||||||
<span class="spl_offset"><?php echo $item["offset"]?></span>
|
<span class="spl_offset"><?php echo $item["offset"]?></span>
|
||||||
</div>
|
</div>
|
||||||
<?php if($i < count($items) -1): ?>
|
<?php //create the crossfade icon.
|
||||||
|
if ($i < count($items) -1):
|
||||||
|
?>
|
||||||
<div id="fade_<?php echo $i ?>" class="spl_fade_control ui-state-default"></div>
|
<div id="fade_<?php echo $i ?>" class="spl_fade_control ui-state-default"></div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<span class="ui-icon ui-icon-closethick"></span>
|
<span class="ui-icon ui-icon-closethick"></span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="cues_<?php echo $i ?>" class="cue-edit clearfix" style="display: none"></div>
|
<div id="cues_<?php echo $i ?>" class="cue-edit clearfix" style="display: none">
|
||||||
|
<?php echo $this->partial('playlist/set-cue.phtml', array(
|
||||||
|
'pos' => $i,
|
||||||
|
'cueIn' => $item['cuein'],
|
||||||
|
'cueOut' => $item['cueout'],
|
||||||
|
'origLength' => $item["CcFiles"]['length'])); ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
<?php if($i < count($items) -1): ?>
|
|
||||||
<div id="crossfade_<?php echo $i ?>-<?php echo $i+1 ?>" class="crossfade clearfix" style="display: none"></div>
|
<?php //create a fade editor box
|
||||||
|
//(fadeout of current position + fade in of next position)
|
||||||
|
if($i < count($items) -1):
|
||||||
|
?>
|
||||||
|
<div id="crossfade_<?php echo $i ?>-<?php echo $i+1 ?>" class="crossfade clearfix" style="display: none">
|
||||||
|
<?php echo $this->partial('playlist/set-fade.phtml', array(
|
||||||
|
'pos' => $i,
|
||||||
|
'fadeOut' => $items[$i]['fadeout'],
|
||||||
|
'fadeIn' => $items[$i+1]['fadein'])); ?>
|
||||||
|
</div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
@ -36,5 +53,5 @@ if (count($items)) : ?>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
|
|
||||||
<?php else : ?>
|
<?php else : ?>
|
||||||
<li class="spl_empty">Empty playlist</li>
|
<li class="spl_empty">Empty playlist</li>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
|
@ -1,445 +1,447 @@
|
||||||
#side_playlist {
|
#side_playlist {
|
||||||
width: 40%;
|
width: 40%;
|
||||||
min-height: 475px;
|
min-height: 475px;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
padding-bottom: 0px;
|
padding-bottom: 0px;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#side_playlist,
|
#side_playlist,
|
||||||
#side_playlist ul,
|
#side_playlist ul,
|
||||||
#side_playlist li {
|
#side_playlist li {
|
||||||
float: left;
|
float: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
#spl_sortable,
|
#spl_sortable,
|
||||||
#spl_sortable > li,
|
#spl_sortable > li,
|
||||||
#side_playlist > div,
|
#side_playlist > div,
|
||||||
#spl_editor,
|
#spl_editor,
|
||||||
.spl_artist,
|
.spl_artist,
|
||||||
.spl_cue_in,
|
.spl_cue_in,
|
||||||
.spl_fade_in,
|
.spl_fade_in,
|
||||||
.spl_cue_out,
|
.spl_cue_out,
|
||||||
.spl_fade_out {
|
.spl_fade_out {
|
||||||
clear: left;
|
clear: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
#side_playlist button {
|
#side_playlist button {
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#side_playlist input,
|
#side_playlist input,
|
||||||
#side_playlist textarea {
|
#side_playlist textarea {
|
||||||
width: 200px;
|
width: 200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#side_playlist textarea {
|
#side_playlist textarea {
|
||||||
height: 100px;
|
height: 100px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#spl_sortable {
|
#spl_sortable {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
padding:0;
|
padding:0;
|
||||||
padding-bottom:50px;
|
padding-bottom:50px;
|
||||||
width:100%;
|
width:100%;
|
||||||
min-height: 320px;
|
min-height: 320px;
|
||||||
margin-top:0;
|
margin-top:0;
|
||||||
margin-bottom:0;
|
margin-bottom:0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#side_playlist li {
|
#side_playlist li {
|
||||||
width: 99.5%;
|
width: 99.5%;
|
||||||
margin-bottom:-1px;
|
margin-bottom:-1px;
|
||||||
position:relative;
|
position:relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
#side_playlist li div.list-item-container, #side_playlist li div.list-item-container.ui-state-active {
|
#side_playlist li div.list-item-container, #side_playlist li div.list-item-container.ui-state-active {
|
||||||
height:56px;
|
height:56px;
|
||||||
border: none;
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
#spl_name {
|
#spl_name {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-icon-closethick {
|
.ui-icon-closethick {
|
||||||
margin-top: 7px;
|
margin-top: 7px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.spl_title {
|
.spl_title {
|
||||||
font-size:14px;
|
font-size:14px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.spl_playlength {
|
.spl_playlength {
|
||||||
float:right;
|
float:right;
|
||||||
font-size:14px;
|
font-size:14px;
|
||||||
padding:0 5px 0 0;
|
padding:0 5px 0 0;
|
||||||
width:100px;
|
width:100px;
|
||||||
text-align:right;
|
text-align:right;
|
||||||
}
|
}
|
||||||
|
|
||||||
.spl_artist {
|
.spl_artist {
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
color:#d5d5d5;
|
color:#d5d5d5;
|
||||||
}
|
}
|
||||||
|
|
||||||
.spl_offset {
|
.spl_offset {
|
||||||
float: right;
|
float: right;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
padding: 0 5px 0 0;
|
padding: 0 5px 0 0;
|
||||||
color: #D5D5D5;
|
color: #D5D5D5;
|
||||||
}
|
}
|
||||||
|
.ui-state-active .spl_artist, .ui-state-active .spl_offset {
|
||||||
/*#spl_editor {
|
color: #606060 !important;
|
||||||
height: 50px;
|
}
|
||||||
}*/
|
/*#spl_editor {
|
||||||
|
height: 50px;
|
||||||
#spl_editor > div > span {
|
}*/
|
||||||
/* display: inline-block;
|
|
||||||
width: 150px;*/
|
#spl_editor > div > span {
|
||||||
}
|
/* display: inline-block;
|
||||||
|
width: 150px;*/
|
||||||
.ui-icon-closethick,
|
}
|
||||||
.ui-icon-play,
|
|
||||||
.spl_fade_control,
|
.ui-icon-closethick,
|
||||||
.spl_text_input {
|
.ui-icon-play,
|
||||||
cursor: pointer;
|
.spl_fade_control,
|
||||||
}
|
.spl_text_input {
|
||||||
|
cursor: pointer;
|
||||||
.spl_text_input input {
|
}
|
||||||
cursor: text;
|
|
||||||
}
|
.spl_text_input input {
|
||||||
|
cursor: text;
|
||||||
#spl_error {
|
}
|
||||||
font-size: 14px;
|
|
||||||
padding: 0.3em;
|
#spl_error {
|
||||||
/*width: 440px;*/
|
font-size: 14px;
|
||||||
text-align: center;
|
padding: 0.3em;
|
||||||
}
|
/*width: 440px;*/
|
||||||
|
text-align: center;
|
||||||
#side_playlist h3 {
|
}
|
||||||
font-size:20px;
|
|
||||||
margin:9px 0 3px 0;
|
#side_playlist h3 {
|
||||||
padding:0;
|
font-size:20px;
|
||||||
color:#444444;
|
margin:9px 0 3px 0;
|
||||||
font-weight:normal;
|
padding:0;
|
||||||
clear:both;
|
color:#444444;
|
||||||
float:left;
|
font-weight:normal;
|
||||||
}
|
clear:both;
|
||||||
#side_playlist h4 {
|
float:left;
|
||||||
font-size:15px;
|
}
|
||||||
margin:8px 0 10px 0;
|
#side_playlist h4 {
|
||||||
padding:0;
|
font-size:15px;
|
||||||
color:#4f4f4f;
|
margin:8px 0 10px 0;
|
||||||
font-weight:normal;
|
padding:0;
|
||||||
clear:both;
|
color:#4f4f4f;
|
||||||
float:left;
|
font-weight:normal;
|
||||||
}
|
clear:both;
|
||||||
#side_playlist h3 + h4 {
|
float:left;
|
||||||
margin:0 0 11px 0;
|
}
|
||||||
}
|
#side_playlist h3 + h4 {
|
||||||
#spl_sortable a.big_play {
|
margin:0 0 11px 0;
|
||||||
display:block;
|
}
|
||||||
width:20px;
|
#spl_sortable a.big_play {
|
||||||
height:50px;
|
display:block;
|
||||||
margin:2px 0 0 2px;
|
width:20px;
|
||||||
text-align:center;
|
height:50px;
|
||||||
border:1px solid #5b5b5b;
|
margin:2px 0 0 2px;
|
||||||
float:left;
|
text-align:center;
|
||||||
background-color: #707070;
|
border:1px solid #5b5b5b;
|
||||||
background: -moz-linear-gradient(top, #707070 0, #666666 100%);
|
float:left;
|
||||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #707070), color-stop(100%, #666666));
|
background-color: #707070;
|
||||||
}
|
background: -moz-linear-gradient(top, #707070 0, #666666 100%);
|
||||||
#spl_sortable a.big_play:hover {
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #707070), color-stop(100%, #666666));
|
||||||
border:1px solid #282828;
|
}
|
||||||
background-color: #3b3b3b;
|
#spl_sortable a.big_play:hover {
|
||||||
background: -moz-linear-gradient(top, #3b3b3b 0, #292929 100%);
|
border:1px solid #282828;
|
||||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #3b3b3b), color-stop(100%, #292929));
|
background-color: #3b3b3b;
|
||||||
}
|
background: -moz-linear-gradient(top, #3b3b3b 0, #292929 100%);
|
||||||
#spl_sortable a.big_play .ui-icon-play {
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #3b3b3b), color-stop(100%, #292929));
|
||||||
margin: 17px 0 0 1px;
|
}
|
||||||
}
|
#spl_sortable a.big_play .ui-icon-play {
|
||||||
|
margin: 17px 0 0 1px;
|
||||||
#spl_sortable a.big_play .ui-icon-pause {
|
}
|
||||||
margin: 17px 0 0 1px;
|
|
||||||
}
|
#spl_sortable a.big_play .ui-icon-pause {
|
||||||
|
margin: 17px 0 0 1px;
|
||||||
#spl_sortable a.big_play:hover .ui-icon-play, #spl_sortable a.big_play:hover .ui-icon-pause {
|
}
|
||||||
background-image:url(redmond/images/ui-icons_ff5d1a_256x240.png);
|
|
||||||
}
|
#spl_sortable a.big_play:hover .ui-icon-play, #spl_sortable a.big_play:hover .ui-icon-pause {
|
||||||
#spl_sortable .ui-icon-closethick {
|
background-image:url(redmond/images/ui-icons_ff5d1a_256x240.png);
|
||||||
position:absolute;
|
}
|
||||||
top:3px;
|
#spl_sortable .ui-icon-closethick {
|
||||||
right:6px;
|
position:absolute;
|
||||||
z-index:3;
|
top:3px;
|
||||||
}
|
right:6px;
|
||||||
#spl_sortable .ui-icon-closethick:hover {
|
z-index:3;
|
||||||
background-image:url(redmond/images/ui-icons_ff5d1a_256x240.png)
|
}
|
||||||
}
|
#spl_sortable .ui-icon-closethick:hover {
|
||||||
#spl_sortable .spl_fade_control {
|
background-image:url(redmond/images/ui-icons_ff5d1a_256x240.png)
|
||||||
position:absolute;
|
}
|
||||||
right:35px;
|
#spl_sortable .spl_fade_control {
|
||||||
z-index: 6;
|
position:absolute;
|
||||||
height:15px;
|
right:35px;
|
||||||
width:33px;
|
z-index: 6;
|
||||||
font-size:9px;
|
height:15px;
|
||||||
background-color:transparent;
|
width:33px;
|
||||||
}
|
font-size:9px;
|
||||||
|
background-color:transparent;
|
||||||
#spl_sortable li .container {
|
}
|
||||||
|
|
||||||
}
|
#spl_sortable li .container {
|
||||||
#spl_sortable .text-row {
|
|
||||||
height: 20px;
|
}
|
||||||
line-height: 19px;
|
#spl_sortable .text-row {
|
||||||
overflow: hidden;
|
height: 20px;
|
||||||
padding: 0 30px 0 10px;
|
line-height: 19px;
|
||||||
text-indent: 2px;
|
overflow: hidden;
|
||||||
margin:-1px 0 0 0;
|
padding: 0 30px 0 10px;
|
||||||
float:none;
|
text-indent: 2px;
|
||||||
}
|
margin:-1px 0 0 0;
|
||||||
#spl_sortable .top {
|
float:none;
|
||||||
padding-top:9px;
|
}
|
||||||
}
|
#spl_sortable .top {
|
||||||
#spl_sortable li .spl_fade_control.ui-state-default {
|
padding-top:9px;
|
||||||
background: transparent url(images/crossfade_playlist.png) no-repeat 0 0;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_fade_control.ui-state-default {
|
||||||
}
|
background: transparent url(images/crossfade_playlist.png) no-repeat 0 0;
|
||||||
#spl_sortable li .spl_fade_control.ui-state-active {
|
border:none;
|
||||||
background: transparent url(images/crossfade_playlist.png) no-repeat 0 -30px;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_fade_control.ui-state-active {
|
||||||
}
|
background: transparent url(images/crossfade_playlist.png) no-repeat 0 -30px;
|
||||||
#spl_sortable li .crossfade, #spl_sortable li .cue-edit {
|
border:none;
|
||||||
background:#debc9e url(images/crossfade_bg.png) repeat-x 0 0 !important;
|
}
|
||||||
border:1px solid #5d5d5d;
|
#spl_sortable li .crossfade, #spl_sortable li .cue-edit {
|
||||||
border-width: 1px 0 0 0;
|
background:#debc9e url(images/crossfade_bg.png) repeat-x 0 0 !important;
|
||||||
min-height:35px;
|
border:1px solid #5d5d5d;
|
||||||
}
|
border-width: 1px 0 0 0;
|
||||||
#spl_sortable li .cue-edit {
|
min-height:35px;
|
||||||
background:#b6d1d5 url(images/cue-editor_bg.png) repeat-x 0 0 !important;
|
}
|
||||||
}
|
#spl_sortable li .cue-edit {
|
||||||
#spl_sortable dl.inline-list {
|
background:#b6d1d5 url(images/cue-editor_bg.png) repeat-x 0 0 !important;
|
||||||
margin:10px 0 0 37px;
|
}
|
||||||
}
|
#spl_sortable dl.inline-list {
|
||||||
|
margin:10px 0 0 37px;
|
||||||
|
}
|
||||||
#spl_sortable li .spl_fade_start, #spl_sortable li .spl_fade_end {
|
|
||||||
background-color: transparent;
|
|
||||||
float:right;
|
#spl_sortable li .spl_fade_start, #spl_sortable li .spl_fade_end {
|
||||||
font-size: 9px;
|
background-color: transparent;
|
||||||
height: 15px;
|
float:right;
|
||||||
right: 35px;
|
font-size: 9px;
|
||||||
width: 33px;
|
height: 15px;
|
||||||
margin-top:2px;
|
right: 35px;
|
||||||
}
|
width: 33px;
|
||||||
#spl_sortable li .spl_fade_start.ui-state-default {
|
margin-top:2px;
|
||||||
background: transparent url(images/fade_in.png) no-repeat 0 0;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_fade_start.ui-state-default {
|
||||||
}
|
background: transparent url(images/fade_in.png) no-repeat 0 0;
|
||||||
#spl_sortable li .spl_fade_start.ui-state-active {
|
border:none;
|
||||||
background: transparent url(images/fade_in.png) no-repeat 0 -30px;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_fade_start.ui-state-active {
|
||||||
}
|
background: transparent url(images/fade_in.png) no-repeat 0 -30px;
|
||||||
|
border:none;
|
||||||
#spl_sortable li .spl_fade_end.ui-state-default {
|
}
|
||||||
background: transparent url(images/fade_out.png) no-repeat 0 0;
|
|
||||||
border:none;
|
#spl_sortable li .spl_fade_end.ui-state-default {
|
||||||
}
|
background: transparent url(images/fade_out.png) no-repeat 0 0;
|
||||||
#spl_sortable li .spl_fade_end.ui-state-active {
|
border:none;
|
||||||
background: transparent url(images/fade_out.png) no-repeat 0 -30px;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_fade_end.ui-state-active {
|
||||||
}
|
background: transparent url(images/fade_out.png) no-repeat 0 -30px;
|
||||||
.crossfade dl.inline-list, .cue-edit dl.inline-list, .crossfade-main dl.inline-list {
|
border:none;
|
||||||
padding-bottom:5px;
|
}
|
||||||
clear:left;
|
.crossfade dl.inline-list, .cue-edit dl.inline-list, .crossfade-main dl.inline-list {
|
||||||
|
padding-bottom:5px;
|
||||||
}
|
clear:left;
|
||||||
.crossfade dl.inline-list dt, .cue-edit dl.inline-list dt, .crossfade-main dl.inline-list dt {
|
|
||||||
min-width: 90px;
|
}
|
||||||
|
.crossfade dl.inline-list dt, .cue-edit dl.inline-list dt, .crossfade-main dl.inline-list dt {
|
||||||
|
min-width: 90px;
|
||||||
}
|
|
||||||
.crossfade dl.inline-list dd, .cue-edit dl.inline-list dd, .crossfade-main dl.inline-list dd {
|
|
||||||
float: left;
|
}
|
||||||
font-size: 12px;
|
.crossfade dl.inline-list dd, .cue-edit dl.inline-list dd, .crossfade-main dl.inline-list dd {
|
||||||
margin: 0;
|
float: left;
|
||||||
|
font-size: 12px;
|
||||||
}
|
margin: 0;
|
||||||
.edit-error {
|
|
||||||
color:#b80000;
|
}
|
||||||
margin:0;
|
.edit-error {
|
||||||
padding-bottom:0;
|
color:#b80000;
|
||||||
font-size:12px;
|
margin:0;
|
||||||
display:none;
|
padding-bottom:0;
|
||||||
}
|
font-size:12px;
|
||||||
|
display:none;
|
||||||
/*.edit-error:last-child {
|
}
|
||||||
padding-bottom:10px;
|
|
||||||
}*/
|
/*.edit-error:last-child {
|
||||||
.spl_text_input {
|
padding-bottom:10px;
|
||||||
color:#fff;
|
}*/
|
||||||
}
|
.spl_text_input {
|
||||||
.crossfade-main {
|
color:#fff;
|
||||||
background:#debc9e;
|
}
|
||||||
border:1px solid #5b5b5b;
|
.crossfade-main {
|
||||||
padding:10px 10px 0 10px;
|
background:#debc9e;
|
||||||
margin:0 1px 16px 0;
|
border:1px solid #5b5b5b;
|
||||||
position:relative;
|
padding:10px 10px 0 10px;
|
||||||
}
|
margin:0 1px 16px 0;
|
||||||
|
position:relative;
|
||||||
.crossfade-main .edit-error {
|
}
|
||||||
padding-bottom:4px;
|
|
||||||
margin:0;
|
.crossfade-main .edit-error {
|
||||||
}
|
padding-bottom:4px;
|
||||||
|
margin:0;
|
||||||
.crossfade-main .edit-error:last-child {
|
}
|
||||||
padding-bottom:2px;
|
|
||||||
}
|
.crossfade-main .edit-error:last-child {
|
||||||
.crossfade-main .ui-icon-closethick {
|
padding-bottom:2px;
|
||||||
position: absolute;
|
}
|
||||||
right: 6px;
|
.crossfade-main .ui-icon-closethick {
|
||||||
top: 3px;
|
position: absolute;
|
||||||
z-index: 3;
|
right: 6px;
|
||||||
}
|
top: 3px;
|
||||||
|
z-index: 3;
|
||||||
#spl_sortable li .spl_cue {
|
}
|
||||||
background-color: transparent;
|
|
||||||
float:right;
|
#spl_sortable li .spl_cue {
|
||||||
font-size: 9px;
|
background-color: transparent;
|
||||||
height: 15px;
|
float:right;
|
||||||
right: 35px;
|
font-size: 9px;
|
||||||
width: 33px;
|
height: 15px;
|
||||||
margin-top:2px;
|
right: 35px;
|
||||||
cursor:pointer;
|
width: 33px;
|
||||||
}
|
margin-top:2px;
|
||||||
#spl_sortable li .spl_cue.ui-state-default {
|
cursor:pointer;
|
||||||
background: transparent url(images/cue_playlist.png) no-repeat 0 0;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_cue.ui-state-default {
|
||||||
}
|
background: transparent url(images/cue_playlist.png) no-repeat 0 0;
|
||||||
#spl_sortable li .spl_cue.ui-state-default:hover {
|
border:none;
|
||||||
background: transparent url(images/cue_playlist.png) no-repeat 0 -15px;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_cue.ui-state-default:hover {
|
||||||
}
|
background: transparent url(images/cue_playlist.png) no-repeat 0 -15px;
|
||||||
#spl_sortable li .spl_cue.ui-state-active, #spl_sortable li .spl_cue.ui-state-active:hover {
|
border:none;
|
||||||
background: transparent url(images/cue_playlist.png) no-repeat 0 -30px;
|
}
|
||||||
border:none;
|
#spl_sortable li .spl_cue.ui-state-active, #spl_sortable li .spl_cue.ui-state-active:hover {
|
||||||
}
|
background: transparent url(images/cue_playlist.png) no-repeat 0 -30px;
|
||||||
|
border:none;
|
||||||
/*--/////////////// Changes 16.05.2011 ////////////--*/
|
}
|
||||||
|
|
||||||
.playlist_title {
|
/*--/////////////// Changes 16.05.2011 ////////////--*/
|
||||||
margin: 16px 0 10px 0;
|
|
||||||
height:26px;
|
.playlist_title {
|
||||||
clear:both;
|
margin: 16px 0 10px 0;
|
||||||
}
|
height:26px;
|
||||||
#side_playlist .playlist_title h3, #side_playlist .playlist_title h4 {
|
clear:both;
|
||||||
margin: 0;
|
}
|
||||||
padding: 0;
|
#side_playlist .playlist_title h3, #side_playlist .playlist_title h4 {
|
||||||
}
|
margin: 0;
|
||||||
#side_playlist .playlist_title h3 {
|
padding: 0;
|
||||||
float:left;
|
}
|
||||||
width:84%;
|
#side_playlist .playlist_title h3 {
|
||||||
}
|
float:left;
|
||||||
#side_playlist .playlist_title h4 {
|
width:84%;
|
||||||
float:right;
|
}
|
||||||
clear:none;
|
#side_playlist .playlist_title h4 {
|
||||||
font-size: 16px;
|
float:right;
|
||||||
padding-top:4px;
|
clear:none;
|
||||||
}
|
font-size: 16px;
|
||||||
|
padding-top:4px;
|
||||||
#side_playlist .playlist_title h3 a {
|
}
|
||||||
padding: 0 22px 0 2px;
|
|
||||||
background:url(images/icon_edit_l.png) no-repeat right center;
|
#side_playlist .playlist_title h3 a {
|
||||||
text-decoration:none;
|
padding: 0 22px 0 2px;
|
||||||
|
background:url(images/icon_edit_l.png) no-repeat right center;
|
||||||
}
|
text-decoration:none;
|
||||||
#side_playlist .playlist_title h3 a:hover {
|
|
||||||
background-color:#D8D8D8;
|
}
|
||||||
}
|
#side_playlist .playlist_title h3 a:hover {
|
||||||
.element_hidden {
|
background-color:#D8D8D8;
|
||||||
display: none;
|
}
|
||||||
}
|
.element_hidden {
|
||||||
#side_playlist .playlist_title h3 input[type="text"] {
|
display: none;
|
||||||
background-color: #dddddd;
|
}
|
||||||
border: 1px solid #8F8F8F;
|
#side_playlist .playlist_title h3 input[type="text"] {
|
||||||
font-family: Arial,Helvetica,sans-serif;
|
background-color: #dddddd;
|
||||||
font-size: 12px;
|
border: 1px solid #8F8F8F;
|
||||||
height: 23px;
|
font-family: Arial,Helvetica,sans-serif;
|
||||||
margin: 0;
|
font-size: 12px;
|
||||||
padding: 0;
|
height: 23px;
|
||||||
text-indent: 3px;
|
margin: 0;
|
||||||
-moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
padding: 0;
|
||||||
-webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
text-indent: 3px;
|
||||||
box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
-moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
||||||
width:95%;
|
-webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
||||||
}
|
box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
||||||
|
width:95%;
|
||||||
#side_playlist .zend_form {
|
}
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
#side_playlist .zend_form {
|
||||||
}
|
margin: 0;
|
||||||
#side_playlist .zend_form dt, #side_playlist .zend_form dd {
|
padding: 0;
|
||||||
display: block;
|
}
|
||||||
float: none;
|
#side_playlist .zend_form dt, #side_playlist .zend_form dd {
|
||||||
margin: 4px 0 0;
|
display: block;
|
||||||
padding: 0;
|
float: none;
|
||||||
width:100%;
|
margin: 4px 0 0;
|
||||||
}
|
padding: 0;
|
||||||
#side_playlist .zend_form dd.buttons {
|
width:100%;
|
||||||
margin-top: 8px;
|
}
|
||||||
text-align:right;
|
#side_playlist .zend_form dd.buttons {
|
||||||
}
|
margin-top: 8px;
|
||||||
#side_playlist .zend_form dd.buttons .ui-button {
|
text-align:right;
|
||||||
margin: 0 0 0 10px;
|
}
|
||||||
}
|
#side_playlist .zend_form dd.buttons .ui-button {
|
||||||
|
margin: 0 0 0 10px;
|
||||||
#side_playlist .zend_form dt {
|
}
|
||||||
color:#5B5B5B;
|
|
||||||
font-weight: bold;
|
#side_playlist .zend_form dt {
|
||||||
margin: 9px 0 0;
|
color:#5B5B5B;
|
||||||
padding: 0 2px;
|
font-weight: bold;
|
||||||
}
|
margin: 9px 0 0;
|
||||||
|
padding: 0 2px;
|
||||||
#side_playlist .zend_form dt:first-child {
|
}
|
||||||
margin-top: 0;
|
|
||||||
}
|
#side_playlist .zend_form dt:first-child {
|
||||||
|
margin-top: 0;
|
||||||
#side_playlist .zend_form dd textarea {
|
}
|
||||||
background-color: #dddddd;
|
|
||||||
border: 1px solid #5B5B5B;
|
#side_playlist .zend_form dd textarea {
|
||||||
font-family: Arial,Helvetica,sans-serif;
|
background-color: #dddddd;
|
||||||
font-size: 12px;
|
border: 1px solid #5B5B5B;
|
||||||
margin: 0;
|
font-family: Arial,Helvetica,sans-serif;
|
||||||
padding: 2px 0 0 0;
|
font-size: 12px;
|
||||||
-moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
margin: 0;
|
||||||
-webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
padding: 2px 0 0 0;
|
||||||
box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
-moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
||||||
width:99.7%;
|
-webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
||||||
}
|
box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);
|
||||||
|
width:99.7%;
|
||||||
#side_playlist fieldset {
|
}
|
||||||
border: 1px solid #9a9a9a;
|
|
||||||
margin: 0 0 8px 0;
|
#side_playlist fieldset {
|
||||||
padding: 8px;
|
border: 1px solid #9a9a9a;
|
||||||
}
|
margin: 0 0 8px 0;
|
||||||
#side_playlist fieldset.closed .zend_form{
|
padding: 8px;
|
||||||
display:none;
|
}
|
||||||
}
|
#side_playlist fieldset.closed .zend_form{
|
||||||
#side_playlist fieldset.closed {
|
display:none;
|
||||||
border-width: 1px 0 0;
|
}
|
||||||
margin-bottom: -6px;
|
#side_playlist fieldset.closed {
|
||||||
margin-left:1px;
|
border-width: 1px 0 0;
|
||||||
}
|
margin-bottom: -6px;
|
||||||
fieldset > legend {
|
margin-left:1px;
|
||||||
color: #4f4f4f;
|
}
|
||||||
font-size: 12px;
|
fieldset > legend {
|
||||||
line-height: 140%;
|
color: #4f4f4f;
|
||||||
}
|
font-size: 12px;
|
||||||
.ui-widget-content fieldset legend .ui-icon {
|
line-height: 140%;
|
||||||
float: left;
|
}
|
||||||
background-image:url(redmond/images/ui-icons_454545_256x240.png);
|
.ui-widget-content fieldset legend .ui-icon {
|
||||||
}
|
float: left;
|
||||||
#side_playlist .zend_form input, #side_playlist .zend_form textarea {
|
background-image:url(redmond/images/ui-icons_454545_256x240.png);
|
||||||
width: auto;
|
}
|
||||||
}
|
#side_playlist .zend_form input, #side_playlist .zend_form textarea {
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,11 @@
|
||||||
//Side Playlist Functions
|
//Side Playlist Functions
|
||||||
//--------------------------------------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
function stopAudioPreview() {
|
||||||
|
// stop any preview playing
|
||||||
|
$('#jquery_jplayer_1').jPlayer('stop');
|
||||||
|
}
|
||||||
|
|
||||||
function isTimeValid(time) {
|
function isTimeValid(time) {
|
||||||
var regExpr = new RegExp("^\\d{2}[:]\\d{2}[:]\\d{2}([.]\\d{1,6})?$");
|
var regExpr = new RegExp("^\\d{2}[:]\\d{2}[:]\\d{2}([.]\\d{1,6})?$");
|
||||||
|
|
||||||
|
@ -12,17 +17,6 @@ function isTimeValid(time) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function changeClipLength(pos, json) {
|
|
||||||
|
|
||||||
$("#spl_"+pos).find(".spl_playlength")
|
|
||||||
.empty()
|
|
||||||
.append(json.response.cliplength);
|
|
||||||
|
|
||||||
$("#spl_length")
|
|
||||||
.empty()
|
|
||||||
.append(json.response.length);
|
|
||||||
}
|
|
||||||
|
|
||||||
function showError(el, error) {
|
function showError(el, error) {
|
||||||
$(el).parent().next()
|
$(el).parent().next()
|
||||||
.empty()
|
.empty()
|
||||||
|
@ -39,41 +33,47 @@ function hideError(el) {
|
||||||
function changeCueIn(event) {
|
function changeCueIn(event) {
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
|
||||||
var pos, url, cueIn, div;
|
var pos, url, cueIn, li, unqid;
|
||||||
|
|
||||||
span = $(this);
|
span = $(this);
|
||||||
pos = span.parent().attr("id").split("_").pop();
|
pos = span.parent().attr("id").split("_").pop();
|
||||||
url = "/Playlist/set-cue";
|
url = "/Playlist/set-cue";
|
||||||
cueIn = span.text().trim();
|
cueIn = span.text().trim();
|
||||||
|
li = span.parent().parent().parent().parent();
|
||||||
|
unqid = li.attr("unqid");
|
||||||
|
|
||||||
if(!isTimeValid(cueIn)){
|
if(!isTimeValid(cueIn)){
|
||||||
showError(span, "please put in a time '00:00:00 (.000000)'");
|
showError(span, "please put in a time '00:00:00 (.000000)'");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$.post(url, {format: "json", cueIn: cueIn, pos: pos}, function(json){
|
$.post(url, {format: "json", cueIn: cueIn, pos: pos, type: event.type}, function(json){
|
||||||
if(json.playlist_error == true){
|
|
||||||
alertPlaylistErrorAndReload();
|
if(json.response !== undefined && json.response.error) {
|
||||||
}
|
|
||||||
if(json.response.error) {
|
|
||||||
showError(span, json.response.error);
|
showError(span, json.response.error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
changeClipLength(pos, json);
|
setSPLContent(json);
|
||||||
hideError(span);
|
|
||||||
|
li = $('#side_playlist li[unqid='+unqid+']');
|
||||||
|
li.find(".cue-edit").toggle();
|
||||||
|
highlightActive(li);
|
||||||
|
highlightActive(li.find('.spl_cue'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function changeCueOut(event) {
|
function changeCueOut(event) {
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
|
||||||
var pos, url, cueOut, div;
|
var pos, url, cueOut, li, unqid;
|
||||||
|
|
||||||
span = $(this);
|
span = $(this);
|
||||||
pos = span.parent().attr("id").split("_").pop();
|
pos = span.parent().attr("id").split("_").pop();
|
||||||
url = "/Playlist/set-cue";
|
url = "/Playlist/set-cue";
|
||||||
cueOut = span.text().trim();
|
cueOut = span.text().trim();
|
||||||
|
li = span.parent().parent().parent().parent();
|
||||||
|
unqid = li.attr("unqid");
|
||||||
|
|
||||||
if(!isTimeValid(cueOut)){
|
if(!isTimeValid(cueOut)){
|
||||||
showError(span, "please put in a time '00:00:00 (.000000)'");
|
showError(span, "please put in a time '00:00:00 (.000000)'");
|
||||||
|
@ -81,28 +81,32 @@ function changeCueOut(event) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$.post(url, {format: "json", cueOut: cueOut, pos: pos}, function(json){
|
$.post(url, {format: "json", cueOut: cueOut, pos: pos}, function(json){
|
||||||
if(json.playlist_error == true){
|
|
||||||
alertPlaylistErrorAndReload();
|
if(json.response !== undefined && json.response.error) {
|
||||||
}
|
|
||||||
if(json.response.error) {
|
|
||||||
showError(span, json.response.error);
|
showError(span, json.response.error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
changeClipLength(pos, json);
|
setSPLContent(json);
|
||||||
hideError(span);
|
|
||||||
|
li = $('#side_playlist li[unqid='+unqid+']');
|
||||||
|
li.find(".cue-edit").toggle();
|
||||||
|
highlightActive(li);
|
||||||
|
highlightActive(li.find('.spl_cue'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function changeFadeIn(event) {
|
function changeFadeIn(event) {
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
|
||||||
var pos, url, fadeIn, div;
|
var pos, url, fadeIn, li, unqid;
|
||||||
|
|
||||||
span = $(this);
|
span = $(this);
|
||||||
pos = span.parent().attr("id").split("_").pop();
|
pos = span.parent().attr("id").split("_").pop();
|
||||||
url = "/Playlist/set-fade";
|
url = "/Playlist/set-fade";
|
||||||
fadeIn = span.text().trim();
|
fadeIn = span.text().trim();
|
||||||
|
li = span.parent().parent().parent().parent();
|
||||||
|
unqid = li.attr("unqid");
|
||||||
|
|
||||||
if(!isTimeValid(fadeIn)){
|
if(!isTimeValid(fadeIn)){
|
||||||
showError(span, "please put in a time '00:00:00 (.000000)'");
|
showError(span, "please put in a time '00:00:00 (.000000)'");
|
||||||
|
@ -110,26 +114,31 @@ function changeFadeIn(event) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$.post(url, {format: "json", fadeIn: fadeIn, pos: pos}, function(json){
|
$.post(url, {format: "json", fadeIn: fadeIn, pos: pos}, function(json){
|
||||||
if(json.playlist_error == true){
|
|
||||||
alertPlaylistErrorAndReload();
|
if(json.response !== undefined && json.response.error) {
|
||||||
}
|
showError(span, json.response.error);
|
||||||
if(json.response.error) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
hideError(span);
|
setSPLContent(json);
|
||||||
|
|
||||||
|
li = $('#side_playlist li[unqid='+unqid+']');
|
||||||
|
li.find('.crossfade').toggle();
|
||||||
|
highlightActive(li.find('.spl_fade_control'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function changeFadeOut(event) {
|
function changeFadeOut(event) {
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
|
||||||
var pos, url, fadeOut, div;
|
var pos, url, fadeOut, li, unqid;
|
||||||
|
|
||||||
span = $(this);
|
span = $(this);
|
||||||
pos = span.parent().attr("id").split("_").pop();
|
pos = span.parent().attr("id").split("_").pop();
|
||||||
url = "/Playlist/set-fade";
|
url = "/Playlist/set-fade";
|
||||||
fadeOut = span.text().trim();
|
fadeOut = span.text().trim();
|
||||||
|
li = span.parent().parent().parent().parent();
|
||||||
|
unqid = li.attr("unqid");
|
||||||
|
|
||||||
if(!isTimeValid(fadeOut)){
|
if(!isTimeValid(fadeOut)){
|
||||||
showError(span, "please put in a time '00:00:00 (.000000)'");
|
showError(span, "please put in a time '00:00:00 (.000000)'");
|
||||||
|
@ -137,14 +146,16 @@ function changeFadeOut(event) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$.post(url, {format: "json", fadeOut: fadeOut, pos: pos}, function(json){
|
$.post(url, {format: "json", fadeOut: fadeOut, pos: pos}, function(json){
|
||||||
if(json.playlist_error == true){
|
if(json.response !== undefined && json.response.error) {
|
||||||
alertPlaylistErrorAndReload();
|
showError(span, json.response.error);
|
||||||
}
|
|
||||||
if(json.response.error) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
hideError(span);
|
setSPLContent(json);
|
||||||
|
|
||||||
|
li = $('#side_playlist li[unqid='+unqid+']');
|
||||||
|
li.find('.crossfade').toggle();
|
||||||
|
highlightActive(li.find('.spl_fade_control'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,100 +167,49 @@ function submitOnEnter(event) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function setCueEvents(el) {
|
|
||||||
|
|
||||||
$(el).find(".spl_cue_in span:last").blur(changeCueIn);
|
|
||||||
$(el).find(".spl_cue_out span:last").blur(changeCueOut);
|
|
||||||
|
|
||||||
$(el).find(".spl_cue_in span:first, .spl_cue_out span:first")
|
|
||||||
.keydown(submitOnEnter);
|
|
||||||
}
|
|
||||||
|
|
||||||
function setFadeEvents(el) {
|
|
||||||
|
|
||||||
$(el).find(".spl_fade_in span:first").blur(changeFadeIn);
|
|
||||||
$(el).find(".spl_fade_out span:first").blur(changeFadeOut);
|
|
||||||
|
|
||||||
$(el).find(".spl_fade_in span:first, .spl_fade_out span:first")
|
|
||||||
.keydown(submitOnEnter);
|
|
||||||
}
|
|
||||||
|
|
||||||
function highlightActive(el) {
|
function highlightActive(el) {
|
||||||
|
|
||||||
$(el).addClass("ui-state-active");
|
$(el).addClass("ui-state-active");
|
||||||
}
|
}
|
||||||
|
|
||||||
function openFadeEditor(event) {
|
function unHighlightActive(el) {
|
||||||
event.stopPropagation();
|
|
||||||
|
|
||||||
var pos, url, li;
|
$(el).removeClass("ui-state-active");
|
||||||
|
}
|
||||||
|
|
||||||
|
function openFadeEditor(event) {
|
||||||
|
var pos, url, li;
|
||||||
|
|
||||||
|
event.stopPropagation();
|
||||||
|
|
||||||
li = $(this).parent().parent();
|
li = $(this).parent().parent();
|
||||||
pos = parseInt(li.attr("id").split("_").pop());
|
li.find(".crossfade").toggle();
|
||||||
|
|
||||||
if($(this).hasClass("ui-state-active")) {
|
if($(this).hasClass("ui-state-active")) {
|
||||||
$(this).removeClass("ui-state-active");
|
unHighlightActive(this);
|
||||||
|
}
|
||||||
$("#crossfade_"+pos+"-"+(pos+1))
|
else {
|
||||||
.empty()
|
highlightActive(this);
|
||||||
.hide();
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
url = '/Playlist/set-fade';
|
|
||||||
|
|
||||||
highlightActive(this);
|
|
||||||
|
|
||||||
$.get(url, {format: "json", pos: pos}, function(json){
|
|
||||||
if(json.playlist_error == true){
|
|
||||||
alertPlaylistErrorAndReload();
|
|
||||||
}
|
|
||||||
$("#crossfade_"+(pos)+"-"+(pos+1))
|
|
||||||
.empty()
|
|
||||||
.append(json.html)
|
|
||||||
.show();
|
|
||||||
|
|
||||||
setFadeEvents(li);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function openCueEditor(event) {
|
function openCueEditor(event) {
|
||||||
|
var pos, url, li, icon;
|
||||||
|
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
|
||||||
var pos, url, li, icon;
|
icon = $(this);
|
||||||
|
li = $(this).parent().parent().parent();
|
||||||
|
li.find(".cue-edit").toggle();
|
||||||
|
|
||||||
li = $(this).parent().parent().parent();
|
if (li.hasClass("ui-state-active")) {
|
||||||
icon = $(this);
|
unHighlightActive(li);
|
||||||
pos = li.attr("id").split("_").pop();
|
unHighlightActive(icon);
|
||||||
|
}
|
||||||
if(li.hasClass("ui-state-active")) {
|
else {
|
||||||
li.removeClass("ui-state-active");
|
highlightActive(li);
|
||||||
icon.attr("class", "spl_cue ui-state-default");
|
highlightActive(icon);
|
||||||
|
|
||||||
$("#cues_"+pos)
|
|
||||||
.empty()
|
|
||||||
.hide();
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
icon.attr("class", "spl_cue ui-state-default ui-state-active");
|
|
||||||
url = '/Playlist/set-cue';
|
|
||||||
|
|
||||||
highlightActive(li);
|
|
||||||
|
|
||||||
$.get(url, {format: "json", pos: pos}, function(json){
|
|
||||||
if(json.playlist_error == true){
|
|
||||||
alertPlaylistErrorAndReload();
|
|
||||||
}
|
|
||||||
$("#cues_"+pos)
|
|
||||||
.empty()
|
|
||||||
.append(json.html)
|
|
||||||
.show();
|
|
||||||
|
|
||||||
setCueEvents(li);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function redrawDataTablePage() {
|
function redrawDataTablePage() {
|
||||||
|
@ -268,21 +228,18 @@ function setSPLContent(json) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$('#spl_name > a').empty()
|
$('#spl_name > a')
|
||||||
|
.empty()
|
||||||
.append(json.name);
|
.append(json.name);
|
||||||
$('#spl_length').empty()
|
$('#spl_length')
|
||||||
|
.empty()
|
||||||
.append(json.length);
|
.append(json.length);
|
||||||
$('#fieldset-metadate_change textarea')
|
$('#fieldset-metadate_change textarea')
|
||||||
.empty()
|
.empty()
|
||||||
.val(json.description);
|
.val(json.description);
|
||||||
$('#spl_sortable').empty()
|
$('#spl_sortable')
|
||||||
|
.empty()
|
||||||
.append(json.html);
|
.append(json.html);
|
||||||
$("#spl_editor")
|
|
||||||
.empty();
|
|
||||||
|
|
||||||
$("#spl_sortable .ui-icon-closethick").click(deleteSPLItem);
|
|
||||||
$(".spl_fade_control").click(openFadeEditor);
|
|
||||||
$(".spl_cue").click(openCueEditor);
|
|
||||||
|
|
||||||
//redraw the library list
|
//redraw the library list
|
||||||
redrawDataTablePage();
|
redrawDataTablePage();
|
||||||
|
@ -319,10 +276,8 @@ function addSPLItem(event, ui){
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteSPLItem(event){
|
function deleteSPLItem(event){
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
stopAudioPreview();
|
||||||
// stop any preview playing
|
|
||||||
$('#jquery_jplayer_1').jPlayer('stop');
|
|
||||||
|
|
||||||
var url, pos;
|
var url, pos;
|
||||||
|
|
||||||
|
@ -358,65 +313,24 @@ function noOpenPL(json) {
|
||||||
.click(newSPL);
|
.click(newSPL);
|
||||||
}
|
}
|
||||||
|
|
||||||
function createPlaylistMetaForm(json) {
|
|
||||||
var submit, form;
|
|
||||||
|
|
||||||
form = $(json.form);
|
|
||||||
form.find("fieldset").addClass("simple-formblock metadata");
|
|
||||||
|
|
||||||
form.find("input, textarea")
|
|
||||||
.keydown(function(event){
|
|
||||||
//enter was pressed
|
|
||||||
if(event.keyCode === 13) {
|
|
||||||
event.preventDefault();
|
|
||||||
$("#new_playlist_submit").click();
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
form.find("#new_playlist_submit")
|
|
||||||
.button()
|
|
||||||
.click(function(event){
|
|
||||||
event.preventDefault();
|
|
||||||
|
|
||||||
var url, data;
|
|
||||||
|
|
||||||
url = '/Playlist/metadata/format/json';
|
|
||||||
data = $("#side_playlist form").serialize();
|
|
||||||
|
|
||||||
$.post(url, data, function(json){
|
|
||||||
if(json.playlist_error == true){
|
|
||||||
alertPlaylistErrorAndReload();
|
|
||||||
}
|
|
||||||
openDiffSPL(json);
|
|
||||||
//redraw the library list
|
|
||||||
redrawDataTablePage();
|
|
||||||
})
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#side_playlist")
|
|
||||||
.empty()
|
|
||||||
.append(form);
|
|
||||||
|
|
||||||
currentlyOpenedSplId = json.pl_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
function newSPL() {
|
function newSPL() {
|
||||||
var url;
|
var url;
|
||||||
|
|
||||||
// stop any preview playing
|
stopAudioPreview();
|
||||||
$('#jquery_jplayer_1').jPlayer('stop');
|
|
||||||
|
|
||||||
url = '/Playlist/new/format/json';
|
url = '/Playlist/new/format/json';
|
||||||
|
|
||||||
$.post(url, createPlaylistMetaForm);
|
$.post(url, function(json){
|
||||||
|
openDiffSPL(json);
|
||||||
|
|
||||||
|
//redraw the library list
|
||||||
|
redrawDataTablePage();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteSPL() {
|
function deleteSPL() {
|
||||||
var url;
|
var url;
|
||||||
|
|
||||||
// stop any preview playing
|
stopAudioPreview();
|
||||||
$('#jquery_jplayer_1').jPlayer('stop');
|
|
||||||
|
|
||||||
url = '/Playlist/delete-active/format/json';
|
url = '/Playlist/delete-active/format/json';
|
||||||
|
|
||||||
|
@ -431,6 +345,7 @@ function deleteSPL() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function openDiffSPL(json) {
|
function openDiffSPL(json) {
|
||||||
|
|
||||||
if(json.playlist_error == true){
|
if(json.playlist_error == true){
|
||||||
alertPlaylistErrorAndReload();
|
alertPlaylistErrorAndReload();
|
||||||
}
|
}
|
||||||
|
@ -439,8 +354,7 @@ function openDiffSPL(json) {
|
||||||
.append(json.html);
|
.append(json.html);
|
||||||
|
|
||||||
currentlyOpenedSplId = json.pl_id;
|
currentlyOpenedSplId = json.pl_id;
|
||||||
|
setUpSPL();
|
||||||
setUpSPL();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function editName() {
|
function editName() {
|
||||||
|
@ -610,23 +524,63 @@ function setUpSPL() {
|
||||||
$("#spl_delete")
|
$("#spl_delete")
|
||||||
.button()
|
.button()
|
||||||
.click(deleteSPL);
|
.click(deleteSPL);
|
||||||
|
|
||||||
$("#spl_sortable .ui-icon-closethick").click(deleteSPLItem);
|
|
||||||
$(".spl_fade_control").click(openFadeEditor);
|
|
||||||
$(".spl_cue").click(openCueEditor);
|
|
||||||
|
|
||||||
$("#spl_sortable").droppable();
|
$("#spl_sortable").droppable();
|
||||||
$("#spl_sortable" ).bind( "drop", addSPLItem);
|
$("#spl_sortable" ).bind( "drop", addSPLItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//sets events dynamically for playlist entries (each row in the playlist)
|
||||||
|
function setPlaylistEntryEvents(el) {
|
||||||
|
|
||||||
|
$(el).delegate("#spl_sortable .ui-icon-closethick",
|
||||||
|
{"click": deleteSPLItem});
|
||||||
|
|
||||||
|
$(el).delegate(".spl_fade_control",
|
||||||
|
{"click": openFadeEditor});
|
||||||
|
|
||||||
|
$(el).delegate(".spl_cue",
|
||||||
|
{"click": openCueEditor});
|
||||||
|
}
|
||||||
|
|
||||||
|
//sets events dynamically for the cue editor.
|
||||||
|
function setCueEvents(el) {
|
||||||
|
|
||||||
|
$(el).delegate(".spl_cue_in span",
|
||||||
|
{"focusout": changeCueIn,
|
||||||
|
"keydown": submitOnEnter});
|
||||||
|
|
||||||
|
$(el).delegate(".spl_cue_out span",
|
||||||
|
{"focusout": changeCueOut,
|
||||||
|
"keydown": submitOnEnter});
|
||||||
|
}
|
||||||
|
|
||||||
|
//sets events dynamically for the fade editor.
|
||||||
|
function setFadeEvents(el) {
|
||||||
|
|
||||||
|
$(el).delegate(".spl_fade_in span",
|
||||||
|
{"focusout": changeFadeIn,
|
||||||
|
"keydown": submitOnEnter});
|
||||||
|
|
||||||
|
$(el).delegate(".spl_fade_out span",
|
||||||
|
{"focusout": changeFadeOut,
|
||||||
|
"keydown": submitOnEnter});
|
||||||
|
}
|
||||||
|
|
||||||
// Alert the error and reload the page
|
// Alert the error and reload the page
|
||||||
// this function is used to resolve concurrency issue
|
// this function is used to resolve concurrency issue
|
||||||
function alertPlaylistErrorAndReload(){
|
function alertPlaylistErrorAndReload(){
|
||||||
alert("The playlist doesn't exist anymore!");
|
alert("The playlist doesn't exist anymore!");
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}
|
}
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
var currentlyOpenedSplId;
|
var currentlyOpenedSplId;
|
||||||
setUpSPL();
|
var playlist = $("#side_playlist");
|
||||||
|
|
||||||
|
setUpSPL(playlist);
|
||||||
|
|
||||||
|
setPlaylistEntryEvents(playlist);
|
||||||
|
setCueEvents(playlist);
|
||||||
|
setFadeEvents(playlist);
|
||||||
});
|
});
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue