Subversion Repositories bacoAlunos

Rev

Rev 1346 | Rev 1700 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1283 jmachado 1
package pt.estgp.estgweb.web.controllers.configuration;
2
 
3
import org.apache.log4j.Logger;
4
import org.apache.struts.action.ActionForm;
5
import org.apache.struts.action.ActionForward;
6
import org.apache.struts.action.ActionMapping;
7
import pt.estgp.estgweb.domain.DomainObjectFactory;
8
import pt.estgp.estgweb.domain.UserRoleConfig;
9
import pt.estgp.estgweb.domain.UserRoleConfigImpl;
1699 jmachado 10
import pt.estgp.estgweb.services.users.UserRoleConfigService;
1283 jmachado 11
import pt.estgp.estgweb.web.controllers.ApplicationDispatchController;
12
import pt.estgp.estgweb.web.filters.UserRoleProxy;
13
import pt.estgp.estgweb.web.form.configuration.ConfigurationUserRolesForm;
14
import pt.estgp.estgweb.web.utils.RequestUtils;
15
import pt.utl.ist.berserk.logic.serviceManager.IServiceManager;
16
import pt.utl.ist.berserk.logic.serviceManager.ServiceManager;
17
import pt.utl.ist.berserk.logic.serviceManager.exceptions.FilterChainFailedException;
18
 
19
import javax.servlet.ServletException;
20
import javax.servlet.http.HttpServletRequest;
21
import javax.servlet.http.HttpServletResponse;
22
 
23
/**
24
 * @author Jorge Machado
25
 * @date 26/Fev/2008
26
 * @time 18:01:54
27
 * @see pt.estgp.estgweb.web
28
 */
29
public class UserRolesController extends ApplicationDispatchController
30
{
31
 
32
    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(UserRolesController.class);
33
 
34
 
35
 
36
 
37
 
38
    public ActionForward addNew(ActionMapping mapping,
39
                                            ActionForm form,
40
                                            HttpServletRequest request,
41
                                            HttpServletResponse response)
42
            throws ServletException
43
    {
44
 
45
        UserRoleConfigImpl role = DomainObjectFactory.createUserRoleConfigImpl();
46
        role.setDirty(true);
47
        ConfigurationUserRolesForm f = (ConfigurationUserRolesForm) form;
48
        f.getUserRolesConfig().add(0,role);
49
        return mapping.findForward("userRoles");
50
    }
51
 
52
 
1699 jmachado 53
    /*public ActionForward saveAllDirty(ActionMapping mapping,
1283 jmachado 54
                                ActionForm form,
55
                                HttpServletRequest request,
56
                                HttpServletResponse response)
57
            throws Throwable {
58
 
59
        ConfigurationUserRolesForm f = (ConfigurationUserRolesForm) form;
60
        IServiceManager sm = ServiceManager.getInstance();
61
        String[] names = new String[]{};
62
        Object[] args = new Object[]{
63
               f.getUserRolesConfig()
64
        };
65
 
66
        try
67
        {
68
            sm.execute(RequestUtils.getRequester(request, response), "AddUpdateDirtyRolesTranslation", args, names);
69
            UserRoleProxy.setDirty();
70
            f.setUserRoleConfigs(null);
71
            addMessage(request, "configuration.roles.saved");
72
        }
73
        catch (FilterChainFailedException e)
74
        {
75
            return mapping.findForward("error401");
76
        }
77
        catch (Throwable e)
78
        {
79
            logger.error(e, e);
80
            throw e;
81
        }
82
        return mapping.findForward("userRoles");
83
    }
1699 jmachado 84
    */
1283 jmachado 85
    public ActionForward saveUserRole(ActionMapping mapping,
86
                                      ActionForm form,
87
                                      HttpServletRequest request,
88
                                      HttpServletResponse response)
89
            throws 1.5.0/docs/api/java/lang/Throwable.html">Throwable {
90
 
91
        ConfigurationUserRolesForm f = (ConfigurationUserRolesForm) form;
92
        UserRoleConfig userRoleConfig = null;
93
        long idPosChoosed = f.getId();
94
        for(UserRoleConfig u : f.getUserRolesConfig())
95
        {
96
            UserRoleConfigImpl ur = (UserRoleConfigImpl) u;
97
            if(ur.getPosForId() == idPosChoosed)
98
            {
99
                userRoleConfig = ur;
100
                break;
101
            }
102
        }
103
        if(userRoleConfig == null)
104
            return mapping.findForward("userRoles");
105
 
106
        IServiceManager sm = ServiceManager.getInstance();
107
        1.5.0/docs/api/java/lang/String.html">String[] names = new 1.5.0/docs/api/java/lang/String.html">String[]{};
108
        5+0%2Fdocs%2Fapi+Object">Object[] args = new 5+0%2Fdocs%2Fapi+Object">Object[]{
109
                userRoleConfig
110
        };
111
 
112
        try
113
        {
1699 jmachado 114
            UserRoleConfigService.ReplaceRoleResult replaceRoleResult =
115
                    (UserRoleConfigService.ReplaceRoleResult)
116
                            sm.execute(
117
                                    RequestUtils.getRequester(request, response),
118
                                    "AddUpdateRoleTranslation", args, names);
119
 
1283 jmachado 120
            UserRoleConfigImpl ur = (UserRoleConfigImpl) userRoleConfig;
121
            ur.setDirty(false);
122
            UserRoleProxy.setDirty();
1699 jmachado 123
 
1283 jmachado 124
            //f.setUserRoleConfigs(null);
1699 jmachado 125
            if(replaceRoleResult.roleKeyAlreadyExist)
126
                addError(request, "configuration.roles.already.exist",ur.getRole());
127
            else
128
            {
129
                if(replaceRoleResult.afetectedUsers > 0)
130
                    addMessage(request, "configuration.roles.affected.users",""+replaceRoleResult.afetectedUsers);
131
 
132
 
133
                if(replaceRoleResult.afetectedCoursesValidatePrograms > 0)
134
                    addMessageAsString(request,replaceRoleResult.afetectedCoursesValidatePrograms + " Cursos afetados no papel das comissões");
135
 
136
                if(replaceRoleResult.afetectedDepartmentsDirectors > 0)
137
                    addMessageAsString(request,replaceRoleResult.afetectedDepartmentsDirectors + " departamentos afetados no papel dos directores");
138
                if(replaceRoleResult.afetectedDepartmentsBoards > 0)
139
                    addMessageAsString(request,replaceRoleResult.afetectedDepartmentsBoards + " departamentos afetados no papel dos membros da direcção");
140
 
141
 
142
                if(replaceRoleResult.afetectedSchoolsDirectors > 0)
143
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsDirectors + " escolas afetadas no papel dos directores");
144
                if(replaceRoleResult.afetectedSchoolsBoard > 0)
145
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsBoard + " escolas afetadas no papel do board da direcção");
146
                if(replaceRoleResult.afetectedSchoolsSecretario > 0)
147
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsSecretario + " escolas afetadas no papel dos secretários");
148
 
