source: branches/1.2/workflow/js/userinterface/inbox_group.js @ 1349

Revision 1349, 5.6 KB checked in by niltonneto, 15 years ago (diff)

Ticket #561 - Inclusão do módulo Workflow faltante nessa versão.

  • Property svn:executable set to *
Line 
1function group_inbox()
2{
3        var inbox_group = function(data)
4        {
5                if (_checkError(data))
6                        return;
7                draw_inbox_group(data);
8        };
9
10        /* interrompe a tualização automática das tarefas pendentes (já que o usuário está na interface agrupada) */
11        workflowInboxStopRefreshInterval();
12        /* indica que na próxima chamada ajax que traz as instâncias, a interface de tarefas pendentes deverá ser reconstruída */
13        workflowInstancesDigest = null;
14
15        cExecute ("$this.bo_userinterface.inbox_group", inbox_group);
16}
17
18function draw_inbox_group(data) {
19       
20        killElement("table_tools_inbox");
21        killElement("table_elements_inbox");
22
23        var content_id_0 = document.getElementById("content_id_0");
24        var table_element = document.createElement("TABLE");
25        var tbody_element = document.createElement("TBODY");
26        table_element.setAttribute("id", "table_tools_inbox_group");
27        table_element.setAttribute("width", "auto");
28        tr_element = document.createElement("TR");
29        td_element1 = document.createElement("TD");
30        td_element1.setAttribute("id", "td_tools_inbox_group_1");
31        td_element1.setAttribute("width", "270");
32        tr_element.appendChild(td_element1);
33        td_element2 = document.createElement("TD");
34        td_element2.setAttribute("id", "td_tools_inbox_group_2");
35        td_element2.setAttribute("valign", "middle");
36        tr_element.appendChild(td_element2);                   
37        td_element3 = document.createElement("TD");
38        td_element3.setAttribute("id", "td_tools_inbox_group_3");                       
39        tr_element.appendChild(td_element3);
40        tbody_element.appendChild(tr_element);
41        table_element.appendChild(tbody_element);
42        content_id_0.appendChild(table_element);       
43
44        construct_menu_inbox_group(td_element1.id);
45       
46        //Construindo o cabeçalho da lista
47        var table_element = document.createElement("TABLE");
48        var tbody_element = document.createElement("TBODY");
49                       
50        table_element.setAttribute("id", "table_elements_inbox_group");
51        table_element.className = "table_elements";
52        table_element.setAttribute("cellPadding", "2");
53               
54        tbody_element.setAttribute("id", "tbody_elements_inbox_group");
55                       
56        tr_element = document.createElement("TR");
57        tr_element.className = "table_elements_tr_header";
58       
59        td_element1 = document.createElement("TD");
60        td_element1.setAttribute("width", "33%");
61        td_element1.align = "left";
62        td_element1.innerHTML = "Processo";
63               
64        td_element2 = document.createElement("TD");
65        td_element2.setAttribute("width", "33%");
66        td_element2.align = "left";
67        td_element2.innerHTML = "Atividade";   
68       
69        td_element3 = document.createElement("TD");
70        td_element3.setAttribute("width", "33%");
71        td_element3.align = "left";
72        td_element3.innerHTML = "Quantidade";   
73
74        tr_element.appendChild(td_element1);
75        tr_element.appendChild(td_element2);
76        tr_element.appendChild(td_element3);   
77        tbody_element.appendChild(tr_element);
78        table_element.appendChild(tbody_element);
79        content_id_0.appendChild(table_element);
80       
81        //inserindo elementos na lista
82        for (var i=0; i<(data.length); i++){
83                tr_element = construct_inbox_group_list(data[i]);
84                tbody_element.appendChild(tr_element);
85        }       
86}
87
88function construct_menu_inbox_group(id) {
89        var max_length = 0;
90        mmain_inbox_group = new TMainMenu("mmain_inbox_group",'horizontal');
91        _group = new TPopMenu("Desagrupar",_icon_dir + "/ungroup.png",'f',"javascript:ungroup_inbox();","");
92       
93        mmain_inbox_group.Add(_group);
94        ConfigMenuStyle_inbox(mmain_inbox_group);       
95        mmain_inbox_group.Build(id);
96        document.getElementById(mmain_inbox_group._id).style.visibility='visible';
97}
98
99function construct_inbox_group_list(data){
100
101        var tr_element = document.createElement("TR");
102        tr_element.className = 'table_elements_tr_line';
103        tr_element.style.cursor = "pointer";
104        tr_element.onclick = function() { filter_activity_inbox(data.wf_p_id); };
105
106        td_element1 = document.createElement("TD");
107        td_element1.setAttribute("width", "33%");
108        td_element1.align = "left";
109        td_element1.innerHTML = data.wf_procname + " (v" + data.wf_version +")";
110
111        td_element2 = document.createElement("TD");
112        td_element2.setAttribute("width", "33%");
113        td_element2.align = "left";
114        td_element2.innerHTML = data.wf_name;
115
116        td_element3 = document.createElement("TD");
117        td_element3.setAttribute("width", "33%");
118        td_element3.align = "left";
119        td_element3.innerHTML = data.wf_instances;
120
121        tr_element.appendChild(td_element1);
122        tr_element.appendChild(td_element2);
123        tr_element.appendChild(td_element3);   
124
125        return tr_element;
126}
127
128function ungroup_inbox(){
129        killElement("table_tools_inbox_group");
130        killElement("table_elements_inbox_group");
131        draw_inbox_folder();
132}
133
134function filter_activity_inbox(proc) {
135        killElement("table_tools_inbox_group");
136        killElement("table_elements_inbox_group");
137        filterInbox(proc);
138}
139
140function ConfigMenuStyle_inbox(m, max)
141{
142        m.SetPosition('relative',0,0);
143        m.SetCorrection(1,-5);
144        m.SetCellSpacing(0);
145        m.SetBackground('whitesmoke','','','');
146        m.SetItemText('black','center','','','');
147        m.SetItemBorder(1,'buttonface','solid');
148        m.SetItemTextHL('darkblue','center','','','');
149        m.SetItemBackgroundHL('white','','','');
150        m.SetItemBorderHL(1,'black','solid');
151        m.SetItemTextClick('white','center','','','');
152        m.SetItemBackgroundClick('darkblue','','','');
153        m.SetItemBorderClick(1,'black','solid');
154        m.SetBorder(0,'navy','solid');
155
156        m._pop.SetCorrection(4,1);
157        m._pop.SetItemDimension(max * 7 + 30,22);
158        m._pop.SetPaddings(1);
159        m._pop.SetBackground('white','','','');
160        m._pop.SetSeparator(150,'left','black','');
161        m._pop.SetExpandIcon(true,'>',9);
162        m._pop.SetItemBorder(0,'#66CCFF','solid');
163        m._pop.SetItemBorderHL(0,'black','solid');
164        m._pop.SetItemPaddings(0);
165        m._pop.SetItemPaddingsHL(0);
166        m._pop.SetItemText('black','','','','');
167        m._pop.SetItemTextHL('darkblue','','','','');
168        m._pop.SetItemBackground('white','','','');
169        m._pop.SetItemBackgroundHL('whitesmoke','','','');
170}
Note: See TracBrowser for help on using the repository browser.