source: companies/celepar/jabberit_messenger/templates/default/setup.js @ 763

Revision 763, 8.1 KB checked in by niltonneto, 15 years ago (diff)

Importação inicial do Expresso da Celepar

Line 
1(function()
2{
3        // Envio para o PHP
4        var _conn   = new JITConnector('jabberit_messenger/');
5        var _xtools = new JITXTools('jabberit_messenger/');     
6
7        function addLdapAttributes(pDocument)
8        {
9                var form = pDocument.forms[0];
10                var values = "";
11
12                for(var i = 0; i < form.elements.length; i++)
13                {
14                        if( form.elements[i].id == 'attributes_ldap_list_jabberit')
15                        {
16                                if( form.elements[i].value == -1)
17                                {
18                                        alert('Defina um atributo !');
19                                        return;
20                                }
21                                values += form.elements[i].value;
22                                form.elements[i].options[0].selected = true;
23                        }                               
24
25                        if( form.elements[i].id == 'organization_ldap_jabberit')
26                        {
27                                values += form.elements[i].value + ";";
28                                form.elements[i].value = '';
29                        }
30                       
31                }
32       
33                _conn.go("$this.db_im.setAttributesLdap",
34                                function(data)
35                                {
36                                        if ( data )
37                                        {
38                                                var _params = {
39                                                        'lang1': jabberitGetLang('Organization'),
40                                                        'lang2': jabberitGetLang('Attribute'),
41                                                        'lang3': jabberitGetLang('Delete')
42                                                };
43               
44                                                var Table = document.getElementById('tableHiddenJabberit');
45                                                        Table.parentNode.innerHTML = _xtools.parse( data, 'tableOrganizations.xsl', _params);
46                                        }
47                                },
48                                "conf=" + values);
49        }
50
51        function addParticipantsExternals(pDocument)
52        {
53                var form = pDocument.forms[0];
54                var organization = "";
55               
56                for(var i = 0; i < form.elements.length; i++)
57                {
58                        if( form.elements[i].type == 'text' )
59                        {
60                                var nameElement = form.elements[i].name;
61                                        nameElement = nameElement.substring(nameElement.indexOf('_') +1);
62                               
63                                if( form.elements[i].value != "" && ltrim(form.elements[i].value) != "" )
64                                {
65                                                document.getElementById('label_' + nameElement).style.color = "black";
66                                                organization = form.elements[i].value;
67                                                form.elements[i].value = '';
68                                }
69                                else
70                                {
71                                                document.getElementById('label_' + nameElement).style.color = "red";
72                                                alert(jabberitGetLang('Define Organization!'));
73                                                return false;
74                                }
75                        }
76                }
77               
78                _conn.go("$this.db_im.setOrganization",
79                                function(data)
80                                {
81                                        if ( data )
82                                        {
83                                                var _params = {
84                                                        'lang1': jabberitGetLang('Organization'),
85                                                        'lang2': jabberitGetLang('Delete')
86                                                };
87               
88                                                var Table = document.getElementById('tableExternalParticipantsJabberit');
89                                                Table.parentNode.innerHTML = _xtools.parse( data, 'tableExternalParticipants.xsl', _params);
90                                        }
91                                },
92                                "organization=" + organization);
93        }
94       
95        function setParticipantsExternal()
96        {
97                if( arguments.length > 0 )
98                {
99                        var element = arguments[0];
100                        var form = arguments[1].forms[0];
101                        var value = false;
102                       
103                        for(var i = 0; i < element.options.length; i++)
104                        {
105                                if( element.options[i].selected == true && element.options[i].value == 'true')
106                                        value = true;
107                        }
108                       
109                        for(var i = 0; i < form.elements.length; i++)
110                        {
111                                switch(form.elements[i].type)
112                                {
113                                        case 'text':
114                                        case 'button':
115                                                form.elements[i].disabled = false;                     
116                                                if(!value)
117                                                        form.elements[i].disabled = true;
118
119                                                break;
120                                }
121                        }
122                       
123                        _conn.go("$this.db_im.setUseParticipantsExternal",
124                                function(data)
125                                {
126                                        if(!data)
127                                                alert('Error !');
128                                },
129                                "value=" + value);
130                }
131        }
132
133        function getInputs(pDocument)
134        {
135                var form = pDocument.forms[0];
136                var values = "";
137                var field_blank = false;
138
139                for( var i = 0 ; i < form.elements.length; i++ )       
140                {
141               
142                        switch(form.elements[i].type)
143                        {
144                                case "text" :
145                                                        if ( form.elements[i].value != "" )
146                                                        {
147                                                                values += form.elements[i].id.toUpperCase() + ";" + escape(form.elements[i].value) + "\n";
148                                                                document.getElementById(form.elements[i].id + "__label").style.color = "black";
149                                                        }                                               
150                                                        else
151                                                                if( form.elements[i].id.toUpperCase() != "JETTI_GROUP_CHAT_SERVER_JABBERIT")
152                                                                {
153                                                                        document.getElementById(form.elements[i].id + "__label").style.color = "red";
154                                                                        field_blank = true;
155                                                                }
156                                                        break;
157
158                                case "password" :
159                                                        if ( form.elements[i].value == "" )
160                                                        {
161                                                                document.getElementById(form.elements[i].id + "__label").style.color = "red";
162                                                                field_blank = true;
163                                                        }
164                                                        else
165                                                        {
166                                                                values += form.elements[i].id.toUpperCase() + ";" + escape(form.elements[i].value) + "\n";
167                                                                document.getElementById(form.elements[i].id + "__label").style.color = "black";
168                                                        }
169                                                        break;
170                        }
171                }
172
173                if(!field_blank)
174                {
175                        values = values.substring(0,(values.length - 1 ));
176                        _conn.go("$this.FileDefine.getParams","val=" + values);
177                        return true;
178                }
179                else
180                {
181                        alert('Preencha os campos em vermelho !');
182                        return false;
183                }
184        }
185
186        function ltrim(value)
187        {
188                var w_space = String.fromCharCode(32);
189                var strTemp = "";
190                var iTemp = 0;
191               
192                if(v_length < 1)
193                        return "";
194       
195                var v_length = value ? value.length : 0;
196               
197                while(iTemp < v_length)
198                {
199                        if(value && value.charAt(iTemp) != w_space)
200                        {
201                                strTemp = value.substring(iTemp,v_length);
202                                break;
203                        }
204                        iTemp++;
205                }       
206                return strTemp;
207        }
208
209        function sendf()
210        {
211                var doc = ( arguments.length == 1) ? arguments[0] : false;
212                var form = doc.forms[0];
213                var flag = false;
214                var nameForm = '';
215               
216                for( var i = 0; i < form.elements.length; i++ )
217                {
218                        if( form.elements[i].type == 'hidden' )
219                        {
220                                flag = true;
221                                if( form.elements[i].name == 'HiddenJabberitExternals')
222                                        nameForm = form.elements[i].name;
223                        }
224               
225                }
226       
227                if( flag )
228                {
229                        if(flag && nameForm == 'HiddenJabberitExternals')
230                                addParticipantsExternals(doc);
231                        else
232                                addLdapAttributes(doc);
233                }       
234                else
235                {
236                        if( doc )
237                                return getInputs(doc);
238                }
239        }
240
241        function setOrganizationsForGroups()
242        {
243                var elementSel = document.getElementById('organizations_ldap_jabberit');
244                var Organization = "";
245               
246                for(var i = 0; i < elementSel.options.length; i++)
247                {
248                        if( elementSel.options[i].selected == true && elementSel.options[i].value != "-1" )
249                                Organization = elementSel.options[i].value;
250                }
251               
252                if( Organization )
253                {
254               
255                        var group = document.getElementById('nameGroup').value;
256                        var gidNumber = document.getElementById('gidNumber').value;
257       
258                       
259                        _conn.go("$this.db_im.setOuGroupsLocked",
260                                         function(data)
261                                         {
262                                                if ( data )
263                                                {
264                                                        var _params = {
265                                                                'lang1': jabberitGetLang('Organization'),
266                                                                'lang2': jabberitGetLang('Delete')
267                                                        };
268                                                       
269                                                        var Table = document.getElementById('tableOrganizationsEnabledGroupsJabberit');
270                                                        Table.parentNode.innerHTML = _xtools.parse( data, 'tableOrganizationsEnabledGroupsJabberit.xsl', _params);
271                                                }
272                                         },     
273                                         "group="+group+"&gidnumber="+gidNumber+"&ou="+Organization);
274                }
275        }
276
277        function removeOrgGroupsLocked()
278        {
279                if( arguments.length > 0 )
280                {
281                        var element = document.getElementById(arguments[0]);
282                        var org = arguments[0];
283                        var group = document.getElementById('nameGroup').value;
284                        var gidNumber = document.getElementById('gidNumber').value;
285                       
286                       
287                        _conn.go("$this.db_im.removeOuGroupsLocked",
288                                        function(data)
289                                        {
290                                                if( data )
291                                                        element.parentNode.removeChild(element);
292                                        },
293                                        "group="+group+"&gidnumber="+gidNumber+"&ou="+org);
294                }
295        }
296
297
298        function removeOrgLdapAttributes()
299        {
300                if( arguments.length > 0 )
301                {
302                        var element = document.getElementById(arguments[0]);
303                        var org = arguments[0];
304                       
305                        _conn.go("$this.db_im.removeAttributesLdap",
306                                        function(data)
307                                        {
308                                                if( data )
309                                                        element.parentNode.removeChild(element);
310                                        },
311                                        "org=" + org);
312                }
313        }
314       
315        function removeParticipantsExternal()
316        {
317                if( arguments.length > 0 )
318                {
319                        var element = document.getElementById(arguments[0]);
320                        var participantsExternal = arguments[0];
321                       
322                        _conn.go("$this.db_im.removeParticipantsExternal",
323                                        function(data)
324                                        {
325                                                if( data )
326                                                        element.parentNode.removeChild(element);
327                                        },
328                                        "participants=" + participantsExternal);
329                }
330        }
331
332        function constructScript(){}
333
334        constructScript.prototype.setPartExternal = setParticipantsExternal;
335        constructScript.prototype.removePartExternal = removeParticipantsExternal;
336        constructScript.prototype.removeOrg = removeOrgLdapAttributes;
337        constructScript.prototype.removeOrgGroupsLocked = removeOrgGroupsLocked;
338        constructScript.prototype.setOrgFgroups = setOrganizationsForGroups;
339        constructScript.prototype.setPartExternal = setParticipantsExternal;   
340        constructScript.prototype.sendf = sendf;
341       
342        window.constructScript = new constructScript;
343}
344)();
Note: See TracBrowser for help on using the repository browser.