From b20fc8a60f13d34a99fd4c3f6f9c673505796f1f Mon Sep 17 00:00:00 2001 From: "M. Voerman" Date: Sat, 17 May 2014 16:18:21 +0200 Subject: Favorite editing (in memory only for now) --- History | 6 ++-- channels_convert.sh | 2 +- index.html | 86 ++++++++++++++++++++++++++++++++++++++++++----------- lang_dut.js | 3 ++ lang_eng.js | 3 ++ settings.js | 4 +-- 6 files changed, 80 insertions(+), 24 deletions(-) diff --git a/History b/History index 113663f..56c43c6 100644 --- a/History +++ b/History @@ -13,10 +13,10 @@ VDR 1.7.29 / 2.1.1 Subs prio can be set eq TV5 sends multiple subs. default "DUT, ENG" Subtitle language can dynamic be chosen from settings menu ( <1> ) if there is no subtitle present it resets to default. Added Group 10 (channels >10000) for favorite - key @ switch to favorite list - key >@ add to favorite list + New key from old KPN remote added key @ switch to favorite list + New key from old KPN remote added key >@ add to favorite list split the info menu into box info (menu yellow) & info about settings (menu 1 - yellow) - + Updated channels script, now adds timestamp to list which is shown in info menu. 0.23 Infobox for connection Error, not only ERRR on display but also the Infobox diff --git a/channels_convert.sh b/channels_convert.sh index fe7f108..28a413f 100755 --- a/channels_convert.sh +++ b/channels_convert.sh @@ -1,7 +1,7 @@ #! /bin/bash # # Script by rekordc@gmail.com -# 0.33 04/05/2014 +# 0.34 17/05/2014 # svdrpsend.pl lstc > channels.list diff --git a/index.html b/index.html index 9b2c396..729f67d 100644 --- a/index.html +++ b/index.html @@ -1076,8 +1076,7 @@ function onKeyDown(event) { GotoFav(); } else if(isFullscreen && ChanGroup == Fav_group) { //We're in favorite channels mode ;) - //Show a list of them - ShowFavList(); + //Show a list of them -> menu edit favorites } break; case KEY_D:// >@ key on old long kpn 1710/1760 remote @@ -1258,15 +1257,6 @@ function AddtoFav() { settimer(0,channels[currChan],Fav_max_channel ,2); } -function ShowFavList() { -//Showlist, move item up/down, remove item -// item1 = item, item2 = item - 1, item3 = item + 1 -// up item - 1 = item1, item = item2 && item > 1 (first item can't be moved up) -// down item + 1 = item, item = item3, if item+1 >last item --> fav_max +1 -// -} - - function Makedigit() { prevChan = currChan; Change = (Change*10) + digit; @@ -2229,7 +2219,7 @@ function onKeyMenu(keyCode) { timerID -= 1; var x = toi.schedulerService.getBookingIds("*", 0, 0); if (timerID < x[0]) { timerID = x[0]; } - } else if (menu == 5 || menu == 7) { + } else if (menu == 5 || menu == 7 || menu == 10) { timerID -= 1; if (timerID < 0) { timerID = 0; } } @@ -2240,7 +2230,7 @@ function onKeyMenu(keyCode) { timerID += 1; var x = toi.schedulerService.getBookingIds("*", 0, 0); if (timerID > x[x.length-1] ) { timerID = x[x.length-1]; } - } else if (menu == 5 || menu == 7) { + } else if (menu == 5 || menu == 7 || menu == 10) { timerID += 1; if (timerID > (maxTimers - 1) ) { timerID = maxTimers - 1; } } @@ -2300,6 +2290,9 @@ function onKeyMenu(keyCode) { mainmenu.innerHTML = "

" + Lang[7] + "

