OSDN Git Service

46000bfab631a8ab847e8125828704ff533463e7
[rec10/rec10-git.git] / Rec10WEB / trunk / src / rswi_edit.htm
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3     <head>
4         <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
5         <title>Rec10 Simple Web Interface ver.0.5.0a 編集画面</title>
6         <!-- dojo.jsの読み込み -->
7         <script src="../dojo/dojo.js" djConfig="parseOnLoad:true">
8         </script>
9         <!-- テーマの読み込み -->
10         <style type="text/css">
11             @import "../dojo/resources/dojo.css";
12             @import "../dijit/themes/tundra/tundra.css";
13
14
15         </style>
16         <script type="text/javascript">
17
18             dojo.require("dojo.parser");
19             // ※ ここで、使用するウィジェットの読み込みを行う
20
21             dojo.require("dijit.form.Button");
22             dojo.require("dijit.form.FilteringSelect");
23             dojo.require("dijit.form.ValidationTextBox");
24             dojo.require("dijit.form.NumberSpinner");
25             dojo.require("dijit.form.CheckBox");
26             dojo.require("dijit.form.Form");
27             //dojo.require("dojox.date");
28             function setType(value){
29                 if (value=="rec"){
30                     //alert("Selected "+value);
31                     dijit.byId("deltaday").setDisabled(true);
32                     dijit.byId("deltahour").setDisabled(true);
33                     setDayopt(false);
34                 }else if (value=="key"){
35                     //alert("Selected "+value);
36                     dijit.byId("deltaday").setDisabled(true);
37                     dijit.byId("deltahour").setDisabled(false);
38                     setDayopt(false);
39                 }else if (value=="keyday"){
40                     dijit.byId("deltahour").setDisabled(false);
41                     setDayopt(true);
42                 }else if (value=="keyevery"){
43                     //alert("Selected "+value);
44                     dijit.byId("deltaday").setDisabled(false);
45                     dijit.byId("deltahour").setDisabled(false);
46                     setDayopt(false);
47                 }else if (value=="res"){
48                     //alert("Selected "+value);
49                     dijit.byId("deltaday").setDisabled(true);
50                     dijit.byId("deltahour").setDisabled(true);
51                     setDayopt(false);
52                 }else if (value=="ts2avi"){
53                     dijit.byId("deltaday").setDisabled(true);
54                     dijit.byId("deltahour").setDisabled(true);
55                     setDayopt(false);
56                 }
57
58             }
59             function setDayopt(bool){
60                 dijit.byId("day_Sun").setDisabled(!bool);
61                 dijit.byId("day_Mon").setDisabled(!bool);
62                 dijit.byId("day_Tue").setDisabled(!bool);
63                 dijit.byId("day_Wed").setDisabled(!bool);
64                 dijit.byId("day_Thu").setDisabled(!bool);
65                 dijit.byId("day_Fri").setDisabled(!bool);
66                 dijit.byId("day_Sat").setDisabled(!bool);
67             }
68             function changeSize(){
69                 var str=dijit.byId("opts").value;
70                 var s=dijit.byId("size").value;
71                 str=str.replace("S","");
72                 str=str.replace("H","");
73                 str=str.replace("F","");
74                 str=str.replace("Q","");
75                 str=str+s;
76                 //alert("Selected "+str);
77                 dijit.byId("opts").setValue(str);
78
79             }
80             function setOpts(obj){
81                 if (obj.checked){
82                     var str=dijit.byId("opts").value;
83                     str=str+obj.value;
84                 }else{
85                     var str=dijit.byId("opts").value;
86                     str=str.replace(obj.value,"");
87                 }
88                 dijit.byId("opts").setValue(str);
89             }
90             function changeOpts(){
91                 var str=dijit.byId("opts").value;
92                 if (str.indexOf("a")>-1){
93                     dijit.byId("anime").setChecked(true);
94                 }else{
95                     dijit.byId("anime").setChecked(false);
96                 }
97                 if (str.indexOf("2")>-1){
98                     dijit.byId("2pass").setChecked(true);
99                 }else{
100                     dijit.byId("2pass").setChecked(false);
101                 }
102                 if (str.indexOf("x")>-1){
103                     dijit.byId("xvid").setChecked(true);
104                 }else{
105                     dijit.byId("xvid").setChecked(false);
106                 }
107                 if (str.indexOf("d")>-1){
108                     dijit.byId("dualaudio").setChecked(true);
109                 }else{
110                     dijit.byId("dualaudio").setChecked(false);
111                 }
112                 if (str.indexOf("5")>-1){
113                     dijit.byId("pentaaudio").setChecked(true);
114                 }else{
115                     dijit.byId("pentaaudio").setChecked(false);
116                 }
117                 if (str.indexOf("S")>-1){
118                     dijit.byId("size").setValue("S");
119                 }else if (str.indexOf("H")>-1){
120                     dijit.byId("size").setValue("H");
121                 }else if (str.indexOf("F")>-1){
122                     dijit.byId("size").setValue("F");
123                 }else if (str.indexOf("Q")>-1){
124                     dijit.byId("size").setValue("Q");
125                 }else{
126                     changeSize();
127                 }
128             }
129             function setbtime_now(){
130                 var now =new Date();
131                 now.setMinutes(0,0,0);
132                 setbtime(now);
133             }
134             function setetime_now(){
135                 var ds=dijit.byId("btime").value;
136                 var d=txt2date(ds);
137                 setetime(d);
138             }
139             function setnow(){
140                 var now =new Date();
141                 now.setMinutes(0,0,0);
142                 setbtime(now);
143                 setetime(now);
144             }
145             function txt2date(txt){
146                 var d=new Date;
147                 var ds=txt;
148                 if (ds.length>3){
149                     d.setYear(parseInt(ds.substring(0,4)));
150                 }
151                 if (ds.length>6){
152                     d.setMonth(parseInt(ds.substring(5,7))-1);
153                 }
154                 if (ds.length>9){
155                     d.setDate(parseInt(ds.substring(8,10)));
156                 }
157                 if (ds.length>12){
158                     d.setHours(parseInt(ds.substring(11,13)));
159                 }
160                 if (ds.length>15){
161                     d.setMinutes(parseInt(ds.substring(14,16)));
162                 }
163                 if (ds.length>18){
164                     d.setSeconds(parseInt(ds.substring(17,19)));
165                 }
166                 return d
167             }
168             function add_btimemin(min){
169                 var ds=dijit.byId("btime").value;
170                 var d=txt2date(ds);
171                 d.setTime(d.getTime()+min*60*1000);
172                 setbtime(d);
173             }
174             function add_etimemin(min){
175                 var ds=dijit.byId("etime").value;
176                 var d=txt2date(ds);
177                 d.setTime(d.getTime()+min*60*1000);
178                 setetime(d);
179             }
180
181             function setbtime(date){
182                 var nowtxt="";
183                 //window.alert("setbtime");
184                 nowtxt=String(date.getFullYear())+"-";
185                 if (date.getMonth()<10){
186                     nowtxt=nowtxt+"0";
187                 }
188                 nowtxt=nowtxt+String(date.getMonth()+1)+"-";
189                 if (date.getDate()<10){
190                     nowtxt=nowtxt+"0";
191                 }
192                 nowtxt=nowtxt+String(date.getDate())+" ";
193                 if (date.getHours()<10){
194                     nowtxt=nowtxt+"0"
195                 }
196                 nowtxt=nowtxt+String(date.getHours())+":";
197                 if (date.getMinutes()<10){
198                     nowtxt=nowtxt+"0"
199                 }
200                 nowtxt=nowtxt+String(date.getMinutes())+":00";
201                 //console.debug("click");
202                 //window.alert("test");
203                 dijit.byId("btime").setValue(nowtxt);
204             }
205             function setetime(date){
206                 var nowtxt="";
207                 //window.alert("test");
208                 nowtxt=String(date.getFullYear())+"-";
209                 if (date.getMonth()<10){
210                     nowtxt=nowtxt+"0";
211                 }
212                 nowtxt=nowtxt+String(date.getMonth()+1)+"-";
213                 if (date.getDate()<10){
214                     nowtxt=nowtxt+"0";
215                 }
216                 nowtxt=nowtxt+String(date.getDate())+" ";
217                 if (date.getHours()<10){
218                     nowtxt=nowtxt+"0"
219                 }
220                 nowtxt=nowtxt+String(date.getHours())+":";
221                 if (date.getMinutes()<10){
222                     nowtxt=nowtxt+"0"
223                 }
224                 nowtxt=nowtxt+String(date.getMinutes())+":00";
225                 //console.debug("click");
226                 //window.alert("test");
227                 dijit.byId("etime").setValue(nowtxt);
228             }
229             function title2opts(){
230                 var str=dijit.byId("title").value;
231                 var stropt=dijit.byId("opts").Value;
232                 if (stropt==undefined){
233                     stropt="";
234                 }
235                 //stropt=stropt.replace("undefined","");
236                 //stropt=""
237                 if (str.indexOf("(2)")>-1){
238                     //dijit.byId("2pass").setChecked(true);
239                     str=stropt+"d";
240                     dijit.byId("opts").setValue(str);
241                 }else if(str.indexOf("(二)")>-1){
242                     //dijit.byId("2pass").setChecked(true);
243                     str=stropt+"d";
244                     dijit.byId("opts").setValue(str);
245                 }else if(str.indexOf("[二]")>-1){
246                     //dijit.byId("2pass").setChecked(true);
247                     str=stropt+"d";
248                     dijit.byId("opts").setValue(str);
249                 }else if(str.indexOf("(二)")>-1){
250                     //dijit.byId("2pass").setChecked(true);
251                     str=stropt+"d";
252                     dijit.byId("opts").setValue(str);
253                 }else if(str.indexOf("(二)")>-1){
254                     //dijit.byId("2pass").setChecked(true);
255                     str=stropt+"d";
256                     dijit.byId("opts").setValue(str);
257                 }else if(str.indexOf("5.1")>-1){
258                     //dijit.byId("2pass").setChecked(true);
259                     str=stropt+"5";
260                     dijit.byId("opts").setValue(str);
261                 }else if(str.indexOf("5.1")>-1){
262                     //dijit.byId("2pass").setChecked(true);
263                     str=stropt+"5";
264                     dijit.byId("opts").setValue(str);
265                 }
266             }
267             //dojo.addOnLoad(init);
268             function init(){
269                 //dojo.debug("test")
270                 setType("res");
271                 title2opts();
272                 //changeSize();
273                 changeOpts();
274                 //changeSize();
275             }
276             dojo.addOnLoad(init);
277         </script>
278     </head>
279     <!-- テーマの読み込み -->
280     <body class="tundra">
281         <div dojoType="dijit.form.Form" action="rec10web.py" onExecute="this.submit()">
282         <h1>Rec10 Simple Web Interface ver.0.5.0a 編集画面</h1><br>
283         <select name="type"
284                 dojoType="dijit.form.FilteringSelect"
285                 autocomplete="false"
286                 value="<!--type-value//-->"
287                 onChange="setType">
288             <option value="res">通常予約</option>
289             <option value="key">キーワード予約</option>
290             <option value="keyday">曜日予約</option>
291             <option value="keyevery">隔日予約</option>
292             <option value="rec">最終予約</option>
293             <option value="ts2avi">エンコード予約</option>
294         </select>番組名/キーワード
295         <input type="text"
296                length="40"
297                dojoType="dijit.form.TextBox"
298                value="<!--title-value//-->"
299                id="title"
300                name="title">チャンネル
301         <select name="chtxt"
302                 dojoType="dijit.form.FilteringSelect"
303                 autocomplete="false"
304                 value="<!--ch-value//-->"
305                 onChange="setType">
306             <!--text_for_replace_chtxt_input//-->
307         </select>
308         <br><br>開始時刻
309         <div name="btime"
310              id="btime"
311              dojoType="dijit.form.ValidationTextBox"
312              promptmessage="年-月-日 時間:分:秒"
313              value="<!--btime-value//-->"
314              regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
315         </div>
316         <div dojoType="dijit.form.Button" onclick="setbtime_now()">現在</div>
317         <div dojoType="dijit.form.Button" onclick="add_btimemin(30)">+30m</div>
318         <div dojoType="dijit.form.Button" onclick="add_btimemin(180)">+3h</div>
319         <div dojoType="dijit.form.Button" onclick="add_btimemin(720)">+12h</div>
320         終了時刻
321         <div name="etime"
322              id="etime"
323              dojoType="dijit.form.ValidationTextBox"
324              promptmessage="年-月-日 時間:分:秒"
325              value="<!--etime-value//-->"
326              regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
327         </div>
328         <div dojoType="dijit.form.Button" onclick="setetime_now()">一致</div>
329         <div dojoType="dijit.form.Button" onclick="add_etimemin(5)">+5m</div>
330         <div dojoType="dijit.form.Button" onclick="add_etimemin(30)">+30m</div>
331         <div dojoType="dijit.form.Button" onclick="add_etimemin(60)">+1h</div>
332         <br>
333         <br>隔日周期(days)
334         <input dojoType="dijit.form.NumberSpinner"
335                value="7"
336                smallDelta="1"
337                largeDelta="10"
338                constraints="{min:0,max:24,places:0}"
339                maxlength="2"
340                id="deltaday"
341                name="deltaday">
342         キーワード録画許容誤差(hours)
343         <input dojoType="dijit.form.NumberSpinner"
344                value="3"
345                smallDelta="1"
346                largeDelta="10"
347                constraints="{min:0,max:24,places:0}"
348                maxlength="2"
349                id="deltahour"
350                name="deltahour"><br><br>
351
352         <input type="checkbox"
353                dojoType="dijit.form.CheckBox"
354                id="day_Mon" name="day_Mon" value="1">月曜</input>
355         <input type="checkbox"
356                dojoType="dijit.form.CheckBox"
357                id="day_Tue" name="day_Tue" value="2">火曜</input>
358         <input type="checkbox"
359                dojoType="dijit.form.CheckBox"
360                id="day_Wed" name="day_Wed" value="3">水曜</input>
361         <input type="checkbox"
362                dojoType="dijit.form.CheckBox"
363                id="day_Thu" name="day_Thu" value="4">木曜</input>
364         <input type="checkbox"
365                dojoType="dijit.form.CheckBox"
366                id="day_Fri" name="day_Fri" value="5">金曜</input>
367         <input type="checkbox"
368                dojoType="dijit.form.CheckBox"
369                id="day_Sat" name="day_Sat" value="6">土曜</input>
370         <input type="checkbox"
371                dojoType="dijit.form.CheckBox"
372                id="day_Sun" name="day_Sun" value="7">日曜</input>
373         <br><br>
374         録画サイズ
375         <select name="size"
376                 dojoType="dijit.form.FilteringSelect"
377                 autocomplete="false"
378                 value="<!--size-value//-->"
379                 id="size"
380                 onChange="changeSize">
381             <option selected="selected" value="S">SD画質(720x480)</option>
382             <option value="H">HD画質(1280x720)</option>
383             <option value="Q">WQVG画質(400x240)</option>
384             <option value="F">FULLHD画質(1920x1080)</option>
385             <input type="checkbox"
386                    dojoType="dijit.form.CheckBox"
387                    id="anime" name="anime" value="a"
388                    onClick="setOpts(this)">アニメ</input>
389             <input type="checkbox"
390                    dojoType="dijit.form.CheckBox"
391                    id="dualaudio" name="dualaudio" value="d"
392                    onClick="setOpts(this)">二ヶ国語放送</input>
393             <input type="checkbox"
394                    dojoType="dijit.form.CheckBox"
395                    id="pentaaudio" name="pentaaudio" value="5"
396                    onClick="setOpts(this)">5.1ch放送</input>
397             <input type="checkbox"
398                    dojoType="dijit.form.CheckBox"
399                    id="2pass" name="2pass" value="2"
400                    onClick="setOpts(this)">2passモード</input>
401             <input type="checkbox"
402                    dojoType="dijit.form.CheckBox"
403                    id="xvid" name="xvid" value="x"
404                    onClick="setOpts(this)">Xvidモード</input>
405         </select>
406         Options
407         <div name="opts"
408              dojoType="dijit.form.ValidationTextBox"
409              value="<!--opts-value//-->"
410              onChange="changeOpts"
411              id="opts">
412         </div><div dojoType="dijit.form.Button" type="submit">予約</div>
413         <div name="exec"
414              dojoType="dijit.form.ValidationTextBox"
415              value="<!--exec-value//-->"
416              style="display:none";>
417              </div>
418     </body>
419 </html>