source: sandbox/2.2.0.2/contactcenter/js/cc_config.js @ 4544

Revision 4544, 7.0 KB checked in by airton, 13 years ago (diff)

Ticket #1954 - Implementação de busca avançada no contactcenter

Line 
1  /***************************************************************************\
2  * cc_config.js                                                                                                                      *
3  * Written by:                                                               *
4  *  - Adriano Pereira da silva - Prognus <adriano@prognus.com.br>            *
5  *  - Airton Bordin Junior - Prognus <airton@prognus.com.br>                 *
6  *  - http://www.prognus.com.br                                              *
7  * ------------------------------------------------------------------------- *
8  *  This program is free software; you can redistribute it and/or modify it  *
9  *  under the terms of the GNU General Public License as published by the    *
10  *  Free Software Foundation; either version 2 of the License, or (at your   *
11  *  option) any later version.                                               *
12  \***************************************************************************/
13
14
15
16        /*
17         * @function cc_attribute_clear
18         * @abstract Elimina as tuplas com campos vazios antes de enviar o formulário via POST
19         * @author Prognus software livre - http://www.prognus.com.br
20         * @param form
21         */
22        function cc_attribute_clear(form)
23        {
24
25                var vars = document.getElementsByClassName("cc_attribute");
26               
27                var tupla;
28                var select;
29                var inputs;
30               
31                for (var i=0; i<vars.length; i++) {     
32                        tupla = vars[i];
33                        inputs = tupla.getElementsByTagName("input");
34                       
35                        if(inputs[0].value == "" || inputs[1].value == "")
36                        {               
37                                //tupla.parentNode.removeChild(tupla);
38                                inputs[0].setAttribute("value", "");
39                                inputs[1].setAttribute("value", "");
40                               
41                                select = tupla.getElementsByTagName("select");
42                                select[0].innerHTML = "<option value=\"\" selected=\"selected\"></option>";
43                                select[1].innerHTML = "<option value=\"\" selected=\"selected\"></option>";
44                               
45                                tupla.style.visible = "hidden";
46                                tupla.style.display = "none";
47                        }
48                }
49                form.submit();
50        }
51       
52       
53       
54        /*
55         * @function cc_attribute_add
56         * @abstract Adiciona uma nova tupla de campos ao final da lista de tuplas
57         * @author Prognus software livre - http://www.prognus.com.br
58         * @param
59         */
60        function cc_attribute_add()
61        {
62                var stringTexto = document.getElementsByClassName("cc_attribute")[0].getElementsByTagName("select")[0].getElementsByTagName("option")[0].innerHTML;
63                var stringMultivalorado = document.getElementsByClassName("cc_attribute")[0].getElementsByTagName("select")[0].getElementsByTagName("option")[1].innerHTML
64               
65                var numeroAtributo = 0;
66                var vars = document.getElementsByClassName("cc_attribute");
67               
68                var maior = 0;
69                for (var i=1; i<vars.length; i++) {
70                        var tupla = vars[i];
71                        var linhaIndice = tupla.getElementsByTagName("input")[0];
72                        var arrayDeTokens = linhaIndice.getAttribute("name").split("_");
73                       
74                        numeroAtributo = arrayDeTokens[3];
75                        numeroAtributo = numeroAtributo.substr(0, numeroAtributo.length -1);
76                        numeroAtributo = parseInt(numeroAtributo); 
77                        if (numeroAtributo > maior) {
78                                maior = numeroAtributo;
79                        }
80                }
81               
82                maior++;
83                numeroAtributo = maior;
84               
85                var cc_attribute_name = "newsettings[cc_attribute_name_" + numeroAtributo + "]";
86                var cc_attribute_ldapname = "newsettings[cc_attribute_ldapname_" + numeroAtributo + "]";
87                var cc_attribute_type        = "newsettings[cc_attribute_type_" + numeroAtributo + "]";
88                var cc_attribute_searchable = "newsettings[cc_attribute_searchable_" + numeroAtributo + "]";
89               
90                var pool = document.getElementById("cc_attribute_fields");
91                var btn = document.getElementById("c_attribute_box_adder"); // nome do id definido no template.
92               
93                var newDiv = document.createElement("div");
94                        newDiv.setAttribute("class", "cc_attribute");
95       
96                var formularioNome = document.createElement("input");
97                        formularioNome.setAttribute("type", "text");
98                        formularioNome.setAttribute("name", cc_attribute_name);
99                        formularioNome.setAttribute("value", "");
100                        formularioNome.setAttribute("style", "width: 170px;");
101       
102                var formularioLdap = document.createElement("input");
103                        formularioLdap.setAttribute("type", "text");
104                        formularioLdap.setAttribute("name", cc_attribute_ldapname);
105                        formularioLdap.setAttribute("value", "");
106                        //formularioLdap.setAttribute("style", "margin: 0px 40px;");
107                        formularioLdap.setAttribute("style", "width: 170px;");
108
109                var selectTipos = document.createElement("select");
110                selectTipos.setAttribute("name", cc_attribute_type);
111                selectTipos.setAttribute("style", "width: 86px; margin: 0px 0px 0px 8px");
112                //selectTipos.setAttribute("style", "margin: 0px 0px 0px 8px");
113                        var optionTexto = document.createElement("option");
114                        optionTexto.setAttribute("value", "text");
115                        optionTexto.setAttribute("selected", "selected");
116                        optionTexto.innerHTML = stringTexto + " ";
117               
118                        var optionMultivalorado = document.createElement("option");
119                        optionMultivalorado.setAttribute("value", "multivalues");
120                        optionMultivalorado.innerHTML = stringMultivalorado + " ";
121                       
122                selectTipos.appendChild(optionTexto);
123                selectTipos.appendChild(optionMultivalorado);
124                               
125                var selectPesquisavel = document.createElement("select");
126                selectPesquisavel.setAttribute("name", cc_attribute_searchable);
127                selectPesquisavel.setAttribute("style", "margin: 0px 16px;");
128                        var optionYes = document.createElement("option");
129                                optionYes.setAttribute("value", "true");
130                                optionYes.innerHTML = "Sim ";
131                        var optionNo =  document.createElement("option");
132                                optionNo.setAttribute("value", "false");
133                                optionNo.setAttribute("selected", "selected");
134                                optionNo.innerHTML = "Não ";
135                       
136                               
137                selectPesquisavel.appendChild(optionYes);
138                selectPesquisavel.appendChild(optionNo);               
139                               
140                               
141                               
142                var imagem = document.createElement("img");
143                        imagem.setAttribute("type", "image");
144                        imagem.setAttribute("src", "contactcenter/templates/default/images/cc_x.png");
145                        imagem.setAttribute("alt", "Excluir Campo ");
146                        imagem.setAttribute("style", "width: 15px; height: 14px; cursor: pointer; position: relative; top: 3px;");
147                        imagem.setAttribute("onclick", "javascript:cc_attribute_delete(this)");
148       
149                newDiv.appendChild(formularioNome);
150                newDiv.appendChild(document.createTextNode(" "));
151                newDiv.appendChild(formularioLdap);
152                newDiv.appendChild(document.createTextNode(" "));
153                newDiv.appendChild(selectTipos);
154                newDiv.appendChild(document.createTextNode(" "));
155                newDiv.appendChild(selectPesquisavel);
156                newDiv.appendChild(document.createTextNode(" "));
157                newDiv.appendChild(imagem);
158
159                pool.appendChild(newDiv);
160        }
161       
162        /*
163         * @function cc_attribute_clear(form)
164         * @abstract Exclui uma tupla e de campos, onde e é uma referência ao elemento HTML (div) container da tupla 
165         * @author Prognus software livre - http://www.prognus.com.br
166         * @param e
167         *
168         */
169        function cc_attribute_delete(e)
170        {
171                        var tupla = e.parentNode;
172                       
173                        var inputs = tupla.getElementsByTagName("input");
174
175                                inputs[0].value = "";
176                                inputs[1].value = "";
177                               
178                                var select = tupla.getElementsByTagName("select");
179                                select[0].innerHTML = "<option value=\"\" selected=\"selected\"></option>";
180                                select[1].innerHTML = "<option value=\"\" selected=\"selected\"></option>";             
181                               
182                        tupla.style.visible = "hidden";
183                        tupla.style.display = "none";
184               
185//              e.parentNode.parentNode.removeChild(e.parentNode);
186        }
Note: See TracBrowser for help on using the repository browser.