source: trunk/calendar/templates/default/js/quickSearch.js @ 7173

Revision 7173, 22.1 KB checked in by angelo, 12 years ago (diff)

Ticket #3089 - Problema com os participantes externos na criacao de compromisso

  • Property svn:executable set to *
Line 
1        function emQuickSearch ()
2        {
3                this.arrayWin = new Array();
4                this.el;
5                this.cc_contacts = new Array();
6                this.cc_groups  = new Array();
7        }
8
9        emQuickSearch.prototype.showList = function(data, begin, end){         
10                id = '1';
11                _this = this;
12                var el = document.createElement("DIV");
13                el.style.visibility = "hidden";
14                el.style.position = "absolute";
15                el.style.left = "0px";
16                el.style.top = "0px";
17                el.style.width = "0px";
18                el.style.height = "0px";
19                el.id = 'window_QuickCatalogSearch';
20                document.body.appendChild(el);
21                el.innerHTML = "";
22               
23                func_add_contact = function () {
24                        var select_QuickCatalogSearch = document.getElementById("select_QuickCatalogSearch");
25                        var contact_selected = select_QuickCatalogSearch.options[select_QuickCatalogSearch.selectedIndex].text;
26                       
27                        contact_selected = contact_selected.split('(');
28                       
29                        var first_and_last_name = contact_selected[0].split(" ");
30                       
31                        var data = [];
32                        data[0] = first_and_last_name[0];
33                        data[1] = first_and_last_name[0];
34                        data[2] = "";
35                       
36                        for (i=1; i < first_and_last_name.length; i++)
37                                data[2] += first_and_last_name[i] + " ";
38                       
39                        data[2] = data[2].replace(/\s*$/g,'');
40                        data[3] = contact_selected[1].substring(0, contact_selected[1].indexOf(")") );
41                       
42                        ccQuickAddOne.showList( data );                 
43                };             
44               
45                if (document.getElementById('select_QuickCatalogSearch') == null){
46
47                        var title_innerHTML = 'Selecione um nome:';
48                        if (data.quickSearch_only_in_userSector)
49                                title_innerHTML += "<font color='BLACK' nowrap> ("+get_lang('Showing only the results found in your organization')+".)</font>"
50
51                        var title = document.createElement("SPAM");
52                        title.id = 'window_QuickCatalogSearch_title';
53                        title.innerHTML = "&nbsp;&nbsp;<b><font color='BLUE' nowrap>"+title_innerHTML+"</font></b><br>&nbsp;&nbsp;";
54                        el.appendChild(title);
55                       
56                        var cmb = document.createElement("SELECT");
57                        cmb.id = "select_QuickCatalogSearch";
58                        cmb.style.width = "685px";
59                        cmb.size = "12";
60                        cmb.onkeypress = function (e)
61                        {
62                                if (is_ie)
63                                {
64                                        if ((window.event.keyCode) == 13)
65                                        {
66                                                quickSearchUser.transfer_result(data.field, data.ID, begin, end);
67                                        }
68                                        else if ((window.event.keyCode) == 27)
69                                        {
70                                                quickSearchUser.close_QuickSearch_window(data.field, data.ID);
71                                        }
72                                }
73                                else
74                                {
75                                        if ((e.keyCode) == 13)
76                                        {
77                                                quickSearchUser.transfer_result(data.field, data.ID, begin, end);
78                                        }
79                                        else if ((e.keyCode) == 27)
80                                        {
81                                                quickSearchUser.close_QuickSearch_window(data.field, data.ID);
82                                        }
83                                }
84                        };
85                        el.appendChild(cmb);
86
87                        var space = document.createElement('SPAN');
88                        space.innerHTML = "<BR>&nbsp;&nbsp;";
89                        el.appendChild(space);
90
91                        var butt = document.createElement('BUTTON');
92                        var buttext = document.createTextNode('OK');
93                        butt.id = "QuickCatalogSearch_button_ok";
94                        butt.appendChild(buttext);
95                        butt.onclick = function () {quickSearchUser.transfer_result(data.field, data.ID, begin, end);};
96                        el.appendChild(butt);
97
98                        var space = document.createElement('SPAN');
99                        space.innerHTML = "&nbsp;&nbsp;";
100                        el.appendChild(space);
101
102                        var butt = document.createElement('BUTTON');
103                        butt.id = "QuickCatalogSearch_button_close";
104                        var buttext = document.createTextNode('Fechar');
105                        butt.appendChild(buttext);
106                        butt.onclick = function () {quickSearchUser.close_QuickSearch_window(data.field, data.ID);};
107                        el.appendChild(butt);
108                       
109                        var space = document.createElement('SPAN');
110                        space.innerHTML = "&nbsp;&nbsp;";
111                        el.appendChild(space);
112                }
113                else{
114                        var title_innerHTML = get_lang('Select a name') + ':';
115                        if (data.quickSearch_only_in_userSector)
116                                title_innerHTML += "<font color='BLACK' nowrap> (Mostrando apenas os resultados encontrados na sua organização.)</font>"
117
118                        var title = Element('window_QuickCatalogSearch_title');
119                        title.innerHTML = "&nbsp;&nbsp;<b><font color='BLUE' nowrap>"+title_innerHTML+"</font></b><br>&nbsp;&nbsp;";
120                       
121                        var cmb = document.getElementById('select_QuickCatalogSearch');
122                        cmb.onkeypress = function (e)
123                        {
124                                if (is_ie)
125                                {
126                                        if ((window.event.keyCode) == 13)
127                                        {
128                                                quickSearchUser.transfer_result(data.field, data.ID, begin, end);
129                                        }
130                                        else if ((window.event.keyCode) == 27)
131                                        {
132                                                quickSearchUserclose_QuickSearch_window(data.field, data.ID);
133                                        }
134                                }
135                                else
136                                {
137                                        if ((e.keyCode) == 13)
138                                        {
139                                                quickSearchUser.transfer_result(data.field, data.ID, begin, end);
140                                        }
141                                        else if ((e.keyCode) == 27)
142                                        {
143                                                quickSearchUser.close_QuickSearch_window(data.field, data.ID);
144                                        }
145                                }
146                        };
147
148                        for (i=0; i<cmb.length; i++)
149                                cmb.options[i--] = null;       
150                        var butt_ok = document.getElementById("QuickCatalogSearch_button_ok");
151                        var butt_close = document.getElementById("QuickCatalogSearch_button_close");
152                        butt_ok.onclick = function () {quickSearchUser.transfer_result(data.field, data.ID, begin, end);};
153                        butt_close.onclick = function () {quickSearchUser.close_QuickSearch_window(data.field, data.ID);};
154                }
155
156                for (i=0; i<data.length; i++){
157                        var Op = document.createElement("OPTION");
158                        if (data[i].cn && data[i].mail)
159                        Op.text = data[i].cn + ' (' + data[i].mail + ')';
160                        if ( data[i].phone && data[i].phone != '')
161                                Op.text += ' - ' + data[i].phone;
162                        if (data[i].ou && data[i].ou != '')
163                                Op.text += ' - ' + data[i].ou; // adicionado "data[i].ou" para exibir setor (F9)
164                        if (data[i].cn && data[i].mail)
165                        Op.value = '"' + data[i].cn + '" ' + '<' + data[i].mail + '>';
166                        cmb.options.add(Op);
167                }
168
169                cmb.options[0].selected = true;
170                _this.showWindow(el);
171        }
172       
173        emQuickSearch.prototype.showWindow = function (div)
174        {
175                if(! div) {
176                        alert('A lista não possui participantes.');
177                        return;
178                }
179                                                       
180                if(! this.arrayWin[div.id]) {
181                        div.style.width = "700px";
182                        div.style.height = "230px";
183                        var title = 'Os resultados foram encontrados no catálogo global:';
184                        var wHeight = div.offsetHeight + "px";
185                        var wWidth =  div.offsetWidth   + "px";
186                        div.style.width = div.offsetWidth - 5;
187
188                        win = new dJSWin({                     
189                                id: 'QuickCatalogSearch_'+div.id,
190                                content_id: div.id,
191                                width: wWidth,
192                                height: wHeight,
193                                title_color: '#3978d6',
194                                bg_color: '#eee',
195                                title: title,                                           
196                                title_text_color: 'white',
197                                button_x_img: 'phpgwapi/images/winclose.gif',
198                                border: true });
199                       
200                        this.arrayWin[div.id] = win;
201                        win.draw();
202                }
203                else {
204                        win = this.arrayWin[div.id];
205                }
206                win.open();
207                document.getElementById('select_QuickCatalogSearch').focus();
208        }
209       
210        emQuickSearch.prototype.transfer_result = function (field, ID, begin, end){
211                cm = document.getElementById('select_QuickCatalogSearch');
212                option_selected = cm.options[cm.selectedIndex].value + ",";
213                emailList = document.getElementById('ex_participants').value;
214                if(emailList.indexOf(',') != -1)
215                        new_emailList = emailList.substring(0, begin) + "," +option_selected + emailList.substring((parseInt(end) + 2), emailList.length);
216                else
217                        new_emailList = emailList.substring(0, begin) + option_selected + emailList.substring((parseInt(end) + 2), emailList.length);
218                document.getElementById('ex_participants').value = new_emailList;
219                var txt_area = document.getElementById('ex_participants');
220                var len = txt_area.value.length;
221                txt_area.setSelectionRange(len, len);
222                document.getElementById('ex_participants').focus();
223                this.arrayWin['window_QuickCatalogSearch'].close();
224        }
225       
226        emQuickSearch.prototype.close_QuickSearch_window = function (field, ID){
227                document.getElementById('ex_participants').focus();
228                this.arrayWin['window_QuickCatalogSearch'].close();
229        }
230
231        emQuickSearch.prototype.close_window = function(id) {
232                this.arrayWin[id].close();
233                var group_values = Element('list_values');
234                var user_values = Element('user_values');
235                document.getElementById('ex_participants').focus();
236
237        }
238        emQuickSearch.prototype.showCatalogList = function (border_id){
239                var el = Element('catalog_list');
240
241                if(el) {
242                        Element('border_id').value = border_id;
243                        win = this.arrayWin[el.id];
244                        win.open();
245                        return;         
246                }
247                var border_input   = document.createElement("INPUT");
248                border_input.type  = 'hidden';
249                border_input.id    = 'border_id';
250                border_input.value = border_id;
251                document.body.appendChild(border_input);
252                el = document.createElement("DIV");             
253                el.id = 'catalog_list';
254                document.body.appendChild(el);                 
255                el.style.visibility = "hidden";
256                el.style.position = "absolute";
257                el.style.width = "700px";
258                el.style.height = is_ie ? "360px" : "375px";           
259                el.style.left = "0px";
260                el.style.top = "0px";                   
261                el.innerHTML = "<table border='0' cellpading='0' cellspacing='0' width='100%'>"+
262                                           "<tr><td id='td1' style='cursor:pointer' align='center' onclick='quickSearchUser.select_div(\"tab1\")'><a href='#' class='catalog' onclick='quickSearchUser.select_div(\"tab1\");'>"+get_lang('Global Catalog')+"</a></td>"+
263                                           "<td id='td2' style='background:#cecece;cursor:pointer' onclick='quickSearchUser.select_div(\"tab2\")' align='center'><a href='#' class='catalog' onclick='quickSearchUser.select_div(\"tab2\");'>"+get_lang('Personal Catalog')+"</a></td></tr>"+
264                                           '</table>'+
265                                           '<div id="tab1" align="center"><br>'+
266                                           '<table border="0" cellpading="0" cellspacing="0">'+
267                                           '<tr><td>'+get_lang("Select an organization and click on button <b>Search</b>")+'&nbsp;:</td></tr>'+
268                                        '<tr><td><select style="display:none;width:150px" id="select_catalog" name="select_catalog" onchange="javascript:quickSearchUser.update_organizations();"></select>&nbsp'+
269                                        '<select id="select_organization" style="width:150px" name="select_organization"></select>&nbsp;'+   
270                                        '<input type="text" id="search_for" name="search_for" value="" size="30" maxlength="30"/>&nbsp;<input type="button" onclick="quickSearchUser.searchCatalogList(true)" class="button" value="'+get_lang('Search')+'">&nbsp;<input style="display:visible" type="button" onclick="quickSearchUser.searchCatalogList(false)" class="button" value="'+get_lang('List All')+'"></td></tr>'+
271                                           '<tr><td><input onclick="javascript:quickSearchUser.changeOptions(this.value)" id="type_l" type="radio" name="type" value="l"/>'+get_lang('Public Lists')+'&nbsp;&nbsp;<input type="radio" id="type_u" name="type" value="u" onclick="javascript:quickSearchUser.changeOptions(this.value)" checked/>'+get_lang('Users')+'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'+
272                                           '<span style="visibility:hidden;background:#cc4444" id=msg_search>&nbsp;&nbsp;<font face="Verdana" size="1" color="WHITE">'+get_lang('Search in Catalog')+'...</font>&nbsp;</span></td></tr>'+
273                                           '<tr><td>'+
274                                           '<span id="list_span"><select multiple style="display:none;width:580px" size="14" id="list_values"></select></span>'+
275                                           '<span id="user_span"><select multiple style="width:580px" size="14" id="user_values"></select></span>'+
276                                           '</td></tr>'+
277                                           '<tr><td nowrap><center>'+get_lang('Click here to add into the fields')+':&nbsp;<input type="button" class="button" value="'+get_lang('TO')+'" onClick="javascript:quickSearchUser.addContacts(\'to\')">&nbsp;'+
278                                           '<input type="button" class="button" value="'+get_lang('CC')+'" onClick="javascript:quickSearchUser.addContacts(\'cc\')">&nbsp;'+
279                                           '<input type="button" class="button" value="'+get_lang('CCo')+'" onClick="javascript:quickSearchUser.addContacts(\'cco\')">'+
280                                           '</center></td></tr><tr><td nowrap><center><input type="button" value="'+get_lang('Close')+'" onClick="javascript:quickSearchUser.close_window(\'catalog_list\')"></center></td></tr>'+
281                                           '</table>'+
282                                           '</div>'+
283                                           '<div style="display:none" id="tab2" align="center">'+
284                                           '<br><br><br>'+
285                                           '<table border="0" cellpading="0" cellspacing="0">'+
286                                           '<tr><td>'+get_lang("Select the type of contact that you want to view")+'&nbsp;:</td></tr>'+
287                                           '<tr><td><input onclick="javascript:quickSearchUser.changeOptions(this.value)" type="radio" name="type" value="p"/>' + get_lang('People') + '&nbsp;&nbsp;<input type="radio" name="type" value="g" onclick="javascript:quickSearchUser.changeOptions(this.value)"/>' + get_lang('Groups') + ' &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'+
288                                           '<tr><td>'+
289                                           '<span id="personal_span"><select multiple style="width:580px" size="14" id="list_personal"></select></span>'+
290                                           '<span id="groups_span"><select multiple style="display:none;width:580px" size="14" id="list_groups"></select></span>'+
291                                           '</td></tr>'+
292                                           '<tr><td nowrap><center>'+get_lang('Click here to add into the fields')+':&nbsp;<input type="button" class="button" value="'+get_lang('TO')+'" onClick="javascript:quickSearchUser.addContacts(\'to1\')">&nbsp;'+
293                                           '<input type="button" class="button" value="'+get_lang('CC')+'" onClick="javascript:quickSearchUser.addContacts(\'cc1\')">&nbsp;'+
294                                           '<input type="button" class="button" value="'+get_lang('CCo')+'" onClick="javascript:quickSearchUser.addContacts(\'cco1\')">'+
295                                           '</center></td></tr><tr><td nowrap><center><input type="button" value="'+get_lang('Close')+'" onClick="javascript:quickSearchUser.close_window(\'catalog_list\')"></center></td></tr>'+
296                                           '</table>'+
297                                           '</div>';
298
299                var title = get_lang('Search in the Global Catalog');
300                var wHeight = el.offsetHeight - (is_ie ? 10 : 0) + "px";
301                var wWidth =  el.offsetWidth   + "px";
302                el.style.width = el.offsetWidth;
303               
304                Element('search_for').onkeypress = function (e) {
305                        if ((is_ie && (window.event.keyCode == 13)) || (!is_ie && e.keyCode == 13)) {
306                                QuickSearchUser.searchCatalogList(true);
307                        }
308                };
309
310                win = new dJSWin({                     
311                        id: 'win_'+el.id,
312                        content_id: el.id,
313                        width: wWidth,
314                        height: wHeight,
315                        title_color: '#3978d6',
316                        bg_color: '#eee',
317                        title: title,                                           
318                        title_text_color: 'white',
319                        button_x_img: '../../phpgwapi/images/winclose.gif',
320                        border: true });
321                       
322                this.arrayWin[el.id] = win;             
323                win.draw();
324                win.open();
325
326                var handler_catalogs = function(data){
327                        var user_catalog = get_lang("Global Catalog");
328                        if(data.length > 1) {
329                                Element('select_catalog').style.display = '';
330                                for(i = 0; i < data.length; i++) {             
331                                        Element('select_catalog').options[i] = new Option(data[i],i);
332                                        if(user_catalog.toUpperCase() == data[i].toUpperCase())
333                                                Element('select_catalog').options[i].selected = true;
334                                }
335                        }
336                }
337                cExecute ("$this.ldap_functions.get_catalogs", handler_catalogs);               
338               
339                this.update_organizations();
340                var handler_cc_contacts= function(data){
341                        if(data && data.length > 0){
342                                var aux = data.split(",");
343                                for(var i=0; i< aux.length; i++){
344                                        quickSearchUser.cc_contacts[quickSearchUser.cc_contacts.length] = aux[i];                               
345                                }
346                        }
347                }
348                cExecute("$this.db_functions.get_cc_contacts",handler_cc_contacts);
349
350                var handler_cc_groups = function(data){
351                        if(data && data.length > 0){
352                                var aux = data.split(",");
353                                for(var i=0; i < data.length; i++){
354                                        quickSearchUser.cc_groups[quickSearchUser.cc_groups.length] = aux[i];                                                           
355                                }       
356                        }
357                }
358                cExecute("$this.db_functions.get_cc_groups",handler_cc_groups);
359       
360        }
361       
362        emQuickSearch.prototype.select_div = function(element){
363                if(element == 'tab1'){
364                   Element('tab1').style.display = '';
365                   Element('tab2').style.display = 'none';
366                   Element('td1').style.background = '#eee';   
367                   Element('td2').style.background = '#cecece';
368                }
369                if(element == 'tab2'){
370                   Element('tab1').style.display = 'none';
371                   Element('tab2').style.display = '';
372                   Element('td1').style.background = '#cecece';
373                   Element('td2').style.background = '#eee';               
374
375                }
376        }
377       
378        emQuickSearch.prototype.load_catalog = function(){
379       
380                var _this = this;
381                var content = new Array;
382                var select = Element('list_personal').style.display == 'none'? Element('list_groups'): Element('list_personal');
383               
384                if(Element('list_personal').style.display == 'none'){
385                        content = _this.cc_groups;
386                }else{
387                        content = _this.cc_contacts;
388                }
389                if(select.options.length > 0){
390                        for(var i=0; i < select.options.length; i++){
391                                select.options[i] = null;
392                                i--;
393                        }
394                }
395                for(var i=0; i < content.length; i++){
396                        if(content[i] != undefined){
397                                var aux = content[i].split(";");
398                                var opt = new Option(aux[0] + ' (' + aux[1] + ')','"' + aux[0] + '" ' + '<' + aux[1] + '>',false,false);
399                                select[select.length] = opt;
400                        }
401                }
402                content.splice(0,(content.lenght));
403        }
404
405        emQuickSearch.prototype.update_organizations = function(){
406                while(Element('select_organization').options.length > 0) {
407                        Element('select_organization').remove(0);
408                }
409                var handler_org = function(data){
410                        Element('select_organization').options[0] = new Option(get_lang('all'),'all');
411                        if (data != null){
412                                var user_organization = Element('user_organization').value;
413                                for(x = 0; x < data.length; x++) {
414                                        Element('select_organization').options[x+1] = new Option(data[x].toUpperCase(),data[x]);
415                                        if(user_organization.toUpperCase() == data[x].toUpperCase())
416                                                Element('select_organization').options[x+1].selected = true;
417                                }
418                        }
419                }               
420                cExecute ("$this.ldap_functions.get_organizations&referral=false&catalog="+Element('select_catalog').value, handler_org);               
421        }
422
423        emQuickSearch.prototype.changeOptions = function(type){
424
425                switch(type){
426                        case 'u':
427                                Element('list_values').style.display = 'none';
428                                Element('user_values').style.display = '';
429                                break;
430                       
431                        case 'l':               
432                                Element('user_values').style.display = 'none';
433                                Element('list_values').style.display = '';             
434                                break;
435
436                        case 'p':
437                                Element('list_personal').style.display = '';
438                                Element('list_groups').style.display = 'none'
439                                quickSearchUser.load_catalog();                         
440                                break;
441                       
442                        case 'g':
443                                Element('list_personal').style.display = 'none';
444                                Element('list_groups').style.display = ''
445                                quickSearchUser.load_catalog();
446                                break;
447                }
448
449        }
450
451        emQuickSearch.prototype.addContacts = function(field) {
452               
453                var border_id   = Element('border_id').value;
454                var select              = Element('user_values').style.display == 'none' ? Element('list_values') : Element('user_values');
455                if(field == "to1" || field == "cc1" || field == "cco1"){
456                        field = field.substr(0,field.length - 1);
457                        var select = Element('list_personal').style.display == 'none' ? Element('list_groups') : Element('list_personal');
458                }
459                var fieldOpener = Element(field+"_"+border_id);
460                var not_selected = true;
461               
462                fieldOpener.value = trim(fieldOpener.value);
463               
464                for (i = 0 ; i < select.length ; i++) {
465                        if (select.options[i].selected && select.options[i].value != '-1') {
466                                if(fieldOpener.value.length > 0 && (fieldOpener.value.lastIndexOf(',') != (fieldOpener.value.length - 1))){
467                                        fieldOpener.value += ",";
468                                }
469                                fieldOpener.value += select.options[i].value + ",";
470                                not_selected = false;
471                                select.options[i].selected = false;
472                        }
473                }
474               
475                if(not_selected)
476                        return false;
477                       
478                if(field != 'to'){
479                        a_link = Element("a_"+field+"_link_"+border_id);
480                        if(a_link)
481                                a_link.onclick();
482                }
483        }
484       
485        emQuickSearch.prototype.searchCatalogList = function (itemSearch){
486
487                if(itemSearch && Element('search_for').value.length < preferences.search_characters_number){
488                        alert(get_lang('Your search argument must be longer than %1 characters.', preferences.search_characters_number));
489                        Element('search_for').focus();
490                        return false;
491                }
492                var organization = Element('select_organization').value;               
493                var search               = itemSearch ? Element('search_for').value : '';
494                var catalog              = Element('select_catalog').value;
495                var max_result  = 400;
496
497                var handler_searchResults = function(data){
498                        Element('msg_search').style.visibility = 'hidden';
499                        if(data.error){
500                                alert(get_lang('More than %1 results. Please, try to refine your search.',max_result));
501                                return false;
502                        }else if(data.users.length == 0 && data.groups.length == 0){
503                                alert(get_lang('None result was found.'));
504                        }
505
506                       
507                        var group = Element('list_span');
508                        var user  = Element('user_span');       
509                        if(is_ie){
510                                group.innerHTML = '';
511                                user.innerHTML = '';
512                        }
513                        else {
514                                group = Element('list_values');
515                                user  = Element('user_values');
516                                for(var i = 0;i < group.options.length; i++)                           
517                                        group.options[i--] = null;
518                                for(var i = 0;i < user.options.length; i++)                             
519                                        user.options[i--] = null;
520                        }
521
522                        var arr         = new Array(max_result);
523
524                        for(i = 0; data.groups && i < data.groups.length; i++) {
525                                // Maneiras diferentes de se montar uma tag OPTION, pois no IE o objeto Option é muito lento.
526                                if(is_ie)
527                                        arr[i] = '<option value="'+'&quot;'+data.groups[i].name+'&quot; &lt;'+data.groups[i].email+'&gt;">'+data.groups[i].name+' ('+data.groups[i].email+')'+'</option>';
528                                else
529                                        group.options[i] = new Option(data.groups[i].name+' ('+data.groups[i].email+')','"'+data.groups[i].name+'" <'+data.groups[i].email+'>');
530                        }
531       
532                       
533                        if(is_ie)
534                                group.innerHTML = '<select multiple style="display:none;width:580px" size="14" id="list_values">'+ arr.join() +'</select>';
535
536                        arr = new Array(max_result);
537                       
538                        for(i = 0; data.users && i < data.users.length; i++) {
539                        /*******************************************************************************************/
540                        /* O resultado pratico do bloco de codigo a seguir eh a exibicao dos valores em tela,
541                        ja que vai verificar se o departamento e o email estao vazios ou nulos e a partir dai o
542                        resultado apresentado em tela sera exibido de maneira mais apresentavel;
543                        */
544                                //verifica se departamento eh null ou nao;
545                                var department = data.users[i].department ? " - " + data.users[i].department : "";
546                                //verifica se email eh null ou nao;
547                                var email = data.users[i].email ? data.users[i].email : "";
548
549                                // Maneiras diferentes de se montar uma tag OPTION, pois no IE o objeto Option é muito lento.
550                                if(is_ie)
551                                        arr[i] = '<option value="'+'&quot;'+data.users[i].name+'&quot; &lt;'+email+'&gt;">'+data.users[i].name+' ('+email+')'+department+'</option>';
552                                else {
553                                        user.options[i] = new Option(data.users[i].name+' ('+email+')'+department,'"'+data.users[i].name+'" <'+email+'>'); // incluido data.users[i].department para exibir setor na opcao "Pesquisar" do email;
554                                }
555                        }
556       
557                        if(is_ie)
558                                user.innerHTML = '<select multiple style="width:580px" size="14" id="user_values">'+ arr.join() +'</select>';
559
560                        // Display entries found.
561                        var type = (data.groups.length > 0 && data.users.length == 0) ? 'l' : 'u';
562                        Element("type_"+type).checked = true;
563                        quickSearchUser.changeOptions(type);
564                }
565
566                Element('msg_search').style.visibility = 'visible';
567                cExecute ("$this.ldap_functions.catalogsearch&max_result="+max_result+"&organization="+organization+"&search_for="+search+"&catalog="+catalog, handler_searchResults);
568        }
569
570       
571/* Build the Object */
572        var quickSearch;
573        quickSearchUser = new emQuickSearch();
Note: See TracBrowser for help on using the repository browser.