summaryrefslogtreecommitdiff
path: root/smarttv-client/Javascript/Timers.js
diff options
context:
space:
mode:
Diffstat (limited to 'smarttv-client/Javascript/Timers.js')
-rw-r--r--smarttv-client/Javascript/Timers.js105
1 files changed, 94 insertions, 11 deletions
diff --git a/smarttv-client/Javascript/Timers.js b/smarttv-client/Javascript/Timers.js
index 29db55c..c00e9e7 100644
--- a/smarttv-client/Javascript/Timers.js
+++ b/smarttv-client/Javascript/Timers.js
@@ -1,8 +1,11 @@
var Timers = {
timerList : [],
scrollDur : 300,
- scrollFlip : 100
-
+ scrollFlip : 100,
+ btnMode : 0
+ // 0 nothing
+ // 1: delete
+ // 2:
};
Timers.init = function() {
@@ -86,7 +89,7 @@ Timers.readTimers = function () {
Main.log ("Timers: Got response");
$(data).find("timer").each(function () {
var title = $(this).find('file').text();
- var isSingleEvent = ($(data).find('issingleevent').text() == "true") ? true : false;
+ var isSingleEvent = ($(this).find('issingleevent').text() == "true") ? true : false;
var printday = $(this).find('printday').text();
var weekdays = parseInt($(this).find('weekdays').text());
@@ -119,12 +122,22 @@ Timers.createMenu= function () {
var p_width = $("body").outerWidth();
var p_height = $("body").outerHeight();
- var table = $("<div>", {id : "timerTable", style :"overflow-y: scroll;margin-top:3px;margin-bottom:3px;height:100%;"});
+ var table = $("<div>", {id : "timerTable", style :"overflow-y: scroll;margin-top:3px;margin-bottom:3px; padding-right:3px; height:100%;"});
$("#timerView").append(table);
$("#timerScreen").show();
+ var cur_date = 0;
for (var i = 0; i < Timers.timerList.length; i++) {
Main.log("Timers: " + Timers.timerList[i].title);
+
+ if (Timers.timerList[i].isSingleEvent == false) {
+ cur_date = 0;
+ table.append( $("<div>", { text : ((Timers.timerList[i].day != 0) ? (Timers.getPrintDate(Timers.timerList[i].day) + " - ") : "") +Timers.getWeekdays(Timers.timerList[i].weekdays), class : "style_menuItem style_headline", style : "text-align:left;overflow-x: hidden;white-space : nowrap;"}));
+
+ }else if (cur_date != Timers.timerList[i].day) {
+ cur_date = Timers.timerList[i].day;
+ table.append( $("<div>", { text : Timers.getPrintDate(Timers.timerList[i].day) , class : "style_menuItem style_headline", style : "text-align:left;overflow-x: hidden;white-space : nowrap;"}));
+ }
table.append(Timers.createEntry(i, $("#timerTable").width()));
}
@@ -134,17 +147,44 @@ Timers.createMenu= function () {
};
+Timers.getPrintDate = function (day) {
+ var d = new Date (day * 1000);
+ return d.getDate() + "." + (d.getMonth() +1) + "." + d.getFullYear();
+};
+
+Timers.getWeekdays = function (wd) {
+ var map = wd.toString(2);
+ var res = "";
+
+ res += ((map[0] == "1") ? "M" : "-");
+ res += ((map[1] == "1") ? "D" : "-");
+ res += ((map[2] == "1") ? "M" : "-");
+ res += ((map[3] == "1") ? "D" : "-");
+ res += ((map[4] == "1") ? "F" : "-");
+ res += ((map[5] == "1") ? "S" : "-");
+ res += ((map[6] == "1") ? "S" : "-");
+
+ return res;
+};
+
Timers.createEntry= function (i, w) {
Main.log("width= " +w);
+
var row = $("<div>", {id: "tmr-"+i, class : "style_menuItem", style : "text-align:left;overflow-x: hidden;white-space : nowrap;"}); //, style : "text-overflow: ellipsis;white-space : nowrap;"
// row.append($("<div>", {class : ((Timers.timerList[i].isrec ==true) ? "style_timerRec" : ""), style : "display: inline-block;"}));
- row.append($("<div>", {class : ((Timers.timerList[i].isrec ==true) ? "style_timerRec" : "style_timerNone"), style : "display: inline-block;"})); //
+
+
+ row.append($("<div>", {class : ((Timers.timerList[i].isrec ==true) ? "style_timerRec" : ((Timers.timerList[i].flags & 1) != 0) ? "style_timerAct" : "style_timerNone"), style : "display: inline-block;"}));
+
+ if ( Timers.timerList[i].isSingleEvent == true) {
+ }
+ else {
+ }
row.append($("<div>", {text : Timers.timerList[i].channelname, style : "padding-left:5px;width:12%; display: inline-block;", class : "style_overflow"}));
row.append($("<div>", {text : Timers.timerList[i].start, style : "padding-left:5px; width:9%; display: inline-block;", class : "style_overflow"}));
row.append($("<div>", {text : Timers.timerList[i].stop, style : "padding-left:5px; width:9%; display: inline-block;", class : "style_overflow"}));
row.append($("<div>", {text : Timers.timerList[i].title, style : "padding-left:5px; width:68%;display: inline-block;", class : "style_overflow"}));
-
return row;
};
@@ -165,14 +205,16 @@ Timers.resetView = function () {
};
-Timers.deleteTimer = function () {
+Timers.timerCallback = function () {
// delete the current timer
Main.log("****** Delete Timer: " + Timers.timerList[this.btnSelected].title);
- var del_req = new DeleteTimerReq (Timers.timerList[this.btnSelected].index);
-// var del_req = new DeleteTimerReq (10);
+// var del_req = new DeleteTimerReq (Timers.timerList[this.btnSelected].index);
+
+ var obj = new execRestCmd(RestCmds.CMD_DelTimer, Timers.timerList[this.btnSelected].index);
+ // var del_req = new DeleteTimerReq (10);
+};
-}
Timers.selectBtnUp = function () {
var btnname = "#tmr-"+this.btnSelected;
@@ -237,6 +279,46 @@ Timers.onInput = function () {
// Timers.hide();
break;
+ case tvKey.KEY_YELLOW:
+
+ Timers.timerCallback = function () {
+ // delete the current timer
+ Main.log("Timers.timerCallback: " + Timers.timerList[this.btnSelected].title);
+ var obj = new execRestCmd(RestCmds.CMD_DelTimer, Timers.timerList[this.btnSelected].index);
+ // var del_req = new DeleteTimerReq (10);
+ };
+
+ Buttons.ynShow();
+// Timers.hide();
+
+ break;
+ case tvKey.KEY_RED:
+ if ((Timers.timerList[this.btnSelected].flags & 1) != 0) {
+ // Timer is currently active
+ Buttons.ynHeadlineText ("Deactivate Timer ?");
+ Timers.timerCallback = function () {
+ Main.log("Timers.timerCallback Deactivate Timer: " + Timers.timerList[this.btnSelected].title);
+ var obj = new execRestCmd(RestCmds.CMD_ActTimer, Timers.timerList[this.btnSelected].index, {setActive : false});
+ };
+
+ }
+ else {
+ // Timer is currently deactive
+ Buttons.ynHeadlineText ("Activate Timer ?");
+ Timers.timerCallback = function () {
+ Main.log("Timers.timerCallback Activate Timer: " + Timers.timerList[this.btnSelected].title);
+ var obj = new execRestCmd(RestCmds.CMD_ActTimer, Timers.timerList[this.btnSelected].index, {setActive : true});
+ };
+ }
+
+ Buttons.ynShow();
+// Timers.hide();
+
+ break;
+ case tvKey.KEY_TOOLS:
+ Helpbar.showHelpbar();
+ break;
+
case tvKey.KEY_RETURN:
case tvKey.KEY_EXIT:
Timers.hide();
@@ -254,7 +336,7 @@ Timers.onInput = function () {
};
-
+/*
function DeleteTimerReq (idx) {
this.index = idx;
this.exec();
@@ -287,3 +369,4 @@ DeleteTimerReq.prototype.exec = function () {
});
};
+*/ \ No newline at end of file