Advertisement
Guest User

zeKiKoO

a guest
Oct 26th, 2009
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function generateKey() {
  2.     var keytype = 0;
  3.  
  4.     for (var i = 1; i <= 4; i++) {
  5.         var typeradio = document.getElementById('fbxcfgwww_wifi_radio_' + i);
  6.         if (!typeradio)
  7.             continue;
  8.         if (typeradio.checked) {
  9.             if (typeradio.value == 1) {
  10.                 keytype = 1;
  11.             }
  12.  
  13.             if (typeradio.value >= 2 &&
  14.                 typeradio.value <= 4) {
  15.                 keytype = 2;
  16.             }
  17.         }
  18.     }
  19.  
  20.     if (keytype == 0)
  21.         return false;
  22.  
  23.     var chars;
  24.     var len;
  25.     if (keytype == 1) {
  26.         chars = "0123456789ABCDEF";
  27.         len = 10;
  28.     } else {
  29.         chars = ' abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_\-;.?,:!%*^&~{}()|@=+<>';
  30.         len = 63;
  31.     }
  32.  
  33.     var key = '';
  34.     for (var i = 0; i < len; i++) {
  35.         var rnd = Math.floor(Math.random() * chars.length);
  36.         key += chars.charAt(rnd);
  37.     }
  38.  
  39.     var keytext = document.getElementById('fbxcfgwww_wifi_text_1');
  40.     if (!keytext)
  41.         return false;
  42.     keytext.value = key;
  43. }
  44.  
  45. function changeLanPfx() {
  46.  
  47.     var routerdiv = document.getElementById('fbxcfgwww_div');
  48.     var lan_pfx = document.getElementById('fbxcfgwww_router_lan_pfx');
  49.  
  50.     if (!routerdiv || !lan_pfx)
  51.         return false;
  52.  
  53.     var elements = routerdiv.getElementsByTagName('input');
  54.     for (var i = 0, n = elements.length; i < n; ++i) {
  55.         if (elements[i].name == 'lan_pfx_copy')
  56.             elements[i].value = lan_pfx.value;
  57.     }
  58. }
  59.  
  60. function copyValue(oldrow, newrow) {
  61.  
  62.     function update(type) {
  63.         var oelements = oldrow.getElementsByTagName(type);
  64.         var nelements = newrow.getElementsByTagName(type);
  65.  
  66.         if (oelements.length != nelements.length)
  67.             return false;
  68.  
  69.         for (var i = 0; i < oelements.length; i++)
  70.             nelements[i].value = oelements[i].value;
  71.     }
  72.     update('input');
  73.     update('select');
  74. }
  75.  
  76. function changeNames(row, index) {
  77.     var re = /(.*_)(\d+|new)$/;
  78.     var rt = '$1' + index;
  79.  
  80.     function update(type) {
  81.         var elements = row.getElementsByTagName(type);
  82.         for (var i = 0, n = elements.length; i < n; i++) {
  83.             var newname = elements[i].name.replace(re, rt);
  84.             elements[i].setAttribute('name', newname);
  85.         }
  86.     }
  87.     update('input');
  88.     update('select');
  89. }
  90.  
  91. function resetRow(row) {
  92.  
  93.     var elements = row.getElementsByTagName('input');
  94.     for (var i = 0, n = elements.length; i < n; ++i) {
  95.         elements[i].value = '';
  96.     }
  97. }
  98.  
  99. function arrayInsert(button) {
  100.     var fcell, clone, frow, brows, fsection, bsection, tbl;
  101.  
  102.     if ((fcell = button.parentNode) &&
  103.         (frow = fcell.parentNode) &&
  104.         (fsection = frow.parentNode) &&
  105.         (tbl = fsection.parentNode) &&
  106.         (bsection = tbl.tBodies[0]) &&
  107.         (brows = bsection.rows) &&
  108.         frow.cloneNode &&
  109.         bsection.appendChild) {
  110.  
  111.         var oldval = button.value;
  112.         var oldid = button.id;
  113.  
  114.         button.value = 'X';
  115.         button.id = 'array_del';
  116.  
  117.         if ((clone = frow.cloneNode(true)) &&
  118.             clone.getElementsByTagName) {
  119.             copyValue(frow, clone);
  120.             bsection.appendChild(clone);
  121.             changeNames(clone, bsection.rows.length - 1);
  122.         }
  123.  
  124.         resetRow(frow);
  125.         button.value = oldval;
  126.         button.id = oldid;
  127.         changeLanPfx();
  128.  
  129.         return false;
  130.     }
  131.     return true;
  132. }
  133.  
  134. function arrayRemove(button) {
  135.     var cell, row, section;
  136.  
  137.     if ((cell = button.parentNode) &&
  138.         (row = cell.parentNode) &&
  139.         (section = row.parentNode) &&
  140.         section.deleteRow &&
  141.         section.rows) {
  142.  
  143.         for (i = row.sectionRowIndex + 1; i < section.rows.length;
  144.              i++) {
  145.             changeNames(section.rows[i], i - 1);
  146.         }
  147.  
  148.         section.deleteRow(row.sectionRowIndex);
  149.         return false;
  150.     }
  151.     return true;
  152. }
  153.  
  154. function arrayAction(button) {
  155.     if (button.id.match('.*array_insert$')) {
  156.         arrayInsert(button);
  157.     } else {
  158.         arrayRemove(button);
  159.     }
  160. }
  161.  
  162. function setWifiEnabled() {
  163.     var wifi_check = document.getElementById('wifi_enable_check');
  164.     wifi_check.checked = true;
  165. }
  166.  
  167. function setRouterEnabled() {
  168.     var router_check = document.getElementById('router_enable_check');
  169.     router_check.checked = true;
  170. }
  171.  
  172.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement