-synchronize
This commit is contained in:
parent
fa106b1da1
commit
4bdcba83e2
|
@ -71,7 +71,7 @@ $pages = array(
|
|||
)
|
||||
),
|
||||
array(
|
||||
'label' => 'Test',
|
||||
'label' => 'Now Playing',
|
||||
'module' => 'default',
|
||||
'controller' => 'Schedule',
|
||||
'action' => 'get-scheduler-time'
|
||||
|
|
|
@ -306,7 +306,7 @@ class LocStor extends BasicStor {
|
|||
{
|
||||
// $res = $this->existsAudioClip($sessid, $gunid);
|
||||
// if(PEAR::isError($res)) return $res;
|
||||
$media = StoredFile::RecallByGunid($gunid)
|
||||
$media = StoredFile::RecallByGunid($gunid);
|
||||
$id = $media->getGunid();
|
||||
if (is_null($id)) {
|
||||
return PEAR::raiseError(
|
||||
|
|
|
@ -442,60 +442,41 @@ class Schedule {
|
|||
}
|
||||
|
||||
$timeNow = Schedule::GetSchedulerTime();
|
||||
$currentSong = Schedule::getCurrentlyPlaying();
|
||||
return array("schedulerTime"=>$timeNow,"previous"=>Schedule::getPreviousItems($timeNow),
|
||||
"current"=>Schedule::getCurrentlyPlaying($timeNow),
|
||||
"next"=>Schedule::getNextItems($timeNow));
|
||||
return array("schedulerTime"=>$timeNow,"previous"=>Schedule::GetPreviousItems($timeNow),
|
||||
"current"=>Schedule::GetCurrentlyPlaying($timeNow),
|
||||
"next"=>Schedule::GetNextItems($timeNow));
|
||||
}
|
||||
|
||||
private static function GetPreviousItems($timeNow, $prevCount = 1){
|
||||
global $CC_CONFIG, $CC_DBC;
|
||||
$sql = "SELECT * FROM ".$CC_CONFIG["scheduleTable"]
|
||||
." WHERE (starts < TIMESTAMP '$timeNow')"
|
||||
." ORDER BY id"
|
||||
$sql = "SELECT * FROM $CC_CONFIG[scheduleTable], $CC_CONFIG[filesTable]"
|
||||
." WHERE ($CC_CONFIG[scheduleTable].ends < TIMESTAMP '$timeNow')"
|
||||
." AND ($CC_CONFIG[scheduleTable].file_id = $CC_CONFIG[filesTable].id)"
|
||||
." ORDER BY $CC_CONFIG[scheduleTable].id"
|
||||
." LIMIT $prevCount";
|
||||
$rows = $CC_DBC->GetAll($sql);
|
||||
foreach ($rows as &$row) {
|
||||
$row["count"] = "1";
|
||||
$row["playlistId"] = $row["playlist_id"];
|
||||
$row["start"] = $row["starts"];
|
||||
$row["end"] = $row["ends"];
|
||||
$row["id"] = $row["group_id"];
|
||||
}
|
||||
return $rows;
|
||||
}
|
||||
|
||||
private static function GetCurrentlyPlaying($timeNow){
|
||||
global $CC_CONFIG, $CC_DBC;
|
||||
|
||||
$sql = "SELECT * FROM ".$CC_CONFIG["scheduleTable"]
|
||||
." WHERE (starts < TIMESTAMP '$timeNow') "
|
||||
." AND (ends > TIMESTAMP '$timeNow')";
|
||||
$sql = "SELECT * FROM $CC_CONFIG[scheduleTable], $CC_CONFIG[filesTable]"
|
||||
." WHERE ($CC_CONFIG[scheduleTable].starts < TIMESTAMP '$timeNow')"
|
||||
." AND ($CC_CONFIG[scheduleTable].ends > TIMESTAMP '$timeNow')"
|
||||
." AND ($CC_CONFIG[scheduleTable].file_id = $CC_CONFIG[filesTable].id)";
|
||||
$rows = $CC_DBC->GetAll($sql);
|
||||
foreach ($rows as &$row) {
|
||||
$row["count"] = "1";
|
||||
$row["playlistId"] = $row["playlist_id"];
|
||||
$row["start"] = $row["starts"];
|
||||
$row["end"] = $row["ends"];
|
||||
$row["id"] = $row["group_id"];
|
||||
}
|
||||
return $rows;
|
||||
}
|
||||
|
||||
private static function GetNextItems($timeNow, $nextCount = 1) {
|
||||
global $CC_CONFIG, $CC_DBC;
|
||||
$sql = "SELECT * FROM ".$CC_CONFIG["scheduleTable"]
|
||||
." WHERE (starts > TIMESTAMP '$timeNow')"
|
||||
." ORDER BY id"
|
||||
$sql = "SELECT * FROM $CC_CONFIG[scheduleTable], $CC_CONFIG[filesTable]"
|
||||
." WHERE ($CC_CONFIG[scheduleTable].starts > TIMESTAMP '$timeNow')"
|
||||
." AND ($CC_CONFIG[scheduleTable].file_id = $CC_CONFIG[filesTable].id)"
|
||||
." ORDER BY $CC_CONFIG[scheduleTable].id"
|
||||
." LIMIT $nextCount";
|
||||
$rows = $CC_DBC->GetAll($sql);
|
||||
foreach ($rows as &$row) {
|
||||
$row["count"] = "1";
|
||||
$row["playlistId"] = $row["playlist_id"];
|
||||
$row["start"] = $row["starts"];
|
||||
$row["end"] = $row["ends"];
|
||||
$row["id"] = $row["group_id"];
|
||||
}
|
||||
return $rows;
|
||||
}
|
||||
|
||||
|
|
|
@ -6,13 +6,21 @@
|
|||
var day = s.substring(8, 10);
|
||||
var hour = s.substring(11, 13);
|
||||
var minute = s.substring(14, 16);
|
||||
var sec = s.substring(17);
|
||||
|
||||
return Date.UTC(year, month, day, hour, minute, sec, 0);
|
||||
var sec = 0;
|
||||
var msec = 0;
|
||||
if (s.length >= 20){
|
||||
sec = s.substring(17, 19);
|
||||
msec = s.substring(20);
|
||||
} else {
|
||||
sec = s.substring(17);
|
||||
}
|
||||
|
||||
return Date.UTC(year, month, day, hour, minute, sec, msec);
|
||||
}
|
||||
|
||||
var schedulePosixTime;
|
||||
|
||||
var previousSong;
|
||||
var currentSong;
|
||||
var nextSong;
|
||||
|
||||
|
@ -40,17 +48,10 @@
|
|||
}
|
||||
|
||||
function getCurrentPlayingItem(currentItem){
|
||||
var clipLength = currentItem.clip_length;
|
||||
var clHours = parseInt(clipLength.substring(0, 2));
|
||||
var clMinutes = parseInt(clipLength.substring(3, 5));
|
||||
var clSeconds = parseInt(clipLength.substring(6, 8));
|
||||
var clMs = parseInt(clipLength.substring(9));
|
||||
|
||||
var songLengthMs = clMs + clSeconds*1000 + clMinutes*60*1000 + clHours*60*60*1000;
|
||||
var songStartPosixTime = convertDateToPosixTime(currentItem.starts);
|
||||
var songEndPosixTime = convertDateToPosixTime(currentItem.ends);
|
||||
|
||||
return {songLengthMs:songLengthMs, songStartPosixTime:songStartPosixTime, songEndPosixTime:songEndPosixTime};
|
||||
return {songLengthMs:songEndPosixTime-songStartPosixTime, songStartPosixTime:songStartPosixTime, songEndPosixTime:songEndPosixTime};
|
||||
|
||||
}
|
||||
|
||||
|
@ -62,17 +63,36 @@
|
|||
|
||||
function parseItems(obj){
|
||||
schedulePosixTime = convertDateToPosixTime(obj.schedulerTime);
|
||||
if (obj.previous.length > 0){
|
||||
previousSong = getCurrentPlayingItem(obj.previous[0]);
|
||||
$("#previous").html(obj.schedulerTime + " " + schedulePosixTime + "<br>" +
|
||||
obj.previous[0].clip_length + " " + previousSong.songLengthMs + "<br>" +
|
||||
obj.previous[0].starts + " " + previousSong.songStartPosixTime + "<br>" +
|
||||
obj.previous[0].ends + " " + previousSong.songEndPosixTime + "<br>" +
|
||||
obj.previous[0].name + "<br>");
|
||||
}
|
||||
if (obj.current.length > 0){
|
||||
currentSong = getCurrentPlayingItem(obj.current[0]);
|
||||
$("#current").html(obj.schedulerTime + " " + schedulePosixTime + "<br>" +
|
||||
obj.current[0].clip_length + " " + currentSong.songLengthMs + "<br>" +
|
||||
obj.current[0].starts + " " + currentSong.songStartPosixTime + "<br>" +
|
||||
obj.current[0].ends + " " + currentSong.songEndPosixTime + "<br>" +
|
||||
obj.current[0].name + "<br>");
|
||||
}
|
||||
if (obj.next.length > 0){
|
||||
nextSong = getCurrentPlayingItem(obj.next[0]);
|
||||
$("#next").html(obj.schedulerTime + " " + schedulePosixTime + "<br>" +
|
||||
obj.next[0].clip_length + " " + nextSong.songLengthMs + "<br>" +
|
||||
obj.next[0].starts + " " + nextSong.songStartPosixTime + "<br>" +
|
||||
obj.next[0].ends + " " + nextSong.songEndPosixTime + "<br>" +
|
||||
obj.next[0].name + "<br>");
|
||||
}
|
||||
updateProgressBarValue();
|
||||
}
|
||||
|
||||
function getScheduleFromServer(){
|
||||
$.ajax({ url: "/Schedule/get-current-playlist/format/json", dataType:"json", success:function(data){
|
||||
//alert(data);
|
||||
parseItems(data.entries);
|
||||
}});
|
||||
}
|
||||
|
@ -82,5 +102,9 @@
|
|||
getScheduleFromServer();
|
||||
});
|
||||
</script>
|
||||
<div id="previous" style="background: blue;"></div>
|
||||
<div id="current" style="background: white;"></div>
|
||||
<span class="progressBar" id="spaceused1">0%</span>
|
||||
<div id="next" style="background: yellow;"></div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -23,9 +23,6 @@ def remove_user(username):
|
|||
|
||||
os.system("deluser --remove-home " + username + " > /dev/null")
|
||||
|
||||
#pypo group appears to be deleted when removing user.
|
||||
#os.system("delgroup " + username)
|
||||
|
||||
try:
|
||||
os.system("python ./pypo-stop.py")
|
||||
|
||||
|
|
Loading…
Reference in New Issue