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.1</title>
8 <script type="text/javascript" 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("v")>-1){
102 dijit.byId("vfr").setChecked(true);
104 dijit.byId("vfr").setChecked(false);
106 if (str.indexOf("2")>-1){
107 dijit.byId("dualpass").setChecked(true);
109 dijit.byId("dualpass").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("N")>-1){
122 dijit.byId("datename").setChecked(true);
124 dijit.byId("datename").setChecked(false);
126 if (str.indexOf("S")>-1){
127 dijit.byId("size").setValue("S");
128 }else if (str.indexOf("H")>-1){
129 dijit.byId("size").setValue("H");
130 }else if (str.indexOf("G")>-1){
131 dijit.byId("size").setValue("G");
132 }else if (str.indexOf("F")>-1){
133 dijit.byId("size").setValue("F");
134 }else if (str.indexOf("L")>-1){
135 dijit.byId("size").setValue("L");
139 if (str.indexOf("R")>-1){
140 dijit.byId("move").setValue("R");
141 }else if (str.indexOf("D")>-1){
142 dijit.byId("move").setValue("D");
143 }else if (str.indexOf("E")>-1){
144 dijit.byId("move").setValue("E");
146 dijit.byId("move").setValue("None");
149 function setbtime_now(){
152 var nm=now.getMinutes();
155 now.setMinutes(nm,0,0);
158 function setetime_now(){
159 var ds=dijit.byId("btime").value;
165 var nm=now.getMinutes();
168 now.setMinutes(nm,0,0);
172 function txt2date(txt){
176 d.setYear(parseInt(ds.substring(0,4),10));
179 d.setMonth(parseInt(ds.substring(5,7),10)-1);
182 d.setDate(parseInt(ds.substring(8,10),10));
185 d.setHours(parseInt(ds.substring(11,13),10));
188 d.setMinutes(parseInt(ds.substring(14,16),10));
191 d.setSeconds(parseInt(ds.substring(17,19),10));
195 function add_btimemin(min){
196 var ds=dijit.byId("btime").value;
198 //window.alert(ds.toString()+":"+d.toString());
199 d.setTime(d.getTime()+min*60*1000);
202 function add_etimemin(min){
203 var ds=dijit.byId("etime").value;
205 d.setTime(d.getTime()+min*60*1000);
209 function setbtime(date){
211 //window.alert("setbtime");
212 nowtxt=String(date.getFullYear())+"-";
213 if (date.getMonth()+1<10){
216 nowtxt=nowtxt+String(date.getMonth()+1)+"-";
217 if (date.getDate()<10){
220 nowtxt=nowtxt+String(date.getDate())+" ";
221 if (date.getHours()<10){
224 nowtxt=nowtxt+String(date.getHours())+":";
225 if (date.getMinutes()<10){
228 nowtxt=nowtxt+String(date.getMinutes())+":00";
229 //console.debug("click");
230 //window.alert("test");
231 dijit.byId("btime").setValue(nowtxt);
233 function setetime(date){
235 //window.alert("test");
236 nowtxt=String(date.getFullYear())+"-";
237 if (date.getMonth()+1<10){
240 nowtxt=nowtxt+String(date.getMonth()+1)+"-";
241 if (date.getDate()<10){
244 nowtxt=nowtxt+String(date.getDate())+" ";
245 if (date.getHours()<10){
248 nowtxt=nowtxt+String(date.getHours())+":";
249 if (date.getMinutes()<10){
252 nowtxt=nowtxt+String(date.getMinutes())+":00";
253 //console.debug("click");
254 //window.alert("test");
255 dijit.byId("etime").setValue(nowtxt);
257 function title2opts(){
258 var str=dijit.byId("title").value;
259 var stropt=dijit.byId("opts").Value;
260 if (stropt==undefined){
263 //stropt=stropt.replace("undefined","");
265 if (str.indexOf("(2)")>-1){
266 //dijit.byId("dualpass").setChecked(true);
268 dijit.byId("opts").setValue(str);
269 }else if(str.indexOf("(二)")>-1){
270 //dijit.byId("dualpass").setChecked(true);
272 dijit.byId("opts").setValue(str);
273 }else if(str.indexOf("[二]")>-1){
274 //dijit.byId("dualpass").setChecked(true);
276 dijit.byId("opts").setValue(str);
277 }else if(str.indexOf("(二)")>-1){
278 //dijit.byId("dualpass").setChecked(true);
280 dijit.byId("opts").setValue(str);
281 }else if(str.indexOf("(二)")>-1){
282 //dijit.byId("dualpass").setChecked(true);
284 dijit.byId("opts").setValue(str);
285 }else if(str.indexOf("5.1")>-1){
286 //dijit.byId("dualpass").setChecked(true);
288 dijit.byId("opts").setValue(str);
289 }else if(str.indexOf("5.1")>-1){
290 //dijit.byId("dualpass").setChecked(true);
292 dijit.byId("opts").setValue(str);
295 //dojo.addOnLoad(init);
304 dojo.addOnLoad(init);
308 <body class="tundra">
309 <div dojoType="dijit.form.Form" action="rec10web.py" onExecute="this.submit()">
310 <h1>Rec10 Simple Web Interface ver.0.9.0</h1><br>
311 Rec10WEB MENU <a href="./rec10web.py?exec=schedule">Schedule</a> <a href="./rec10web.py?exec=iepg-show">iEPG-Data</a><br><br><br>
313 dojoType="dijit.form.FilteringSelect"
315 value="<!--type-value//-->"
317 <option value="reserve_flexible">通常予約</option>
318 <option value="search_today">キーワード予約</option>
319 <option value="search_day">曜日予約</option>
320 <option value="search_everyday">隔日予約</option>
321 <option value="reserve_fixed">最終予約</option>
322 <option value="convert_ts_mp4">エンコード予約</option>
323 <option value="convert_b25_ts">復号化予約</option>
324 <option value="convert_avi_mp4">MP4化予約(AVI)</option>
325 <option value="convert_mkv_mp4">MP4化予約(MKV)</option>
326 <option value="convert_avi_mkv">MKV化予約(AVI)</option>
331 dojoType="dijit.form.TextBox"
332 value="<!--title-value//-->"
337 dojoType="dijit.form.FilteringSelect"
339 value="<!--ch-value//-->"
341 <!--text_for_replace_chtxt_input//-->
346 dojoType="dijit.form.ValidationTextBox"
347 promptmessage="年-月-日 時間:分:秒"
348 value="<!--btime-value//-->"
349 regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
351 <div dojoType="dijit.form.Button" onclick="setbtime_now()">現在</div>
352 <div dojoType="dijit.form.Button" onclick="add_btimemin(5)">+5m</div>
353 <div dojoType="dijit.form.Button" onclick="add_btimemin(30)">+30m</div>
354 <div dojoType="dijit.form.Button" onclick="add_btimemin(180)">+3h</div>
355 <div dojoType="dijit.form.Button" onclick="add_btimemin(720)">+12h</div>
359 dojoType="dijit.form.ValidationTextBox"
360 promptmessage="年-月-日 時間:分:秒"
361 value="<!--etime-value//-->"
362 regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
364 <div dojoType="dijit.form.Button" onclick="setetime_now()">一致</div>
365 <div dojoType="dijit.form.Button" onclick="add_etimemin(1)">+1m</div>
366 <div dojoType="dijit.form.Button" onclick="add_etimemin(5)">+5m</div>
367 <div dojoType="dijit.form.Button" onclick="add_etimemin(30)">+30m</div>
368 <div dojoType="dijit.form.Button" onclick="add_etimemin(60)">+1h</div>
371 <input dojoType="dijit.form.NumberSpinner"
375 constraints="{min:0,max:24,places:0}"
380 <input dojoType="dijit.form.NumberSpinner"
384 constraints="{min:0,max:24,places:0}"
387 name="deltahour"><br><br>
389 <input type="checkbox"
390 dojoType="dijit.form.CheckBox"
391 id="day_Mon" name="day_Mon" value="1">月曜
392 <input type="checkbox"
393 dojoType="dijit.form.CheckBox"
394 id="day_Tue" name="day_Tue" value="2">火曜
395 <input type="checkbox"
396 dojoType="dijit.form.CheckBox"
397 id="day_Wed" name="day_Wed" value="3">水曜
398 <input type="checkbox"
399 dojoType="dijit.form.CheckBox"
400 id="day_Thu" name="day_Thu" value="4">木曜
401 <input type="checkbox"
402 dojoType="dijit.form.CheckBox"
403 id="day_Fri" name="day_Fri" value="5">金曜
404 <input type="checkbox"
405 dojoType="dijit.form.CheckBox"
406 id="day_Sat" name="day_Sat" value="6">土曜
407 <input type="checkbox"
408 dojoType="dijit.form.CheckBox"
409 id="day_Sun" name="day_Sun" value="7">日曜
412 dojoType="dijit.form.FilteringSelect"
416 onChange="changeMove">
417 <option selected="selected" value="None">移動しない</option>
418 <option value="R">録画後移動</option>
419 <option value="D">復号後移動</option>
420 <option value="E">縁故後移動</option>
425 dojoType="dijit.form.FilteringSelect"
427 value="<!--size-value//-->"
429 onChange="changeSize">
430 <option selected="selected" value="S">SDサイズ(720x480 1250kbps)</option>
431 <option value="L">CS放送SDサイズ(リサイズ無し 1250kbps)</option>
432 <option value="G">低画質HDサイズ(1280x720 2500kbps)</option>
433 <option value="H">HDサイズ(1280x720 3750kbps)</option>
434 <option value="F">フルハイビジョン(1920x1080 5000kbps)</option>
436 <input type="checkbox"
437 dojoType="dijit.form.CheckBox"
438 id="vfr" name="vfr" value="v"
439 onClick="setOpts(this)">可変フレームレート
440 <input type="checkbox"
441 dojoType="dijit.form.CheckBox"
442 id="dualaudio" name="dualaudio" value="d"
443 onClick="setOpts(this)">二ヶ国語放送
444 <input type="checkbox"
445 dojoType="dijit.form.CheckBox"
446 id="pentaaudio" name="pentaaudio" value="5"
447 onClick="setOpts(this)">5.1ch放送
448 <input type="checkbox"
449 dojoType="dijit.form.CheckBox"
450 id="dualpass" name="dualpass" value="2"
451 onClick="setOpts(this)">2passモード
452 <input type="checkbox"
453 dojoType="dijit.form.CheckBox"
454 id="datename" name="datename" value="N"
455 onClick="setOpts(this)">タイトル日付追加
458 dojoType="dijit.form.ValidationTextBox"
459 value="<!--opts-value//-->"
460 onChange="changeOpts"
463 <div dojoType="dijit.form.Button" type="submit">予約</div>
465 dojoType="dijit.form.ValidationTextBox"
466 value="<!--exec-value//-->"
467 style="display:none";>