source: trunk/expressoMail1_2/js/jscode/draw_api_messages.js @ 3077

Revision 3077, 26.8 KB checked in by amuller, 14 years ago (diff)

Ticket #1145 - Arruma problema ao carregar script sob demanda

Line 
1
2function changeLinkState(el,state){
3        el.innerHTML = get_lang(state);
4        switch (state){
5                case 'important':
6                        {
7                                el.onclick = function(){changeLinkState(el,'normal');set_messages_flag('unflagged',currentTab.substr(0,currentTab.indexOf("_r"))); write_msg(get_lang('Message marked as ')+get_lang("Normal"))};
8                                break;
9                        }
10                case 'normal':
11                        {
12                                el.onclick = function(){  changeLinkState(el,'important');set_messages_flag('flagged',currentTab.substr(0,currentTab.indexOf("_r")));write_msg(get_lang('Message marked as ')+get_lang("Important"))};
13                                break;
14                        }
15                case 'unseen':
16                        {
17                                el.onclick = function(){  changeLinkState(el,'seen');set_messages_flag('unseen',currentTab.substr(0,currentTab.indexOf("_r")));write_msg(get_lang('Message marked as ')+get_lang("unseen"))};
18                                break;
19
20                        }
21                case 'seen':
22                        {
23                                el.onclick = function(){  changeLinkState(el,'unseen');set_messages_flag('seen',currentTab.substr(0,currentTab.indexOf("_r")));write_msg(get_lang('Message marked as ')+get_lang("seen"))};
24                                break;
25
26                        }
27                default:
28                        {
29                                break;
30                        }
31        }
32}
33function constructMenuNewMessage(ID,tbody_message,table_message,content)
34{
35        table_message.width = "100%";
36
37        var tr0 = document.createElement("TR");
38        tr0.className = "tr_message_header";
39        var td0 = document.createElement("TD");
40        td0.colSpan = '3';
41
42        var table_menu_new_message = document.createElement("TABLE");
43        table_menu_new_message.width = "100%";
44        table_menu_new_message.border = '0';
45        table_menu_new_message.className = 'table_message';
46        var tbody_menu_new_message = document.createElement("TBODY");
47        var tr_menu_new_message = document.createElement("TR");
48        var td_menu_new_message = document.createElement("TD");
49        td_menu_new_message.setAttribute("noWrap","true");
50
51        if ((preferences.save_in_folder == '-1') || (preferences.save_in_folder == '')){
52                //var option_send = '<span class="message_options" onclick=send_message("'+ID+'","null","null");>'+get_lang("Send")+'</span> | ';
53                var option_send   = '<input type="button" id="send_button_'+ID+'" class="em_button_like_span" tabindex="1" value="'+get_lang("Send")+'" onclick=send_message("'+ID+'","null","null");>' + ' | ';
54                if(!expresso_offline)
55                        var option_send_and_file= '<span class="message_options" onclick=wfolders.makeWindow("'+ID+'","send_and_file");>'+get_lang("Send and file")+'</span> | ';
56                else
57                        var option_send_and_file='';
58        }
59        else{
60                //var option_send = '<span class="message_options" onclick="send_message(\''+ID+'\',\''+preferences.save_in_folder+'\',\'null\');">'+get_lang("Send")+'</span> | ';
61                var option_send   = '<input type="button" id="send_button_'+ID+'" class="em_button_like_span" tabindex="1" value="'+get_lang("Send")+'" onclick="send_message(\''+ID+'\',\''+preferences.save_in_folder+'\',\'null\');">' + ' | ';
62                var option_send_and_file='';
63                wfolders.alert = true;
64        }
65        //      var option_save_as              = '<span class="message_options" onclick=wfolders.makeWindow("'+ID+'","save");>'+get_lang("Save as")+'</span> | ';
66        if (!expresso_offline) {
67                var option_save = '<span id="save_message_options_'+ID+'" class="message_options" onclick="openTab.toPreserve['+ID+'] = true; save_msg('+ID+');">'+get_lang("Save")+'</span> | ';
68                var option_search = '<span class="message_options" onclick=openListUsers("'+ID+'");>'+get_lang("Search")+'</span>';
69        }
70        else {
71                var option_save = '<input type="hidden" id="save_message_options_'+ID+'">';
72                var option_search = '';
73        }
74        td_menu_new_message.innerHTML = option_send + option_send_and_file + option_save + option_search;
75
76        tr_menu_new_message.appendChild(td_menu_new_message);
77        tbody_menu_new_message.appendChild(tr_menu_new_message);
78        table_menu_new_message.appendChild(tbody_menu_new_message);
79
80        content.appendChild(table_menu_new_message);
81        tr0.appendChild(td0);
82        tbody_message.appendChild(tr0);
83        ////////////////////////////////////////////////////////////////////////////////////////////////////////
84}
85function constructFromField(tbody_message,ID)
86{
87        var tr1_1 = document.createElement("TR");
88        tr1_1.style.display = 'none';
89        var td1_1 = document.createElement("TD");
90        td1_1.innerHTML = get_lang("From")+":";
91        td1_1.setAttribute("noWrap","true");
92        td1_1.style.width = "1%";
93
94        var td_from = document.createElement("TD");
95        td_from.setAttribute("noWrap","true");
96        td_from.style.width = "100%";
97
98        var sel_from = document.createElement('SELECT');       
99        sel_from.id = "from_"+ID;
100        sel_from.name = "input_from";
101        sel_from.style.width = "70%";
102        sel_from.setAttribute("wrap","soft");
103        td_from.appendChild(sel_from); 
104        tr1_1.appendChild(td1_1);
105        tr1_1.appendChild(td_from);
106        tbody_message.appendChild(tr1_1);       
107        if(!expresso_offline)
108                draw_from_field(sel_from,tr1_1);
109        var tr1 = document.createElement("TR");
110        var td1 = document.createElement("TD");
111        td1.innerHTML = get_lang("To")+":";
112        td1.setAttribute("noWrap","true");
113        td1.style.width = "1%";
114
115        var td_to = document.createElement("TD");
116        td_to.setAttribute("noWrap","true");
117        td_to.style.width = "100%";
118
119        var input_to = document.createElement('TEXTAREA');
120        input_to.id = "to_"+ID;
121        input_to.name = "input_to";
122        input_to.setAttribute("tabIndex","1"); 
123        input_to.style.width = "100%";
124        input_to.setAttribute("wrap","soft");
125        input_to.onfocus = function(){clearTimeout(parseInt(setTimeOutLayer)); search_contacts('onfocus', this.id);};
126        input_to.onblur = function(){setTimeOutLayer=setTimeout('search_contacts("lostfocus","'+this.id+'")',100);};
127        if (!is_ie)
128        {
129                input_to.rows = 2;
130                input_to.onkeypress = function (e)
131                {
132                        if ((e.keyCode) == 120) //F9
133                        {
134                                emQuickSearch(input_to.value, 'to', ID);
135                        }
136                        else
137                        {
138                                if (((e.keyCode == 13) || ((e.keyCode == 38)||(e.keyCode == 40))) && (document.getElementById('tipDiv').style.visibility!='hidden'))
139                                {
140                                        e.preventDefault();
141                                        search_contacts(e.keyCode,this.id);
142                                }
143                        }
144                };
145                input_to.onkeyup = function (e)
146                {
147                        if ((e.keyCode != 13) && (e.keyCode != 38) && (e.keyCode != 40))
148                        {
149                                search_contacts(e.keyCode,this.id);
150                        }
151                };
152        }
153        else
154        {
155                input_to.rows = 3;
156                input_to.onkeyup = function (e)
157                {
158                        if ((window.event.keyCode) == 120) //F9
159                        {
160                                emQuickSearch(input_to.value, 'to', ID);
161                        }
162                        else
163                        {
164                                search_contacts(window.event.keyCode,this.id);
165                        }   
166                };
167        }
168        td_to.appendChild(input_to);
169
170        var forwarded_local_message = document.createElement("INPUT"); //Hidden para indicar se é um forward de uma mensagem local
171        forwarded_local_message.id = "is_local_forward"+ID;
172        forwarded_local_message.name = "is_local_forward";
173        forwarded_local_message.type = "HIDDEN";
174        forwarded_local_message.value = "0";
175        td_to.appendChild(forwarded_local_message);
176        ////////////////////////////////////////////////////////////////////////////////////////////////////////
177
178
179        if (!expresso_offline) {
180                var img_search = document.createElement("IMG");
181                img_search.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/search.gif';
182                img_search.title = get_lang('Search') + " | " + get_lang('Use F9 Key as shortcut.');
183                img_search.onclick = function () {emQuickSearch(document.getElementById('to_'+ID).value, 'to', ID);};
184        }
185        else {
186                var img_search = document.createElement("SPAN");
187        }
188
189        var span_search = document.createElement("SPAN");
190        span_search.innerHTML = get_lang('Search');
191
192        var td1_img_search = document.createElement("TD");
193        td1_img_search.setAttribute("noWrap","true");
194        var td1_span_search = document.createElement("TD");
195        td1_span_search.setAttribute("noWrap","true"); 
196
197        td1_img_search.appendChild(img_search);
198        td1_span_search.appendChild(span_search);
199
200        tr1.appendChild(td1);
201        tr1.appendChild(td_to);
202        tr1.appendChild(td1_img_search);
203
204        tbody_message.appendChild(tr1);
205}
206
207function draw_new_message(border_ID)
208{
209        expresso.connector.loadScript("jscode/rich_text_editor");
210        expresso.connector.loadScript("jscode/color_palette");
211        if(typeof(RichTextEditor) == 'undefined' || typeof(ColorPalette) == 'undefined')
212                return false;
213
214        Tooltip.init();
215
216        var ID = create_border("",border_ID);
217        if (ID === false){
218                return false;
219        }
220        expresso.connector.hold_session = true;
221
222        var footer_menu = Element("footer_menu");       
223        if (footer_menu) {
224                footer_menu.style.display = 'none';
225        }
226
227        /////////////////////////////////////////////////////////////////////////////////////////////////////////
228        var form = document.createElement("FORM");
229        form.name = "form_message_"+ID;
230        form.method = "POST";
231        form.onsubmit = function(){return false;};
232        if(!is_ie)
233                form.enctype="multipart/form-data";
234        else
235                form.encoding="multipart/form-data";
236
237        var content = Element('content_id_' + ID);
238        var table_message = document.createElement("TABLE");
239        var tbody_message = document.createElement("TBODY");
240       
241        constructMenuNewMessage(ID,tbody_message,table_message,content);
242       
243        constructFromField(tbody_message,ID);
244
245
246        //////////////////////////////////////////////////////////////////////////////////////////////////////
247        var tr2 = document.createElement("TR");
248        tr2.id = "tr_cc_"+ID;
249        tr2.style.display = 'none';
250        var td2 = document.createElement("TD");
251        td2.innerHTML = "Cc:";
252        td2.setAttribute("noWrap","true");     
253        td2.style.width = "1%";
254
255        var td_cc = document.createElement("TD");
256        td_cc.setAttribute("noWrap","true");
257        td_cc.style.width = "100%";
258
259        var input_cc = document.createElement('TEXTAREA');
260        input_cc.id = "cc_"+ID;
261        input_cc.name = "input_cc";
262        input_cc.setAttribute("tabIndex","1");
263        input_cc.style.width = "100%";
264        input_cc.onfocus = function(){clearTimeout(parseInt(setTimeOutLayer)); search_contacts('onfocus',this.id);};
265        input_cc.onblur = function(){setTimeOutLayer=setTimeout('search_contacts("lostfocus","'+this.id+'")',100);};
266        if (!is_ie)
267        {
268                input_cc.rows = 2;
269                input_cc.onkeypress = function (e)
270                {
271                        if ((e.keyCode) == 120) //F9
272                        {
273                                emQuickSearch(input_cc.value, 'cc', ID);
274                        }
275                        else
276                        {
277                                if (((e.keyCode == 13) || ((e.keyCode == 38)||(e.keyCode == 40))) && (document.getElementById('tipDiv').style.visibility!='hidden'))
278                                {
279                                        e.preventDefault();
280                                        search_contacts(e.keyCode,this.id);
281                                }
282                        }
283                };
284                input_cc.onkeyup = function (e)
285                {
286                        if ((e.keyCode != 13) && (e.keyCode != 38) && (e.keyCode != 40))
287                        {
288                                search_contacts(e.keyCode,this.id);
289                        }
290                };
291        }
292        else if (is_ie)
293        {
294                input_cc.rows = 3;
295                input_cc.onkeyup = function (e)
296                {
297                        if ((window.event.keyCode) == 120) //F9
298                        {
299                                emQuickSearch(input_cc.value, 'cc', ID);
300                        }
301                        else
302                        {
303                                search_contacts(window.event.keyCode,this.id);
304                        }
305                };
306        }
307
308        td_cc.appendChild(input_cc);
309        var img_search = document.createElement("IMG");
310        img_search.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/search.gif';
311        img_search.onclick = function () {emQuickSearch(document.getElementById('cc_'+ID).value, 'cc', ID)};
312        img_search.title = get_lang('Search') + " | " + get_lang('Use F9 Key as shortcut.');
313        var span_search = document.createElement("SPAN");
314        span_search.innerHTML = get_lang('Search');
315
316        var td2_img_search = document.createElement("TD");
317        td2_img_search.setAttribute("noWrap","true");
318        var td2_span_search = document.createElement("TD");
319        td2_span_search.setAttribute("noWrap","true"); 
320
321        td2_img_search.appendChild(img_search);
322        td2_span_search.appendChild(span_search);
323
324        tr2.appendChild(td2);
325        tr2.appendChild(td_cc);
326        tr2.appendChild(td2_img_search);
327        tbody_message.appendChild(tr2);
328        //////////////////////////////////////////////////////////////////////////////////////////////////////
329        var tr3 = document.createElement("TR");
330        tr3.id = "tr_cco_"+ID;
331        tr3.style.display = 'none';
332        var td3 = document.createElement("TD");
333        td3.setAttribute("noWrap","true");
334        td3.innerHTML = get_lang("CCo")+":";
335        td3.style.width = "1%";
336
337        var td_cco = document.createElement("TD");
338        td_cco.setAttribute("noWrap","true");
339        td_cco.style.width = "100%";
340
341        var input_cco = document.createElement('TEXTAREA');
342        input_cco.id = "cco_"+ID;
343        input_cco.name = "input_cco";
344        input_cco.setAttribute("tabIndex","1");
345        input_cco.style.width = "100%";
346        input_cco.onfocus = function(){clearTimeout(parseInt(setTimeOutLayer)); search_contacts('onfocus',this.id);};
347        input_cco.onblur = function(){setTimeOutLayer=setTimeout('search_contacts("lostfocus","'+this.id+'")',100);};
348
349        if (!is_ie)
350        {
351                input_cco.rows = 2;
352                input_cco.onkeypress = function (e)
353                {
354                        if ((e.keyCode) == 120) //F9
355                        {
356                                emQuickSearch(input_cco.value, 'cco', ID);
357                        }
358                        else
359                        {
360                                if (((e.keyCode == 13) || ((e.keyCode == 38)||(e.keyCode == 40))) && (document.getElementById('tipDiv').style.visibility!='hidden'))
361                                {
362                                        e.preventDefault();
363                                        search_contacts(e.keyCode,this.id);
364                                }
365                        }
366                };
367                input_cco.onkeyup = function (e)
368                {
369                        if ((e.keyCode != 13) && (e.keyCode != 38) && (e.keyCode != 40))
370                        {
371                                search_contacts(e.keyCode,this.id);
372                        }
373                };
374        }
375        else if (is_ie)
376        {
377                input_cco.rows = 3;
378                input_cco.onkeyup = function (e)
379                {
380                        if ((window.event.keyCode) == 120) //F9
381                        {
382                                emQuickSearch(input_cco.value, 'cco', ID);
383                        }
384                        else
385                        {
386                                search_contacts(window.event.keyCode,this.id);
387                        }   
388                };
389        }
390
391        td_cco.appendChild(input_cco);
392        var img_search = document.createElement("IMG");
393        img_search.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/search.gif';
394        img_search.title = get_lang('Search') + " | " + get_lang('Use F9 Key as shortcut.');   
395        img_search.onclick = function () {emQuickSearch(document.getElementById('cco_'+ID).value, 'cco', ID);};
396        var span_search = document.createElement("SPAN");
397        span_search.innerHTML = get_lang('Search');
398
399        var td3_img_search = document.createElement("TD");
400        td3_img_search.setAttribute("noWrap","true");
401        var td3_span_search = document.createElement("TD");
402        td3_span_search.setAttribute("noWrap","true"); 
403
404        td3_img_search.appendChild(img_search);
405        td3_span_search.appendChild(span_search);
406
407        tr3.appendChild(td3);
408        tr3.appendChild(td_cco);
409        tr3.appendChild(td3_img_search);       
410        tbody_message.appendChild(tr3);
411        //////////////////////////////////////////////////////////////////////////////////////////////////////
412        var tr_link = document.createElement("TR");
413        tr_link.id = "tr_link_"+ID;             
414        var td1_link = document.createElement("TD");
415        var td2_link = document.createElement("TD");
416        td1_link.innerHTML = "&nbsp;";
417        var a_cc_link = document.createElement('A');
418        a_cc_link.innerHTML = get_lang('Add CC');
419        a_cc_link.id = "a_cc_link_"+ID;
420        a_cc_link.setAttribute("href","javascript:void(0)");
421        a_cc_link.setAttribute("tabIndex","-1");
422        a_cc_link.onclick = function () {
423                                        this.style.display='none';
424                                        document.getElementById('tr_cc_'+ID).style.display='';document.getElementById('space_link_'+ID).style.display='none';
425                                        input_cc.focus();
426                                        return false;
427                                };
428        td2_link.appendChild(a_cc_link);       
429        var space = document.createElement("span");
430        space.id ="space_link_"+ID;
431        space.innerHTML="&nbsp;|&nbsp;";
432        td2_link.appendChild(space);
433        var a_cco_link = document.createElement('A');
434        a_cco_link.innerHTML = get_lang('Add BCC');
435        a_cco_link.id = "a_cco_link_"+ID;
436        a_cco_link.setAttribute("href","javascript:void(0)");
437        a_cco_link.setAttribute("tabIndex","-1");
438        a_cco_link.onclick = function () {
439                                        this.style.display='none';
440                                        document.getElementById('tr_cco_'+ID).style.display='';
441                                        document.getElementById('space_link_'+ID).style.display='none';
442                                        input_cco.focus();
443                                        return false;
444                                };
445        td2_link.appendChild(a_cco_link);       
446        tr_link.appendChild(td1_link);
447        tr_link.appendChild(td2_link);
448        tbody_message.appendChild(tr_link);
449        //////////////////////////////////////////////////////////////////////////////////////////////////////
450        var tr4 = document.createElement("TR");
451        var td4 = document.createElement("TD");
452        //td4.setAttribute("noWrap","true");   
453        td4.innerHTML = get_lang("Subject")+":";
454        var td_subject = document.createElement("TD");
455        var input_subject = document.createElement('input');
456        input_subject.id = "subject_"+ID;
457        input_subject.name = "input_subject";
458        input_subject.setAttribute("tabIndex","1");
459        input_subject.style.width = "90%";
460        input_subject.setAttribute("autocomplete","off");
461        td_subject.appendChild(input_subject);
462        tr4.appendChild(td4);
463        tr4.appendChild(td_subject);
464        tbody_message.appendChild(tr4);
465        ////////////////////////////////////////////////////////////////////////////////////////////////////// 
466        var tr5 = document.createElement("TR");
467        var td5 = document.createElement("TD");
468        td5.innerHTML = "&nbsp;";
469        var td_return_receipt = document.createElement("TD");
470        td_return_receipt.setAttribute("noWrap","true");
471        td_return_receipt.innerHTML = get_lang("Return receipt")+":";
472        if (is_ie)
473        {
474                var input_return_receipt = document.createElement('input name=input_return_receipt');
475        }
476        else
477        {
478                var input_return_receipt = document.createElement('input');
479                input_return_receipt.name = "input_return_receipt";
480        }
481        input_return_receipt.type = "checkbox";
482        input_return_receipt.className = "checkbox";
483        input_return_receipt.id = "return_receipt_"+ID;
484        input_return_receipt.setAttribute("tabIndex","-1");
485        td_return_receipt.appendChild(input_return_receipt);
486
487        // Workaround para resolver problema ao enviar e-mails
488        if((preferences.use_assinar_criptografar != '0'))
489        {
490                if(parseInt(preferences.use_signature_digital_cripto)==1)
491                {
492                        td_return_receipt.innerHTML +=  "&nbsp;&nbsp;" + get_lang("Digitally sign message?")+"";
493
494                        if (is_ie)
495                        {
496                                var input_return_digital = document.createElement('input name=input_return_digital');
497                        }
498                        else
499                        {
500                                var input_return_digital = document.createElement('input');
501                                input_return_digital.name = "input_return_digital";
502                        }
503
504                        input_return_digital.type = "checkbox";
505                        input_return_digital.className = "checkbox";
506                        input_return_digital.id = "return_digital_"+ID;
507                        input_return_digital.setAttribute("tabIndex","-1");
508                        if(parseInt(preferences.use_signature_digital)==1)
509                        {
510                                input_return_digital.defaultChecked=true;
511                        }
512                        td_return_receipt.appendChild(input_return_digital);
513                        td_return_receipt.innerHTML +=  "&nbsp;&nbsp;" + get_lang("Digitally crypt message?")+"";
514
515                        if (is_ie)
516                        {
517                                var input_return_cripto = document.createElement('input name=input_return_cripto');
518                        }
519                        else
520                        {
521                                var input_return_cripto = document.createElement('input');
522                                input_return_cripto.name = "input_return_cripto";
523                        }
524
525                        input_return_cripto.type = "checkbox";
526                        input_return_cripto.className = "checkbox";
527                        input_return_cripto.id = "return_cripto_"+ID;
528                        input_return_cripto.setAttribute("tabIndex","-1");
529                        input_return_cripto.defaultChecked=false;
530
531                        if(parseInt(preferences.use_signature_cripto)==1)
532                        {
533                                input_return_cripto.defaultChecked=true;
534                        }
535
536                        td_return_receipt.appendChild(input_return_cripto);
537                }
538               
539        }
540        td_return_receipt.innerHTML += "";
541       
542        tr5.appendChild(td5);
543        tr5.appendChild(td_return_receipt);
544        tbody_message.appendChild(tr5);
545        if (parseInt(preferences.use_important_flag))
546        {
547                var trn = document.createElement("TR");
548                var tdn = document.createElement("TD");
549                tdn.innerHTML = "&nbsp;";
550                var td_important_msg = document.createElement("TD");
551                td_important_msg.setAttribute("noWrap","true");
552                td_important_msg.innerHTML = get_lang("Important message")+":";
553                var input_important_message = document.createElement('input');
554                input_important_message.type = "checkbox";
555                input_important_message.className = "checkbox";
556                input_important_message.id = "important_message_"+ID;
557                input_important_message.name = "input_important_message";
558                input_important_message.setAttribute("tabIndex","-1");
559                td_important_msg.appendChild(input_important_message); 
560                trn.appendChild(tdn);
561                trn.appendChild(td_important_msg);
562                tbody_message.appendChild(trn);
563        }
564
565        var add_files = document.createElement("A");
566        add_files.setAttribute("href", "javascript:void(0)");
567        add_files.onclick = function () { addFile(ID); return false;};
568        add_files.innerHTML =  get_lang("Attachments: add+");
569        add_files.setAttribute("tabIndex","-1");
570        var divfiles = document.createElement("DIV");
571        divfiles.id = "divFiles_"+ID;
572        var tr5 = document.createElement("TR");
573        var td5_link = document.createElement("TD");
574        var td5_input = document.createElement("TD");   
575        td5_input.innerHTML = "&nbsp;";
576        td5_link.setAttribute("valign","top");
577        td5_link.setAttribute("colSpan","2");
578        td5_link.appendChild(add_files);
579        tr5.appendChild(td5_input);
580        tr5.appendChild(td5_link);
581        tbody_message.appendChild(tr5);
582        var tr6 = document.createElement("TR");
583        var td6_link  = document.createElement("TD");
584        var td6_input = document.createElement("TD");
585        tr6.appendChild(td6_link);
586        td6_input.appendChild(divfiles);
587        tr6.appendChild(td6_input);     
588        tbody_message.appendChild(tr6);
589        //////////////////////////////////////////////////////////////////////////////////////////////////////
590        var tr5 = document.createElement("TR");
591        var td5 = document.createElement("TD");
592        td5.innerHTML = "&nbsp;";
593        var td_body = document.createElement("TD");
594        td_body.setAttribute("colSpan","2");
595        var div_body_position = document.createElement("DIV");
596        div_body_position.id = "body_position_" + ID;
597        td_body.appendChild(div_body_position);
598        tr5.appendChild(td5);
599        tr5.appendChild(td_body);
600        tbody_message.appendChild(tr5);
601        var _div = document.createElement("DIV");
602        _div.id = "div_message_scroll_"+ID;
603        _div.style.overflow = "auto";
604        _div.style.width = "100%";
605
606        // Hide the contac tips and re-position the pallete color.
607        _div.onscroll = function() {
608                var intElemScrollTop = Element("div_message_scroll_"+ID).scrollTop;
609                if (!is_ie)
610                        ColorPalette.repos(intElemScrollTop);
611                Tooltip.scrollChanged();
612        };
613        //////////////////////////////////////////////////////////////////////////////////////////////////////
614        _div.appendChild(form);
615        content.appendChild(_div);
616        table_message.appendChild(tbody_message);       
617        form.appendChild(table_message);
618        if ( RichTextEditor == null )
619                RichTextEditor = new cRichTextEditor( );
620        RichTextEditor.loadEditor(ID); 
621        resizeWindow();
622        //////////////////////////////////////////////////////////////////////////////////////////////////////
623       
624        return ID;
625}
626
627//      Verify if any user is sharing his name/email address
628//      for use in the new messages's "From " field.
629function draw_from_field(sel_from,tr1_1){
630
631        var el_shared_users = Element("el_shared_users");
632        // The element was loaded and populated...so return.
633        if(el_shared_users){   
634                // Nothing to work...so return.
635                if(el_shared_users.options.length == 0)
636                        return;
637                tr1_1.style.display = '';
638                for (var x = 0; x < el_shared_users.options.length; x++) {
639                        var _option = document.createElement("OPTION");
640                        _option.text = el_shared_users.options[x].text;
641                        _option.value = el_shared_users.options[x].value;
642                        sel_from.options[sel_from.options.length] = _option;
643                }
644                return;
645        }
646        // Get the shared folders.....
647        var sharedFolders = new Array();
648        for(var i = 0; i < folders.length; i++) {
649                var x = folders[i].folder_id;
650                if (folders[i].folder_parent == 'user'){
651                        sharedFolders[sharedFolders.length] = x;
652                }
653        }
654
655        var matchUser = '#';
656        var sharedUsers = new Array();
657        // Filter the shared folders (only root folders) .....
658        for(var i = 0; i < sharedFolders.length; i++) {
659                if(!sharedFolders[i].match(matchUser)) {
660                        matchUser = sharedFolders[i];
661                        sharedUsers[sharedUsers.length] = matchUser.substring(("user"+cyrus_delimiter).length,matchUser.length);
662                }
663        }
664
665        // Handler function for cExecute
666        var h_user = function(data) {
667                if(data.length > 0) {
668                        tr1_1.style.display = '';
669                        var _option = document.createElement("OPTION");
670                        _option.text =  '"'+data.myname+'" <'+Element("user_email").value+'>';
671                        _option.value  = data.myname+";"+Element("user_email").value;
672                        sel_from.options[sel_from.options.length] = _option;
673
674                        var options = '';
675                        for (var x = 0; x < data.length; x++)   {
676                                var _option = document.createElement("OPTION");
677                                _option.text = '"'+data[x].cn[0] + '" <'+data[x].mail[0]+'>';
678                                _option.value = data[x].cn[0] + ';'+data[x].mail[0]+';'+data[x].save_shared[0]+';'+data[x].uid[0];
679                                sel_from.options[sel_from.options.length] = _option;
680                        }
681                }
682                var shared_users_from = Element("el_shared_users");
683                if(!shared_users_from) {
684                        shared_users_from = sel_from.cloneNode(true);
685                        shared_users_from.id = "el_shared_users";
686                        shared_users_from.style.display = 'none';
687                        document.body.appendChild(shared_users_from);
688                }
689        };
690        // First time, so execute.....
691        cExecute ("expressoMail1_2.ldap_functions.getSharedUsersFrom&uids="+sharedUsers.join(';'), h_user);
692}
693
694function changeBgColorToON(all_messages, begin, end){
695        for (begin; begin<=end; begin++)
696        {
697                add_className(all_messages[begin], 'selected_msg');
698                Element("check_box_message_" + all_messages[begin].id).checked = true;
699        }
700}
701function updateBoxBgColor(box){
702        // Set first TR Class
703        var _className = 'tr_msg_read2';
704        for(var i = 0; i < box.length;i++){     
705                if(exist_className(box[i],_className))
706                        remove_className(box[i], _className);
707                _className = (_className == 'tr_msg_read2' ? 'tr_msg_read' : 'tr_msg_read2');
708                if(!exist_className(box[i],_className))
709                        add_className( box[i], _className);
710        }
711}
712
713function changeBgColor(event, msg_number){
714        actual_tr = Element(msg_number);
715
716        if (event.shiftKey)
717        {
718                last_tr = Element(last_message_selected);
719                if(!last_tr)
720                        last_tr = actual_tr;
721
722                all_messages = actual_tr.parentNode.childNodes;
723
724                for (var i=0; i < all_messages.length; i++)
725                {
726                        if (actual_tr.id == all_messages[i].id)
727                                first_order = i;
728                        if (last_tr.id == all_messages[i].id)
729                                last_order = i;
730                }
731
732                if (parseInt(first_order) > parseInt(last_order))
733                        changeBgColorToON(all_messages, last_order, first_order);
734                else
735                        changeBgColorToON(all_messages, first_order, last_order);
736        }
737        else{
738                //if ( exist_className(actual_tr, 'selected_msg') )
739                if ( Element('check_box_message_' + msg_number).checked )
740                        add_className(actual_tr, 'selected_msg');
741                else
742                        remove_className(actual_tr, 'selected_msg');
743        }
744        last_message_selected = msg_number;
745}
746
747function deny_email(email){
748        expresso.connector.loadScript("jscode/filter");
749        expresso.connector.loadScript("jscode/filters");
750        var dn_em       = document.createElement("SPAN");
751        dn_em.id = "tt_d";
752        dn_em.onclick = function(){filter_rules.new_rule(url_encode(email));};
753        dn_em.setAttribute("title",get_lang("Block Sender"));
754        dn_em.style.cursor = "pointer";         
755        dn_em.innerHTML = "<img align='top' onclick=filter.new_rule('"+url_encode(email)+"') src='" + URL_SERVER + "expressoMail1_2/templates/"+template+"/images/deny.gif'>";
756        return dn_em;
757
758}
759
760
761function show_div_address_full(id, type) {
762        var div_address_full = Element("div_"+type+"address_full_"+id);
763        if(!div_address_full) {
764                div_address_full = document.createElement("SPAN");
765                div_address_full.id = "div_"+type+"address_full_"+id;   
766                div_address_full.style.display="none"; 
767                var _address = eval(type+"address_array['"+id+"']");
768                var isOverLimit = (_address.length > 100);
769
770                if(isOverLimit) {
771                        alert("Esse campo possui muitos endereços ("+_address.length+" destinatários).\r\n"+
772                                        "Para evitar o travamento do navegador, o botão 'Adicionar Contato' foi desabilitado!");
773                }
774
775                for(var idx = 1 ; idx  < _address.length;idx++) {
776                        div_address_full.innerHTML += isOverLimit ?  '<br>'+_address[idx] : ','+this.draw_plugin_cc(_address[idx]);
777                }               
778                div_address_full.innerHTML += " (<a STYLE='color: RED;' onclick=document.getElementById('div_"+type+"address_full_"+id+"').style.display='none';document.getElementById('div_"+type+"address_"+id+"').style.display='';>"+get_lang('less')+"</a>)";
779                Element(type+"_"+id).appendChild(div_address_full);
780        }
781        Element('div_'+type+'address_'+id).style.display='none';
782        div_address_full.style.display='';
783}
784
Note: See TracBrowser for help on using the repository browser.