sylware / nyanlinux (public) (License: AFFERO GPLv3) (since 2019-09-09) (hash sha1)
scripts for a lean, from scratch, amd hardware, linux distro
List of commits:
Subject Hash Author Date (UTC)
alcatel onetouch usb 4G modem 84d6c9519cbc37a34668ef0cc02457efc9d6023a Sylvain BERTRAND 2021-11-29 16:02:36
gfx stack update (all fixes are in) 00b2f8c68cf5890fcae9386fe856f860344a771e Sylvain BERTRAND 2021-11-28 17:23:28
gfx stack update (mesa still miss a patch) 9954e8584b35fed6a0f489304a0d46b485f01dae Sylvain BERTRAND 2021-11-21 21:25:11
gfx stack update a5b595ee1abe4180cb4e6d96db98ad07179b3018 Sylvain BERTRAND 2021-11-14 18:39:43
steelseries rival3 b98d369ceb00428c3f5cf4747731676e6da60bfc Sylvain BERTRAND 2021-11-08 21:49:55
gfx stack update 68b23aba2c97f765428a34996b903b422462d927 Sylvain BERTRAND 2021-11-07 17:23:37
we can compile gcc 10.3.0 with gcc 4.7.4 (THE canonical gcc) 43cf1d265741bcedf42a818c6290774d70925554 Sylvain BERTRAND 2021-11-03 02:29:55
mesa-vulkan: fix from the mesa devs for navi10 XLE d1a76cb836c0dcfd49e127edd9aa3d4a3c13c7f3 Sylvain BERTRAND 2021-11-02 16:35:11
gfx stack update (vulkan still glitched) 5d0a8bbb9a8196ca83d44c64a1c7c11822347bf0 Sylvain BERTRAND 2021-10-31 21:54:53
nyanmp: update da9dd0a3a895bc9e43bc27eadc31f38e1498fd9a Sylvain BERTRAND 2021-10-30 19:23:18
lynk:update to dev10 282d91c6070e696e814560675fadd7bce897b1e2 Sylvain BERTRAND 2021-10-28 18:54:15
vulkan:radv:llvm is deprecated 7af270c7c22baf9682d117fe4ac5e05982f78ae4 Sylvain BERTRAND 2021-10-24 17:52:56
gfx stack update (vulkan still glitched) 9181fb18bd40939585ae68fcab9993a69559f47b Sylvain BERTRAND 2021-10-24 14:40:12
gfx stack update (vulkan is glitch) 2b9a609757d4bf8ff6442d2d93d85d8e16a51c37 Sylvain BERTRAND 2021-10-17 19:02:47
nyanmp: update f2b42c864f933922ec4362f2fa0b37b3c7f392db Sylvain BERTRAND 2021-10-10 17:10:04
links: update to 2.25 d55f72f6b1aadbc6da764fa5a30194623b34c489 Sylvain BERTRAND 2021-10-10 16:24:40
gfx stack update 9211d39f163939567b9bf2bf2f8a8fac0ec2ff74 Sylvain BERTRAND 2021-10-10 14:21:17
gfx stack update e1e496417589f98088d5976b474b50fc79981eef Sylvain BERTRAND 2021-10-03 19:30:13
gfx stack update (new bad dev spotted) 119fabe05f2ec0509910b56b1dbbce021807e24d Sylvain BERTRAND 2021-09-26 17:26:37
gfx stack update (radv fixed last llvm breaking tantrum). e85ac11e4e3b94d2a71e24f41b428e5d460f77ea Sylvain BERTRAND 2021-09-19 14:15:14
Commit 84d6c9519cbc37a34668ef0cc02457efc9d6023a - alcatel onetouch usb 4G modem
Author: Sylvain BERTRAND
Author date (UTC): 2021-11-29 16:02
Committer name: Sylvain BERTRAND
Committer date (UTC): 2021-11-29 16:02
Parent(s): 00b2f8c68cf5890fcae9386fe856f860344a771e
Signer:
Signing key:
Signing status: N
Tree: 2fe95f8267a1c24d23e7b2f9c5a2bac37ad72ad8
File Lines added Lines deleted
files/onetouch/childCommon.js 2 0
files/onetouch/get 1 0
files/onetouch/js_base.js 1369 0
files/onetouch/main.js 984 0
files/onetouch/onetouch_root.sh 4 0
files/onetouch/script.sh 428 0
files/onetouch/set 1 0
File files/onetouch/childCommon.js added (mode: 100644) (index 0000000..51fb55c)
1 <script>top.location.href='../index.html';</script>
2
File files/onetouch/get added (mode: 120000) (index 0000000..0231def)
1 script.sh
File files/onetouch/js_base.js added (mode: 100644) (index 0000000..8dd4dc8)
1 var sys = {
2 getRes:function (strId) {
3 return resourceInfo[strId];
4 },
5
6 getIpAddr:function (IP) {
7 if (IP == MACRO_INVALID_STR) {
8 return "0.0.0.0";
9 } else {
10 return IP;
11 }
12 },
13
14 isLogin:function (sessionId) {
15 return (sessionId == 1 || sessionId == 0 || sessionId == 2) ? false : true;
16 },
17 alert:function (strId, callback) {
18 var resMsg = resourceInfo[strId];
19 /*
20 alert((resMsg != null || resMsg != undefined) ? resMsg : strId);
21 if (callback != null) callback();
22 */
23 popUp.alert(callback==null?(resMsg!=undefined?resMsg:strId):resMsg!=undefined?resMsg:strId,callback);
24 },
25 confirm:function (strId, callback) {
26 var resMsg = resourceInfo[strId];
27 popUp.confirm(callback==null?(resMsg!=undefined?resMsg:strId):resMsg!=undefined?resMsg:strId,callback);
28 },
29 prompt:function(strId,time){
30 var resMsg = resourceInfo[strId];
31 popUp.prompt(time==null?(resMsg!=undefined?resMsg:strId):resMsg!=undefined?resMsg:strId,time)
32 },
33
34 getTimeDesc:function (time_sec) {
35 var that = this;
36 var days = Math.floor(time_sec / 86400);
37 var hours = Math.floor((time_sec - days * 86400) / 3600);
38 var minutes = Math.floor((time_sec - days * 86400 - hours * 3600) / 60);
39 var str = "";
40 str += days + " " + ((days <= 1) ? that.getRes("ids_day") : that.getRes("ids_days")) + " ";
41 str += hours + " " + ((hours <= 1) ? that.getRes('ids_hour') : that.getRes('ids_hours')) + " ";
42 str += ((minutes < 10) ? "0" : "") + minutes + " " + ((minutes <= 1) ? that.getRes("ids_minute") : that.getRes("ids_minutes"));
43 return str;
44 },
45
46 covertNum:function (number) {
47 return number > (1024 * 1024 * 1024)?(number / (1024 * 1024 *1024)).toFixed(2) + " GB":(number > (1024 * 1024) ? (number / (1024 * 1024)).toFixed(2) + " MB" : (number / 1024).toFixed(2) + " KB");
48 }
49 };
50
51 (function () {
52 var cache = {};
53 this.tmpl = function (template_id, data) {
54 var fn = cache[template_id];
55 this.get = function (dataid) {
56 var id = dataid.split(":")[0];
57 var res = data[id] ? (dataid.charAt(dataid.length - 1) == ":" ? data[id] + ':' : data[id]) : 'null';
58 return res;
59 }
60 if (!fn) {
61 var template = document.getElementById(template_id).innerHTML;
62 fn = new Function("data", "var p=[]; p.push('" +
63 template
64 .replace(/[\r\t\n]/g, " ")
65 .split("'").join("\\'")
66 .replace(/\${(.+?)}/g, "',this.get(\'$1\'),'")
67 .split("${").join("');")
68 .split("}").join("p.push('")
69 + "');return p.join('');");
70 cache[template_id] = fn;
71 }
72 return fn();
73 };
74 })();
75
76 (function ($) {
77 $.extend({
78 postForm:function (options) {
79 var defaults = {
80 action:"",
81 dataType:"json",
82 error:function () {
83 sys.alert("ids_dlg_sys_request_error");
84 }
85 };
86 var opts = $.extend(defaults, options);
87 $.ajax({
88 type:"post",
89 url:opts.action + "?rand=" + Math.random(),
90 data:opts.data || {some:"a"},
91 async:false,
92 cache:false,
93 dataType:opts.dataType,
94 success:function (data) {
95 opts.success(data);
96 },
97 error:function () {
98 opts.error()
99 }
100 });
101
102 },
103
104 getData:function (options) {
105 var backdata = null;
106 var defaults = {
107 url:"",
108 type:"post",
109 data:"d=1",
110 async:false,
111 dataType:"json",
112 success:function (data) {
113 backdata = data;
114 }
115 };
116 var opts = $.extend(defaults, options);
117 $.ajax({
118 type:opts.type,
119 async:opts.async,
120 url:opts.url,
121 data:opts.data,
122 dataType:opts.dataType,
123 success:function (data) {
124 opts.success(data)
125 },
126 error:function () {
127 backdata = null
128 }
129 });
130 return backdata;
131 }
132
133 });
134
135 $.fn.extend({
136 findSelectRes:function (datas) {
137 return this.each(function () {
138 var option_HtmlStr = "";
139 $.each(datas,function(index,val) {
140 option_HtmlStr += "<option value='" + index + "'>"+val + "</option>"
141 });
142 $(this).html(option_HtmlStr)
143 });
144 },
145 setBtnDisabled:function(){
146 return this.each(function(){
147 $(this).attr("disabled",true).addClass("btnDisable").removeClass("hover");
148 if ($.browser.msie) {
149 if ($.browser.version == "6.0" || $.browser.version == "7.0"){
150 $(this).parent(".btnWrap").addClass("disable");
151 }
152 }
153 })
154 },
155 removeBtnDisabled:function(){
156 return this.each(function(){
157 $(this).removeAttr("disabled").removeClass("btnDisable");
158 if ($.browser.msie) {
159 if ($.browser.version == "6.0" || $.browser.version == "7.0"){
160 $(this).parent(".btnWrap").removeClass("disable");
161 }
162 }
163 })
164 },
165
166 setData:function(data){
167 return this.each(function(){
168 $(this).html(data[$(this).attr("id")]);
169 })
170 },
171
172 replaceTpl:function(){
173 return this.each(function(){
174 $(this).replaceWith(tmpl($(this).attr("id"),resourceInfo));
175 })
176 },
177 selectFocus:function () {
178 return this.each(function () {
179 $(this).val("").focus();
180 })
181 },
182 showRule:function (ruleStr) {
183 var ruleMsg=sys.getRes(ruleStr)
184 return this.each(function () {
185 var thisParent = $(this).parent("li");
186 var ruleBox = thisParent.find(".rule");
187 if (ruleBox.size() < 1) {
188 thisParent.append("<p class='rule'>" + ruleMsg + "</p>")
189 } else {
190 thisParent.find(".rule").html(ruleMsg);
191 }
192
193 //$(this).selectFocus();
194 $(this).addClass("errorIpt");
195 $(this).bind("focusin",function(){
196 $(this).removeClass("errorIpt");
197 thisParent.find(".rule").remove();
198 });
199 });
200 },
201 showWarn:function (ruleStr) {
202 var ruleMsg=sys.getRes(ruleStr)
203 return this.each(function () {
204 var ruleBox = $("#warning").find(".rule");
205 if (ruleBox.size() < 1) {
206 $("#warning").addClass("rule").html(ruleMsg).css("display","");
207 }
208 $(this).addClass("errorIpt");
209 $(this).bind("focusin",function(){
210 $(this).removeClass("errorIpt");
211 $("#warning").html("").removeClass("rule");
212 });
213 });
214 }
215
216 });
217 })(jQuery);
218 function getUrlPara(paraName) {
219 var sUrl = location.href;
220 var sReg = "(?:\\?|&){1}" + paraName + "=([^&]*)"
221 var re = new RegExp(sReg, "gi");
222 re.exec(sUrl);
223 return RegExp.$1;
224 }
225
226 function check_password(str) {
227 return /^[A-Za-z0-9\-\+\!\^\$\@\#\&\*]{4,16}$/.test(str);
228 }
229
230 function check_ssid(str) {
231 return /^[A-Za-z0-9\.\s\-\_]+$/.test(str);
232 }
233
234 function check_profile_password(str) {
235 return !(/[\s'\"\\]/g.test(str))
236 }
237
238 function checkProfileName(name){
239 return !(/[:;\,\"\\&%<>?\+]+/g.test(name));
240 }
241
242
243 function show_sms_time(sms_time) {
244 var time_i = parseInt(sms_time);
245
246 var time_base = new Date(1980, 0, 6, 0, 0, 0, 0);
247
248 var time_space = time_base.getTime();
249
250 var all_time_space = new Date(time_i * 1000 + time_space);
251
252 var nowDateTime = new Date(parseInt((all_time_space.getTime())));
253
254 var year = nowDateTime.getFullYear();
255 var month = nowDateTime.getMonth() + 1;
256 var day = nowDateTime.getDate();
257
258 return year + "-" + month + "-" + day + " " + nowDateTime.toLocaleTimeString();
259
260 //return nowDateTime.toLocaleDateString() + " " + nowDateTime.toLocaleTimeString();
261 }
262 function show_SD_time(sms_time) {
263 var time_i = parseInt(sms_time);
264
265 //var time_base = new Date(1970,0,6,0,0,0,0);
266
267 //var time_space = time_base.getTime();
268
269 var all_time_space = new Date(time_i * 1000);
270
271 var nowDateTime = new Date(parseInt((all_time_space.getTime())));
272
273 var year = nowDateTime.getFullYear();
274 var month = nowDateTime.getMonth() + 1;
275 var day = nowDateTime.getDate();
276
277 return year + "-" + month + "-" + day + " " + nowDateTime.toLocaleTimeString();
278
279 //return nowDateTime.toLocaleDateString() + " " + nowDateTime.toLocaleTimeString();
280 }
281
282 function isASCIIData(str) {
283 if (str == null) {
284 return true;
285 }
286 var i = 0;
287 var char_i;
288 var num_char_i;
289 for (i = 0; i < str.length; i++) {
290 char_i = str.charAt(i);
291 num_char_i = char_i.charCodeAt();
292 if (num_char_i > 255) {
293 return false;
294 }
295 }
296 }
297
298 function isHexaDigit(digit) {
299 var hexVals = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "a", "b", "c", "d", "e", "f");
300 var len = hexVals.length;
301 var i = 0;
302 var ret = false;
303
304 for (i = 0; i < len; i++) {
305 if (digit == hexVals[i]) {
306 break;
307 }
308 }
309
310 if (i < len) {
311 ret = true;
312 }
313 return ret;
314 }
315
316 function isHexaData(data) {
317 var len = data.length;
318 var i = 0;
319 for (i = 0; i < len; i++) {
320 if (isHexaDigit(data.charAt(i)) == false) {
321 return false;
322 }
323 }
324 return true;
325 }
326
327 function check_input_char(str) {
328 var i;
329 var char_i;
330 var num_char_i;
331
332 if (str == "") {
333 return true;
334 }
335
336 for (i = 0; i < str.length; i++) {
337 char_i = str.charAt(i);
338 num_char_i = char_i.charCodeAt();
339 if ((num_char_i > MACRO_SUPPORT_CHAR_MAX) || (num_char_i < MACRO_SUPPORT_CHAR_MIN)) {
340 return false;
341 }
342 else if ((MACRO_NOT_SUPPORT_CHAR_COMMA == num_char_i)
343 || (MACRO_NOT_SUPPORT_CHAR_QUOTATION_MARK == num_char_i)
344 || (MACRO_NOT_SUPPORT_CHAR_COLON == num_char_i)
345 || (MACRO_NOT_SUPPORT_CHAR_SEMICOLON == num_char_i)
346 || (MACRO_NOT_SUPPORT_BACKSLASH_MARK == num_char_i)
347 || (MACRO_NOT_SUPPORT_CHAR_38 == num_char_i)
348 ) {
349 return false;
350 }
351 else {
352 continue;
353 }
354 }
355 return true;
356 }
357
358 function is_wep_key(key, key_encrp) {
359 var len = key.length;
360 if (key_encrp == 0) {
361 if (len != 5 && len != 10) {
362 return false;
363 }
364 }
365
366 if (key_encrp == 1) {
367 if (len != 13 && len != 26) {
368 return false;
369 }
370
371
372 }
373 switch (len) {
374 case 5:
375 case 13:
376 if (isASCIIData(key) == false) {
377 return false;
378 }
379 break;
380 case 10:
381 case 26:
382 if (isHexaData(key) == false) {
383 return false;
384 }
385 break;
386 default:
387 return false;
388 }
389 return true;
390 }
391
392 function isNumber(str) {
393 var i;
394 if (str.length <= 0) {
395 return false;
396 }
397 for (i = 0; i < str.length; i++) {
398 var c = str.charCodeAt(i);
399 if (c < 48 || c > 57) {
400 return false;
401 }
402 }
403 return true;
404 }
405
406 function IsSameSubnetAddrs(Ip1, Ip2, mask) {
407 var addrParts1 = Ip1.split(".");
408 var addrParts2 = Ip2.split(".");
409 var maskParts = mask.split(".");
410 for (i = 0; i < 4; i++) {
411 if (((Number(addrParts1[i])) & (Number(maskParts[i]))) != ((Number(addrParts2[i])) & (Number(maskParts[i])))) {
412 return false;
413 }
414 }
415 return true;
416 }
417
418 function getLeftMostZeroBitPos(num) {
419 var i = 0;
420 var numArr = [128, 64, 32, 16, 8, 4, 2, 1];
421
422 for (i = 0; i < numArr.length; i++)
423 if ((num & numArr[i]) == 0)
424 return i;
425
426 return numArr.length;
427 }
428
429 function getRightMostOneBitPos(num) {
430 var i = 0;
431 var numArr = [1, 2, 4, 8, 16, 32, 64, 128];
432
433 for (i = 0; i < numArr.length; i++)
434 if (((num & numArr[i]) >> i) == 1)
435 return (numArr.length - i - 1);
436
437 return -1;
438 }
439
440 function isValidSubnetMask(mask) {
441 var i = 0;
442 var num = 0;
443 var zeroBitPos = 0, oneBitPos = 0;
444 var zeroBitExisted = false;
445
446 if (mask == '0.0.0.0') {
447 return false;
448 }
449
450 if (mask == '255.255.255.255') {
451 return false;
452 }
453
454 var maskParts = mask.split('.');
455 if (maskParts.length != 4) {
456 return false;
457 }
458
459 for (i = 0; i < 4; i++) {
460 if (isNaN(maskParts[i]) == true) {
461 return false;
462 }
463 if (maskParts[i] == '') {
464 return false;
465 }
466 if (maskParts[i].indexOf(' ') != -1) {
467 return false;
468 }
469
470 if ((maskParts[i].indexOf('0') == 0) && (maskParts[i].length != 1)) {
471 return false;
472 }
473
474 num = parseInt(maskParts[i]);
475 if (num < 0 || num > 255) {
476 return false;
477 }
478 if (zeroBitExisted == true && num != 0) {
479 return false;
480 }
481 zeroBitPos = getLeftMostZeroBitPos(num);
482 oneBitPos = getRightMostOneBitPos(num);
483 if (zeroBitPos < oneBitPos) {
484 return false;
485 }
486 if (zeroBitPos < 8) {
487 zeroBitExisted = true;
488 }
489 }
490
491 return true;
492 }
493
494 function isValidIpAddress(address) {
495 var addrParts = address.split('.');
496 if (addrParts.length != 4) {
497 return false;
498 }
499
500 for (i = 0; i < 4; i++) {
501 if (isNaN(addrParts[i]) == true) {
502 return false;
503 }
504
505 if (addrParts[i] == '') {
506 return false;
507 }
508
509 if (addrParts[i].indexOf(' ') != -1) {
510 return false;
511 }
512
513 if ((addrParts[i].indexOf('0') == 0) && (addrParts[i].length != 1)) {
514 return false;
515 }
516 }
517
518 if ((addrParts[0] <= 0 || addrParts[0] == 127 || addrParts[0] > 223)
519 || (addrParts[1] < 0 || addrParts[1] > 255)
520 || (addrParts[2] < 0 || addrParts[2] > 255)
521 || (addrParts[3] <= 0 || addrParts[3] >= 255)) {
522 return false;
523 }
524
525 return true;
526 }
527 function inet_aton(a) {
528 var n;
529
530 n = a.split(/\./);
531 if (n.length != 4) {
532 return 0;
533 }
534 return ((n[0] << 24) | (n[1] << 16) | (n[2] << 8) | n[3]);
535 }
536
537 function inet_ntoa(n) {
538 var a;
539
540 a = (n >> 24) & 255;
541 a += "."
542 a += (n >> 16) & 255;
543 a += "."
544 a += (n >> 8) & 255;
545 a += "."
546 a += n & 255;
547
548 return a;
549 }
550
551 function is_broadcast_or_network_address(Ip, Netmask) {
552 var ip;
553 var mask;
554 var netaddr;
555 var broadaddr;
556
557 ip = inet_aton(Ip);
558 mask = inet_aton(Netmask);
559 netaddr = ip & mask;
560 broadaddr = netaddr | ~mask;
561
562 if (netaddr == ip || ip == broadaddr) {
563 return false;
564 }
565
566 return true;
567 }
568
569 function check_host_name(name) {
570 var doname = /^([\w-]+\.)+(home)$/;
571 if (!doname.test(name)) {
572 return false;
573 }
574 return true;
575 }
576
577 function check_input_dirname(str) {
578 var i;
579 var char_i;
580 var num_char_i;
581
582 if (str == "") {
583 return true;
584 }
585
586 for (i = 0; i < str.length; i++) {
587 char_i = str.charAt(i);
588 num_char_i = char_i.charCodeAt();
589 if ((MACRO_NOT_SUPPORT_CHAR_COMMA == num_char_i)
590 || (MACRO_NOT_SUPPORT_CHAR_QUOTATION_MARK == num_char_i)
591 || (MACRO_NOT_SUPPORT_CHAR_COLON == num_char_i)
592 || (MACRO_NOT_SUPPORT_CHAR_SEMICOLON == num_char_i)
593 || (MACRO_NOT_SUPPORT_BACKSLASH_MARK == num_char_i)
594 || (MACRO_NOT_SUPPORT_CHAR_38 == num_char_i)
595 || (MACRO_NOT_SUPPORT_CHAR_42 == num_char_i)
596 || (MACRO_NOT_SUPPORT_CHAR_60 == num_char_i)
597 || (MACRO_NOT_SUPPORT_CHAR_62 == num_char_i)
598 || (MACRO_NOT_SUPPORT_CHAR_63 == num_char_i)
599 || (MACRO_NOT_SUPPORT_CHAR_42 == num_char_i)
600 || (MACRO_NOT_SUPPORT_CHAR_47 == num_char_i)
601 || (MACRO_NOT_SUPPORT_CHAR_124 == num_char_i)
602 ) {
603 return false;
604 } else {
605 continue;
606 }
607 }
608 return true;
609 }
610
611 var Vendor = (function () {
612
613 function getLoginState() {
614 var gData=null;
615 gData = $.getData({
616 url:"/goform/getLoginState?rand=" + Math.random()
617 })
618 return gData.loginStatus;
619 }
620
621 function Login(params, callback) {
622 $.postForm({
623 action:"/goform/setLogin",
624 data:params,
625 success:function (data) {
626 callback(data);
627 }
628 })
629
630 }
631
632 function Logout(callback) {
633 $.postForm({
634 action:"/goform/setLogout",
635 success:function (data) {
636 callback(data.error);
637 }
638 })
639 }
640
641 function getLanguage() {
642 var currentLanguage = "en";
643 var data = $.getData({
644 url:"/goform/getCurrentLanguage?rand=" + Math.random()
645 })
646 return currentLanguage = data.language;
647 }
648
649 function SetLanguage(strLanguageString, callback) {
650 $.postForm({
651 action:"/goform/setLanguage",
652 data:{
653 "language":strLanguageString
654 },
655 success:function (data) {
656 callback(data.error);
657 }
658 })
659
660 }
661
662 function SetPassword(newPassword, callback) {
663 $.postForm({
664 action:"/goform/setPassword",
665 data:{
666 "newPassword":newPassword
667 },
668 success:function (data) {
669 callback(data.error);
670 }
671 })
672 }
673
674
675 function getWlanSettingInfo() {
676 var gData = null;
677 gData = $.getData({
678 url:"/goform/getWlanInfo?rand=" + Math.random()
679 });
680 return gData;
681 }
682
683 function async_getWlanSettingInfo(callback) {
684 $.getData({
685 async:true,
686 url:"/goform/getWlanInfo?rand=" + Math.random(),
687 success:function (data) {
688 callback(data)
689 }
690 })
691
692 }
693
694
695 function setWlanSettingInfo(params, callback) {
696 $.postForm({
697 action:"/goform/setWlanInfo",
698 data:params,
699 success:function (data) {
700 callback(data.error);
701 }
702 })
703 }
704
705
706 function getSimcardInfo() {
707 var gData = null;
708 gData = $.getData({
709 url:"/goform/getSimcardInfo?rand=" + Math.random()
710 });
711 return gData;
712 }
713
714
715 function set_unlockPIN(params, callback) {
716 $.postForm({
717 action:"/goform/unlockPIN",
718 data:params,
719 success:function (data) {
720 callback(data.error);
721 }
722 })
723 }
724
725 function set_unlockPUK(params, callback) {
726 $.postForm({
727 action:"/goform/unlockPUK",
728 data:params,
729 success:function (data) {
730 callback(data.error);
731 }
732 })
733 }
734
735 function set_changePIN(params, callback) {
736 $.postForm({
737 action:"/goform/changePIN",
738 data:params,
739 success:function (data) {
740 callback(data.error);
741 }
742 })
743 }
744
745 //enable or disable
746 function set_switchPIN(params, callback) {
747 $.postForm({
748 action:"/goform/switchPIN",
749 data:params,
750 success:function (data) {
751 callback(data.error);
752 }
753 })
754 }
755
756 function disablePIN(params, callback) {
757 $.postForm({
758 action:"/goform/switchPIN",
759 data:params,
760 success:function (data) {
761 callback(data.error);
762 }
763 })
764 }
765
766 function setUnlockSIMLock(params, callback) {
767 $.postForm({
768 action:"/goform/unlockSIMLock",
769 data:params,
770 success:function (data) {
771 callback(data.error);
772 }
773 })
774 }
775
776 function getSMSList(type,pageNum){
777 var gData=null;
778 gData = $.getData({
779 data:"key="+type+"&pageNum=" + pageNum,
780 url:"/goform/getSMSlist?rand=" + Math.random()
781 });
782 return {
783 "list":gData.data
784 }
785 }
786
787
788
789 function getSMSStoreState() {
790 var gData = null;
791 gData = $.getData({
792 url:"/goform/getSMSStoreState?rand=" + Math.random()
793 });
794 return gData;
795 }
796
797 function getPageInfo(type){
798 var gData = null;
799 gData = $.getData({
800 url:"/goform/getSMSPageInfo?key="+type+"&rand=" + Math.random()
801 });
802 return gData;
803 }
804
805
806 function getSingleSMS(sms_id) {
807 var gData = null;
808 gData = $.getData({
809 url:"/goform/getSingleSMS?sms_id=" + sms_id + "&rand=" + Math.random()
810 });
811 return gData;
812 }
813
814 function deleteSMS(sms_id, callback) {
815 $.postForm({
816 action:"/goform/deleteSMS",
817 data:{
818 "sms_id":sms_id
819 },
820 success:function (data) {
821 callback(data.error);
822 }
823 })
824 }
825
826 function sendSMS(params, callback) {
827 $.postForm({
828 action:"/goform/sendSMS",
829 data:params,
830 success:function (data) {
831 callback(data.error);
832 }
833 })
834 }
835
836 function saveSMS(params, callback) {
837 $.postForm({
838 action:"/goform/saveSMS",
839 data:params,
840 success:function (data) {
841 callback(data.error);
842 }
843 })
844 }
845
846 function setSMSSetting(params, callback) {
847 $.postForm({
848 action:"/goform/setSMSSetting",
849 data:params,
850 success:function (data) {
851 callback(data.error);
852 }
853 })
854 }
855
856
857 function async_getSendSMSResult(callback) {
858 $.getData({
859 async:true,
860 url:"/goform/getSendSMSResult?rand=" + Math.random(),
861 success:function (data) {
862 callback(data.send_state)
863 }
864 })
865 }
866
867 function getNetworkSetting() {
868 var gData = null;
869 gData = $.getData({
870 url:"/goform/getNetworkInfo?rand=" + Math.random()
871 });
872 return gData;
873 }
874
875 function setNetworkSetting(params, callback) {
876 $.postForm({
877 action:"/goform/setNetworkInfo",
878 data:params,
879 success:function (data) {
880 callback(data.error);
881 }
882 })
883 }
884
885 function setNetworkSelect(params, callback) {
886 $.postForm({
887 action:"/goform/setNetworkSelect",
888 data:params,
889 success:function (data) {
890 callback(data.error);
891 }
892 })
893 }
894
895 function getNetworkList() {
896 var gData = null;
897 gData = $.getData({
898 url:"/goform/getNetworkList?rand=" + Math.random()
899 });
900 return gData;
901 }
902
903 function setNetworkRegister(params, callback) {
904 $.postForm({
905 action:"/goform/setNetworkRegister",
906 data:params,
907 success:function (data) {
908 callback(data.error);
909 }
910 })
911 }
912
913 function getNetworkRegisterResult() {
914 var gData = null;
915 gData = $.getData({
916 url:"/goform/getNetworkRegisterResult?rand=" + Math.random()
917 });
918 return gData.regist_state;
919 }
920
921 function getWanInfo() {
922 var gData = null;
923 gData = $.getData({
924 url:"/goform/getWanInfo?rand=" + Math.random()
925 });
926 return gData;
927 }
928
929 function async_getWanInfo(callback) {
930 $.getData({
931 async:true,
932 url:"/goform/getWanInfo?rand=" + Math.random(),
933 success:function (data) {
934 callback(data)
935 }
936 })
937
938 }
939
940
941 function setWanConnect(params, callback) {
942 $.postForm({
943 action:"/goform/setWanConnect",
944 data:params,
945 success:function (data) {
946 callback(data.error);
947 }
948 })
949 }
950
951 function setWanDisconnect(callback) {
952 $.postForm({
953 action:"/goform/setWanDisconnect",
954 success:function (data) {
955 callback(data.error);
956 }
957 })
958 }
959
960 function setCancelWanConnect(callback){
961 $.postForm({
962 action:"/goform/setWanConnectCancel",
963 success:function (data) {
964 callback(data.error);
965 }
966 })
967 }
968
969 function getCurrentDialProfile() {
970 var gData = null;
971 gData = $.getData({
972 url:"/goform/getCurrentProfile?rand=" + Math.random()
973 });
974 return gData.profile_id;
975 }
976
977 function getRouterSetting() {
978 var gData = null;
979 gData = $.getData({
980 url:"/goform/getRouterInfo?rand=" + Math.random()
981 });
982 return gData;
983 }
984
985 function setRouterSetting(params, callback) {
986 $.postForm({
987 action:"/goform/setRouterSetting",
988 data:params,
989 success:function (data) {
990 callback(data.error);
991 }
992 })
993 }
994
995
996 function getSystInfo() {
997 var gData = null;
998 gData = $.getData({
999 url:"/goform/getSysteminfo?rand=" + Math.random()
1000 });
1001 return gData;
1002 }
1003
1004 function getImgInfo() {
1005 var gData = null;
1006 gData = $.getData({
1007 url:"/goform/getImgInfo?rand=" + Math.random()
1008 });
1009 return gData;
1010 }
1011
1012 function async_getImgInfo(callback) {
1013 $.getData({
1014 async:true,
1015 url:"/goform/getImgInfo?rand=" + Math.random(),
1016 success:function (data) {
1017 callback(data)
1018 }
1019 })
1020 }
1021
1022 function setWpsPin(params, callback) {
1023 $.postForm({
1024 action:"/goform/setWpsPin",
1025 data:params,
1026 success:function (data) {
1027 callback(data);
1028 }
1029 })
1030 }
1031
1032 function setWpsPbc(callback) {
1033 $.postForm({
1034 action:"/goform/setWpsPbc",
1035 success:function (data) {
1036 callback(data);
1037 }
1038 })
1039 }
1040
1041 function getWanConnectMode() {
1042 var gData = null;
1043 gData = $.getData({
1044 url:"/goform/getWanConnectMode?rand=" + Math.random()
1045 });
1046 return gData;
1047 }
1048
1049
1050 function setWanConnectMode(params, callback) {
1051 $.postForm({
1052 action:"/goform/setWanConnectMode",
1053 data:params,
1054 success:function (data) {
1055 callback(data.error);
1056 }
1057 })
1058 }
1059
1060 function getRouterInfo() {
1061 var gData = null;
1062 gData = $.getData({
1063 url:"/goform/getRouterInfo?rand=" + Math.random()
1064 });
1065 return gData;
1066 }
1067
1068
1069 function setRouterInfo(params, callback) {
1070 $.postForm({
1071 action:"/goform/setRouterInfo",
1072 data:params,
1073 success:function (data) {
1074 callback(data.error);
1075 }
1076 })
1077 }
1078
1079 function getUseHistory() {
1080 var gData = null;
1081 gData = $.getData({
1082 url:"/goform/getUseHistory?rand=" + Math.random()
1083 });
1084 return gData;
1085 }
1086
1087
1088 function setUseHistoryClear(params, callback) {
1089 $.postForm({
1090 action:"/goform/setUseHistoryClear",
1091 data:params,
1092 success:function (data) {
1093 callback(data.error);
1094 }
1095 })
1096 }
1097
1098 function getWlanClientInfo() {
1099 var gData = null;
1100 gData = $.getData({
1101 url:"/goform/getWlanClientInfo?rand=" + Math.random()
1102 });
1103 return gData.data;
1104 }
1105
1106 function getProfileList() {
1107 var gData = null;
1108 gData = $.getData({
1109 url:"/goform/getProfileList?rand=" + Math.random()
1110 });
1111 return gData;
1112 }
1113
1114 function getMACFilterInfo() {
1115 var gData = null;
1116 gData = $.getData({
1117 url:"/goform/getMACFilterInfo?rand=" + Math.random()
1118 });
1119 return gData;
1120
1121 }
1122
1123 function setMACFilterInfo(params, callback) {
1124 $.postForm({
1125 action:"/goform/setMACFilterInfo",
1126 data:params,
1127 success:function (data) {
1128 callback(data);
1129 }
1130 })
1131 }
1132
1133 function setProfileSave(params, callback) {
1134 $.postForm({
1135 action:"/goform/setProfileSave",
1136 data:params,
1137 success:function (data) {
1138 callback(data.error);
1139 }
1140 })
1141 }
1142
1143 function setProfileDefault(params, callback) {
1144 $.postForm({
1145 action:"/goform/setProfileDefault",
1146 data:params,
1147 success:function (data) {
1148 callback(data.error);
1149 }
1150 })
1151 }
1152
1153 function setProfileDelete(params, callback) {
1154 $.postForm({
1155 action:"/goform/setProfileDelete",
1156 data:params,
1157 success:function (data) {
1158 callback(data.error);
1159 }
1160 })
1161 }
1162
1163 function setReboot(params, callback) {
1164 $.postForm({
1165 action:"/goform/setReboot",
1166 data:params,
1167 success:function (data) {
1168 callback(data.error);
1169 }
1170 })
1171 }
1172
1173 function setReset(params, callback) {
1174 $.postForm({
1175 action:"/goform/setReset",
1176 data:params,
1177 success:function (data) {
1178 callback(data.error);
1179 }
1180 })
1181 }
1182
1183 function setBackupSettings(params, callback) {
1184 $.postForm({
1185 action:"/goform/setBackupSettings",
1186 data:params,
1187 success:function (data) {
1188 callback(data.error);
1189 }
1190 })
1191 }
1192
1193 function getBackupSettings() {
1194 $("body").append("<iframe src='/cfgbak/configure.bin' style='display: none'></iframe>");
1195 }
1196
1197
1198 function getFOTADownloadState(){
1199 var gData = null;
1200 gData = $.getData({
1201 url:"/goform/getFOTADownloadState"
1202 });
1203 return gData.state;
1204 }
1205
1206 function setFOTAStartCheckVersion(callback){
1207 $.postForm({
1208 action:"/goform/setFOTAStartCheckVersion",
1209 success:function (data) {
1210 callback(data.error);
1211 }
1212 })
1213 }
1214
1215
1216 function getDeviceNewVersion(){
1217 var gData = null;
1218 gData = $.getData({
1219 url:"/goform/getDeviceNewVersion"
1220 });
1221 return gData.is_new_version;
1222 }
1223
1224
1225 function getFOTADownloadInfo(){
1226 var gData = null;
1227 gData = $.getData({
1228 url:"/goform/getFOTADownloadInfo"
1229 });
1230 return gData;
1231 }
1232
1233 function setFOTAStartDownload(callback){
1234 $.postForm({
1235 action:"/goform/setFOTAStartDownload",
1236 success:function (data) {
1237 callback(data.error);
1238 }
1239 })
1240 }
1241
1242
1243 function setFOTACancelDownload(callback){
1244 $.postForm({
1245 action:"/goform/setFOTACancelDownload",
1246 success:function (data) {
1247 callback(data.error);
1248 }
1249 })
1250 }
1251
1252 function setFOTAStartUpdate(callback){
1253 $.postForm({
1254 action:"/goform/setFOTAStartUpdate",
1255 success:function (data) {
1256 callback(data.error);
1257 }
1258 })
1259 }
1260 function async_getUSSDSendResult(callback) {
1261 $.getData({
1262 async:true,
1263 url:"/goform/getUSSDSendResult?rand=" + Math.random(),
1264 success:function (data) {
1265 callback(data)
1266 }
1267 })
1268 }
1269
1270 function setUSSDSend(params, callback){
1271 $.postForm({
1272 action:"/goform/setUSSDSend",
1273 data:params,
1274 success:function (data) {
1275 callback(data.error);
1276 }
1277 })
1278 }
1279
1280 function async_getUSSDEnd(callback){
1281 $.getData({
1282 async:true,
1283 url:"/goform/setUSSDEnd?rand=" + Math.random(),
1284 success:function (data) {
1285 callback(data)
1286 }
1287 })
1288 }
1289
1290 return {
1291 getLoginState:getLoginState,
1292 Login:Login,
1293 Logout:Logout,
1294 getLanguage:getLanguage,
1295 SetLanguage:SetLanguage,
1296 SetPassword:SetPassword,
1297 getWlanSettingInfo:getWlanSettingInfo,
1298 async_getWlanSettingInfo:async_getWlanSettingInfo,
1299 setWlanSettingInfo:setWlanSettingInfo,
1300 getSimcardInfo:getSimcardInfo,
1301 set_unlockPIN:set_unlockPIN,
1302 set_unlockPUK:set_unlockPUK,
1303 set_changePIN:set_changePIN,
1304 set_switchPIN:set_switchPIN,
1305 disablePIN:disablePIN,
1306 setUnlockSIMLock:setUnlockSIMLock,
1307 getSMSList:getSMSList,
1308 getPageInfo:getPageInfo,
1309 getSMSStoreState:getSMSStoreState,
1310 getSingleSMS:getSingleSMS,
1311 deleteSMS:deleteSMS,
1312 sendSMS:sendSMS,
1313 saveSMS:saveSMS,
1314 setSMSSetting:setSMSSetting,
1315 async_getSendSMSResult:async_getSendSMSResult,
1316 getNetworkSetting:getNetworkSetting,
1317 setNetworkSetting:setNetworkSetting,
1318 setNetworkSelect:setNetworkSelect,
1319 getNetworkList:getNetworkList,
1320 setNetworkRegister:setNetworkRegister,
1321 getNetworkRegisterResult:getNetworkRegisterResult,
1322 getWanInfo:getWanInfo,
1323 async_getWanInfo:async_getWanInfo,
1324 setWanConnect:setWanConnect,
1325 setWanDisconnect:setWanDisconnect,
1326 setCancelWanConnect:setCancelWanConnect,
1327 getCurrentDialProfile:getCurrentDialProfile,
1328 getRouterSetting:getRouterSetting,
1329 setRouterSetting:setRouterSetting,
1330 getSystInfo:getSystInfo,
1331 getImgInfo:getImgInfo,
1332 async_getImgInfo:async_getImgInfo,
1333 setWpsPin:setWpsPin,
1334 setWpsPbc:setWpsPbc,
1335 getWanConnectMode:getWanConnectMode,
1336 setWanConnectMode:setWanConnectMode,
1337 getRouterInfo:getRouterInfo,
1338 setRouterInfo:setRouterInfo,
1339 getUseHistory:getUseHistory,
1340 setUseHistoryClear:setUseHistoryClear,
1341 getWlanClientInfo:getWlanClientInfo,
1342 getProfileList:getProfileList,
1343 getMACFilterInfo:getMACFilterInfo,
1344 setMACFilterInfo:setMACFilterInfo,
1345 setProfileSave:setProfileSave,
1346 setProfileDefault:setProfileDefault,
1347 setProfileDelete:setProfileDelete,
1348 setReboot:setReboot,
1349 setReset:setReset,
1350 setBackupSettings:setBackupSettings,
1351 getBackupSettings:getBackupSettings,
1352
1353 getFOTADownloadState:getFOTADownloadState,
1354 getDeviceNewVersion:getDeviceNewVersion,
1355 getFOTADownloadInfo:getFOTADownloadInfo,
1356 setFOTAStartDownload:setFOTAStartDownload,
1357 setFOTACancelDownload:setFOTACancelDownload,
1358 setFOTAStartUpdate:setFOTAStartUpdate,
1359 setFOTAStartCheckVersion:setFOTAStartCheckVersion,
1360 async_getUSSDSendResult:async_getUSSDSendResult,
1361 setUSSDSend:setUSSDSend,
1362 async_getUSSDEnd:async_getUSSDEnd
1363 }
1364
1365
1366 })();
1367
1368 $.extend(window, Vendor);
1369
File files/onetouch/main.js added (mode: 100644) (index 0000000..4e63e3c)
1 //---------------- global ---------------------------------------
2 /* API result */
3 var API_RESULT_SUCCESS = 0;
4 var API_RESULT_FAIL = 1;
5
6 /*login state*/
7 var LOGIN_STATE_SUCCESS = 5;
8 var LOGIN_STATE_LOGOUT = 0;
9 var LOGIN_STATE_PASSWORD_WRONG = 1;
10 var LOGIN_STATE_SOME_ONE_LOGINED = 2;
11
12
13 var MACRO_INVALID_STR = "-11111";
14 /*SIM card state*/
15
16 var MACRO_UIM_APP_STATE_UNKNOWN_V01 = 0;
17 var MACRO_UIM_APP_STATE_DETECTED_V01 = 1;
18 var MACRO_UIM_APP_STATE_PIN1_OR_UPIN_REQ_V01 = 2;
19 var MACRO_UIM_APP_STATE_PUK1_OR_PUK_REQ_V01 = 3;
20 var MACRO_UIM_APP_STATE_PERSON_CHECK_REQ_V01 = 4;
21 var MACRO_UIM_APP_STATE_PIN1_PERM_BLOCKED_V01 = 5;
22 var MACRO_UIM_APP_STATE_ILLEGAL_V01 = 6;
23 var MACRO_UIM_APP_STATE_READY_V01 = 7;
24 var MACRO_SIM_CARD_INITING = 11;
25
26 /*SIM card PIN state*/
27 var MACRO_UIM_PIN_STATE_UNKNOWN = 0;
28 var MACRO_UIM_PIN_STATE_ENABLED_NOT_VERIFIED = 1;
29 var MACRO_UIM_PIN_STATE_ENABLED_VERIFIED = 2;
30 var MACRO_UIM_PIN_STATE_DISABLED = 3;
31 var MACRO_UIM_PIN_STATE_BLOCKED = 4;
32 var MACRO_UIM_PIN_STATE_PERMANENTLY_BLOCKED = 5;
33
34 var MACRO_SIM_CARD_ABSENT = 0;
35 var MACRO_SIM_CARD_PRESENT = 1;
36 var MACRO_SIM_CARD_NOT_INIT = 2;
37 var MACRO_SIM_CARD_CHV_BLOCKED = 5;
38 var MACRO_SIM_CARD_NOT_READY = 0;
39 var MACRO_SIM_CARD_VALID = 7;
40 var MACRO_SIM_CARD_REINIT = 7;
41 var MACRO_SIM_CARD_ILLEGAL_CARD = 0;
42 var MACRO_SIM_CARD_INVALID = 0;
43 var MACRO_SIM_CARD_ERROR = 6;
44 var MACRO_CARD_SIM_LOCK_CHECK = 4;
45 var MACRO_SIM_CARD_API_ERROR = 255;
46
47 var GSDI_PIN_NOT_INITIALISED = 0;
48 var GSDI_PIN_DISABLED = 7;
49 var GSDI_PIN_ENABLED = 2;
50 var GSDI_PIN_BLOCKED = 3;
51 var GSDI_PIN_PERM_BLOCKED = 5;
52 var GSDI_MAX_PIN_STATUS = 7;
53
54 var SIMLOCK_PERSO_NONE_REQUIRED = -1;/*no sim lock/sim lock unlock*/
55 var SIMLOCK_PERSO_NET_PIN_REQUIRED = 0; /*nck*/
56 var SIMLOCK_PERSO_NETSUB_PIN_REQUIRED = 1; /*nsck*/
57 var SIMLOCK_PERSO_SP_PIN_REQUIRED = 2; /*spck*/
58 var SIMLOCK_PERSO_CORP_PIN_REQUIRED = 3; /*cck*/
59 var SIMLOCK_PERSO_PH_FSIM_PIN_REQUIRED = 4; /*pck*/
60
61 var SIMLOCK_PERSO_NET_PUK_REQUIRED = 15; /*rck*/
62 var SIMLOCK_PERSO_NETSUB_PUK_REQUIRED =16;
63 var SIMLOCK_PERSO_SP_PUK_REQUIRED = 17;
64 var SIMLOCK_PERSO_CORP_PUK_REQUIRED = 18;
65 var SIMLOCK_PERSO_PH_FSIM_PUK_REQUIRED = 19;
66 var SIMLOCK_PERSO_RCK_FORBID = 30;/*rck forbid*/
67
68 var MACRO__API_ERROR = 255;
69 var MACRO_SAVE_PIN_ENABLED = 1;
70 var MACRO_SAVE_PIN_DISABLED = 0;
71
72 /*auto connect even when roaming*/
73 var MACRO_AUTO_CONNECT_ENABLED = 0;
74 var MACRO_AUTO_CONNECT_DISABLED = 1;
75
76 /*wan status*/
77 var MACRO_PPP_DISCONNECTED = 0;
78 var MACRO_PPP_CONNECTING = 1;
79 var MACRO_PPP_CONNECTED = 2;
80 var MACRO_PPP_DISCONNECTING = 3;
81
82
83
84 var PPP_DIAL_AUTO = 0;
85 var PPP_DIAL_MANUAL = 1;
86
87 /*network type*/
88 var MACRO_NETWORKTYPE_NO_SERVICE = 0;
89 var MACRO_NETWORKTYPE_GPRS = 1;
90 var MACRO_NETWORKTYPE_EDGE = 2;
91 var MACRO_NETWORKTYPE_HSDPA = 3;
92 var MACRO_NETWORKTYPE_HSUPA = 4;
93 var MACRO_NETWORKTYPE_UMTS = 5;
94 var MACRO_NETWORKTYPE_CDMA = 6;
95 var MACRO_NETWORKTYPE_EV_DO_A = 7;
96 var MACRO_NETWORKTYPE_EV_DO_B = 8;
97 var MACRO_NETWORKTYPE_GSM = 9;
98 var MACRO_NETWORKTYPE_EV_DO_C = 10;
99 var MACRO_NETWORKTYPE_LTE = 11;
100 var MACRO_NETWORKTYPE_HSPA_PLUS = 12;
101 var MACRO_NETWORKTYPE_DC_HSPA_PLUS = 13;
102
103 /*roam*/
104 var MACRO_ROAM_DISABLE = 1;
105 var MACRO_ROAM_ENABLE = 0;
106
107 /*wlan status*/
108 var MACRO_WLAN_DISABLED = 0;
109 var MACRO_WLAN_ENABLED = 1;
110 var MACRO_WLAN_WPS = 2;
111
112 /*signal level*/
113 var MACRO_EVDO_LEVEL_ZERO = 0;
114 var MACRO_EVDO_LEVEL_ONE = 1;
115 var MACRO_EVDO_LEVEL_TWO = 2;
116 var MACRO_EVDO_LEVEL_THREE = 3;
117 var MACRO_EVDO_LEVEL_FOUR = 4;
118 var MACRO_EVDO_LEVEL_FIVE = 5;
119 var MACRO_EVDO_API_ERROR = 255;
120
121 var MACRO_BATTERY_CHARGING = 0;
122 var MACRO_BATTERY_COMPLATE = 1;
123 var MACRO_BATTERY_NOCHARGE = 2;
124
125
126 /*sms status*/
127 var MACRO_SMS_DISENABLE = 0;
128 var MACRO_SMS_FULL = 1;
129 var MACRO_SMS_NOREAD = 2;
130 var MACRO_SMS_READ= 3;
131
132 var SMS_HANDLE_FORWARD = 0;
133 var SMS_HANDLE_REPLY = 1;
134 var SMS_HANDLE_READ = 2;
135 var SMS_HANDLE_DRAFT = 3;
136 var SMS_HANDLE_SENT = 4;
137 var SMS_HANDLE_NEW = 5;
138
139 /*security*/
140 var SECRUTIY_TYPE_DISABLE = 0;
141 var SECRUTIY_TYPE_WEP = 1;
142 var SECRUTIY_TYPE_WPA_PSK = 2;
143 var SECRUTIY_TYPE_WPS2_PSK = 3;
144 var SECRUTIY_TYPE_WPA_MIXED = 4;
145
146 /* network mode*/
147 var NETWORK_AUTOMATIC = 4;
148 var NETWORK_GSM_ONLY = 13;
149 var NETWORK_WCDMA_ONLY = 14;
150 /*Select wan mode*/
151 var SELECT_MODE_AUTOMATIC = 0;
152 var SELECT_MODE_MANUAL = 1;
153 var SELECT_MODE_LIMITED_SRV = 2;
154
155 /*not support char*/
156 var MACRO_SUPPORT_CHAR_MIN = 32;
157 var MACRO_SUPPORT_CHAR_MAX = 127;
158 var MACRO_NOT_SUPPORT_CHAR_COMMA = 44; //,
159 var MACRO_NOT_SUPPORT_CHAR_QUOTATION_MARK = 34; //"
160 var MACRO_NOT_SUPPORT_CHAR_COLON = 58; //:
161 var MACRO_NOT_SUPPORT_CHAR_SEMICOLON = 59; //;
162 var MACRO_NOT_SUPPORT_BACKSLASH_MARK = 92; //\
163 var MACRO_NOT_SUPPORT_CHAR_38 = 38; //&
164 var MACRO_NOT_SUPPORT_CHAR_39 = 39; //'
165 var MACRO_NOT_SUPPORT_CHAR_42 = 42; //*
166 var MACRO_NOT_SUPPORT_CHAR_47 = 47; ///
167 var MACRO_NOT_SUPPORT_CHAR_60 = 60; //<
168 var MACRO_NOT_SUPPORT_CHAR_62 = 62; //>
169 var MACRO_NOT_SUPPORT_CHAR_63 = 63; //?
170 var MACRO_NOT_SUPPORT_CHAR_124 = 124; //|
171
172 /*ssid*/
173 var MACRO_WLAN_SSID_NUMBER_START = 48;
174 var MACRO_WLAN_SSID_NUMBER_END = 57;
175 var MACRO_WLAN_SSID_UP_CHAR_START = 65;
176 var MACRO_WLAN_SSID_UP_CHAR_END = 90;
177 var MACRO_WLAN_SSID_LOW_CHAR_START = 97;
178 var MACRO_WLAN_SSID_LOW_CHAR_END = 122;
179 var MACRO_WLAN_SSID_CHAR_UNDERLINE = 95;
180 var MACRO_WLAN_SSID_CHAR_DASH = 45;
181 var MACRO_WLAN_SSID_CHAR_DOT = 46;
182 var MACRO_WLAN_SSID_CHAR_SPACE = 32;
183
184 /*sd card*/
185 var MACRO_SD_IS_EXIST = 1;
186 var MACRO_SD_NOT_EXIST = 0;
187 var MACRO_SD_USB_ONLY = 1;
188 var MACRO_SD_WEB_ONLY = 0;
189 var MACRO_SD_SHARE_ENABLE = 1;
190 var MACRO_SD_SHARE_DISABLE = 0;
191 var MACRO_SD_ALL = 0;
192 var MACRO_SD_PATH_DEFINE = 1;
193 var MACRO_SD_READ_WRITE = 1;
194 var MACRO_SD_READ_ONLY = 0;
195
196 var DEFUALT_PROFILE_VALUE=1;
197
198 var intervalgetNetworkList = null;
199 var intervalgetNetworkRegisterResult=null;
200 var interGetSendResult=null;
201
202 var popUp={
203 show:function(options){
204 var defaults = {
205 type:"alert",
206 width:"auto",
207 height:"auto",
208 title:"",
209 msg:"",
210 time:2000
211 };
212 $("body").css({
213 background:"#b3b3b3"
214 })
215 var opts = $.extend(defaults, options);
216 if($("#popUpMask").css("display")=="none"){
217 if(!(!($.browser.msie&&($.browser.version == "6.0")&&!$.support.style))){
218 $("#popUpMask,#popUpWrap").css({
219 height:$("#wrap").height()
220 });
221 }
222 $("#popUpMask,#popUpWrap").css({
223 display: "block"
224 });
225 $("#popUpMask").show("slow").css({
226 opacity:0.3
227 });
228 }
229 if(opts.type=="confirm"){
230 $("#okBtnWrap,#cancelBtnWrap,#popUpClose").css({"display":"inline-block"});
231 $("#popUpClose").unbind("click").bind("click",function(){
232 popUp.hide();
233 })
234 }else if(opts.type=="alert"){
235 $("#okBtnWrap,#popUpClose").css({
236 display:"inline-block"
237 });
238 $("#cancelBtnWrap").hide(0);
239 $("#popUpClose").unbind().bind("click",function(){
240 popUp.hide();
241 if ($.isFunction(opts.callback)) {
242 opts.callback.apply();
243 }
244 })
245 }else{
246 $("#okBtnWrap,#cancelBtnWrap,#popUpClose").hide(0);
247 if(opts.time!=-1){
248 setTimeout(function(){
249 popUp.hide();
250 },opts.time)
251 }
252 }
253 $("#popUpTitle").html(opts.title);
254 $("#popUpContent").html(opts.msg);
255 $("#popUpBox").css({
256 "top":($("#wrap").height()-50-$("#popUpBox").outerHeight())/2+"px"
257 }).fadeIn(200);
258
259 if ($.browser.msie) {
260 if (($.browser.version == "6.0" || $.browser.version == "7.0")&& $("#popUpBtnWrap .btnWrap").size()==0){
261 $("#popUpBtnWrap .btnNormal").css("border","none");
262 $("#popUpBtnWrap .btnNormal").wrap("<div class='btnWrap'></div>");
263 }
264 }
265
266 $("#btnPopUpOk").unbind("click").bind("click",function(){
267 popUp.hide();
268 if ($.isFunction(opts.callback)) {
269 opts.callback.apply();
270 }
271 })
272
273 $("#cancelBtnWrap").unbind("click").bind("click",function(){
274 popUp.hide();
275 })
276 $("#btnPopUpOk").focus().blur();
277 },
278
279 hide:function(){
280 $("#popUpMask,#popUpWrap").fadeOut(0);
281 $("#popUpBox").fadeOut(200);
282 $("body").css({
283 background:"#fff"
284 })
285 },
286
287 alert:function(msg,callback){
288 var option={
289 type:"alert",
290 msg:msg,
291 callback:callback
292 }
293 popUp.show(option);
294 },
295 confirm:function(msg,callback){
296 var option={
297 type:"confirm",
298 msg:msg,
299 callback:callback
300 }
301 popUp.show(option);
302 },
303 prompt:function(msg,time){
304 var option={
305 type:"msg",
306 msg:msg,
307 time:time
308 }
309 popUp.show(option);
310 },
311 showBox:function(title,content){
312 var option={
313 type:"openBox",
314 msg:content,
315 title:title
316 }
317 popUp.show(option);
318 }
319
320 }
321
322 var page={
323 changePage: function(url){
324 var that=this;
325 $(window).unbind('hashchange', that.initload);
326 url = url.replace(/^.*#/, '');
327 document.location.hash=url;
328 $.ajax({
329 type: "GET",
330 url: url+"?rand=" + Math.random(),
331 dataType: "html",
332 beforeSend:function(){
333 that.startLoading()
334 },
335 complete:function(){
336 that.stopLoading()
337 },
338 success: function(data){
339 $("#mainBox").html("").empty().html(data);
340 $(window).bind('hashchange', that.initload);
341 }
342
343 });
344 },
345 initload:function (){
346 var url = document.location.hash;
347 url = url.replace(/^.*#/, '');
348 if(url!=""){
349 page.changePage(url)
350 }else{
351 page.changePage("connection/connectionStatus.html");
352 }
353 },
354
355 reloadMain:function(){
356 var url=location.href;
357 page.changePage(url)
358 },
359
360 ajaxlink:function (){
361 $('.changePageLink').live('click', function() {
362 var url = $(this).attr('href');
363 url = url.replace(/^.*#/, '');
364 page.changePage(url);
365 });
366 },
367
368 setCurrentMenu:function (currentMenu){
369 if(currentMenu!=null){
370 $("#topMenu li").removeClass("current");
371 $("#topMenu li").eq(currentMenu-1).addClass("current");
372 }
373 },
374
375 startLoading:function (){
376 if(!(!($.browser.msie&&($.browser.version == "6.0")&&!$.support.style))){
377 $("#mask,#loading").css({
378 height:$("#wrap").height()
379 });
380 }
381 $("#mask,#loading").css({
382 display: "block"
383 });
384 $("#mask").css({
385 opacity:0.01
386 })
387
388 },
389
390 stopLoading: function (){
391 $("#mask,#loading").css("display","none");
392 },
393 pageInit: function (){
394 $(".btnNormal:enabled").bind("mouseover",function(){
395 $(this).addClass("hover");
396 })
397 $(".btnNormal:enabled").bind("mouseout",function(){
398 $(this).removeClass("hover");
399 })
400 $("button,a").bind('focus',function(){
401 if(this.blur){
402 this.blur();
403 };
404 });
405 if ($.browser.msie) {
406 if ($.browser.version == "6.0" || $.browser.version == "7.0"){
407 $("#mainBox .btnNormal").css("border","none");
408 $("#mainBox .btnNormal").wrap("<div class='btnWrap'></div>");
409 }
410 }
411 if(pageName!="networkRegist" && intervalgetNetworkRegisterResult != null){
412 clearInterval(intervalgetNetworkRegisterResult);
413 intervalgetNetworkRegisterResult=null;
414 }
415
416 if(pageName!="networkSelection" && intervalgetNetworkList!=null){
417 clearTimeout(intervalgetNetworkList);
418 intervalgetNetworkList=null;
419 }
420
421 if(pageName!="sendResult" && interGetSendResult != null){
422 clearTimeout(interGetSendResult);
423 interGetSendResult=null;
424 }
425 }
426
427 }
428
429 var listenLogout = {
430 init: function(){
431 var that = this;
432 that.start();
433 that.listenObj($("#mainBox,#navigation"));
434 that.heartbeat();
435 },
436
437 logoutMethod: null,
438
439 start: function(){
440 var that=this;
441 if(that.logoutMethod != null){
442 that.stop();
443 }
444 that.logoutMethod = setTimeout('indexPage.logout();',360000);
445 },
446
447 stop: function(){
448 var that=this;
449 if(that.logoutMethod != null){
450 clearTimeout(that.logoutMethod);
451 that.logoutMethod = null;
452 }
453 },
454
455 listenObj: function(DomObject){
456 var that=this;
457 DomObject.live("keydown touchstart",function(){
458 that.stop();
459 });
460
461 DomObject.live('keyup touchend click', function(){
462 that.start();
463 });
464 },
465
466 flushed: function(){
467 $.ajax({
468 type: "GET",
469 url: "/heartBeat.asp?rand=" + Math.random()
470 });
471 },
472
473 heartbeat: function(){
474 var that=this;
475 setInterval(function(){
476 that.flushed();
477 }, 10000);
478 }
479
480 };
481
482 var indexPage={
483 init: function(){
484 //listenLogout.flushed();
485 $("#tpl").replaceTpl()
486 var that=this;
487 var $logoutBtn=$("#logoutBtn");
488 document.title=titleValue;
489 //if(sys.isLogin(sessionId)){
490 that.initNav();
491 page.initload();
492 //listenLogout.init();
493 $logoutBtn.removeBtnDisabled()
494 /*}else{
495 $logoutBtn.setBtnDisabled()
496 page.changePage("login.html")
497 }*/
498
499 page.pageInit()
500 page.ajaxlink();
501 that.refreshImgStatus();
502 that.startRefreshImgStatus();
503 $logoutBtn.bind("click",that.logout)
504 },
505
506 initNav : function(){
507 var $nav=$("#topMenu");
508 $nav.find(".parent").addClass("hasLogin");
509 $("#topMenu li").hover(function(){
510 $("#topMenu li").removeClass("current");
511 $(this).find("dl").stop(true,true).show();
512 $(this).addClass("hover");
513 },function(){
514 $(this).find("dl").stop(true,true).hide();
515 $(this).removeClass("hover");
516 page.setCurrentMenu(currentMenu);
517 })
518 $("#topMenu li").bind("touchstart",function(){
519 $("#topMenu li").removeClass("current hover");
520 $("#topMenu").find("dl").stop(true,true).hide();
521 $(this).find("dl").stop(true,true).show();
522 $(this).addClass("hover");
523 })
524
525 $("#topMenu").find(".parent").click(function(){
526 $("#topMenu li").removeClass("current hover")
527 $("#topMenu").find("dl").stop(true,true).hide();
528 $(this).parents("li").addClass("hover");
529 $(this).next("dl").stop(true, true).show();
530 })
531
532 $("#mainBox").bind("touchstart click",function(){
533 $("#topMenu li").removeClass("current hover");
534 $("#topMenu").find("dl").stop(true,true).hide();
535 page.setCurrentMenu(currentMenu);
536 })
537 $nav.find(".subMenu").find("a").live("click",function(){
538 var url = $(this).attr('href');
539 url = url.replace(/^.*#/, '');
540 if(url!=""){
541 page.changePage(url)
542 }
543 $nav.find(".subMenu").hide();
544 $("#topMenu li").addClass("current");
545 $("#topMenu li").removeClass("hover");
546 })
547 },
548
549
550 logout:function () {
551 Logout(function (result) {
552 if (result == API_RESULT_SUCCESS) {
553 location.reload();
554 }
555 })
556 },
557
558 showSignalState:function(iLen){
559 var $signalImg = $("#signalImg");
560 var value = /^[0,1,2,3,4,5]$/;
561 iLen=parseInt(iLen);
562 iLen=value.test(iLen)?iLen:0;
563 $signalImg.css("background-position","center -"+iLen*26+"px");
564
565 },
566
567 showWanState:function (iwanState){
568 var $wanImg = $("#wanImg");
569 var value = /^[0,2]$/;
570 iwanState=parseInt(iwanState);
571 iwanState=value.test(iwanState)?iwanState:0;
572 $wanImg.css("background-position","center -"+iwanState*26+"px");
573 },
574
575 showSmsState:function(ismsState){
576 var $smsImg = $("#smsImg");
577 var value = /^[0,1,2,3]$/;
578 ismsState=parseInt(ismsState);
579 ismsState=value.test(ismsState)?ismsState:0;
580 $smsImg.css("background-position","center -"+ismsState*26+"px");
581
582 },
583
584 showBatteryState:function(ibatteryState,ibatterylvl){
585 var $batteryImg=$("#batteryImg");
586 $batteryImg.removeClass("charging");
587 switch(ibatteryState){
588 case MACRO_BATTERY_CHARGING:
589 $batteryImg.addClass('charging');
590 break;
591 case MACRO_BATTERY_COMPLATE:
592 if(!$batteryImg.hasClass("level_4")){
593 $batteryImg.addClass("level_4");
594 }
595 break;
596 default:
597 var level="level_"+ibatterylvl;
598 if(!$batteryImg.hasClass(level)){
599 $batteryImg.addClass(level);
600 }
601 }
602 },
603
604 showWlanState:function(iwlanState){
605 var $wlanImg=$("#wlanImg");
606 var value = /^[0,1,2]$/;
607 iwlanState=parseInt(iwlanState);
608 iwlanState=value.test(iwlanState)?iwlanState:0;
609 $wlanImg.css("background-position","center -"+iwlanState*26+"px");
610
611 },
612
613 showRoamState:function(isRoam){
614 var $roamingImg=$("#roamingImg")
615 if(isRoam==MACRO_ROAM_ENABLE){
616 $roamingImg.addClass("isRoam");
617 $roamingImg.attr("title",sys.getRes("ids_wan_roaming"));
618
619 }else{
620 $roamingImg.removeClass("isRoam");
621 $roamingImg.attr("title","");
622 }
623 },
624
625 refreshImgStatus:function () {
626 var that = this;
627 async_getImgInfo(function (data) {
628 if (data == null) return;
629 var _imgInfo = data;
630 that.showSignalState(_imgInfo.signal);
631 that.showSmsState(_imgInfo.sms);
632 that.showBatteryState(_imgInfo.chg_state,_imgInfo.bat_level);
633 if(pageName=="connectionStatus" || pageName=="login"){
634 showCardInfo(_imgInfo.sim_state,_imgInfo.pin_state)
635 }
636 });
637 async_getWanInfo(function (data) {
638 if (data == null) return;
639 that.showWanState(data.wan_state);
640 that.showRoamState(data.roam);
641 if (pageName == "connectionStatus") {
642 showCurrentInfo(data.wan_state, data.download, data.upload, data.dur_time, data.roam);
643 showWanInfo(data.wan_ip, data.network_type, data.network_name, data.wan_state,data.usage,data.wan_ip6);
644 showWanBox(data.wan_state);
645 }
646 });
647 /*
648 async_getWlanSettingInfo(function (data) {
649 if (data == null) return;
650 that.showWlanState(data.wifi_state);
651
652 if (pageName == "login" || pageName == "connectionStatus") {
653 showWlanInfo(data.wifi_state, data.ssid, data.security_mode, data.curr_num, data.max_numsta);
654 }
655
656 });
657 */
658 },
659
660 refreshImgInterval:null,
661 startRefreshImgStatus:function () {
662 var that = this;
663 if (that.refreshImgInterval != null) {
664 that.stopRefreshImgStatus();
665 }
666 that.refreshImgInterval=setInterval(function(){
667 that.refreshImgStatus();
668 },10000);
669 },
670
671 stopRefreshImgStatus:function (){
672 var that=this;
673 if(that.refreshImgInterval != null){
674 clearInterval(that.refreshImgInterval);
675 that.refreshImgInterval = null;
676 }
677 }
678 }
679
680 $(function() {
681 if ($.browser.msie) {
682 if ($.browser.version == "6.0" || $.browser.version == "7.0"){
683 $("#navigation .btnNormal").css("border","none");
684 $("#navigation .btnNormal").wrap("<div class='btnWrap'></div>");
685 }
686 }
687 })
688
689 var pageName;
690
691 function showCurrentInfo(wanState, currentDownRate, currentUpRate, connectTime, wanRoam) {
692 var wanConnectStateStr;
693 var downRateStr = 0;
694 var connectTimeStr = 0;
695 var roamStr = "";
696
697 switch (wanState) {
698 case MACRO_PPP_CONNECTED:
699 wanConnectStateStr = sys.getRes("ids_wan_connected");
700 downRate = (currentUpRate / (1024 * 1024)).toFixed(1) + " Mbps/" + (currentDownRate / (1024 * 1024)).toFixed(1) + " Mbps";
701 connectTimeStr = sys.getTimeDesc(connectTime);
702 break;
703 case MACRO_PPP_CONNECTING:
704 wanConnectStateStr = sys.getRes("ids_wan_connecting");
705 break;
706 case MACRO_PPP_DISCONNECTING:
707 wanConnectStateStr = sys.getRes("ids_wan_disconnecting");
708 break;
709 default:
710 wanConnectStateStr = sys.getRes("ids_wan_disconnect");
711 break;
712 }
713
714 switch (parseInt(wanRoam)) {
715 case MACRO_ROAM_ENABLE:
716 roamStr = sys.getRes("ids_sim_roaming_yes");
717 break;
718 case MACRO_ROAM_DISABLE:
719 roamStr = sys.getRes("ids_sim_roaming_no");
720 break;
721 default:
722 roamStr = "NA";
723 }
724
725
726 $("#spnWanConnectState").html(wanConnectStateStr);
727 $("#spnDownRate").html(downRateStr);
728 $("#spnConnectTime").html(connectTimeStr);
729 $("#spnWanRoam").html(roamStr);
730
731 }
732
733 /*
734 function showWlanInfo(wlanState, wlanSsid, wlanSecurityType, wlanConnectNumber, wlanMaxUser) {
735 var wlanStateStr;
736 var wlanSsidStr = wlanSsid;
737 var wlanSecurityTypeStr;
738 var wlanUserStr = wlanConnectNumber + "/" + wlanMaxUser;
739
740 switch (parseInt(wlanState)) {
741 case MACRO_WLAN_ENABLED:
742 wlanStateStr = sys.getRes("ids_on");
743 break;
744 case MACRO_WLAN_DISABLED:
745 wlanStateStr = sys.getRes("ids_off");
746 break;
747 case MACRO_WLAN_WPS:
748 wlanStateStr = sys.getRes("ids_wps");
749 break;
750 }
751
752 switch (wlanSecurityType) {
753 case SECRUTIY_TYPE_DISABLE:
754 wlanSecurityTypeStr = sys.getRes("ids_wifi_securityDisable");
755 break;
756 case SECRUTIY_TYPE_WEP:
757 wlanSecurityTypeStr = sys.getRes("ids_wifi_wep");
758 break;
759 case SECRUTIY_TYPE_WPA_PSK:
760 wlanSecurityTypeStr = sys.getRes("ids_wifi_wpa");
761 break;
762 case SECRUTIY_TYPE_WPS2_PSK:
763 wlanSecurityTypeStr = sys.getRes("ids_wifi_wpa2");
764 break;
765 case SECRUTIY_TYPE_WPA_MIXED:
766 wlanSecurityTypeStr = sys.getRes("ids_wifi_wpaWpa2Psk");
767 break;
768 default:
769 wlanSecurityTypeStr = sys.getRes('ids_sim_unknown');
770 }
771
772 $("#spnWlanState").html(wlanStateStr);
773 $("#spnWlanSecurity").html(wlanSecurityTypeStr);
774 $("#spnWlanSsid").html(wlanSsidStr);
775 $("#spnWlanUser").html(wlanUserStr);
776 }
777 */
778
779 function showCardInfo(simState, pinState) {
780 var simStateStr;
781
782 switch (simState) {
783 case MACRO_UIM_APP_STATE_UNKNOWN_V01:
784 simStateStr = sys.getRes('ids_sim_noSimCard');
785 break;
786 case MACRO_UIM_APP_STATE_PIN1_OR_UPIN_REQ_V01:
787 simStateStr = sys.getRes('ids_sim_pinRequired');
788 break;
789 case MACRO_UIM_APP_STATE_PUK1_OR_PUK_REQ_V01:
790 simStateStr = sys.getRes('ids_sim_pukRequired');
791 break;
792 case MACRO_UIM_APP_STATE_READY_V01:
793 simStateStr = sys.getRes('ids_sim_ready');
794 break;
795 case MACRO_UIM_APP_STATE_DETECTED_V01:
796 simStateStr = sys.getRes('ids_sim_initializing');
797 break;
798 case MACRO_UIM_APP_STATE_PERSON_CHECK_REQ_V01:
799 simStateStr = sys.getRes('ids_sim_locked');
800 break;
801 case MACRO_UIM_APP_STATE_ILLEGAL_V01:
802 simStateStr = sys.getRes('ids_sim_invalidSimCard');
803 break;
804 default:
805 simStateStr = sys.getRes('ids_sim_unknown');
806 }
807
808 $("#spnSimState").html(simStateStr);
809 }
810
811 function showWanInfo(wanIpAddr, networkType, networkName, wanState,wanUsage,wanIP6) {
812 var wanIpaddrStr;
813 var wanNetworkNameStr;
814 var wanNetworkTypeStr;
815 var wanIpV6AddrStr;
816 var wanUsageStr=sys.covertNum(wanUsage==null?0:wanUsage);
817
818 wanIpaddrStr = (wanState != MACRO_PPP_CONNECTED) ? "0.0.0.0" : sys.getIpAddr(wanIpAddr);
819 wanIpV6AddrStr=(wanState != MACRO_PPP_CONNECTED) ? "0::0" : sys.getIpAddr(wanIP6);
820
821 switch (networkName) {
822 case "CHINA UNICOM":
823 case "CHN CU":
824 wanNetworkNameStr = sys.getRes('ids_network_operatorName');
825 break;
826 case "":
827 wanNetworkNameStr = "NA";
828 break;
829 default:
830 wanNetworkNameStr = networkName;
831 }
832
833 switch (networkType) {
834 case MACRO_NETWORKTYPE_NO_SERVICE:
835 wanNetworkTypeStr = sys.getRes("ids_network_noService");
836 break;
837 case MACRO_NETWORKTYPE_GSM:
838 wanNetworkTypeStr = sys.getRes("ids_network_gsm");
839 break;
840 case MACRO_NETWORKTYPE_GPRS:
841 wanNetworkTypeStr = sys.getRes("ids_network_gprs");
842 break;
843 case MACRO_NETWORKTYPE_EDGE:
844 wanNetworkTypeStr = sys.getRes("ids_network_edge");
845 break;
846 case MACRO_NETWORKTYPE_UMTS:
847 wanNetworkTypeStr = "UMTS";
848 break;
849 case MACRO_NETWORKTYPE_HSDPA:
850 wanNetworkTypeStr = sys.getRes("ids_network_hsdpa");
851 break;
852 case MACRO_NETWORKTYPE_HSUPA:
853 wanNetworkTypeStr = sys.getRes("ids_network_hsupa");
854 break;
855 case MACRO_NETWORKTYPE_CDMA:
856 wanNetworkTypeStr = "CDMA";
857 break;
858 case MACRO_NETWORKTYPE_LTE:
859 wanNetworkTypeStr = "LTE";
860 break;
861 case MACRO_NETWORKTYPE_HSPA_PLUS:
862 wanNetworkTypeStr = "HSPA+";
863 break;
864 case MACRO_NETWORKTYPE_DC_HSPA_PLUS:
865 wanNetworkTypeStr = "DC-HSPA+";
866 break;
867 case MACRO_NETWORKTYPE_EV_DO_A:
868 case MACRO_NETWORKTYPE_EV_DO_B:
869 case MACRO_NETWORKTYPE_EV_DO_C:
870 wanNetworkTypeStr = "EV-DO";
871 break;
872 default:
873 wanNetworkTypeStr = sys.getRes("ids_network_noService");
874 }
875
876 $("#spnWanIpAddr").html(wanIpaddrStr);
877 $("#spnWanNetworkName").html(wanNetworkNameStr);
878 $("#spnWanNetworkType").html(wanNetworkTypeStr);
879 $("#spnWanUsage").html(wanUsageStr);
880 $("#spnWanIpV6Addr").html(wanIpV6AddrStr);
881 }
882
883 function getSimCardState(simState, pinState) {
884 var state;
885 switch (simState) {
886 case MACRO_UIM_APP_STATE_UNKNOWN_V01:
887 state = "noCard";
888 break;
889 case MACRO_UIM_APP_STATE_PIN1_OR_UPIN_REQ_V01:
890 state = "pinReq";
891 break;
892 case MACRO_UIM_APP_STATE_PUK1_OR_PUK_REQ_V01:
893 state = "pukReq";
894 break;
895 case MACRO_UIM_APP_STATE_READY_V01:
896 state = "normal";
897 break;
898 case MACRO_UIM_APP_STATE_DETECTED_V01:
899 state = "simError";
900 break;
901 case MACRO_UIM_APP_STATE_PERSON_CHECK_REQ_V01:
902 state = "simLock";
903 break;
904 case MACRO_UIM_APP_STATE_ILLEGAL_V01:
905 state = "invalid";
906 break;
907 default:
908 state = "noCard";
909 }
910
911 return state;
912
913 }
914
915 function formatHtmlStr(str) {
916 var args = arguments, re = new RegExp("%([1-" + args.length + "])", "g");
917 return String(str).replace(re, function ($1, $2) {
918 return args[$2];
919 }
920 );
921 }
922
923 function showSetttingLanguage() {
924 var languages = [];
925 $.each(sys_language, function(index, val) {
926 languages.push(val);
927 });
928 if (languages.length <= 1) {
929 $("#setLanguage").hide();
930 }
931 }
932
933 function initSimCard(callback){
934 $.getData({
935 async:true,
936 url:"/goform/getSimcardInfo?rand=" + Math.random(),
937 success:function(data) {
938 if(data.sim_state == MACRO_SIM_CARD_INITING){
939 setTimeout(function(){
940 initSimCard(callback);
941 },2000);
942 }else{
943 callback();
944 }
945 }
946 })
947 }
948
949 function pageInitSimCard(){
950 page.startLoading();
951 initSimCard(function(){
952 $.getData({
953 async:true,
954 url:"/goform/getSimcardInfo?rand=" + Math.random(),
955 success:function(data) {
956 if(data.sim_state == MACRO_UIM_APP_STATE_READY_V01){
957 initProfileList(function(){
958 page.stopLoading();
959 page.reloadMain();
960 })
961 }else{
962 page.stopLoading();
963 page.reloadMain();
964 }
965 }
966 })
967 });
968 }
969
970 function initProfileList(callback){
971 $.getData({
972 async:true,
973 url:"/goform/getProfileList?rand=" + Math.random(),
974 success:function(data) {
975 if(data.state == 0){
976 setTimeout(function(){
977 initProfileList(callback);
978 },2000);
979 }else{
980 callback();
981 }
982 }
983 })
984 }
File files/onetouch/onetouch_root.sh added (mode: 100755) (index 0000000..96ac075)
1 #!/bin/sh
2 ip addr add 192.168.1.2/24 dev usb0
3 ip link set dev usb0 up
4 ip route add default via 192.168.1.1
File files/onetouch/script.sh added (mode: 100755) (index 0000000..faf1178)
1 #!/bin/sh
2 # ALCATEL ONETOUCH USB (TCT MOBILE LIMITED L850V-2AALFR1-1/07 033)
3 # This is ethernet above USB via microsoft crap RDNIS closed protocol (was
4 # reversed engineered in the linux kernel).
5 # Management interface (javascript web crap) default at 192.168.1.1/24
6
7 . /etc/os-release
8
9 scratch_dir=/run/user/$(id -u)/onetouch
10 mkdir -p $scratch_dir
11 printf "SCRATCH_DIR=$scratch_dir\n"
12 modem_url='http://192.168.1.1'
13 curl_verbose='--trace-ascii -'
14 printf "DISTRO ID IS $ID\n"
15 if test "$ID" = nyanlinux; then :;
16 else
17 curl=curl
18 dd=dd
19 od=od
20 tr=tr
21 cut=cut
22 fi
23 printf "SCRATCH_DIR=$scratch_dir\n"
24
25 rm $scratch_dir/random
26 $dd bs=1 count=10 if=/dev/urandom of=$scratch_dir/random
27 RND=$($od -t 'u1' $scratch_dir/random | $tr -d ' \n' | $cut --byte=8-)
28 echo RND=$RND
29
30 verb=$(basename $0)
31 printf "VERB=$verb\n"
32
33 if test $verb = get; then
34 # any upper to lower
35 cmd=$(printf "$1" | tr '[A-Z]' '[a-z]')
36 if test "$cmd" = loginstate; then
37 url_cmd=getLoginState
38 elif test "$cmd" = wlaninfo; then
39 url_cmd=getWlanInfo
40 elif test "$cmd" = simcardinfo; then
41 url_cmd=getSimcardInfo
42 elif test "$cmd" = networkinfo; then
43 url_cmd=getNetworkInfo
44 elif test "$cmd" = networklist; then
45 url_cmd=getNetworkList
46 $curl -o /dev/null \
47 $curl_verbose \
48 --data 'd=1' \
49 "$modem_url/goform/$url_cmd?rand=$RND"
50 printf 'DOC:XXXXXXXXX (must be preceded by a "set networkselect" command)\n'
51 printf 'DOC:nw_sel_stat \n'
52 printf 'DOC:\t0\tnone selected\n'
53 printf 'DOC:\t1\tselecting\n'
54 printf 'DOC:\t2\tselect success\n'
55 printf 'DOC:\t3\tselect failure\n'
56 printf 'DOC:rat\n'
57 printf 'DOC:\t4\tGSM\n'
58 printf 'DOC:\t5\tUMTS\n'
59 printf 'DOC:\t8\tLTE\n'
60 printf 'DOC:\t9\tTD SCDMA\n'
61 printf 'DOC:state\n'
62 printf 'DOC:\t1\tavailable\n'
63 printf 'DOC:\t2\tcurrent\n'
64 printf 'DOC:\t3\tforbidden\n'
65 exit
66 elif test "$cmd" = waninfo; then
67 url_cmd=getWanInfo
68 elif test "$cmd" = currentprofile; then
69 url_cmd=getCurrentProfile
70 elif test "$cmd" = routerinfo; then
71 url_cmd=getRouterInfo
72 elif test "$cmd" = systeminfo; then
73 url_cmd=getSysteminfo
74 elif test "$cmd" = imginfo; then
75 url_cmd=getImgInfo
76 elif test "$cmd" = wanconnectmode; then
77 url_cmd=getWanConnectMode
78 elif test "$cmd" = routerinfo; then
79 url_cmd=getRouterInfo
80 elif test "$cmd" = wlanclientinfo; then
81 url_cmd=getWlanClientInfo
82 elif test "$cmd" = profilelist; then
83 url_cmd=getProfileList
84 elif test "$cmd" = macfilterinfo; then
85 url_cmd=getMACFilterInfo
86 elif test "$cmd" = ussdsendresult; then
87 url_cmd=getUSSDSendResult
88 elif test "$cmd" = ussdend; then
89 url_cmd=getUSSDEnd
90 elif test "$cmd" = networkregisterresult; then
91 url_cmd=getNetworkRegisterResult
92 else
93 printf "ERROR:GET:missing known command:\n\
94 loginstate\n\
95 wlaninfo\n\
96 simcardinfo\n\
97 networkinfo\n\
98 networklist\n\
99 waninfo\n\
100 currentprofile\n\
101 routerinfo\n\
102 systeminfo\n\
103 imginfo\n\
104 wanconnectmode\n\
105 routerinfo\n\
106 wlanclientinfo\n\
107 profilelist\n\
108 macfilterinfo\n\
109 ussdsendresult\n\
110 ussdend\n\
111 networkregisterresult\n\
112 "
113 exit 1
114 fi
115 $curl -o /dev/null \
116 $curl_verbose \
117 "$modem_url/goform/$url_cmd?rand=$RND"
118 # inline DOC
119 if test "$cmd" = loginstate; then :;
120 elif test "$cmd" = wlaninfo; then :;
121 elif test "$cmd" = simcardinfo; then :;
122 printf 'DOC:sim_state\n'
123 printf 'DOC:\t0\tunknown\n'
124 printf 'DOC:\t1\tdetected\n'
125 printf 'DOC:\t2\tpin1 or upin required\n'
126 printf 'DOC:\t3\tpuk1 or puk required\n'
127 printf 'DOC:\t4\tperson required\n'
128 printf 'DOC:\t5\tpin1 permanently blocked\n'
129 printf 'DOC:\t6\tillegal\n'
130 printf 'DOC:\t7\tready\n'
131 printf 'DOC:\t11\tiniting\n'
132 printf 'DOC:pin_state\n'
133 printf 'DOC:\t0\tunknown\n'
134 printf 'DOC:\t1\tenabled not verified\n'
135 printf 'DOC:\t2\tenabled verified\n'
136 printf 'DOC:\t3\tdisabled\n'
137 printf 'DOC:\t4\tblocked\n'
138 printf 'DOC:\t5\tpermanently blocked\n'
139 printf 'DOC:sim_lock_state\n'
140 printf 'DOC:\t-1\tnone required\n'
141 printf 'DOC:\t0\tnet pin required\n'
142 printf 'DOC:\t1\tnetsub pin required\n'
143 printf 'DOC:\t2\tsp pin required\n'
144 printf 'DOC:\t3\tcorp pin required\n'
145 printf 'DOC:\t4\tph fsim pin required\n'
146 printf 'DOC:\t15\tnet puk required\n'
147 printf 'DOC:\t16\tnetsub puk required\n'
148 printf 'DOC:\t17\tsp puk required\n'
149 printf 'DOC:\t18\tcorp puk required\n'
150 printf 'DOC:\t19\tph fsim puk required\n'
151 printf 'DOC:\t30\trck forbid\n'
152 elif test "$cmd" = networkinfo; then :;
153 printf 'DOC:nw_mode\n'
154 printf 'DOC:\t28\tauto\n'
155 printf 'DOC:\t16\t4gonly\n'
156 printf 'DOC:\t8\t3gonly\n'
157 printf 'DOC:\t4\t2gonly\n'
158 printf 'DOC:nw_sel_mode\n'
159 printf 'DOC:\t0 automatic\n'
160 printf 'DOC:\t1 manual\n'
161 elif test "$cmd" = waninfo; then
162 printf 'DOC:wan_state\n'
163 printf 'DOC:\t0 PPP_DISCONNECTED\n'
164 printf 'DOC:\t1 PPP_CONNECTING\n'
165 printf 'DOC:\t2 PPP_CONNECTED\n'
166 printf 'DOC:\t3 PPP_DISCONNECTING\n'
167 printf 'DOC:network_type\n'
168 printf 'DOC:\t0\tNO_SERVICE\n'
169 printf 'DOC:\t1\tGPRS\n'
170 printf 'DOC:\t2\tEDGE\n'
171 printf 'DOC:\t3\tHSDPA\n'
172 printf 'DOC:\t4\tHSUPA\n'
173 printf 'DOC:\t5\tUMTS\n'
174 printf 'DOC:\t6\tCDMA\n'
175 printf 'DOC:\t7\tEV_DO_A\n'
176 printf 'DOC:\t8\tEV_DO_B\n'
177 printf 'DOC:\t9\tGSM\n'
178 printf 'DOC:\t10\tEV_DO_C\n'
179 printf 'DOC:\t11\tLTE\n'
180 printf 'DOC:\t12\tHSPA_PLUS\n'
181 printf 'DOC:\t13\tDC_HSPA_PLUS\n'
182 printf 'DOC:roam\n'
183 printf 'DOC:\t0 ENABLE\n'
184 printf 'DOC:\t1 DISABLE\n'
185 elif test "$cmd" = currentprofile; then :;
186 elif test "$cmd" = routerinfo; then :;
187 elif test "$cmd" = systeminfo; then :;
188 elif test "$cmd" = imginfo; then :;
189 elif test "$cmd" = wanconnectmode; then :;
190 printf 'DOC:wan_conn_mode\n'
191 printf 'DOC:\t0 manual\n'
192 printf 'DOC:\t1 automatic\n'
193 printf 'DOC:roam_auto_conn\n'
194 printf 'DOC:\t0 IS_AUTOROAM_DISABLE\n'
195 printf 'DOC:\t1 IS_AUTOROAM_ENABLE\n'
196 printf 'DOC:wan_ip_mode\n'
197 printf 'DOC:\t0 ipv4\n'
198 printf 'DOC:\t2 ipv6\n'
199 printf 'DOC:\t3 ipv4/ipv6\n'
200 elif test "$cmd" = routerinfo; then :;
201 elif test "$cmd" = wlanclientinfo; then :;
202 elif test "$cmd" = profilelist; then :;
203 printf 'DOC:profile_type\n'
204 printf 'DOC:\t0 builtin\n'
205 printf 'DOC:\t1 user defined\n'
206 printf 'DOC:profile_protocol\n'
207 printf 'DOC:\t0 none\n'
208 printf 'DOC:\t1 PAP\n'
209 printf 'DOC:\t2 CHAP\n'
210 printf 'DOC:\t3 PAP & CHAP\n'
211 elif test "$cmd" = macfilterinfo; then :;
212 elif test "$cmd" = ussdsendresult; then :;
213 elif test "$cmd" = ussdend; then :;
214 elif test "$cmd" = networkregisterresult; then
215 printf 'DOC:regist_stat\n'
216 printf 'DOC:\t0\tfail\n'
217 printf 'DOC:\t1\tsuccess\n'
218 printf 'DOC:\t2\tregistrating\n'
219 printf 'DOC:\tother\tno registration in progress\n'
220 fi
221 exit
222 elif test $verb = set; then
223 # any upper to lower
224 cmd=$(printf "$1" | tr '[A-Z]' '[a-z]')
225 if test "$cmd" = profiledefault; then
226 profile_id=$2
227 if test "x$profile_id" = x; then
228 printf 'ERROR:SET:setProfileDefault:missing profile id\n'
229 exit 1
230 fi
231 $curl -o /dev/null \
232 $curl_verbose \
233 --data "profile_id=$profile_id" \
234 "$modem_url/goform/setProfileDefault?rand=$RND"
235 exit
236 elif test "$cmd" = wanconnect; then
237 profile_id=$2
238 if test "x$profile_id" = x; then
239 printf 'ERROR:SET:setWanConnect:missing profile id\n'
240 exit 1
241 fi
242 $curl -o /dev/null \
243 $curl_verbose \
244 --data "profile_id=$profile_id" \
245 "$modem_url/goform/setWanConnect?rand=$RND"
246 exit
247 elif test "$cmd" = wandisconnect; then
248 $curl -o /dev/null \
249 $curl_verbose \
250 "$modem_url/goform/setWanDisconnect?rand=$RND"
251 exit
252 elif test "$cmd" = cancelwanconnect; then
253 $curl -o /dev/null \
254 $curl_verbose \
255 "$modem_url/goform/setCancelWanConnect?rand=$RND"
256 elif test "$cmd" = profiledelete; then
257 profile_id=$2
258 if test "x$profile_id" = x; then
259 printf 'ERROR:SET:setProfileDelete:missing profile id\n'
260 exit 1
261 fi
262 $curl -o /dev/null \
263 $curl_verbose \
264 --data "profile_id=$profile_id" \
265 "$modem_url/goform/setProfileDelete?rand=$RND"
266 exit
267 elif test "$cmd" = profilesave; then
268 profile_id=$2
269 profile_name=$3
270 profile_apn=$4
271 profile_protocol=$5
272 if test "x$profile_id" = x -o "x$profile_name" = x -o "x$profile_apn" = x -o "x$profile_protocol" = x; then
273 printf 'ERROR:SET:setProfileSave:missing parameters\n'
274 printf 'DOC:set profilesave profile_id profile_name profile_apn profile_protocol\n'
275 printf 'DOC:profile_protocol:\n'
276 printf 'DOC:\t0 none\n'
277 printf 'DOC:\t1 PAP\n'
278 printf 'DOC:\t2 CHAP\n'
279 printf 'DOC:\t3 PAP & CHAP\n'
280 exit 1
281 fi
282 $curl -o /dev/null \
283 $curl_verbose \
284 --data "profile_id=$profile_id" \
285 --data 'key=edit' \
286 --data "profile_protocol=$profile_protocol" \
287 --data "profile_apn=$profile_apn" \
288 --data 'profile_password=' \
289 --data 'profile_username=' \
290 --data "profile_name=$profile_name" \
291 --data 'profile_number=*99#' \
292 "$modem_url/goform/setProfileSave?rand=$RND"
293 exit
294 elif test "$cmd" = profilenew; then
295 profile_id=$2
296 profile_name=$3
297 profile_apn=$4
298 profile_protocol=$5
299 if test "x$profile_id" = x -o "x$profile_name" = x -o "x$profile_apn" = x -o "x$profile_protocol" = x; then
300 printf 'ERROR:SET:setProfileSave:missing parameters\n'
301 printf 'DOC:set profilenew profile_id profile_name profile_apn profile_protocol\n'
302 printf 'DOC:profile_protocol:\n'
303 printf 'DOC:\t0 none\n'
304 printf 'DOC:\t1 PAP\n'
305 printf 'DOC:\t2 CHAP\n'
306 printf 'DOC:\t3 PAP & CHAP\n'
307 exit 1
308 fi
309 $curl -o /dev/null \
310 $curl_verbose \
311 --data "profile_id=$profile_id" \
312 --data 'key=new' \
313 --data "profile_protocol=$profile_protocol" \
314 --data "profile_apn=$profile_apn" \
315 --data 'profile_password=' \
316 --data 'profile_username=' \
317 --data "profile_name=$profile_name" \
318 --data 'profile_number=*99#' \
319 "$modem_url/goform/setProfileSave?rand=$RND"
320 exit
321 elif test "$cmd" = reboot; then
322 $curl -o /dev/null \
323 $curl_verbose \
324 "$modem_url/goform/setReboot?rand=$RND"
325 elif test "$cmd" = wanconnectmode; then
326 mode=$2
327 ip_mode=$3
328 roam_auto_conn=$4
329 if test "x$mode" = x -o "x$ip_mode" = x -o "x$roam_auto_conn" = x; then
330 printf 'ERROR:SET:setWanConnectMode:missing mode\n'
331 printf 'DOC:set wanconnectmode mode ip_mode roam_auto_conn\n'
332 printf 'DOC:mode\n'
333 printf 'DOC:0 manual\n'
334 printf 'DOC:1 automatic\n'
335 printf 'DOC:ip_mode\n'
336 printf 'DOC:0 ipv4\n'
337 printf 'DOC:2 ipv6\n'
338 printf 'DOC:3 ipv4/ipv6\n'
339 printf 'DOC:roam_auto_conn\n'
340 printf 'DOC:0 IS_AUTOROAM_DISABLE\n'
341 printf 'DOC:1 IS_AUTOROAM_ENABLE\n'
342 exit 1
343 fi
344 $curl -o /dev/null \
345 $curl_verbose \
346 --data "wan_ip_mode=$ip_mode" \
347 --data "wan_conn_mode=$mode" \
348 --data "roam_auto_conn=$roam_auto_conn" \
349 "$modem_url/goform/setWanConnectMode?rand=$RND"
350 exit
351 elif test "$cmd" = networkselect; then
352 $curl -o /dev/null \
353 $curl_verbose \
354 "$modem_url/goform/setNetworkSelect?rand=$RND"
355 printf 'XXXXXXXXXX: CALL "get networklist" TO GET THE LIST\n'
356 elif test "$cmd" = reset; then
357 $curl -o /dev/null \
358 $curl_verbose \
359 "$modem_url/goform/setReset?rand=$RND"
360 elif test "$cmd" = networkinfo; then
361 nw_mode=$2
362 nw_sel_mode=$3
363 if test "x$nw_mode" = x -o "x$nw_sel_mode" = x; then
364 printf 'ERROR:SET:setNetworkInfo:missing mode\n'
365 printf 'DOC:set networkinfo nw_mode nw_sel_mode\n'
366 printf 'DOC:nw_mode\n'
367 printf 'DOC:\t28\tauto\n'
368 printf 'DOC:\t16\t4gonly\n'
369 printf 'DOC:\t8\t3gonly\n'
370 printf 'DOC:\t4\t2gonly\n'
371 printf 'DOC:nw_sel_mode\n'
372 printf 'DOC:\t0 automatic\n'
373 printf 'DOC:\t1 manual\n'
374 exit 1
375 fi
376 $curl -o /dev/null \
377 $curl_verbose \
378 --data "nw_mode=$nw_mode" \
379 --data "nw_sel_mode=$nw_sel_mode" \
380 "$modem_url/goform/setNetworkInfo?rand=$RND"
381 exit
382 elif test "$cmd" = networkregister; then
383 index=$2
384 if test "x$index" = x; then
385 printf 'ERROR:SET:setNetworkRegister:missing network index\n'
386 printf 'DOC:set networkregister index\n'
387 exit 1
388 fi
389 $curl -o /dev/null \
390 $curl_verbose \
391 --data "index=$index" \
392 "$modem_url/goform/setNetworkRegister?rand=$RND"
393 exit
394 elif test "$cmd" = unlockpin; then
395 pin=$2
396 if test "x$pin" = x; then
397 printf 'ERROR:SET:unlockPIN:missing pin\n'
398 exit 1
399 fi
400 $curl -o /dev/null \
401 $curl_verbose \
402 --data "pin=$pin" \
403 "$modem_url/goform/unlockPIN?rand=$RND"
404 exit
405 else
406 printf "ERROR:SET:missing known command:\n\
407 profiledefault\n\
408 wanconnect\n\
409 wandisconnect\n\
410 wanconnectmode\n\
411 cancelwanconnect\n\
412 profiledelete\n\
413 profilesave\n\
414 profilenew\n\
415 reboot\n\
416 reset\n\
417 networkselect\n\
418 networkinfo\n\
419 networkregister\n\
420 unlockpin\n\
421 "
422 exit 1
423 prin
424 fi
425 else
426 printf "ERROR:missing known verb, have '$verb', should be get/set\n"
427 exit 1
428 fi
File files/onetouch/set added (mode: 120000) (index 0000000..0231def)
1 script.sh
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/sylware/nyanlinux

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/sylware/nyanlinux

Clone this repository using git:
git clone git://git.rocketgit.com/user/sylware/nyanlinux

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main