149
                if(replaceRoleResult.afetectedSchoolsPresidentPedagogico > 0)
150
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsPresidentPedagogico + " escolas afetadas no papel dos presidentes do pedagógico");
151
                if(replaceRoleResult.afetectedSchoolsMemberPedagogico > 0)
152
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsMemberPedagogico + " escolas afetadas no papel dos membros do pedagógico");
153
                if(replaceRoleResult.afetectedSchoolsSecretarioPedagogico > 0)
154
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsSecretarioPedagogico + " escolas afetadas no papel dos secretários do pedagógico");
155
 
156
                if(replaceRoleResult.afetectedSchoolsPresidentCtc > 0)
157
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsPresidentCtc + " escolas afetadas no papel dos presidentes do CTC");
158
                if(replaceRoleResult.afetectedSchoolsMemberCtc > 0)
159
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsMemberCtc + " escolas afetadas no papel dos membros do CTC");
160
                if(replaceRoleResult.afetectedSchoolsSecretarioCtc > 0)
161
                    addMessageAsString(request,replaceRoleResult.afetectedSchoolsSecretarioCtc + " escolas afetadas no papel dos secretários do CTC");
162
 
163
                if(replaceRoleResult.afectedEventClassManagers > 0)
164
                    addMessageAsString(request,replaceRoleResult.afectedEventClassManagers + " gestores de eventos afetados");
165
 
166
                if(replaceRoleResult.afectedActorPoolRoles > 0)
167
                    addMessageAsString(request,replaceRoleResult.afectedActorPoolRoles + " Papeis em Pools de Processos BPMN afetados");
168
                if(replaceRoleResult.afectedActorPoolRolesInstances > 0)
169
                    addMessageAsString(request,replaceRoleResult.afectedActorPoolRolesInstances + " Papeis em Instancias de Pools de Processos BPMN afetados");
170
 
171
                addMessage(request, "configuration.role.saved",ur.getValue());
172
            }
1283 jmachado 173
        }
174
        catch (FilterChainFailedException e)
175
        {
176
            return mapping.findForward("error401");
177
        }
178
        catch (1.5.0/docs/api/java/lang/Throwable.html">Throwable e)
179
        {
180
            logger.error(e, e);
181
            throw e;
182
        }
183
        return mapping.findForward("userRoles");
184
    }
185
 
1346 jmachado 186
    public ActionForward checkNewRoles(ActionMapping mapping,
187
                                      ActionForm form,
188
                                      HttpServletRequest request,
189
                                      HttpServletResponse response)
190
            throws 1.5.0/docs/api/java/lang/Throwable.html">Throwable {
1283 jmachado 191
 
192
 
1346 jmachado 193
        IServiceManager sm = ServiceManager.getInstance();
194
        1.5.0/docs/api/java/lang/String.html">String[] names = new 1.5.0/docs/api/java/lang/String.html">String[]{};
195
        5+0%2Fdocs%2Fapi+Object">Object[] args = new 5+0%2Fdocs%2Fapi+Object">Object[]{};
196
 
197
        try
198
        {
199
            1.5.0/docs/api/java/lang/Integer.html">Integer newRoles = (1.5.0/docs/api/java/lang/Integer.html">Integer) sm.execute(RequestUtils.getRequester(request, response), "RefreshNewStandardRoles", args, names);
200
            addMessage(request, "configuration.role.refreshed",""+newRoles);
201
            UserRoleProxy.setDirty();
202
        }
203
        catch (FilterChainFailedException e)
204
        {
205
            return mapping.findForward("error401");
206
        }
207
        catch (1.5.0/docs/api/java/lang/Throwable.html">Throwable e)
208
        {
209
            logger.error(e, e);
210
            throw e;
211
        }
212
        return mapping.findForward("userRoles");
213
    }
214
 
215
 
216
 
1283 jmachado 217
}