blob: 54dfed3400490665dfc0cb590325b98678f87299 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001
2
3var webdav_arrayTableDataAccount = new Array(0);
4(function($) {
5 $.fn.objWebDavmanagement = function(InIt) {
6
7
8 this.onLoad = function(flag) {
9 LoadWebPage("html/router/webdav_management.html");
10
11 document.getElementById("webdavSettingtitle").innerHTML = jQuery.i18n.prop("webdavSettingtitle");
12 document.getElementById("webdavmangementtitle").innerHTML = jQuery.i18n.prop("webdavmangementtitle");
13
14 document.getElementById("webdavSetting").value = jQuery.i18n.prop("webdavSetting");
15 document.getElementById("SDcardShareSettingInfoDlgTitle").innerHTML = jQuery.i18n.prop("SDcardShareSettingInfoDlgTitle");
16
17 //document.getElementById("setting_method").innerHTML = jQuery.i18n.prop("setting_method");
18 //document.getElementById("WebDavmode").innerHTML = jQuery.i18n.prop("WebDavmode");
19 //document.getElementById("Usbmode").innerHTML = jQuery.i18n.prop("Usbmode");
20
21 document.getElementById("setting_shared_enable").innerHTML = jQuery.i18n.prop("setting_shared_enable");
22 document.getElementById("shared_open").innerHTML = jQuery.i18n.prop("shared_open");
23 document.getElementById("shared_close").innerHTML = jQuery.i18n.prop("shared_close");
24
25 document.getElementById("setting_shared_mode").innerHTML = jQuery.i18n.prop("setting_shared_mode");
26 document.getElementById("read_mode_show").innerHTML = jQuery.i18n.prop("read_mode_show");
27 document.getElementById("readwrite_mode_show").innerHTML = jQuery.i18n.prop("readwrite_mode_show");
28
29
30 document.getElementById("webdav_lUsername").innerHTML = jQuery.i18n.prop("webdav_lUsername");
31 document.getElementById("webdav_lPassword").innerHTML = jQuery.i18n.prop("webdav_lPassword");
32 document.getElementById("webdav_lRePassword").innerHTML = jQuery.i18n.prop("webdav_lRePassword");
33
34 document.getElementById("setting_stcCancelView").innerHTML = jQuery.i18n.prop("btnModalCancle");
35
36
37 webdav_arrayTableDataAccount = new Array(0);
38 var indexAccount = 0;
39 var _router_username='';
40 var _router_password='';
41 var webdav_username_;
42 var webdav_password_;
43 var authority;
44
45 //GetWebDavManageInfo();
46 var retXml = PostXml("router","webdav_get_management_info");
47 var enable,shared_mode;
48 $(retXml).find("webdav_auth").each(function() {
49 webdav_username_ = decodeURIComponent($(this).find("username").text());
50 webdav_password_ = decodeURIComponent($(this).find("password").text());
51 authority = '1';
52 });
53 $(retXml).find("webdav_basic").each(function() {
54 enable = $(this).find("enable").text();
55 shared_mode = $(this).find("shared_mode").text();
56 });
57
58
59
60 // _router_username = decodeURIComponent($(this).find("webdav_username").text());
61 // _router_password = decodeURIComponent($(this).find("webdav_password").text());
62
63
64
65 //webdav_username_ = decodeURIComponent($(this).find("webdav_account_username").text());
66 //webdav_password_ = decodeURIComponent($(this).find("webdav_account_password").text());
67
68 webdav_arrayTableDataAccount[indexAccount] = new Array(3);
69 webdav_arrayTableDataAccount[indexAccount][0] = webdav_username_;
70 webdav_arrayTableDataAccount[indexAccount][1] = webdav_password_;
71 webdav_arrayTableDataAccount[indexAccount][2] = authority;
72
73
74
75
76 this.loadAccountTable(webdav_arrayTableDataAccount);
77
78
79
80 $("#webdavSetting").click(function() {
81 sm("webdavSettingDlg", 450, 150);
82 document.getElementById("lt_webdav_setting_btnSave").value = jQuery.i18n.prop("lt_btnApply");
83
84 var retXml = PostXml("router","webdav_get_management_info");
85 var enable,shared_mode;
86 //$(retXml).find("webdav_auth").each(function() {
87 // webdav_username_ = decodeURIComponent($(this).find("username").text());
88 // webdav_password_ = decodeURIComponent($(this).find("password").text());
89 // authority = '1';
90 //});
91 $(retXml).find("webdav_basic").each(function() {
92 enable = $(this).find("enable").text();
93 if(enable=="on")
94 {
95 WebdavSharedEnable=1;
96 $("#WebDavSharedClose").attr("checked", false);
97 $("#WebDavSharedOpen").attr("checked", true);
98 }
99 else
100 {
101 WebdavSharedEnable=0
102 $("#WebDavSharedClose").attr("checked", true);
103 $("#WebDavSharedOpen").attr("checked", false);
104 }
105 shared_mode = $(this).find("shared_mode").text();
106 if(shared_mode=="read_only")
107 {
108 WebdavSharedMode=1;
109 $("#readwrite_mode").attr("checked", false);
110 $("#read_mode").attr("checked", true);
111 }
112 else
113 {
114 WebdavSharedMode=0;
115 $("#readwrite_mode").attr("checked", true);
116 $("#read_mode").attr("checked", false);
117 }
118
119 });
120
121 //var xml = getData('webdav_management');
122
123 //$(xml).find("webdav_user_management").each(function() {
124 // var usb_flag=$(this).find("webdav_enable").text();
125 // if(usb_flag=="1")
126 // {
127 // WebdavUsbMode=1;
128 // $("#UsbSta").attr("checked", false);
129 // $("#WebDavSta").attr("checked", true);
130 // }
131 // else
132 // {
133 // WebdavUsbMode=0;
134 // $("#UsbSta").attr("checked", true);
135 // $("#WebDavSta").attr("checked", false);
136 // }
137 // });
138
139 $("#lt_webdav_setting_btnSave").click(function() {
140 //var itemIndex = 0;
141 //mapData = null;
142 //mapData = new Array();
143 //mapData = putMapElement(mapData, "RGW/webdav_user_management/webdav_enable", WebdavUsbMode, itemIndex++);
144 //if (mapData.length > 0) {
145 // webdav_postXML('webdav_management', g_objXML.getXMLDocToString(g_objXML.createXML(mapData)));
146 //}
147 var webdav_ConfigMap = new Map();
148 var curConfigMap = new Map();
149 //configMap.put("RGW/wireless/wifi_if_24G/switch","off");
150 //curConfigMap.put("RGW/webdav_set_management_info/webdav_auth/username","admin");
151 //curConfigMap.put("RGW/webdav_set_management_info/webdav_auth/password","admin");
152 if(WebdavSharedEnable){
153 curConfigMap.put("RGW/webdav_basic/enable","on");
154 }
155 else{
156 curConfigMap.put("RGW/webdav_basic/enable","off");
157 }
158 if(WebdavSharedMode){
159 curConfigMap.put("RGW/webdav_basic/shared_mode","read_only");
160 }
161 else{
162 curConfigMap.put("RGW/webdav_basic/shared_mode","read_write");
163 }
164 var configMap = curConfigMap.getChange(webdav_ConfigMap);
165 PostXml("router","webdav_set_basic_info",configMap);
166 hm();
167
168
169 });
170
171
172
173 });
174
175 }
176
177 this.loadAccountTable = function (arrayTableData){
178 var tableUserAccount = document.getElementById('tableUserAccount');
179 var tBodytable = tableUserAccount.getElementsByTagName('tbody')[0];
180 clearTabaleRows('tableUserAccount');
181 if (arrayTableData.length == 0) {
182 var row1 = tBodytable.insertRow(0);
183 var rowCol1 = row1.insertCell(0);
184 rowCol1.colSpan = 3;
185 rowCol1.innerHTML = jQuery.i18n.prop("tableNoData");
186 } else {
187 for (var i = 0; i < arrayTableData.length; i++) {
188 var arrayTableDataRow = arrayTableData[i];
189 var row = tBodytable.insertRow(-1);
190
191 var AccountNameCol = row.insertCell(0);
192 var AuthorityCol = row.insertCell(1);
193 // var removeCol = row.insertCell(2);
194
195 var _name = decodeURIComponent(arrayTableDataRow[0]);
196 AccountNameCol.innerHTML = "<a href='#' id ='table_username_link"+i+"' onclick='webdav_AccountClicked(" + i + ")'>" + _name + "</a>";
197
198 AuthorityCol.innerHTML = "<a href='#' id='table_remove_link"+i+"' onclick='webdav_deleteAccountItem(" + i + ")'>" +jQuery.i18n.prop("webdav_lEdit") + "</a>";
199 //if(arrayTableDataRow[2] == "1") {
200 // AuthorityCol.innerHTML = jQuery.i18n.prop("lStandard");
201 //} else
202 // AuthorityCol.innerHTML = jQuery.i18n.prop("lRestricted");
203
204 //removeCol.innerHTML = "<a href='#' id='table_remove_link"+i+"' onclick='webdav_deleteAccountItem(" + i + ")'>" +jQuery.i18n.prop("webdav_lEdit") + "</a>";
205
206 }
207 }
208 //Table.stripe(tableUserAccount, "alternate", "table-stripeclass");
209 }
210
211 this.getTableAccountDataRow = function(index) {
212 return webdav_arrayTableDataAccount[index];
213 }
214
215 this.postAccountItem = function(index, isDeleted, name, password, authority) {
216 var itemIndex = 0;
217 mapData = null;
218 mapData = new Array();
219
220 var login_username = encodeURIComponent(document.getElementById("tbrouter_username").value);
221 var login_password = encodeURIComponent(document.getElementById("tbrouter_password").value);
222
223
224 //edit or add
225 var item_name = encodeURIComponent(name);
226 var item_password = encodeURIComponent(password);
227
228 this.putMapElement("RGW/webdav_user_management/webdav_account_management/webdav_account_username", item_name, itemIndex++);
229 this.putMapElement("RGW/webdav_user_management/webdav_account_management/webdav_account_password", item_password, itemIndex++);
230
231
232
233 if (mapData.length > 0) {
234 postXML('webdav_management', g_objXML.getXMLDocToString(g_objXML.createXML(mapData)));
235 }
236 }
237
238 this.putMapElement = function(xpath, value, index) {
239 mapData[index] = new Array(2);
240 mapData[index][0] = xpath;
241 mapData[index][1] = value;
242 }
243 this.onPostSuccess = function() {
244 this.onLoad(true);
245 }
246
247 this.setXMLName = function(_xmlname) {
248 xmlName = _xmlname;
249 }
250
251
252
253
254 return this;
255 }
256})(jQuery);
257
258
259
260
261function webdavsetSdcardShareModeOK()
262{
263 sm("PleaseWait",150,100);
264 $("#lPleaseWait").text(jQuery.i18n.prop("h1PleaseWait"));
265 setTimeout('logOut()',6000); //Ö¸¶¨5ÃëË¢ÐÂÒ»´Î
266}
267
268var WebdavSharedEnable=0;
269var WebdavSharedMode=0;
270
271function WebDav_shared_open_Setting()
272{
273 $("#WebDavSharedOpen").attr("checked", true);
274 $("#WebDavSharedClose").attr("checked", false);
275 WebdavSharedEnable=1;
276}
277
278function WebDav_shared_close_Setting()
279{
280 $("#WebDavSharedClose").attr("checked", true);
281 $("#WebDavSharedOpen").attr("checked", false);
282 WebdavSharedEnable=0;
283}
284
285
286function WebDav_shared_read_Setting()
287{
288 $("#read_mode").attr("checked", true);
289 $("#readwrite_mode").attr("checked", false);
290 WebdavSharedMode=1;
291}
292
293function WebDav_shared_readwrite_Setting()
294{
295 $("#readwrite_mode").attr("checked", true);
296 $("#read_mode").attr("checked", false);
297 WebdavSharedMode=0;
298}
299
300function webdav_localizeMBAccount() {
301 $("#webdav_h1AccountEdit").text(jQuery.i18n.prop("webdav_h1AccountEdit"));
302 document.getElementById("webdav_lAccountName").innerHTML = jQuery.i18n.prop("webdav_lUsername");
303 document.getElementById("webdav_lAccountPassword").innerHTML = jQuery.i18n.prop("webdav_lPassword");
304 document.getElementById("lReAccountPassword").innerHTML = jQuery.i18n.prop("lReAccountPassword");
305 document.getElementById("lAccountAuthority").innerHTML = jQuery.i18n.prop("lAccountAuthority");
306 document.getElementById("btnCancel").innerHTML = jQuery.i18n.prop("btnCancel");
307 //buttonLocaliztion(document.getElementById("btnOk").id);
308}
309
310
311function webdav_AccountClicked(index) {
312 sm("MBAccount_Popup", 450, 200);
313 webdav_localizeMBAccount();
314
315 var data = g_objContent.getTableAccountDataRow(index);
316 //var data=webdav_arrayTableDataAccount[index]
317
318 document.getElementById("webdav_txtAccountName").value = data[0];
319 document.getElementById("webdav_txtAccountPassword").value = data[1];
320 document.getElementById("webdav_txtReAccountPassword").value = decodeURIComponent(data[1]);
321 document.getElementById("AccountGroupSelect").value = data[2];
322 $("#AccountGroupSelect").attr("disabled",true);
323 bEditAccount = true; //edit
324}
325
326
327function webdav_btnOKClickedEditAccount() {
328 var AccountName, AccountPassword, AccountRePassword, AccountAuthority;
329 var webdav_ConfigMap = new Map();
330
331 AccountName = document.getElementById("webdav_txtAccountName").value;
332 AccountPassword = document.getElementById("webdav_txtAccountPassword").value;
333 AccountRePassword = document.getElementById("webdav_txtReAccountPassword").value;
334 AccountAuthority = document.getElementById("AccountGroupSelect").value;
335
336 if(!bEditAccount) { //add new account
337 for (var idx = 0; idx < _arrayTableDataAccount.length; ++idx) {
338 if (AccountName == _arrayTableDataAccount[idx][0]) {
339 document.getElementById('lTablePassErrorMes').style.display = 'block';
340 document.getElementById('lTablePassErrorMes').innerHTML = jQuery.i18n.prop('lAccountExist');
341 return;
342 }
343 }
344 }
345
346 if(document.getElementById('webdav_txtAccountPassword').value != document.getElementById('webdav_txtReAccountPassword').value) {
347 document.getElementById('lTablePassErrorMes').style.display = 'block';
348 document.getElementById('lTablePassErrorMes').innerHTML=jQuery.i18n.prop('lPassErrorMes');
349 document.getElementById("webdav_txtReAccountPassword").value = '';
350 } else {
351 document.getElementById('lTablePassErrorMes').style.display = 'none';
352 if(webdav_isValidAccountPage()) {
353 //document.getElementById('lTablePassErrorMes').style.display = 'none';
354 //g_objContent.postAccountItem(0,false, AccountName,AccountPassword,AccountAuthority);
355 var curConfigMap = new Map();
356 //configMap.put("RGW/wireless/wifi_if_24G/switch","off");
357 curConfigMap.put("RGW/webdav_auth/username",AccountName);
358 curConfigMap.put("RGW/webdav_auth/password",AccountPassword);
359 //curConfigMap.put("RGW/webdav_set_management_info/webdav_auth",AccountName);
360 var configMap = curConfigMap.getChange(webdav_ConfigMap);
361 PostXml("router","webdav_set_auth_info",configMap);
362 GetWebDavManageInfo();
363
364 }
365 hm();
366 }
367
368}
369
370function webdav_deleteAccountItem(index) {
371
372 webdav_AccountClicked(index);
373}
374
375function webdav_tablepasswordChanged() {
376 document.getElementById("webdav_txtReAccountPassword").value = '';
377 document.getElementById('lReAccountPassword').style.display = 'block';
378 document.getElementById('webdav_txtReAccountPassword').style.display = 'block';
379
380}
381
382function webdav_isValidAccountPage() {
383 if(!(textBoxMinLength("webdav_txtAccountName",4) && textBoxMinLength("webdav_txtAccountPassword",4))) {
384 document.getElementById('lTablePassErrorMes').style.display = 'block';
385 document.getElementById('lTablePassErrorMes').innerHTML = jQuery.i18n.prop('lminLengthError');
386 return false;
387 }
388 if(!(textBoxMaxLength("webdav_txtAccountName",20) && textBoxMaxLength("webdav_txtAccountPassword",20))) {
389 document.getElementById('lTablePassErrorMes').style.display = 'block';
390 document.getElementById('lTablePassErrorMes').innerHTML = jQuery.i18n.prop('lmaxLengthError');
391 return false;
392 }
393 if(!deviceNameValidation(document.getElementById('webdav_txtAccountName').value)) {
394 document.getElementById('lTablePassErrorMes').style.display = 'block';
395 document.getElementById('lTablePassErrorMes').innerHTML = jQuery.i18n.prop('ErrInvalidUserPass');
396 return false;
397 }
398 if(!deviceNameValidation(document.getElementById('webdav_txtAccountPassword').value)) {
399 document.getElementById('lTablePassErrorMes').style.display = 'block';
400 document.getElementById('lTablePassErrorMes').innerHTML = jQuery.i18n.prop('ErrInvalidUserPass');
401 return false;
402 }
403 return true;
404}
405
406
407function GetWebDavManageInfo() {
408
409 //var retXml = PostXml("embms","webdav_get_management_info");
410
411 //$(retXml).find("webdav_auth").each(function() {
412 // username = $(this).find("username").text();
413 // password = $(this).find("password").text();
414 //});
415 // $(retXml).find("webdav_basic").each(function() {
416 // enable = $(this).find("enable").text();
417 // shared_mode = $(this).find("shared_mode").text();
418 //});
419
420 var username,password,enable,shared_mode;
421 var indexAccount = 0;
422 var authority;
423
424
425 var retXml = PostXml("router","webdav_get_management_info");
426 var enable,shared_mode;
427 $(retXml).find("webdav_auth").each(function() {
428 username = decodeURIComponent($(this).find("username").text());
429 password = decodeURIComponent($(this).find("password").text());
430 authority = '1';
431 });
432 $(retXml).find("webdav_basic").each(function() {
433 enable = $(this).find("enable").text();
434 shared_mode = $(this).find("shared_mode").text();
435 });
436
437
438
439 webdav_arrayTableDataAccount[indexAccount] = new Array(3);
440 webdav_arrayTableDataAccount[indexAccount][0] = username;
441 webdav_arrayTableDataAccount[indexAccount][1] = password;
442 webdav_arrayTableDataAccount[indexAccount][2] = authority;
443
444
445 g_objContent.loadAccountTable(webdav_arrayTableDataAccount);
446
447 //GetWifiDetailedInfo();
448 //RefreshFreqBandData();
449}
450
451
452function GetWebDavPathInfo(path) {
453
454 var size;
455 var get_path_info;
456 var webdav_ConfigMap = new Map();
457 var curConfigMap = new Map();
458
459 curConfigMap.put("RGW/webdav_path/path",path);
460
461 var configMap = curConfigMap.getChange(webdav_ConfigMap);
462 var retXml = PostXml("router","webdav_get_path_info",configMap);
463
464 $(retXml).find("webdav_path").each(function() {
465 get_path_info = decodeURIComponent($(this).find("path").text());
466 });
467 size= parseInt(get_path_info);
468 return size;
469}
470
471function GetWebDavTimezoneInfo() {
472
473 //var size;
474
475 var value;
476 var webdav_ConfigMap = new Map();
477 var curConfigMap = new Map();
478 var timezone_info;
479
480 curConfigMap.put("RGW/webdav_path/path","/www/webdav");
481
482 var configMap = curConfigMap.getChange(webdav_ConfigMap);
483 var retXml = PostXml("router","webdav_get_path_info",configMap);
484
485 $(retXml).find("webdav_path").each(function() {
486 timezone_info = decodeURIComponent($(this).find("timezone").text());
487 });
488 /*
489 value=parseInt(timezone_info);
490
491 if(value>0){
492 timezone_hour =Math.floor(value/100);
493 }else
494 {
495 timezone_hour =Math.ceil(value/100);
496 }
497
498 timezone_min=value%100;
499 */
500}
501
502
503function GMTToStr(time){
504 var date = new Date(time);
505 var Str=date.getFullYear() + '-' + (date.getMonth() + 1) + '-' +
506 date.getDate() + ' ' +
507 date.getHours() + ':' +
508 date.getMinutes() + ':' +
509 date.getSeconds();
510 return Str;
511}
512
513function WebDav_GetDate_By_DateStr(TimeDate)
514{
515 return GMTToStr(TimeDate);
516
517 /*
518 var week=TimeDate.substr(0, 3);
519 var day=TimeDate.substr(5, 2);
520 var mon=TimeDate.substr(8, 3);
521 if(mon=="Jan") mon="01";
522 else if(mon=="Feb") mon="02";
523 else if(mon=="Mar") mon="03";
524 else if(mon=="Apr") mon="04";
525 else if(mon=="May") mon="05";
526 else if(mon=="Jun") mon="06";
527 else if(mon=="Jul") mon="07";
528 else if(mon=="Aug") mon="08";
529 else if(mon=="Sep") mon="09";
530 else if(mon=="Oct") mon="10";
531 else if(mon=="Nov") mon="11";
532 else if(mon=="Dec") mon="12";
533 var year=TimeDate.substr(12, 4);
534 var HMS=TimeDate.substr(17, 8);
535 var hour_str= HMS.substr(0, 2);
536 var min_str= HMS.substr(3, 2);
537 var sec_str= HMS.substr(6, 2);
538 var hour_value=parseInt(hour_str)+timezone_hour;
539 var min_value=parseInt(min_str)+timezone_min;
540 return year+"-"+mon+"-"+day+" "+hour_value.toString()+":"+min_value.toString()+":"+sec_str;
541 */
542
543}
544