Subversion Repositories HomeAutomation

Rev

Rev 1660 | Rev 1759 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | SVN | RSS feed

  1.  
  2.  
  3.  
  4. function get_time()
  5. {
  6.     return Math.round(new Date().getTime() / 1000);
  7. }
  8.  
  9. function to_array(obj)
  10. {
  11.     var result = [];
  12.    
  13.     for (var n = 0; n < obj.length; n++)
  14.     {
  15.         result.push(obj[n]);
  16.     }
  17.    
  18.     return result;
  19. }
  20.  
  21. function array_length(array)
  22. {
  23.     var count = 0;
  24.    
  25.     for (var n in array)
  26.     {
  27.         count++;
  28.     }
  29.    
  30.     return count;
  31. }
  32.  
  33. function array_remove_empty(array)
  34. {
  35.     var result = [];
  36.    
  37.     for (var n in array)
  38.     {
  39.         if (array[n] && (typeof array[n] == 'string' && array[n].length > 0))
  40.         {
  41.             result.push(array[n]);
  42.         }
  43.     }
  44.    
  45.     return result;
  46. }
  47.  
  48. function in_array(array, item)
  49. {
  50.     for (var n in array)
  51.     {
  52.         if (array[n] == item)
  53.         {
  54.             return true;
  55.         }
  56.     }
  57.    
  58.     return false;
  59. }
  60.  
  61. function key_in_array(array, key)
  62. {
  63.     for (var n in array)
  64.     {
  65.         if (n == key)
  66.         {
  67.             return true;
  68.         }
  69.     }
  70.    
  71.     return false;
  72. }
  73.  
  74. function get_keys(array)
  75. {
  76.     var result = [];
  77.    
  78.     for (var name in array)
  79.     {
  80.         result.push(name);
  81.     }
  82.    
  83.     return result;
  84. }
  85.  
  86. String.prototype.ltrim = function(charlist)
  87. {
  88.     charlist = !charlist ? ' \s\xA0' : charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');
  89.     var re = new RegExp('^[' + charlist + ']+', 'g');
  90.     return this.replace(re, '');
  91. }
  92.  
  93. String.prototype.rtrim = function(charlist)
  94. {
  95.     charlist = !charlist ? ' \s\xA0' : charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');
  96.     var re = new RegExp('[' + charlist + ']+$', 'g');
  97.     return this.replace(re, '');
  98. }
  99.  
  100. String.prototype.trim = function(charlist)
  101. {
  102.     var str = this.ltrim(charlist);
  103.     return str.rtrim(charlist);
  104. }
  105.  
  106. String.prototype.rpad = function(char, length)
  107. {
  108.     var result = this;
  109.    
  110.     while (result.length < length)
  111.     {
  112.         result += char;
  113.     }
  114.    
  115.     return result;
  116. }
  117.  
  118. function create_table(table_lines)
  119. {
  120.     var table_rows = [];
  121.    
  122.     if (table_lines.length == 0)
  123.     {
  124.         return table_rows;
  125.     }
  126.    
  127.     for (var col = 0; col < table_lines[0].length; col++)
  128.     {
  129.         var len = 0;
  130.        
  131.         for (var row = 0; row < table_lines.length; row++)
  132.         {
  133.             if (table_lines[row][col].length > len)
  134.             {
  135.                 len = table_lines[row][col].length;
  136.             }
  137.         }
  138.        
  139.         len += 6;
  140.        
  141.         for (var row = 0; row < table_lines.length; row++)
  142.         {
  143.             if (!table_rows[row])
  144.             {
  145.                 table_rows[row] = "";
  146.             }
  147.            
  148.             var str = table_lines[row][col] + '';
  149.             str = str.rpad(" ", len);
  150.             //Log("col=" + col + ", row=" + row + " len=" + len + ", str=\"" + str + "\", str.length=" + str.length + "\n");
  151.             table_rows[row] += str;
  152.         }
  153.     }
  154.    
  155.     return table_rows;
  156. }
  157.