Subversion Repositories HomeAutomation

Rev

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

Rev Author Line No. Line
1601 runge 1
 
1679 runge 2
 
3
 
1649 runge 4
function get_time()
5
{
1679 runge 6
    return Math.round(new Date().getTime() / 1000);
1649 runge 7
}
8
 
1647 runge 9
function to_array(obj)
10
{
1679 runge 11
    var result = [];
12
 
13
    for (var n = 0; n < obj.length; n++)
14
    {
15
        result.push(obj[n]);
16
    }
17
 
18
    return result;
1647 runge 19
}
20
 
1646 runge 21
function array_length(array)
22
{
23
    var count = 0;
1679 runge 24
 
1646 runge 25
    for (var n in array)
26
    {
27
        count++;
28
    }
1679 runge 29
 
1646 runge 30
    return count;
31
}
32
 
1660 runge 33
function array_remove_empty(array)
34
{
1679 runge 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;
1660 runge 46
}
47
 
1644 runge 48
function in_array(array, item)
1601 runge 49
{
1679 runge 50
    for (var n in array)
51
    {
52
        if (array[n] == item)
53
        {
54
            return true;
55
        }
56
    }
57
 
58
    return false;
1603 runge 59
}
60
 
1644 runge 61
function key_in_array(array, key)
1614 runge 62
{
1679 runge 63
    for (var n in array)
64
    {
65
        if (n == key)
66
        {
67
            return true;
68
        }
69
    }
70
 
71
    return false;
1614 runge 72
}
73
 
1647 runge 74
function get_keys(array)
75
{
1679 runge 76
    var result = [];
77
 
78
    for (var name in array)
79
    {
80
        result.push(name);
81
    }
82
 
83
    return result;
1647 runge 84
}
85
 
1603 runge 86
String.prototype.ltrim = function(charlist)
87
{
1679 runge 88
    charlist = !charlist ? ' \s\xA0' : charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');
89
    var re = new RegExp('^[' + charlist + ']+', 'g');
90
    return this.replace(re, '');
1603 runge 91
}
92
 
93
String.prototype.rtrim = function(charlist)
94
{
1679 runge 95
    charlist = !charlist ? ' \s\xA0' : charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');
96
    var re = new RegExp('[' + charlist + ']+$', 'g');
97
    return this.replace(re, '');
1603 runge 98
}
99
 
100
String.prototype.trim = function(charlist)
101
{
1679 runge 102
    var str = this.ltrim(charlist);
103
    return str.rtrim(charlist);
1603 runge 104
}
1660 runge 105
 
106
String.prototype.rpad = function(char, length)
107
{
1679 runge 108
    var result = this;
109
 
110
    while (result.length < length)
111
    {
112
        result += char;
113
    }
114
 
115
    return result;
1660 runge 116
}
117
 
118
function create_table(table_lines)
119
{
1679 runge 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;
1660 runge 156
}