2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
6 <title>Rec10 Simple Web Interface ver.0.9.0</title>
8 <script src="./dojo/dojo/dojo.js" djConfig="parseOnLoad:true">
11 <style type="text/css">
12 @import "./dojo/dojo/resources/dojo.css";
13 @import "./dojo/dijit/themes/tundra/tundra.css";
15 <script type="text/javascript">
16 dojo.require("dojo.parser");
17 // ※ ここで、使用するウィジェットの読み込みを行う
18 dojo.require("dijit.form.Button");
19 dojo.require("dijit.form.FilteringSelect");
20 dojo.require("dijit.form.ValidationTextBox");
21 dojo.require("dijit.form.NumberSpinner");
22 dojo.require("dijit.form.CheckBox");
23 dojo.require("dijit.form.Form");
24 //dojo.require("dojox.date");
25 function setType(value){
26 if (value=="reserve_flexible"){
27 //alert("Selected "+value);
28 dijit.byId("deltaday").setDisabled(true);
29 dijit.byId("deltahour").setDisabled(true);
31 }else if (value=="reserve_day"){
32 //alert("Selected "+value);
33 dijit.byId("deltaday").setDisabled(true);
34 dijit.byId("deltahour").setDisabled(false);
36 }else if (value=="search_today"){
37 dijit.byId("deltahour").setDisabled(false);
39 }else if (value=="search_everyday"){
40 //alert("Selected "+value);
41 dijit.byId("deltaday").setDisabled(false);
42 dijit.byId("deltahour").setDisabled(false);
44 }else if (value=="reserve_fixed"){
45 //alert("Selected "+value);
46 dijit.byId("deltaday").setDisabled(true);
47 dijit.byId("deltahour").setDisabled(true);
49 }else if (value=="convert_ts_mp4"){
50 dijit.byId("deltaday").setDisabled(true);
51 dijit.byId("deltahour").setDisabled(true);
56 function setDayopt(bool){
57 dijit.byId("day_Sun").setDisabled(!bool);
58 dijit.byId("day_Mon").setDisabled(!bool);
59 dijit.byId("day_Tue").setDisabled(!bool);
60 dijit.byId("day_Wed").setDisabled(!bool);
61 dijit.byId("day_Thu").setDisabled(!bool);
62 dijit.byId("day_Fri").setDisabled(!bool);
63 dijit.byId("day_Sat").setDisabled(!bool);
65 function changeSize(){
66 var str=dijit.byId("opts").value;
67 var s=dijit.byId("size").value;
68 str=str.replace("S","");
69 str=str.replace("H","");
70 str=str.replace("G","");
71 str=str.replace("F","");
72 str=str.replace("L","");
74 //alert("Selected "+str);
75 dijit.byId("opts").setValue(str);
78 function changeMove(){
79 var str=dijit.byId("opts").value;
80 var s=dijit.byId("move").value;
81 str=str.replace("R","");
82 str=str.replace("D","");
83 str=str.replace("E","");
84 s=s.replace("None","")
86 //alert("Selected "+str);
87 dijit.byId("opts").setValue(str);
89 function setOpts(obj){
91 var str=dijit.byId("opts").value;
94 var str=dijit.byId("opts").value;
95 str=str.replace(obj.value,"");
97 dijit.byId("opts").setValue(str);
99 function changeOpts(){
100 var str=dijit.byId("opts").value;
101 if (str.indexOf("a")>-1){
102 dijit.byId("anime").setChecked(true);
104 dijit.byId("anime").setChecked(false);
106 if (str.indexOf("2")>-1){
107 dijit.byId("2pass").setChecked(true);
109 dijit.byId("2pass").setChecked(false);
111 if (str.indexOf("d")>-1){
112 dijit.byId("dualaudio").setChecked(true);
114 dijit.byId("dualaudio").setChecked(false);
116 if (str.indexOf("5")>-1){
117 dijit.byId("pentaaudio").setChecked(true);
119 dijit.byId("pentaaudio").setChecked(false);
121 if (str.indexOf("S")>-1){
122 dijit.byId("size").setValue("S");
123 }else if (str.indexOf("H")>-1){
124 dijit.byId("size").setValue("H");
125 }else if (str.indexOf("G")>-1){
126 dijit.byId("size").setValue("G");
127 }else if (str.indexOf("F")>-1){
128 dijit.byId("size").setValue("F");
129 }else if (str.indexOf("L")>-1){
130 dijit.byId("size").setValue("L");
134 if (str.indexOf("R")>-1){
135 dijit.byId("move").setValue("R");
136 }else if (str.indexOf("D")>-1){
137 dijit.byId("move").setValue("D");
138 }else if (str.indexOf("E")>-1){
139 dijit.byId("move").setValue("E");
141 dijit.byId("move").setValue("None");
144 function setbtime_now(){
146 now.setMinutes(0,0,0);
149 function setetime_now(){
150 var ds=dijit.byId("btime").value;
156 now.setMinutes(0,0,0);
160 function txt2date(txt){
164 d.setYear(parseInt(ds.substring(0,4),10));
167 d.setMonth(parseInt(ds.substring(5,7),10)-1);
170 d.setDate(parseInt(ds.substring(8,10),10));
173 d.setHours(parseInt(ds.substring(11,13),10));
176 d.setMinutes(parseInt(ds.substring(14,16),10));
179 d.setSeconds(parseInt(ds.substring(17,19),10));
183 function add_btimemin(min){
184 var ds=dijit.byId("btime").value;
186 //window.alert(ds.toString()+":"+d.toString());
187 d.setTime(d.getTime()+min*60*1000);
190 function add_etimemin(min){
191 var ds=dijit.byId("etime").value;
193 d.setTime(d.getTime()+min*60*1000);
197 function setbtime(date){
199 //window.alert("setbtime");
200 nowtxt=String(date.getFullYear())+"-";
201 if (date.getMonth()+1<10){
204 nowtxt=nowtxt+String(date.getMonth()+1)+"-";
205 if (date.getDate()<10){
208 nowtxt=nowtxt+String(date.getDate())+" ";
209 if (date.getHours()<10){
212 nowtxt=nowtxt+String(date.getHours())+":";
213 if (date.getMinutes()<10){
216 nowtxt=nowtxt+String(date.getMinutes())+":00";
217 //console.debug("click");
218 //window.alert("test");
219 dijit.byId("btime").setValue(nowtxt);
221 function setetime(date){
223 //window.alert("test");
224 nowtxt=String(date.getFullYear())+"-";
225 if (date.getMonth()+1<10){
228 nowtxt=nowtxt+String(date.getMonth()+1)+"-";
229 if (date.getDate()<10){
232 nowtxt=nowtxt+String(date.getDate())+" ";
233 if (date.getHours()<10){
236 nowtxt=nowtxt+String(date.getHours())+":";
237 if (date.getMinutes()<10){
240 nowtxt=nowtxt+String(date.getMinutes())+":00";
241 //console.debug("click");
242 //window.alert("test");
243 dijit.byId("etime").setValue(nowtxt);
245 function title2opts(){
246 var str=dijit.byId("title").value;
247 var stropt=dijit.byId("opts").Value;
248 if (stropt==undefined){
251 //stropt=stropt.replace("undefined","");
253 if (str.indexOf("(2)")>-1){
254 //dijit.byId("2pass").setChecked(true);
256 dijit.byId("opts").setValue(str);
257 }else if(str.indexOf("(二)")>-1){
258 //dijit.byId("2pass").setChecked(true);
260 dijit.byId("opts").setValue(str);
261 }else if(str.indexOf("[二]")>-1){
262 //dijit.byId("2pass").setChecked(true);
264 dijit.byId("opts").setValue(str);
265 }else if(str.indexOf("(二)")>-1){
266 //dijit.byId("2pass").setChecked(true);
268 dijit.byId("opts").setValue(str);
269 }else if(str.indexOf("(二)")>-1){
270 //dijit.byId("2pass").setChecked(true);
272 dijit.byId("opts").setValue(str);
273 }else if(str.indexOf("5.1")>-1){
274 //dijit.byId("2pass").setChecked(true);
276 dijit.byId("opts").setValue(str);
277 }else if(str.indexOf("5.1")>-1){
278 //dijit.byId("2pass").setChecked(true);
280 dijit.byId("opts").setValue(str);
283 //dojo.addOnLoad(init);
292 dojo.addOnLoad(init);
296 <body class="tundra">
297 <div dojoType="dijit.form.Form" action="rec10web.py" onExecute="this.submit()">
298 <h1>Rec10 Simple Web Interface ver.0.9.0</h1><br>
299 Rec10WEB MENU <a href="./rec10web.py?exec=schedule">Schedule</a> <a href="./rec10web.py?exec=iepg-show">iEPG-Data</a><br><br><br>
301 dojoType="dijit.form.FilteringSelect"
303 value="<!--type-value//-->"
305 <option value="reserve_flexible">通常予約</option>
306 <option value="search_today">キーワード予約</option>
307 <option value="search_day">曜日予約</option>
308 <option value="search_everyday">隔日予約</option>
309 <option value="reserve_fixed">最終予約</option>
310 <option value="convert_ts_mp4">エンコード予約</option>
311 <option value="convert_b25_ts">復号化予約</option>
312 <option value="convert_avi_mp4">MP4化予約(AVI)</option>
313 <option value="convert_mkv_mp4">MP4化予約(MKV)</option>
314 <option value="convert_avi_mkv">MKV化予約(AVI)</option>
319 dojoType="dijit.form.TextBox"
320 value="<!--title-value//-->"
324 dojoType="dijit.form.FilteringSelect"
326 value="<!--ch-value//-->"
328 <!--text_for_replace_chtxt_input//-->
333 dojoType="dijit.form.ValidationTextBox"
334 promptmessage="年-月-日 時間:分:秒"
335 value="<!--btime-value//-->"
336 regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
338 <div dojoType="dijit.form.Button" onclick="setbtime_now()">現在</div>
339 <div dojoType="dijit.form.Button" onclick="add_btimemin(5)">+5m</div>
340 <div dojoType="dijit.form.Button" onclick="add_btimemin(30)">+30m</div>
341 <div dojoType="dijit.form.Button" onclick="add_btimemin(180)">+3h</div>
342 <div dojoType="dijit.form.Button" onclick="add_btimemin(720)">+12h</div>
346 dojoType="dijit.form.ValidationTextBox"
347 promptmessage="年-月-日 時間:分:秒"
348 value="<!--etime-value//-->"
349 regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
351 <div dojoType="dijit.form.Button" onclick="setetime_now()">一致</div>
352 <div dojoType="dijit.form.Button" onclick="setetime_now(1)">+1m</div>
353 <div dojoType="dijit.form.Button" onclick="add_etimemin(5)">+5m</div>
354 <div dojoType="dijit.form.Button" onclick="add_etimemin(30)">+30m</div>
355 <div dojoType="dijit.form.Button" onclick="add_etimemin(60)">+1h</div>
358 <input dojoType="dijit.form.NumberSpinner"
362 constraints="{min:0,max:24,places:0}"
367 <input dojoType="dijit.form.NumberSpinner"
371 constraints="{min:0,max:24,places:0}"
374 name="deltahour"><br><br>
376 <input type="checkbox"
377 dojoType="dijit.form.CheckBox"
378 id="day_Mon" name="day_Mon" value="1">月曜</input>
379 <input type="checkbox"
380 dojoType="dijit.form.CheckBox"
381 id="day_Tue" name="day_Tue" value="2">火曜</input>
382 <input type="checkbox"
383 dojoType="dijit.form.CheckBox"
384 id="day_Wed" name="day_Wed" value="3">水曜</input>
385 <input type="checkbox"
386 dojoType="dijit.form.CheckBox"
387 id="day_Thu" name="day_Thu" value="4">木曜</input>
388 <input type="checkbox"
389 dojoType="dijit.form.CheckBox"
390 id="day_Fri" name="day_Fri" value="5">金曜</input>
391 <input type="checkbox"
392 dojoType="dijit.form.CheckBox"
393 id="day_Sat" name="day_Sat" value="6">土曜</input>
394 <input type="checkbox"
395 dojoType="dijit.form.CheckBox"
396 id="day_Sun" name="day_Sun" value="7">日曜</input>
399 dojoType="dijit.form.FilteringSelect"
403 onChange="changeSize">
404 <option selected="selected" value="None">移動しない</option>
405 <option value="R">録画後移動</option>
406 <option value="D">復号後移動</option>
407 <option value="E">縁故後移動</option>
412 dojoType="dijit.form.FilteringSelect"
414 value="<!--size-value//-->"
416 onChange="changeSize">
417 <option selected="selected" value="S">SDサイズ(720x480 1250kbps)</option>
418 <option value="L">CS放送SDサイズ(リサイズ無し 1250kbps)</option>
419 <option value="G">低画質HDサイズ(1280x720 2500kbps)</option>
420 <option value="H">HDサイズ(1280x720 3750kbps)</option>
421 <option value="F">フルハイビジョン(1920x1080 5000kbps)</option>
423 <input type="checkbox"
424 dojoType="dijit.form.CheckBox"
425 id="anime" name="anime" value="a"
426 onClick="setOpts(this)">アニメ</input>
427 <input type="checkbox"
428 dojoType="dijit.form.CheckBox"
429 id="dualaudio" name="dualaudio" value="d"
430 onClick="setOpts(this)">二ヶ国語放送</input>
431 <input type="checkbox"
432 dojoType="dijit.form.CheckBox"
433 id="pentaaudio" name="pentaaudio" value="5"
434 onClick="setOpts(this)">5.1ch放送</input>
435 <input type="checkbox"
436 dojoType="dijit.form.CheckBox"
437 id="2pass" name="2pass" value="2"
438 onClick="setOpts(this)">2passモード</input>
442 dojoType="dijit.form.ValidationTextBox"
443 value="<!--opts-value//-->"
444 onChange="changeOpts"
446 </div><div dojoType="dijit.form.Button" type="submit">予約</div>
448 dojoType="dijit.form.ValidationTextBox"
449 value="<!--exec-value//-->"
450 style="display:none";>