*** empty log message ***
This commit is contained in:
parent
3b2b457e3f
commit
51da1904c7
14 changed files with 309 additions and 180 deletions
|
@ -14,6 +14,7 @@ $Smarty->register_function('tra', 'S_tra');
|
||||||
$Smarty->register_function('getHour', 'S_getHour');
|
$Smarty->register_function('getHour', 'S_getHour');
|
||||||
$Smarty->register_function('getMinute', 'S_getMinute');
|
$Smarty->register_function('getMinute', 'S_getMinute');
|
||||||
$Smarty->register_function('getSecond', 'S_getSecond');
|
$Smarty->register_function('getSecond', 'S_getSecond');
|
||||||
|
$Smarty->register_function('niceTime', 'S_niceTime');
|
||||||
|
|
||||||
// --- Smarty Extensions ---
|
// --- Smarty Extensions ---
|
||||||
/**
|
/**
|
||||||
|
@ -83,6 +84,7 @@ function S_getHour($param)
|
||||||
## input format is HH:MM:SS.dddddd
|
## input format is HH:MM:SS.dddddd
|
||||||
extract ($param);
|
extract ($param);
|
||||||
list ($h, $m, $s) = explode (':', $time);
|
list ($h, $m, $s) = explode (':', $time);
|
||||||
|
settype($h, 'integer');
|
||||||
return $h;
|
return $h;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -91,6 +93,7 @@ function S_getMinute($param)
|
||||||
## input format is HH:MM:SS.dddddd
|
## input format is HH:MM:SS.dddddd
|
||||||
extract ($param);
|
extract ($param);
|
||||||
list ($h, $m, $s) = explode (':', $time);
|
list ($h, $m, $s) = explode (':', $time);
|
||||||
|
settype($m, 'integer');
|
||||||
return $m;
|
return $m;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -99,6 +102,29 @@ function S_getSecond($param)
|
||||||
## input format is HH:MM:SS.dddddd
|
## input format is HH:MM:SS.dddddd
|
||||||
extract ($param);
|
extract ($param);
|
||||||
list ($h, $m, $s) = explode (':', $time);
|
list ($h, $m, $s) = explode (':', $time);
|
||||||
|
if ($plus) $s += $plus;
|
||||||
|
settype($s, 'integer');
|
||||||
return $s;
|
return $s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function S_niceTime($param)
|
||||||
|
{
|
||||||
|
extract($param);
|
||||||
|
|
||||||
|
if (strpos($in, '.')) list ($in, $lost) = explode('.', $in);
|
||||||
|
$in = str_replace(' ', '', $in);
|
||||||
|
|
||||||
|
if (preg_match('/^[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}$/', $in)) list($h, $i, $s) = explode(':', $in);
|
||||||
|
elseif (preg_match('/^[0-9]{1,2}:[0-9]{1,2}$/', $in)) list($i, $s) = explode(':', $in);
|
||||||
|
else $s = $in;
|
||||||
|
|
||||||
|
if ($all || $h > 0) $H = sprintf('%02d', $h).':';
|
||||||
|
else $H = ' ';
|
||||||
|
$I = sprintf('%02d', $i).':';
|
||||||
|
$S = sprintf('%02d', $s);
|
||||||
|
|
||||||
|
return $H.$I.$S;
|
||||||
|
}
|
||||||
?>
|
?>
|
|
@ -710,6 +710,10 @@ $ui_fmask = array(
|
||||||
'type' => 'hidden',
|
'type' => 'hidden',
|
||||||
'constant' => 'SCHEDULER.addItem'
|
'constant' => 'SCHEDULER.addItem'
|
||||||
),
|
),
|
||||||
|
array(
|
||||||
|
'element' => 'playlist',
|
||||||
|
'type' => 'hidden'
|
||||||
|
),
|
||||||
'date' => array(
|
'date' => array(
|
||||||
'element' => 'date',
|
'element' => 'date',
|
||||||
'type' => 'date',
|
'type' => 'date',
|
||||||
|
@ -722,12 +726,36 @@ $ui_fmask = array(
|
||||||
'label' => 'Time',
|
'label' => 'Time',
|
||||||
'options' => array('format' => 'His'),
|
'options' => array('format' => 'His'),
|
||||||
),
|
),
|
||||||
'playlist' => array(
|
'gunid_duration' => array(
|
||||||
'element' => 'playlist',
|
'element' => 'gunid_duration',
|
||||||
'type' => 'select',
|
'type' => 'select',
|
||||||
'label' => 'Playlist',
|
'label' => 'Playlist',
|
||||||
'required' => TRUE,
|
'required' => TRUE,
|
||||||
),
|
),
|
||||||
|
array(
|
||||||
|
'element' => 'snap2Prev',
|
||||||
|
'type' => 'button',
|
||||||
|
'label' => 'Snap to previous',
|
||||||
|
'attributes'=> array('onClick' => 'SCHEDULE_snap2Prev()'),
|
||||||
|
'groupit' => TRUE
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'element' => 'snap2Hour',
|
||||||
|
'type' => 'button',
|
||||||
|
'label' => 'Snap to hour',
|
||||||
|
'attributes'=> array('onClick' => 'SCHEDULE_snap2Hour()'),
|
||||||
|
'groupit' => TRUE
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'element' => 'snap2Next',
|
||||||
|
'type' => 'button',
|
||||||
|
'label' => 'Snap to next',
|
||||||
|
'attributes'=> array('onClick' => 'SCHEDULE_snap2Next()'),
|
||||||
|
'groupit' => TRUE
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'group' => array('snap2Prev', 'snap2Hour', 'snap2Next')
|
||||||
|
),
|
||||||
array(
|
array(
|
||||||
'element' => 'cancel',
|
'element' => 'cancel',
|
||||||
'type' => 'button',
|
'type' => 'button',
|
||||||
|
@ -742,13 +770,14 @@ $ui_fmask = array(
|
||||||
'groupit' => TRUE
|
'groupit' => TRUE
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
'element' => 'submit',
|
'element' => 'submitter',
|
||||||
'type' => 'submit',
|
'type' => 'button',
|
||||||
'label' => 'Submit',
|
'label' => 'Submit',
|
||||||
|
'attributes'=> array('onClick' => 'SCHEDULE_submit()'),
|
||||||
'groupit' => TRUE
|
'groupit' => TRUE
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
'group' => array('cancel', 'reset', 'submit')
|
'group' => array('cancel', 'reset', 'submitter')
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
);
|
);
|
|
@ -257,7 +257,7 @@ switch($_REQUEST['act']){
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "SCHEDULER.setScheduleTime":
|
case "SCHEDULER.setScheduleTime":
|
||||||
$uiHandler->SCHEDULER->setScheduleTime($_REQUEST);
|
$uiHandler->SCHEDULER->setScheduleAt($_REQUEST);
|
||||||
$uiHandler->SCHEDULER->setClose();
|
$uiHandler->SCHEDULER->setClose();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
{/if}
|
{/if}
|
||||||
</td>
|
</td>
|
||||||
<td {include file="library/actionhandler.tpl"}>{$i.creator}</td>
|
<td {include file="library/actionhandler.tpl"}>{$i.creator}</td>
|
||||||
<td {include file="library/actionhandler.tpl"}>{$i.duration}</td>
|
<td {include file="library/actionhandler.tpl"}>{assign var="_duration" value=$i.duration}{niceTime in=$_duration}</td>
|
||||||
<td {include file="library/actionhandler.tpl"} style="border: 0"><img src="img/{$i.type|lower}.gif" border="0" alt="{$i.type|lower|capitalize}" /></td>
|
<td {include file="library/actionhandler.tpl"} style="border: 0"><img src="img/{$i.type|lower}.gif" border="0" alt="{$i.type|lower|capitalize}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- end item -->
|
<!-- end item -->
|
||||||
|
|
|
@ -21,6 +21,74 @@
|
||||||
</center>
|
</center>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
{literal}
|
||||||
|
function SCHEDULE_submit()
|
||||||
|
{
|
||||||
|
document.forms["schedule"].elements["playlist"].value = SCHEDULE_selectedGunid();
|
||||||
|
document.forms["schedule"].submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
function SCHEDULE_snap2Hour()
|
||||||
|
{
|
||||||
|
{/literal}
|
||||||
|
document.forms["schedule"].elements["time[H]"].value = {$SCHEDULER->scheduleAt.hour};
|
||||||
|
document.forms["schedule"].elements["time[i]"].value = 0;
|
||||||
|
document.forms["schedule"].elements["time[s]"].value = 0;
|
||||||
|
{literal}
|
||||||
|
}
|
||||||
|
|
||||||
|
function SCHEDULE_snap2Prev()
|
||||||
|
{
|
||||||
|
{/literal}
|
||||||
|
document.forms["schedule"].elements["time[H]"].value = {$SCHEDULER->schedulePrev.hour};
|
||||||
|
document.forms["schedule"].elements["time[i]"].value = {$SCHEDULER->schedulePrev.minute};
|
||||||
|
document.forms["schedule"].elements["time[s]"].value = {$SCHEDULER->schedulePrev.second};
|
||||||
|
{literal}
|
||||||
|
}
|
||||||
|
|
||||||
|
function SCHEDULE_snap2Next()
|
||||||
|
{
|
||||||
|
{/literal}
|
||||||
|
var beginD = new Date();
|
||||||
|
var colon = ":";
|
||||||
|
var duration = SCHEDULE_selectedDuration();
|
||||||
|
var nextD = new Date("january 01, 1970 {$SCHEDULER->scheduleNext.hour}:{$SCHEDULER->scheduleNext.minute}:{$SCHEDULER->scheduleNext.second}");
|
||||||
|
var durationD = new Date("january 01, 1970 " + SCHEDULE_selectedDuration());
|
||||||
|
//alert(durationD.getTime());
|
||||||
|
beginD.setTime(nextD.getTime() - durationD.getTime() - 3600000);
|
||||||
|
|
||||||
|
//alert(nextD.toLocaleString());
|
||||||
|
//alert(durationD.toLocaleString());
|
||||||
|
//alert (beginD.toLocaleString());
|
||||||
|
|
||||||
|
document.forms["schedule"].elements["time[H]"].value = beginD.getHours();
|
||||||
|
document.forms["schedule"].elements["time[i]"].value = beginD.getMinutes();
|
||||||
|
document.forms["schedule"].elements["time[s]"].value = beginD.getSeconds();
|
||||||
|
{literal}
|
||||||
|
}
|
||||||
|
|
||||||
|
function SCHEDULE_selectedDuration()
|
||||||
|
{
|
||||||
|
var arr = document.forms["schedule"].elements["gunid_duration"].value.split("|");
|
||||||
|
return arr[1].slice(0, 8);
|
||||||
|
}
|
||||||
|
|
||||||
|
function SCHEDULE_selectedGunid()
|
||||||
|
{
|
||||||
|
var arr = document.forms["schedule"].elements["gunid_duration"].value.split("|");
|
||||||
|
return arr[0];
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
date1 = new Date("january 01, 1970 00:00:10");
|
||||||
|
date2 = new Date("january 01, 1970 00:00:33");
|
||||||
|
date3 = new Date();
|
||||||
|
date3.setTime(date1.getTime() + date2.getTime());
|
||||||
|
alert(date3.getSeconds());
|
||||||
|
*/
|
||||||
|
{/literal}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
1
livesupport/modules/htmlUI/var/templates/scheduler/context_week.tpl
Executable file
1
livesupport/modules/htmlUI/var/templates/scheduler/context_week.tpl
Executable file
|
@ -0,0 +1 @@
|
||||||
|
onClick="return contextmenu('year={$_day.year}&month={$_day.month}&day={$_day.day}&hour={$_hour}&minute=0&second=0', 'SCHEDULER.addItem')"
|
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
{if is_array($_entrys[$_hour])}
|
{if is_array($_entrys[$_hour])}
|
||||||
<tr class="blue1">
|
<tr class="blue1">
|
||||||
<td style="border-left: 1px solid #ccc;" onClick="return contextmenu('hour={$_hour}', 'SCHEDULER.addItem')">{$_hour|string_format:"%02d"}:00</td>
|
<td style="border-left: 1px solid #ccc;" onClick="return contextmenu('year={$SCHEDULER->curr.year}&month={$SCHEDULER->curr.month}&day={$SCHEDULER->curr.day}&hour={$_hour}&minute=0&second=0', 'SCHEDULER.addItem')">{$_hour|string_format:"%02d"}:00</td>
|
||||||
<td style="border-right: 1px solid #ccc;">
|
<td style="border-right: 1px solid #ccc;">
|
||||||
|
|
||||||
{foreach from=$_entrys[$_hour] item="i"} {* hier werden die Einträge welche in der jeweil. h beginnen durchlaufen *}
|
{foreach from=$_entrys[$_hour] item="i"} {* hier werden die Einträge welche in der jeweil. h beginnen durchlaufen *}
|
||||||
|
@ -42,12 +42,13 @@
|
||||||
{$i.start}-{$i.end}
|
{$i.start}-{$i.end}
|
||||||
{$i.creator}
|
{$i.creator}
|
||||||
</div>
|
</div>
|
||||||
|
<div style="background-color: #FF6F1F; height: 3px" onClick="return contextmenu('year={$SCHEDULER->curr.year}&month={$SCHEDULER->curr.month}&day={$SCHEDULER->curr.day}&hour={getHour time=$i.end}&minute={getMinute time=$i.end}&second={getSecond time=$i.end plus=1}', 'SCHEDULER.addItem')"></div>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{else}
|
{else}
|
||||||
<tr class="blue2" onClick="return contextmenu('year={$_day.year}&month={$_day.month}&day={$_day.day}&hour={$_hour}', 'SCHEDULER.addItem')">
|
<tr class="blue2" onClick="return contextmenu('year={$SCHEDULER->curr.year}&month={$SCHEDULER->curr.month}&day={$SCHEDULER->curr.day}&hour={$_hour}&minute=0&second=0', 'SCHEDULER.addItem')">
|
||||||
<td style="border-left: 1px solid #ccc;">{$_hour|string_format:"%02d"}:00</td>
|
<td style="border-left: 1px solid #ccc;">{$_hour|string_format:"%02d"}:00</td>
|
||||||
<td style="border-right: 1px solid #ccc;"></td>
|
<td style="border-right: 1px solid #ccc;"></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -54,7 +54,7 @@
|
||||||
<p>{$i.start|truncate:5:""} - {$i.end|truncate:5:""}</p>
|
<p>{$i.start|truncate:5:""} - {$i.end|truncate:5:""}</p>
|
||||||
<p>{$i.creator}</p>
|
<p>{$i.creator}</p>
|
||||||
</div>
|
</div>
|
||||||
<div style="background-color: #FF6F1F; height: 3px" onClick="return contextmenu('year={$_day.year}&month={$_day.month}&day={$_day.day}&hour={getHour time=$i.end}&minute={getMinute time=$i.end}&second={getSecond time=$i.end}', 'SCHEDULER.addNextItem')" ></div>
|
<div style="background-color: #FF6F1F; height: 3px" onClick="return contextmenu('year={$_day.year}&month={$_day.month}&day={$_day.day}&hour={getHour time=$i.end}&minute={getMinute time=$i.end}&second={getSecond time=$i.end}', 'SCHEDULER.addItem')"></div>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
</td>
|
</td>
|
||||||
{else}
|
{else}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
onClick="hidealttextnow(); return contextmenu('{$i.id}'
|
onClick="hidealttextnow(); return contextmenu('{$i.id}'
|
||||||
, 'SP.removeItem'
|
, 'SP.removeItem'
|
||||||
|
|
||||||
{if $i.type === 'audioclip'}
|
{if $i.type == 'audioclip'}
|
||||||
, 'listen', '{$i.gunid}'
|
, 'listen', '{$i.gunid}'
|
||||||
{if $_PL_activeId}
|
{if $_PL_activeId}
|
||||||
, 'PL.addItem'
|
, 'PL.addItem'
|
||||||
|
@ -12,7 +12,7 @@ onClick="hidealttextnow(); return contextmenu('{$i.id}'
|
||||||
, 'edit', 'delete'
|
, 'edit', 'delete'
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
{if $i.type === 'webstream'}
|
{if $i.type == 'webstream'}
|
||||||
{if $_PL_activeId}
|
{if $_PL_activeId}
|
||||||
, 'PL.addItem'
|
, 'PL.addItem'
|
||||||
{else}
|
{else}
|
||||||
|
@ -21,14 +21,14 @@ onClick="hidealttextnow(); return contextmenu('{$i.id}'
|
||||||
, 'edit', 'delete'
|
, 'edit', 'delete'
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
{if $i.type === 'playlist'}
|
{if $i.type == 'playlist'}
|
||||||
{if $_PL_activeId}
|
{if $_PL_activeId}
|
||||||
{if $_PL_activeId === $i.id}
|
{if $_PL_activeId == $i.id}
|
||||||
, 'PL.release'
|
, 'PL.release'
|
||||||
{elseif $PL->isAvailable($i.id) === TRUE}
|
{elseif $PL->isAvailable($i.id) == TRUE}
|
||||||
, 'PL.addItem', 'delete'
|
, 'PL.addItem', 'delete'
|
||||||
{/if}
|
{/if}
|
||||||
{elseif $PL->isAvailable($i.id) === TRUE}
|
{elseif $PL->isAvailable($i.id) == TRUE}
|
||||||
, 'PL.activate', 'PL.create', 'delete'
|
, 'PL.activate', 'PL.create', 'delete'
|
||||||
{/if}
|
{/if}
|
||||||
{/if}
|
{/if}
|
||||||
|
|
|
@ -24,13 +24,13 @@
|
||||||
<tr class="{cycle values='blue1, blue2'}">
|
<tr class="{cycle values='blue1, blue2'}">
|
||||||
<td><input type="checkbox" class="checkbox" name="{$i.id}"/></td>
|
<td><input type="checkbox" class="checkbox" name="{$i.id}"/></td>
|
||||||
<td {include file="scratchpad/actionhandler.tpl"}>
|
<td {include file="scratchpad/actionhandler.tpl"}>
|
||||||
{if $i.type === "playlist"}
|
{if $i.type == "playlist"}
|
||||||
{if $PL->isAvailable($i.id) === FALSE}
|
{if $PL->isAvailable($i.id) == FALSE}
|
||||||
<div style="text-decoration : line-through">
|
<div style="text-decoration : line-through">
|
||||||
{else}
|
{else}
|
||||||
<div>
|
<div>
|
||||||
{/if}
|
{/if}
|
||||||
{if $_PL_activeId === $i.id}
|
{if $_PL_activeId == $i.id}
|
||||||
<div style="font-weight : bold">
|
<div style="font-weight : bold">
|
||||||
{else}
|
{else}
|
||||||
<div>
|
<div>
|
||||||
|
@ -39,9 +39,9 @@
|
||||||
</div></div>
|
</div></div>
|
||||||
{else}
|
{else}
|
||||||
{$i.title|truncate:12}
|
{$i.title|truncate:12}
|
||||||
{/if}
|
{/if} {* on some reason object call doesn´t like usage of array *}
|
||||||
</td>
|
</td> {assign var="_duration" value=$i.duration}
|
||||||
<td {include file="scratchpad/actionhandler.tpl"}>{$i.duration}</td>
|
<td {include file="scratchpad/actionhandler.tpl"}>{niceTime in=$_duration}</td>
|
||||||
<td {include file="scratchpad/actionhandler.tpl"} style="border: 0"><img src="img/{$i.type}.gif" border="0" alt="{$i.type|capitalize}" /></td>
|
<td {include file="scratchpad/actionhandler.tpl"} style="border: 0"><img src="img/{$i.type}.gif" border="0" alt="{$i.type|capitalize}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- end item -->
|
<!-- end item -->
|
||||||
|
|
|
@ -97,10 +97,6 @@
|
||||||
contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"hpopup('{$UI_HANDLER}?act=SCHEDULER.setScheduleTime&"+param+"'); popup('{$UI_BROWSER}?popup[]=SCHEDULER.addItem', 'Schedule', 420, 200)\"')"+oF+"> ##Insert Playlist here## </a></li>";
|
contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"hpopup('{$UI_HANDLER}?act=SCHEDULER.setScheduleTime&"+param+"'); popup('{$UI_BROWSER}?popup[]=SCHEDULER.addItem', 'Schedule', 420, 200)\"')"+oF+"> ##Insert Playlist here## </a></li>";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "SCHEDULER.addNextItem":
|
|
||||||
contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"hpopup('{$UI_HANDLER}?act=SCHEDULER.setScheduleTime&"+param+"'); popup('{$UI_BROWSER}?popup[]=SCHEDULER.addItem', 'Schedule', 420, 200)\"')"+oF+"> ##Insert Playlist after previous## </a></li>";
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "SCHEDULER.removeItem":
|
case "SCHEDULER.removeItem":
|
||||||
contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"popup('{$UI_BROWSER}?popup[]=SCHEDULER.removeItem&"+param+"', 'Schedule', 400, 50)\"')"+oF+"> ##Remove Playlist## </a></li>";
|
contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"popup('{$UI_BROWSER}?popup[]=SCHEDULER.removeItem&"+param+"', 'Schedule', 400, 50)\"')"+oF+"> ##Remove Playlist## </a></li>";
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -331,7 +331,7 @@ class uiBase
|
||||||
'gunid' => $this->gb->_gunidFromId($id),
|
'gunid' => $this->gb->_gunidFromId($id),
|
||||||
'title' => $this->_getMDataValue($id, UI_MDATA_KEY_TITLE),
|
'title' => $this->_getMDataValue($id, UI_MDATA_KEY_TITLE),
|
||||||
'creator' => $this->_getMDataValue($id, UI_MDATA_KEY_CREATOR),
|
'creator' => $this->_getMDataValue($id, UI_MDATA_KEY_CREATOR),
|
||||||
'duration' => $this->_niceTime($this->_getMDataValue($id, UI_MDATA_KEY_DURATION)),
|
'duration' => $this->_getMDataValue($id, UI_MDATA_KEY_DURATION),
|
||||||
'type' => $type,
|
'type' => $type,
|
||||||
#'isAvailable' => $type == 'playlist' ? $this->gb->playlistIsAvailable($id, $this->sessid) : NULL,
|
#'isAvailable' => $type == 'playlist' ? $this->gb->playlistIsAvailable($id, $this->sessid) : NULL,
|
||||||
);
|
);
|
||||||
|
@ -339,26 +339,6 @@ class uiBase
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function _niceTime($in, $all=FALSE)
|
|
||||||
{
|
|
||||||
if(is_array($in)) $in = current($in);
|
|
||||||
|
|
||||||
if (strpos($in, '.')) list ($in, $lost) = explode('.', $in);
|
|
||||||
$in = str_replace(' ', '', $in);
|
|
||||||
|
|
||||||
if (preg_match('/^[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}$/', $in)) list($h, $i, $s) = explode(':', $in);
|
|
||||||
elseif (preg_match('/^[0-9]{1,2}:[0-9]{1,2}$/', $in)) list($i, $s) = explode(':', $in);
|
|
||||||
else $s = $in;
|
|
||||||
|
|
||||||
if ($all || $h > 0) $H = sprintf('%02d', $h).':';
|
|
||||||
else $H = ' ';
|
|
||||||
$I = sprintf('%02d', $i).':';
|
|
||||||
$S = sprintf('%02d', $s);
|
|
||||||
|
|
||||||
return $H.$I.$S;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function _getMDataValue($id, $key, $langid=UI_DEFAULT_LANGID)
|
function _getMDataValue($id, $key, $langid=UI_DEFAULT_LANGID)
|
||||||
{
|
{
|
||||||
if (is_array($arr = $this->gb->getMDataValue($id, $key, $this->sessid, $langid))) {
|
if (is_array($arr = $this->gb->getMDataValue($id, $key, $this->sessid, $langid))) {
|
||||||
|
|
|
@ -205,8 +205,9 @@ class uiBrowser extends uiBase {
|
||||||
'act' => 'editWebstream',
|
'act' => 'editWebstream',
|
||||||
'title' => $id ? $this->_getMDataValue($id, UI_MDATA_KEY_TITLE) : NULL,
|
'title' => $id ? $this->_getMDataValue($id, UI_MDATA_KEY_TITLE) : NULL,
|
||||||
'url' => $id ? $this->_getMDataValue($id, UI_MDATA_KEY_URL) : 'http://',
|
'url' => $id ? $this->_getMDataValue($id, UI_MDATA_KEY_URL) : 'http://',
|
||||||
'length' => $id ? $this->_niceTime($this->_getMDataValue($id, UI_MDATA_KEY_DURATION), TRUE) : NULL
|
'length' => $id ? preg_replace("/\.[0-9]{1,6}/", "", $this->_getMDataValue($id, UI_MDATA_KEY_DURATION)) : NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
$form->setConstants($const);
|
$form->setConstants($const);
|
||||||
$this->_parseArr2Form($form, $mask);
|
$this->_parseArr2Form($form, $mask);
|
||||||
$renderer =& new HTML_QuickForm_Renderer_Array(true, true);
|
$renderer =& new HTML_QuickForm_Renderer_Array(true, true);
|
||||||
|
|
|
@ -3,19 +3,21 @@ class uiScheduler extends uiCalendar
|
||||||
{
|
{
|
||||||
function uiScheduler(&$uiBase)
|
function uiScheduler(&$uiBase)
|
||||||
{
|
{
|
||||||
$this->curr =& $_SESSION[UI_CALENDAR_SESSNAME]['current'];
|
$this->curr =& $_SESSION[UI_CALENDAR_SESSNAME]['current'];
|
||||||
$this->scheduleAt =& $_SESSION[UI_CALENDAR_SESSNAME]['schedule'];
|
$this->scheduleAt =& $_SESSION[UI_CALENDAR_SESSNAME]['scheduleAt'];
|
||||||
|
$this->schedulePrev =& $_SESSION[UI_CALENDAR_SESSNAME]['schedulePrev'];
|
||||||
|
$this->scheduleNext =& $_SESSION[UI_CALENDAR_SESSNAME]['scheduleNext'];
|
||||||
|
|
||||||
if (!is_array($this->curr)) {
|
if (!is_array($this->curr)) {
|
||||||
$this->curr['view'] = 'month';
|
$this->curr['view'] = 'month';
|
||||||
$this->curr['year'] = strftime("%Y");
|
$this->curr['year'] = strftime("%Y");
|
||||||
$this->curr['month'] = strftime("%m");
|
$this->curr['month'] = strftime("%m");
|
||||||
$this->curr['week'] = strftime("%V");
|
$this->curr['week'] = strftime("%V");
|
||||||
$this->curr['day'] = strftime("%d");
|
$this->curr['day'] = strftime("%d");
|
||||||
$this->curr['hour'] = strftime("%H");
|
$this->curr['hour'] = strftime("%H");
|
||||||
$this->curr['dayname'] = strftime("%A");
|
$this->curr['dayname'] = strftime("%A");
|
||||||
$this->curr['monthname']= strftime("%B");
|
$this->curr['monthname'] = strftime("%B");
|
||||||
$this->curr['isToday'] = TRUE;
|
$this->curr['isToday'] = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->Base =& $uiBase;
|
$this->Base =& $uiBase;
|
||||||
|
@ -69,13 +71,13 @@ class uiScheduler extends uiCalendar
|
||||||
if ($today)
|
if ($today)
|
||||||
$stampTarget = time();
|
$stampTarget = time();
|
||||||
|
|
||||||
$this->curr['year'] = strftime("%Y", $stampTarget);
|
$this->curr['year'] = strftime("%Y", $stampTarget);
|
||||||
$this->curr['month'] = strftime("%m", $stampTarget);
|
$this->curr['month'] = strftime("%m", $stampTarget);
|
||||||
$this->curr['week'] = strftime("%V", $stampTarget);
|
$this->curr['week'] = strftime("%V", $stampTarget);
|
||||||
$this->curr['day'] = strftime("%d", $stampTarget);
|
$this->curr['day'] = strftime("%d", $stampTarget);
|
||||||
$this->curr['hour'] = strftime("%H", $stampTarget);
|
$this->curr['hour'] = strftime("%H", $stampTarget);
|
||||||
$this->curr['dayname'] = strftime("%A", $stampTarget);
|
$this->curr['dayname'] = strftime("%A", $stampTarget);
|
||||||
$this->curr['monthname']= strftime("%B", $stampTarget);
|
$this->curr['monthname'] = strftime("%B", $stampTarget);
|
||||||
|
|
||||||
if ($this->curr['year'] === strftime("%Y") && $this->curr['month'] === strftime("%m") && $this->curr['day'] === strftime("%d"))
|
if ($this->curr['year'] === strftime("%Y") && $this->curr['month'] === strftime("%m") && $this->curr['day'] === strftime("%d"))
|
||||||
$this->curr['isToday'] = TRUE;
|
$this->curr['isToday'] = TRUE;
|
||||||
|
@ -85,7 +87,7 @@ class uiScheduler extends uiCalendar
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function setscheduleAt($arr)
|
function setScheduleAt($arr)
|
||||||
{
|
{
|
||||||
extract($arr);
|
extract($arr);
|
||||||
#print_r($arr);
|
#print_r($arr);
|
||||||
|
@ -96,6 +98,27 @@ class uiScheduler extends uiCalendar
|
||||||
if (is_numeric($hour)) $this->scheduleAt['hour'] = sprintf('%02d', $hour);
|
if (is_numeric($hour)) $this->scheduleAt['hour'] = sprintf('%02d', $hour);
|
||||||
if (is_numeric($minute)) $this->scheduleAt['minute'] = sprintf('%02d', $minute);
|
if (is_numeric($minute)) $this->scheduleAt['minute'] = sprintf('%02d', $minute);
|
||||||
if (is_numeric($second)) $this->scheduleAt['second'] = sprintf('%02d', $second);
|
if (is_numeric($second)) $this->scheduleAt['second'] = sprintf('%02d', $second);
|
||||||
|
|
||||||
|
$week = $this->getWeekEntrys();
|
||||||
|
## search for next entry
|
||||||
|
foreach ($week[$this->scheduleAt['day']] as $entry) {
|
||||||
|
if (strtotime($entry[0]['start']) >= strtotime($this->scheduleAt['hour'].':'.$this->scheduleAt['minute'].':'.$this->scheduleAt['second'])) {
|
||||||
|
list($this->scheduleNext['hour'], $this->scheduleNext['minute'], $this->scheduleNext['second']) = explode(':', strftime('%H:%M:%S', strtotime($entry[0]['start'])-1));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
reset ($week);
|
||||||
|
## search for previous entry
|
||||||
|
foreach (array_reverse($week[$this->scheduleAt['day']]) as $entry) {
|
||||||
|
if (strtotime($entry[0]['end']) <= strtotime($this->scheduleAt['hour'].':'.$this->scheduleAt['minute'].':'.$this->scheduleAt['second'])) {
|
||||||
|
list($this->schedulePrev['hour'], $this->schedulePrev['minute'], $this->schedulePrev['second']) = explode(':', strftime('%H:%M:%S', strtotime($entry[0]['end'])+1));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#print_r($this->schedulePrev);
|
||||||
|
#print_r($this->scheduleNext);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function getWeekEntrys()
|
function getWeekEntrys()
|
||||||
|
@ -265,22 +288,26 @@ class uiScheduler extends uiCalendar
|
||||||
function getScheduleForm()
|
function getScheduleForm()
|
||||||
{
|
{
|
||||||
global $ui_fmask;
|
global $ui_fmask;
|
||||||
|
#print_r($this->availablePlaylists);
|
||||||
|
foreach ($this->availablePlaylists as $val) {
|
||||||
|
$ui_fmask['schedule']['gunid_duration']['options'][$val['gunid'].'|'.$val['duration']] = $val['title'];
|
||||||
|
}
|
||||||
|
#print_r($ui_fmask['schedule']);
|
||||||
|
|
||||||
foreach ($this->availablePlaylists as $val)
|
|
||||||
$ui_fmask['schedule']['playlist']['options'][$val['gunid']] = $val['title'];
|
|
||||||
#print_r($ui_fmask);
|
|
||||||
$form = new HTML_QuickForm('schedule', UI_STANDARD_FORM_METHOD, UI_HANDLER);
|
$form = new HTML_QuickForm('schedule', UI_STANDARD_FORM_METHOD, UI_HANDLER);
|
||||||
$this->Base->_parseArr2Form($form, $ui_fmask['schedule']);
|
$this->Base->_parseArr2Form($form, $ui_fmask['schedule']);
|
||||||
$settime = array('H' => $this->scheduleAt['hour'],
|
$settime = array('H' => $this->scheduleAt['hour'],
|
||||||
'i' => $this->scheduleAt['minute'],
|
'i' => $this->scheduleAt['minute'],
|
||||||
's' => $this->scheduleAt['second']
|
's' => $this->scheduleAt['second']
|
||||||
);
|
);
|
||||||
$setdate = array('Y' => $this->scheduleAt['year'],
|
$setdate = array('Y' => $this->scheduleAt['year'],
|
||||||
'm' => $this->scheduleAt['month'],
|
'm' => $this->scheduleAt['month'],
|
||||||
'd' => $this->scheduleAt['day']);
|
'd' => $this->scheduleAt['day']
|
||||||
$form->setDefaults(array('time' => $settime,
|
);
|
||||||
'date' => $setdate,
|
$form->setDefaults(array('time' => $settime,
|
||||||
'playlist' => $setplaylist));
|
'date' => $setdate,
|
||||||
|
));
|
||||||
|
|
||||||
$renderer =& new HTML_QuickForm_Renderer_Array(true, true);
|
$renderer =& new HTML_QuickForm_Renderer_Array(true, true);
|
||||||
$form->accept($renderer);
|
$form->accept($renderer);
|
||||||
$output = $renderer->toArray();
|
$output = $renderer->toArray();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue