admin.js 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. (function() {
  2. var uploadbtn = document.getElementById('uploadbtn');
  3. var uploadfile = document.getElementById('uploadfile');
  4. uploadbtn.addEventListener('change', function () {
  5. uploadfile.value = this.value.replace(/^.*\\/, "");
  6. var len = uploadfile.value.length - 7;
  7. uploadfile.setAttribute('size', len);
  8. var len = uploadfile.offsetWidth;
  9. uploadbtn.style.width = len + "px";
  10. });
  11. /* onload check wanconf form selects and set accordingly */
  12. /* var wanconf = document.getElementById('wanconf');
  13. var selects = wanconf.getElementsByTagName('select');
  14. for (i = 0; i < selects.length; i++) {
  15. wanChange(selects[i]);
  16. }
  17. */
  18. wanconf.addEventListener('change', function(event) { wanChange(event.target) });
  19. function wanChange(e) {
  20. var wanwifi = document.getElementById('wanwifi');
  21. var wanaddr = document.getElementById('wanaddr');
  22. switch (e[e.selectedIndex].id) {
  23. case 'wlan':
  24. wanwifi.setAttribute('class','show');
  25. break;
  26. case 'dhcp':
  27. wanaddr.setAttribute('class','hide');
  28. break;
  29. case 'eth':
  30. wanwifi.setAttribute('class','hide');
  31. break
  32. case 'stat':
  33. wanaddr.setAttribute('class','show');
  34. break;
  35. }
  36. }
  37. /* update uptime output */
  38. (function uptimeUpdate(){
  39. setTimeout(function(){
  40. ajaxReq('POST', '/admin/uptime', 'null', function(xmlDoc) {
  41. //console.log(xmlDoc['response'])
  42. document.getElementById('uptime').innerHTML = xmlDoc['response'];
  43. });
  44. uptimeUpdate();
  45. }, 5000);
  46. })();
  47. })();
  48. function ajaxReq(url, method, data, callback) {
  49. var xmlDoc = new XMLHttpRequest();
  50. xmlDoc.open(url, method, true);
  51. if (method == 'POST') {
  52. xmlDoc.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  53. }
  54. xmlDoc.onreadystatechange = function() {
  55. if (xmlDoc.readyState === 4 && xmlDoc.status === 200) {
  56. callback(xmlDoc);
  57. }
  58. }
  59. xmlDoc.send(data);
  60. }
  61. /*
  62. function formChange() {
  63. if (document.activeElement.tagName.toLowerCase() != 'select') {
  64. console.log('not select');
  65. return false;
  66. }
  67. aElem = document.activeElement;
  68. aParent = aElem.parentElement;
  69. sOpt = aElem[aElem.selectedIndex];
  70. console.log(aElem.id + sOpt.id);
  71. if (aElem.id + sOpt.id == 'wanprotostat') {
  72. document.getElementById('wanaddr').setAttribute('class','show');
  73. }
  74. if (aElem.id + sOpt.id == 'wanprotodhcp') {
  75. document.getElementById('wanaddr').setAttribute('class','hide');
  76. }
  77. if (aElem.id + sOpt.id == 'wanifnamewlan') {
  78. document.getElementById('wanwifi').setAttribute('class','show');
  79. }
  80. if (aElem.id + sOpt.id == 'wanifnameeth') {
  81. document.getElementById('wanwifi').setAttribute('class','hide');
  82. }
  83. };
  84. */