Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 45 → Rev 46

/impl/src/java/pt/estgp/estgweb/web/form/announcements/AnnouncementsForm.java
1,21 → 1,18
package pt.estgp.estgweb.web.form.announcements;
 
import org.apache.struts.action.ActionForm;
import org.apache.log4j.Logger;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.upload.FormFile;
import pt.estgp.estgweb.domain.UserSessionImpl;
import pt.estgp.estgweb.domain.views.AnnouncementView;
import pt.estgp.estgweb.domain.Image;
import pt.estgp.estgweb.domain.DomainObjectFactory;
import pt.estgp.estgweb.utils.ConfigProperties;
import pt.estgp.estgweb.web.UserSessionProxy;
import pt.estgp.estgweb.web.form.ApplicationForm;
import pt.estgp.estgweb.web.utils.DatesUtils;
 
import java.util.ArrayList;
import java.util.List;
 
import jomm.utils.MessageResources;
 
/**
* @author Jorge Machado
* @date 28/Fev/2008
25,6 → 22,9
public class AnnouncementsForm extends ApplicationForm
{
 
private static final Logger logger = Logger.getLogger(AnnouncementsForm.class);
private static final String TARGET_ROLES_KEY = "targetRoles";
 
private AnnouncementView announcementView;
 
private String role;
38,9 → 38,9
private String targetPrioritiesStr;
private Integer counter;
private List<String> selectedRoles;
 
 
 
private static List<String> targetRoles = ConfigProperties.getListValues("user.role");
private static List<String> announcementTypes = ConfigProperties.getListValues("announcements.type");
private static List<String> targetPriorities = ConfigProperties.getListValues("announcements.priority");
188,15 → 188,34
 
public ActionErrors validate(org.apache.struts.action.ActionMapping actionMapping, javax.servlet.http.HttpServletRequest httpServletRequest)
{
UserSessionImpl userSession = null;
try
{
userSession = (UserSessionImpl) UserSessionProxy.loadUserSessionFromRequest(httpServletRequest);
List<String> roles = (List<String>) userSession.get(TARGET_ROLES_KEY);
if(roles == null || roles.size() == 0)
{
roles = new ArrayList<String>();
roles.add(targetRolesStr);
announcementView.setTargetRoles(roles);
}
}
catch (Throwable throwable)
{
logger.error(throwable,throwable);
}
 
 
 
if(httpServletRequest.getParameter("dispatch").equals("addRole") || httpServletRequest.getParameter("dispatch").equals("removeRole"))
return null;
ActionErrors errors = new ActionErrors();
if(url.contains("http://"))
addMessageWithKeys(errors,httpServletRequest,"errors.notrequired","announcement.protocol.error.http","announcement.linkAnnouncement");
addMessageWithKeys(errors,httpServletRequest,"errors.notrequired","announcement.protocol.error.http","announcement.linkAnnouncement");
if(url.contains("https://"))
addMessageWithKeys(errors,httpServletRequest,"errors.notrequired","announcement.protocol.error.https","announcement.linkAnnouncement");
addMessageWithKeys(errors,httpServletRequest,"errors.notrequired","announcement.protocol.error.https","announcement.linkAnnouncement");
if(url.contains("ftp://"))
addMessageWithKeys(errors,httpServletRequest,"errors.notrequired","announcement.protocol.error.ftp","announcement.linkAnnouncement");
addMessageWithKeys(errors,httpServletRequest,"errors.notrequired","announcement.protocol.error.ftp","announcement.linkAnnouncement");
if(announcementView.getTitle() == null || announcementView.getTitle().trim().length() == 0)
addMessageWithKeys(errors,httpServletRequest,"errors.required","announcement.title");
if(announcementView.getText() == null || announcementView.getText().trim().length() == 0)
/impl/src/java/pt/estgp/estgweb/web/controllers/announcements/AnnouncementsController.java
38,7 → 38,7
{
 
private static final Logger logger = Logger.getLogger(AnnouncementsController.class);
 
private static final String TARGET_ROLES_KEY = "targetRoles";
public ActionForward save(ActionMapping mapping,
54,10 → 54,6
if(announcementsForm.getAnnouncementView().getId() <= 0)
{
Announcement a = DomainObjectFactory.createAnnouncementImpl();
UserSessionImpl userSession = null;
userSession = (UserSessionImpl) request.getAttribute(Globals.USER_SESSION_KEY);
List<String> roles = (List<String>) userSession.get(TARGET_ROLES_KEY);
announcementsForm.getAnnouncementView().setTargetRoles(roles);
announcementsForm.getAnnouncementView().persistViewInObject(a);
IServiceManager sm = ServiceManager.getInstance();
 
120,10 → 116,7
}
else
{
UserSessionImpl userSession = (UserSessionImpl) request.getAttribute(Globals.USER_SESSION_KEY);
List<String> roles = (List<String>) userSession.get(TARGET_ROLES_KEY);
AnnouncementView a = announcementsForm.getAnnouncementView();
a.setTargetRoles(roles);
IServiceManager sm = ServiceManager.getInstance();
String[] names = new String[]{"object"};
Object[] args = new Object[]{a};
/impl/src/web/admin/announcements/submitAnnouncement.jsp
77,17 → 77,19
<jomm:message patternMessage="user.role.{0}" name0="item"/>
</jomm:option>
</logic:iterate>
<input type="button" value="<bean:message key="add"/>" onclick="set(this.form,'addRole');this.form.submit()">
</logic:present>
</estgweb:isAdmin>
<estgweb:isNotAdmin>
<html:option value="all"><bean:message key="user.role.all"/></html:option>
<html:option value="student"><bean:message key="user.role.student"/></html:option>
<html:option value="oldStudent"><bean:message key="user.role.oldStudent"/></html:option>
<html:option value="futureStudent"><bean:message key="user.role.futureStudent"/></html:option>
<html:option value="teacher"><bean:message key="user.role.teacher"/></html:option>
</estgweb:isNotAdmin>
</html:select>
<input type="button" value="<bean:message key="add"/>" onclick="set(this.form,'addRole');this.form.submit()">
 
 
<logic:present name="AnnouncementsForm" property="selectedRoles">
<logic:notEmpty name="AnnouncementsForm" property="selectedRoles">
<ul>