Ignore:
Timestamp:
09/15/10 17:06:46 (14 years ago)
Author:
pereira.jair
Message:

Ticket #1186 - Alterado modulo administrativo do organograma p/ definir diferentes niveis de usuarios.

Location:
branches/2.2/workflow/js/adminaccess
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2/workflow/js/adminaccess/control_folder.js

    r795 r3255  
    357357        se.setAttribute('size','10'); 
    358358        se.setAttribute('id','sel_org_admin'); 
     359        se.onchange = function() { loadLevelORG();  }; 
    359360        se.style.width = input_width; 
    360361        se.style.height = input_height; 
     
    426427        tr.appendChild(td); 
    427428 
     429        to.appendChild(tr); 
     430        tb.appendChild(to); 
     431         
     432        /* include the cell that will hold the user level interface */ 
     433        tr = document.createElement("TR"); 
     434        td = document.createElement("TD"); 
     435        td.setAttribute("id", "userLevelORG"); 
     436        td.setAttribute("colSpan", 3); 
     437        tr.appendChild(td); 
    428438        to.appendChild(tr); 
    429439        tb.appendChild(to); 
     
    10261036} 
    10271037 
     1038/* construct the user level interface */ 
     1039function loadLevelORG() 
     1040{ 
     1041        /* required parameters */ 
     1042        var pid = document.getElementById('sel_org').value; 
     1043        var uid = document.getElementById('sel_org_admin').value; 
     1044 
     1045        var loadLevelHandler = function(data) 
     1046        { 
     1047                var userLevelContainer = document.getElementById("userLevelORG"); 
     1048                userLevelContainer.innerHTML = ""; 
     1049 
     1050                /* checkboxes creation */ 
     1051                var checkBoxesPerRow = 2; 
     1052                var tb_out = document.createElement("TABLE"); 
     1053                var to_out = document.createElement("TBODY"); 
     1054                var tr = document.createElement("TR"); 
     1055                var td = document.createElement("TD"); 
     1056                td.innerHTML = "Permissões de Acesso:"; 
     1057                tr.appendChild(td); 
     1058                to_out.appendChild(tr); 
     1059                var table = document.createElement("TABLE"); 
     1060                var tbody = document.createElement("TBODY"); 
     1061                table.style.border='1px solid gray'; 
     1062                tr = null; 
     1063                td = null; 
     1064                for (var i = 0; i < permissionListORG.length; i++) 
     1065                { 
     1066                        /* create the checkbox and the label */ 
     1067                        var checkBox = document.createElement("INPUT"); 
     1068                        checkBox.setAttribute("id", "cb_" + permissionListORG[i]['value']); 
     1069                        checkBox.setAttribute("type", "checkbox"); 
     1070                        if (data['bits'][permissionListORG[i]['value']]) 
     1071                                checkBox.defaultChecked = true; 
     1072 
     1073                        var label = "<label for=\"cb_" + permissionListORG[i]['value']  + "\">" + permissionListORG[i]['name']  + "</label>"; 
     1074                        /* if necessary, start a new row */ 
     1075                        if (!tr || (tr.childNodes.length == 2*checkBoxesPerRow)) 
     1076                                tr = document.createElement("TR"); 
     1077                        td = document.createElement("TD"); 
     1078                        td.innerHTML = label; 
     1079                        tr.appendChild(td); 
     1080                        td = document.createElement("TD"); 
     1081                        td.appendChild(checkBox); 
     1082                        tr.appendChild(td); 
     1083 
     1084                        /* check if the row is "complete" */ 
     1085                        if (tr.childNodes.length == 2*checkBoxesPerRow) 
     1086                        { 
     1087                                tbody.appendChild(tr); 
     1088                        } 
     1089                        else 
     1090                        { 
     1091                                if (i == (permissionListORG.length - 1)) 
     1092                                { 
     1093                                        tr.appendChild(document.createElement("TD")); 
     1094                                        tr.appendChild(document.createElement("TD")); 
     1095                                        tbody.appendChild(tr); 
     1096                                } 
     1097                        } 
     1098                } 
     1099                tr = document.createElement("TR"); 
     1100                td = document.createElement("TD"); 
     1101                td.colSpan = 4; 
     1102                td.align = 'center'; 
     1103                var toggleButton = document.createElement("BUTTON"); 
     1104                toggleButton.onclick = toggleCheckboxesORG; 
     1105                toggleButton.innerHTML = 'Marcar/Desmarcar Tudo'; 
     1106 
     1107                td.appendChild(toggleButton); 
     1108                tr.appendChild(td); 
     1109                tbody.appendChild(tr); 
     1110                table.appendChild(tbody); 
     1111 
     1112                /* submit button */ 
     1113                var button = document.createElement("BUTTON"); 
     1114                button.onclick = function() { changeUserLevelORG(); }; 
     1115                button.innerHTML = "Salvar"; 
     1116 
     1117                tr = document.createElement("TR"); 
     1118                td = document.createElement("TD"); 
     1119                td.appendChild(table); 
     1120                tr.appendChild(td); 
     1121                to_out.appendChild(tr); 
     1122 
     1123                tr = document.createElement("TR"); 
     1124                td = document.createElement("TD"); 
     1125                td.setAttribute("align", "right"); 
     1126                td.appendChild(button); 
     1127                tr.appendChild(td); 
     1128                to_out.appendChild(tr); 
     1129 
     1130                tb_out.appendChild(to_out); 
     1131                userLevelContainer.appendChild(tb_out); 
     1132        }; 
     1133 
     1134        cExecute ("$this.bo_adminaccess.get_organogram_admin_level", loadLevelHandler, "pid=" + pid + "&uid=" + uid); 
     1135} 
     1136 
    10281137/* change the user level */ 
    10291138function changeUserLevel() 
     
    10551164} 
    10561165 
     1166/* change the user level */ 
     1167function changeUserLevelORG() 
     1168{ 
     1169        /* required parameters */ 
     1170        var pid = document.getElementById('sel_org').value; 
     1171        var uid = document.getElementById('sel_org_admin').value; 
     1172 
     1173        /* check for error (ajax callback) */ 
     1174        var changeUserLevelHandler = function(data) 
     1175        { 
     1176                if (typeof(data) == "string") 
     1177                        write_errors(data); 
     1178                else 
     1179                        write_msg('As permissões foram salvas'); 
     1180        }; 
     1181         
     1182        /* generate the new permission string */ 
     1183        var newPermission = ""; 
     1184        for (var i = 0; i < permissionListORG.length; i++) 
     1185        { 
     1186                var cb = document.getElementById("cb_" + permissionListORG[i]['value']); 
     1187                newPermission += permissionListORG[i]['value'] + "=" + ((cb.checked) ? "1" : "0") + "_"; 
     1188        } 
     1189        newPermission = newPermission.substring(0, newPermission.length-1); 
     1190         
     1191        /* call ajax */ 
     1192        cExecute ("$this.bo_adminaccess.set_organogram_admin_level", changeUserLevelHandler, "pid=" + pid + "&uid=" + uid + "&np=" + newPermission); 
     1193} 
     1194 
    10571195function toggleCheckboxes() 
    10581196{ 
     
    10601198        for (var i = 0; i < permissionList.length; i++) 
    10611199                document.getElementById('cb_' + permissionList[i]['value']).checked = value; 
     1200} 
     1201 
     1202function toggleCheckboxesORG() 
     1203{ 
     1204        var value = !document.getElementById('cb_' + permissionListORG[0]['value']).checked; 
     1205        for (var i = 0; i < permissionListORG.length; i++) 
     1206                document.getElementById('cb_' + permissionListORG[i]['value']).checked = value; 
    10621207} 
    10631208 
  • branches/2.2/workflow/js/adminaccess/main.js

    r795 r3255  
    2828permissionList[10]['name'] = "Disparar e-mails"; 
    2929permissionList[10]['value'] = 10; 
     30 
     31var permissionListORG = new Array(); 
     32for (var i = 0; i < 2; i++) 
     33        permissionListORG[i] = new Array(); 
     34permissionListORG[0]['name'] = "Administrar Organograma"; 
     35permissionListORG[0]['value'] = 0; 
     36permissionListORG[1]['name'] = "Visualizar Telefones Pessoais"; 
     37permissionListORG[1]['value'] = 1; 
    3038 
    3139function show_window(titulo,div,width,height) 
Note: See TracChangeset for help on using the changeset viewer.