\n\n\n
" + Lang[0] + "
"; DeleteTimers(); setTimeout("LoadTimersServer();InitMenu(menu);",100); + } else if (menu == 10) { + channels[(timerID + Fav_base + 1)]="";channelsnames[(timerID + Fav_base + 1)]=""; + setTimeout("InitMenu(menu);",100); } break; case "Green": @@ -2314,6 +2307,21 @@ function onKeyMenu(keyCode) { } else if (menu == 5) { activate_timers(timerID); InitMenu(menu); + } else if (menu == 10) { + //move up + if (timerID !== 0) { + x = timerID + Fav_base + 1; + x1 = channels[x]; + y1 = channelsnames[x]; + x2 = channels[(x - 1)]; + y2 = channelsnames[(x - 1)]; + channels[x] = x2; + channelsnames[x] = y2; + channels[(x - 1)] = x1; + channelsnames[(x - 1)] = y1; + timerID -= 1; + setTimeout("InitMenu(menu);",100); + } } break; case "Yellow": @@ -2323,8 +2331,22 @@ function onKeyMenu(keyCode) { } else if (menu == 1) { menu = 9; // INFO2 menu InitMenu(menu); + } else if (menu == 10) { + //move down + if (timerID !== (maxTimers - 1)) { + x = timerID + Fav_base + 1; + x1 = channels[x]; + y1 = channelsnames[x]; + x2 = channels[(x + 1)]; + y2 = channelsnames[(x + 1)]; + channels[x] = x2; + channelsnames[x] = y2; + channels[(x + 1)] = x1; + channelsnames[(x + 1)] = y1; + timerID += 1; + setTimeout("InitMenu(menu);",100); + } } - break; case "Blue": if (menu == 0) { @@ -2559,15 +2581,19 @@ function onKeyMenu(keyCode) { InitMenu(menu); break; case KEY_0: - if (menu !== MainMenu) { + if (menu !== MainMenu && menu !== 8 ) { if (menu == 3 ) { isFullscreen = 0; play(channels[currChan]); isFullscreen = 1; MPDListener = 0;} menu = MainMenu; InitMenu(menu); - } - if (menu == 8) { + } else if (menu == 8) { SetGroup(0); InitMenu(menu); - } + } else if (menu == 0) { + timerID = 0; maxTimers = Fav_max_channel; + menu = 10; + InitMenu(menu); + } + break; case "VolumeMute": VolumeMute(); @@ -2596,6 +2622,8 @@ function InitMenu(menu) { // 6 = Main Menu (when watching recording) // 7 = SearchTimers from Server // 8 = ChannelGroups enable/disable +// 9 = INFO2 menu +// 10 = Favorite Edit menu osdepginfo.style.opacity = 0; @@ -2765,6 +2793,28 @@ if(menu == 9) { // INFO2 Menu } +if(menu == 10) { // Favorite edit Menu + var htmltext = "

" + Lang[83] + htmltext += "

\n"
+	htmltext += "";
+	var x = timerID;
+	for (var i=0;i<10;i++) {
+//		alert ((x + Fav_base));
+//		alert (channelsnames[(x + Fav_base)]);
+
+		if (maxTimers !== 0) { do { x += 1; } while (!channelsnames[(x + Fav_base)] && (x < maxTimers)) }
+		if (maxTimers >= x) { htmltext += " \u0003\u0003\u0003 " + channelsnames[(x + Fav_base)] + " \u0003\u0003\u0003 \n"; } else { htmltext += "\n"; }
+		if (i == 0) { htmltext += ""; } 
+	}
+	htmltext += "\n   \u25CF -" + Lang[48]; 
+	htmltext += "\u25CF -"
+	if (timerID == 0) { htmltext += Lang[19] } else { htmltext += Lang[84] } //no move up
+	htmltext += "\u25CF -"
+	if (timerID == (maxTimers - 1)) { htmltext += Lang[19] } else { htmltext += Lang[85] } //no move down
+	htmltext += "\u25CF -" + Lang[19] + "
"; + mainmenu.innerHTML = htmltext; +} + } // end of initmenu function SetGroup(isgroup) { diff --git a/lang_dut.js b/lang_dut.js index dda0e23..3dc1207 100755 --- a/lang_dut.js +++ b/lang_dut.js @@ -110,6 +110,9 @@ Lang[70] = "Pause"; Lang[80] = "Toon KanaalGroep"; Lang[81] = "Groep "; Lang[82] = "Groep Selektie"; +Lang[83] = "Favorieten Lijst"; +Lang[84] = " schuif op "; +Lang[85] = " schuif neer "; Lang[90] = "Deze zender zit niet in je pakket"; diff --git a/lang_eng.js b/lang_eng.js index 2e13018..ba37666 100755 --- a/lang_eng.js +++ b/lang_eng.js @@ -109,5 +109,8 @@ Lang[70] = "Pause"; Lang[80] = "Show ChannelsGroup"; Lang[81] = "Group "; Lang[82] = "Group Selection"; +Lang[83] = "Favorite List"; +Lang[84] = " Move UP "; +Lang[85] = " Move Down "; Lang[90] = "No subscription for this channel"; diff --git a/settings.js b/settings.js index 312bb68..170700e 100644 --- a/settings.js +++ b/settings.js @@ -2,7 +2,7 @@ // Default settings // -var Version = "0.24.12"; +var Version = "0.24.13"; server_ip_array = new Array("http://192.168.1.15","http://192.168.3.15","http://192.168.3.100","http://192.168.178.19","http://192.168.1.21"); @@ -336,5 +336,5 @@ baseChn[Fav_group] = Fav_base; defChan[Fav_group] = Fav_base + 1; minChan[Fav_group] = Fav_base + 1; // -var Chan_Ver = "Not used yet"; +var Chan_Ver = "Not set"; -- cgit v1.2.3