OSDN Git Service

begin to ready for implementing MySQL function.
[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             <option value="b252ts">復号化予約</option>
295         </select>番組名/キーワード
296         <input type="text"
297                length="40"
298                dojoType="dijit.form.TextBox"
299                value="<!--title-value//-->"
300                id="title"
301                name="title">チャンネル
302         <select name="chtxt"
303                 dojoType="dijit.form.FilteringSelect"
304                 autocomplete="false"
305                 value="<!--ch-value//-->"
306                 onChange="setType">
307             <!--text_for_replace_chtxt_input//-->
308         </select>
309         <br><br>開始時刻
310         <div name="btime"
311              id="btime"
312              dojoType="dijit.form.ValidationTextBox"
313              promptmessage="年-月-日 時間:分:秒"
314              value="<!--btime-value//-->"
315              regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
316         </div>
317         <div dojoType="dijit.form.Button" onclick="setbtime_now()">現在</div>
318         <div dojoType="dijit.form.Button" onclick="add_btimemin(30)">+30m</div>
319         <div dojoType="dijit.form.Button" onclick="add_btimemin(180)">+3h</div>
320         <div dojoType="dijit.form.Button" onclick="add_btimemin(720)">+12h</div>
321         終了時刻
322         <div name="etime"
323              id="etime"
324              dojoType="dijit.form.ValidationTextBox"
325              promptmessage="年-月-日 時間:分:秒"
326              value="<!--etime-value//-->"
327              regexp="\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}">
328         </div>
329         <div dojoType="dijit.form.Button" onclick="setetime_now()">一致</div>
330         <div dojoType="dijit.form.Button" onclick="add_etimemin(5)">+5m</div>
331         <div dojoType="dijit.form.Button" onclick="add_etimemin(30)">+30m</div>
332         <div dojoType="dijit.form.Button" onclick="add_etimemin(60)">+1h</div>
333         <br>
334         <br>隔日周期(days)
335         <input dojoType="dijit.form.NumberSpinner"
336                value="7"
337                smallDelta="1"
338                largeDelta="10"
339                constraints="{min:0,max:24,places:0}"
340                maxlength="2"
341                id="deltaday"
342                name="deltaday">
343         キーワード録画許容誤差(hours)
344         <input dojoType="dijit.form.NumberSpinner"
345                value="3"
346                smallDelta="1"
347                largeDelta="10"
348                constraints="{min:0,max:24,places:0}"
349                maxlength="2"
350                id="deltahour"
351                name="deltahour"><br><br>
352
353         <input type="checkbox"
354                dojoType="dijit.form.CheckBox"
355                id="day_Mon" name="day_Mon" value="1">月曜</input>
356         <input type="checkbox"
357                dojoType="dijit.form.CheckBox"
358                id="day_Tue" name="day_Tue" value="2">火曜</input>
359         <input type="checkbox"
360                dojoType="dijit.form.CheckBox"
361                id="day_Wed" name="day_Wed" value="3">水曜</input>
362         <input type="checkbox"
363                dojoType="dijit.form.CheckBox"
364                id="day_Thu" name="day_Thu" value="4">木曜</input>
365         <input type="checkbox"
366                dojoType="dijit.form.CheckBox"
367                id="day_Fri" name="day_Fri" value="5">金曜</input>
368         <input type="checkbox"
369                dojoType="dijit.form.CheckBox"
370                id="day_Sat" name="day_Sat" value="6">土曜</input>
371         <input type="checkbox"
372                dojoType="dijit.form.CheckBox"
373                id="day_Sun" name="day_Sun" value="7">日曜</input>
374         <br><br>
375         録画サイズ
376         <select name="size"
377                 dojoType="dijit.form.FilteringSelect"
378                 autocomplete="false"
379                 value="<!--size-value//-->"
380                 id="size"
381                 onChange="changeSize">
382             <option selected="selected" value="S">SD画質(720x480)</option>
383             <option value="H">HD画質(1280x720)</option>
384             <option value="Q">WQVG画質(400x240)</option>
385             <option value="F">FULLHD画質(1920x1080)</option>
386             <input type="checkbox"
387                    dojoType="dijit.form.CheckBox"
388                    id="anime" name="anime" value="a"
389                    onClick="setOpts(this)">アニメ</input>
390             <input type="checkbox"
391                    dojoType="dijit.form.CheckBox"
392                    id="dualaudio" name="dualaudio" value="d"
393                    onClick="setOpts(this)">二ヶ国語放送</input>
394             <input type="checkbox"
395                    dojoType="dijit.form.CheckBox"
396                    id="pentaaudio" name="pentaaudio" value="5"
397                    onClick="setOpts(this)">5.1ch放送</input>
398             <input type="checkbox"
399                    dojoType="dijit.form.CheckBox"
400                    id="2pass" name="2pass" value="2"
401                    onClick="setOpts(this)">2passモード</input>
402             <input type="checkbox"
403                    dojoType="dijit.form.CheckBox"
404                    id="xvid" name="xvid" value="x"
405                    onClick="setOpts(this)">Xvidモード</input>
406         </select>
407         Options
408         <div name="opts"
409              dojoType="dijit.form.ValidationTextBox"
410              value="<!--opts-value//-->"
411              onChange="changeOpts"
412              id="opts">
413         </div><div dojoType="dijit.form.Button" type="submit">予約</div>
414         <div name="exec"
415              dojoType="dijit.form.ValidationTextBox"
416              value="<!--exec-value//-->"
417              style="display:none";>
418              </div>
419     </body>
420 </html>