Subversion Repositories HomeAutomation

Rev

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

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