Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 175 → Rev 181

/impl/conf/language/MessageResourcesSearchUsers.properties
3,3 → 3,4
# SEARCH USERS MESSAGE RESOURCES
#
################################################################################
users=Utilizadores
/impl/conf/language/MessageResources.properties
223,6 → 223,11
menu.antigosAlunos=Antigos Alunos
menu.futurosAlunos=Futuros Alunos
 
student=Estudante
worker=Funcionario
teacher=Professor
user=Usuario
 
#Mensagens Status
authentication.ok=Benvindo Fulano
logout.ok=Caro {0}, obrigado por usar o nosso serviço.
266,6 → 271,7
profile.create.teacher=Criar Professor
profile.create.student=Criar Aluno
profile.create.user=Criar Utilizador
profile.create.users=Criar Usuario
 
profile.pop3server=Servidor de POP3
profile.pop3username=Username do Servidor de POP3
/impl/conf/language/MessageResourcesBlog.properties
5,6 → 5,7
################################################################################
module.Blogs=Blogs
 
blog=Blog
blog.zero.editable=Não existem blogs onde eu possa publicar
blog.zero.placed=0 blogs criados
blog.posts.zero.placed=0 Posts colocados
21,3 → 22,4
blog.owner=Criado por
blog.internal=Dominio
 
blog.exceed.image.max.size=Excedeu o tamanho maximo da imagem
/impl/conf/WEB-INF/struts/struts-blog.xml
1,13 → 1,12
<?xml version="1.0" encoding="UTF-8"?>
 
<!--<!DOCTYPE struts-config PUBLIC-->
<!--"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"-->
<!--"http://struts.apache.org/dtds/struts-config_1_3.dtd">-->
<!--"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"-->
<!--"http://struts.apache.org/dtds/struts-config_1_3.dtd">-->
 
<struts-config>
 
<form-beans>
<form-bean type="pt.estgp.estgweb.web.form.blogs.BlogForm" name="BlogForm"/>
<form-bean type="pt.estgp.estgweb.web.form.blogs.BlogForm" name="BlogForm"/>
</form-beans>
 
<global-exceptions>
17,38 → 16,55
<global-forwards>
 
</global-forwards>
 
 
<action-mappings>
 
<!--Authentication-->
<action path="/startSubmitBlog" forward="/loadBlog.do?dispatch=start"/>
<action path="/submitBlog"
<action path="/startLoadBlog" forward="/blogsController.do?dispatch=load"/>
<action path="/startEditBlog" forward="/blogsController.do?dispatch=edit"/>
<action path="/startDeleteBlog" forward="/blogsController.do?dispatch=delete"/>
<action path="/startSubmitBlog" forward="/blogsController.do?dispatch=start"/>
<action path="/blogsController"
type="pt.estgp.estgweb.web.controllers.blogs.BlogsController"
name="BlogForm"
scope="request"
parameter="dispatch"
validate="false"
input="page.submit.blog">
<forward name="success" path="page.load.blog"/>
input="page.welcome">
<forward name="load" path="page.load.blog"/>
<forward name="submit" path="page.submit.blog"/>
<forward name="from.add.role" path="page.submit.blog"/>
</action>
<action path="/loadBlog"
 
<action path="/user/startSubmitBlogFromHome" forward="/user/blogsControllerFromHome.do?dispatch=start&amp;from=Home"/>
<action path="/user/startDeleteBlogFromHome" forward="/user/blogsControllerFromHome.do?dispatch=delete&amp;from=Home"/>
<action path="/user/startEditBlogFromHome" forward="/user/blogsControllerFromHome.do?dispatch=edit&amp;from=Home"/>
<action path="/user/startLoadBlogFromHome" forward="/user/blogsControllerFromHome.do?dispatch=load&amp;from=Home"/>
<action path="/user/blogsControllerFromHome"
type="pt.estgp.estgweb.web.controllers.blogs.BlogsController"
name="BlogForm"
scope="request"
parameter="dispatch"
validate="false"
input="page.welcome">
<forward name="success" path="page.load.blog"/>
<forward name="submit" path="page.submit.blog"/>
input="page.separators.home">
<forward name="load" path="page.load.blog.from.home"/>
<forward name="submit" path="page.submit.blog.from.home"/>
<forward name="from.add.role" path="page.submit.blog.from.home"/>
</action>
<action path="/blog"
type="pt.estgp.estgweb.web.controllers.blogs.LoadBlogController"
 
<action path="/user/startSubmitBlogFromServiceZone" forward="/user/blogsControllerFromServiceZone.do?dispatch=start&amp;from=ServiceZone"/>
<action path="/user/startDeleteBlogFromServiceZone" forward="/user/blogsControllerFromServiceZone.do?dispatch=delete&amp;from=ServiceZone"/>
<action path="/user/startEditBlogFromServiceZone" forward="/user/blogsControllerFromServiceZone.do?dispatch=edit&amp;from=ServiceZone"/>
<action path="/user/startLoadBlogFromServiceZone" forward="/user/blogsControllerFromServiceZone.do?dispatch=load&amp;from=ServiceZone"/>
<action path="/user/blogsControllerFromServiceZone"
type="pt.estgp.estgweb.web.controllers.blogs.BlogsController"
name="BlogForm"
scope="request"
parameter="dispatch"
validate="false"
input="page.welcome">
<forward name="success" path="page.load.blog"/>
input="page.separators.serviceZone">
<forward name="load" path="page.load.blog.from.serviceZone"/>
<forward name="submit" path="page.submit.blog.from.serviceZone"/>
<forward name="from.add.role" path="page.submit.blog.from.serviceZone"/>
</action>
 
</action-mappings>
</struts-config>
/impl/conf/WEB-INF/struts/struts-intranet.xml
1,8 → 1,8
<?xml version="1.0" encoding="UTF-8"?>
 
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<!--<!DOCTYPE struts-config PUBLIC-->
<!--"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"-->
<!--"http://struts.apache.org/dtds/struts-config_1_3.dtd">-->
 
<struts-config>
 
/impl/conf/WEB-INF/struts/struts-searchusers.xml
44,7 → 44,9
input="page.load.profile.from.service.zone">
<forward name="success" path="page.separators.serviceZone"/>
<forward name="load" path="page.load.profile.from.service.zone"/>
<forward name="create" path="page.create.profile.from.service.zone"/>
<forward name="search" path="page.find.profile.from.service.zone"/>
<forward name="from.add.role" path="page.load.profile.from.service.zone"/>
</action>
 
 
60,6 → 62,7
<forward name="success" path="page.separators.home"/>
<forward name="load" path="page.separators.profile"/>
<forward name="search" path="page.find.profile"/>
<forward name="from.add.role" path="page.find.profile"/>
</action>
 
 
/impl/conf/WEB-INF/struts/tiles-announcements.xml
25,7 → 25,7
<put name="topnav" value="/user/home/topnavCreateAnnouncement.jsp"/>
<put name="body" value="/admin/announcements/submitAnnouncement.jsp"/>
</definition>
<definition name="page.submit.announcement.from.service.zone" extends="base.separators">
<definition name="page.submit.announcement.from.serviceZone" extends="base.separators">
<put name="title" value="Submit Announcement"/>
<put name="separator" value="4" type="string" />
<put name="topnav" value="/user/serviceZone/topnavCreateAnnouncement.jsp"/>
37,7 → 37,7
<put name="topnav" value="/user/home/topnavLoadAnnouncement.jsp"/>
<put name="body" value="/public/announcements/loadAnnouncement.jsp"/>
</definition>
<definition name="page.load.announcement.from.service.zone" extends="base.separators">
<definition name="page.load.announcement.from.serviceZone" extends="base.separators">
<put name="title" value="Load Announcement"/>
<put name="separator" value="4" type="string" />
<put name="topnav" value="/user/serviceZone/topnavLoadAnnouncement.jsp"/>
/impl/conf/WEB-INF/struts/tiles-blog.xml
1,10 → 1,10
<?xml version="1.0" encoding="UTF-8" ?>
 
<!--<!DOCTYPE tiles-definitions PUBLIC-->
<!--"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"-->
<!--"http://struts.apache.org/dtds/tiles-config_1_1.dtd">-->
<!--"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"-->
<!--"http://struts.apache.org/dtds/tiles-config_1_1.dtd">-->
 
 
<tiles-definitions>
 
<definition name="page.submit.blog" extends="base.layout1">
18,4 → 18,31
<put name="body" value="/public/blogs/blog.jsp"/>
</definition>
 
 
<definition name="page.submit.blog.from.home" extends="base.separators">
<put name="title" value="Submit Blog"/>
<put name="separator" value="1" type="string"/>
<put name="topnav" value="/user/home/topnavCreateBlog.jsp"/>
<put name="body" value="/admin/blogs/submitBlog.jsp"/>
</definition>
<definition name="page.submit.blog.from.serviceZone" extends="base.separators">
<put name="title" value="Submit Blog"/>
<put name="separator" value="4" type="string"/>
<put name="topnav" value="/user/serviceZone/topnavCreateBlog.jsp"/>
<put name="body" value="/admin/blogs/submitBlog.jsp"/>
</definition>
<definition name="page.load.blog.from.home" extends="base.separators">
<put name="title" value="Load Blog"/>
<put name="separator" value="1" type="string"/>
<put name="topnav" value="/user/home/topnavLoadBlog.jsp"/>
<put name="body" value="/public/blogs/blog.jsp"/>
</definition>
<definition name="page.load.blog.from.serviceZone" extends="base.separators">
<put name="title" value="Load Blog"/>
<put name="separator" value="4" type="string"/>
<put name="topnav" value="/user/serviceZone/topnavLoadBlog.jsp"/>
<put name="body" value="/public/blogs/blog.jsp"/>
</definition>
 
 
</tiles-definitions>
/impl/conf/WEB-INF/struts/tiles-intranet.xml
1,8 → 1,8
<?xml version="1.0" encoding="UTF-8" ?>
 
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
"http://struts.apache.org/dtds/tiles-config_1_1.dtd">
<!--<!DOCTYPE tiles-definitions PUBLIC-->
<!--"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"-->
<!--"http://struts.apache.org/dtds/tiles-config_1_1.dtd">-->
 
 
<tiles-definitions>
/impl/conf/WEB-INF/struts/tiles-searchusers.xml
35,6 → 35,12
<put name="topnav" value="/user/serviceZone/topnavSearchProfile.jsp"/>
<put name="body" value="/admin/profile/findUser.jsp" />
</definition>
<definition name="page.create.profile.from.service.zone" extends="base.separators">
<put name="title" value="Find User Profile" />
<put name="separator" value="4" type="string" />
<put name="topnav" value="/user/serviceZone/topnavCreateProfile.jsp"/>
<put name="body" value="/admin/profile/profile.jsp" />
</definition>
<definition name="page.load.profile.from.service.zone" extends="base.separators">
<put name="title" value="Find User Profile" />
<put name="separator" value="4" type="string" />
/impl/conf/WEB-INF/struts/struts-announcements.xml
38,15 → 38,17
input="page.submit.announcement.from.home"
validate="true">
<forward name="success" path="page.separators.home"/>
<forward name="from.add.role" path="page.submit.announcement.from.home"/>
</action>
<action path="/user/submitAnnouncementFromServiceZone"
type="pt.estgp.estgweb.web.controllers.announcements.AnnouncementsController"
name="AnnouncementsForm"
scope="request"
parameter="dispatch"
input="page.submit.announcement.from.service.zone"
input="page.submit.announcement.from.serviceZone"
validate="true">
<forward name="success" path="page.separators.serviceZone"/>
<forward name="from.add.role" path="page.submit.announcement.from.serviceZone"/>
</action>
 
 
62,7 → 64,7
validate="false">
<forward name="load" path="page.load.announcement"/>
</action>
<action path="/user/startDeleteAnnouncementFromHome" forward="/user/loadAnnouncementFromHome.do?dispatch=edit&amp;from=Home"/>
<action path="/user/startDeleteAnnouncementFromHome" forward="/user/loadAnnouncementFromHome.do?dispatch=delete&amp;from=Home"/>
<action path="/user/startEditAnnouncementFromHome" forward="/user/loadAnnouncementFromHome.do?dispatch=edit&amp;from=Home"/>
<action path="/user/startLoadAnnouncementFromHome" forward="/user/loadAnnouncementFromHome.do?dispatch=load&amp;from=Home"/>
<action path="/user/loadAnnouncementFromHome"
75,6 → 77,7
<forward name="success" path="page.separators.home"/>
<forward name="load" path="page.load.announcement.from.home"/>
<forward name="submit" path="page.submit.announcement.from.home"/>
<forward name="from.add.role" path="page.submit.announcement.from.home"/>
</action>
<action path="/user/startSubmitAnnouncementFromServiceZone" forward="/user/loadAnnouncementFromServiceZone.do?dispatch=start&amp;from=ServiceZone"/>
<action path="/user/startLoadAnnouncementFromServiceZone" forward="/user/loadAnnouncementFromServiceZone.do?dispatch=load&amp;from=ServiceZone"/>
85,11 → 88,12
name="AnnouncementsForm"
scope="request"
parameter="dispatch"
input="page.submit.announcement.from.service.zone"
input="page.submit.announcement.from.serviceZone"
validate="false">
<forward name="load" path="page.load.announcement.from.service.zone"/>
<forward name="submit" path="page.submit.announcement.from.service.zone"/>
<forward name="load" path="page.load.announcement.from.serviceZone"/>
<forward name="submit" path="page.submit.announcement.from.serviceZone"/>
<forward name="success" path="page.separators.serviceZone"/>
<forward name="from.add.role" path="page.submit.announcement.from.serviceZone"/>
</action>
 
 
/impl/conf/WEB-INF/web.xml
62,11 → 62,11
<filter-name>RelativePathFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--<filter-mapping>-->
<!--<filter-name>UrlStatFilter</filter-name>-->
<!--<url-pattern>/*</url-pattern>-->
<!--</filter-mapping>-->
<filter-mapping>
<filter-name>UrlStatFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>AdminFilter</filter-name>
<url-pattern>/admin/*</url-pattern>
</filter-mapping>
/impl/conf/app.properties
139,6 → 139,23
url.stat.ignore.prefix.6=/js/
url.stat.ignore.prefix.7=/auth/
 
 
#GENERIC FILTER IGNORE UserSessionFilter and CookieFilter
 
filter.ignore.extension.1=.js
filter.ignore.extension.2=.css
filter.ignore.extension.3=.jpg
filter.ignore.extension.4=.gif
filter.ignore.extension.5=.png
filter.ignore.extension.6=.tif
filter.ignore.extension.7=.bmp
filter.ignore.extension.8=.swf
filter.ignore.prefix.1=/statUnits.jsp
filter.ignore.prefix.2=/units.jsp
filter.ignore.prefix.3=/js
filter.ignore.prefix.4=/css
 
 
#See java.text.SimpleDateFormat
urlstat.chart.week.days=EEE dd-MMM
urlstat.chart.month.days=EEE dd-MMM
/impl/src/java/jomm/dao/impl/AbstractDao.java
559,7 → 559,6
{
try
{
 
for (CLAZZ obj: objs)
{
evictAndDelete(obj);
/impl/src/java/pt/estgp/estgweb/Globals.java
55,6 → 55,9
public static final List<String> URL_STAT_IGNORE_EXTENSIONS = ConfigProperties.getListValues("url.stat.ignore.extension");
public static final List<String> URL_STAT_IGNORE_PREFIXS = ConfigProperties.getListValues("url.stat.ignore.prefix");
 
public static final List<String> FILTER_IGNORE_EXTENSIONS = ConfigProperties.getListValues("filter.ignore.extension");
public static final List<String> FILTER_IGNORE_PREFIXS = ConfigProperties.getListValues("filter.ignore.prefix");
 
public static final String SITE_URL = ConfigProperties.getProperty("site.url");
 
public static final String INTRANET_MESSAGES_PREFIX = "intranet.";
75,5 → 78,7
 
public static final long MAX_BIGMAGE_FILE_SIZE_KBYTES = 500;
public static final long MAX_SMALLIMAGE_FILE_SIZE_KBYTES = 500;
public static final long MAX_BIGMAGE_FILE_SIZE_BYTES = MAX_BIGMAGE_FILE_SIZE_KBYTES * 1024;
public static final long MAX_SMALLIMAGE_FILE_SIZE_BYTES = MAX_SMALLIMAGE_FILE_SIZE_KBYTES * 1024;
 
}
/impl/src/java/pt/estgp/estgweb/services/profile/SearchUserService.java
14,9 → 14,9
 
private static final Logger logger = Logger.getLogger(SearchUserService.class);
 
public List<UserView> run(String textToSearch, UserSession userSession)
public List<UserView> run(String textToSearch,String typeToSearch, UserSession userSession)
{
List<User> users =DaoFactory.getUserDaoImpl().findUsers(textToSearch);
List<User> users =DaoFactory.getUserDaoImpl().findUsers(textToSearch,typeToSearch);
if(users == null)
return null;
List<UserView> userViews = new ArrayList<UserView>();
/impl/src/java/pt/estgp/estgweb/domain/dao/impl/TeacherDaoImpl.java
23,6 → 23,10
{
return (Teacher) createCriteria().add(eq("sigesCode",sigesCode)).uniqueResult();
}
public Teacher loadByBi(String bi)
{
return (Teacher) createCriteria().add(eq("bi",bi)).uniqueResult();
}
 
 
}
/impl/src/java/pt/estgp/estgweb/domain/dao/impl/UserDaoImpl.java
8,6 → 8,7
import static org.hibernate.criterion.Restrictions.*;
import org.hibernate.criterion.Criterion;
import org.hibernate.criterion.SimpleExpression;
import org.apache.log4j.Logger;
 
 
import java.util.List;
25,6 → 26,9
*/
public class UserDaoImpl<Announcement> extends UserDao
{
 
private static final Logger logger = Logger.getLogger(UserDaoImpl.class);
 
public static UserDaoImpl getInstance()
{
if (myInstance == null)
125,7 → 129,27
 
public List<User> findUsers (String textToSearch)
{
Criteria criteria = createCriteria();
return findUsers(textToSearch,null);
}
 
public List<User> findUsers (String textToSearch,String typeToSearch)
{
Criteria criteria=null;
if(typeToSearch!=null && typeToSearch.trim().length()!=0)
{
try
{
criteria = createCriteria(Class.forName(typeToSearch));
}
catch (ClassNotFoundException e)
{
logger.error(e,e);
}
}
else
{
criteria=createCriteria();
}
Criterion name= or(like("name","%"+textToSearch+"%"),like("name","%"+textToSearch+"%"));
Criterion username = or(like("username", "%" + textToSearch + "%"), like("username", "%" + textToSearch + "%"));
Criterion email = or(like("email", "%" + textToSearch + "%"), like("email", "%" + textToSearch + "%"));
/impl/src/java/pt/estgp/estgweb/domain/UserSessionImpl.java
133,7 → 133,8
public void clearObjectsWithOpenTransaction()
{
clearObjects();
DaoFactory.getSessionObjectDaoImpl().evictAndDelete(removeList);
if(removeList != null && removeList.size() > 0)
DaoFactory.getSessionObjectDaoImpl().evictAndDelete(removeList);
}
 
 
/impl/src/java/pt/estgp/estgweb/web/LayoutController.java
107,15 → 107,15
{
FtpServer ftpServer = getServer(server, user, pass);
FTPClient client = ftpServer.getClient();
client.changeWorkingDirectory(URIUtil.encodePath(path, "ISO-8859-1"));
client.changeWorkingDirectory(path);
FTPFile[] files = client.listFiles();
List<IFile> iFiles = new ArrayList<IFile>();
for (FTPFile ftpFile : files)
{
IFile iFile;
if (path.endsWith("/"))
iFile = new FtpFile(ftpFile, server + path + ftpFile.getName(), path);
else iFile = new FtpFile(ftpFile, server + path + "/" + ftpFile.getName(), path);
iFile = new FtpFile(ftpFile, server + URIUtil.encodePath(path +ftpFile.getName(),"ISO-8859-1"), path);
else iFile = new FtpFile(ftpFile, server + URIUtil.encodePath(path + "/" + ftpFile.getName(),"ISO-8859-1"), path);
iFiles.add(iFile);
}
List<NavPlace> navPlaces = FtpFile.getNavPlaces(path);
/impl/src/java/pt/estgp/estgweb/web/form/profile/ProfileForm.java
27,6 → 27,7
private long userIDToChange;
private String birthDayDate;
private String typeClass;
private String typeToSearch;
 
public ProfileForm()
{
67,6 → 68,16
}
 
 
public String getTypeToSearch()
{
return typeToSearch;
}
 
public void setTypeToSearch(String typeToSearch)
{
this.typeToSearch = typeToSearch;
}
 
public List<UserView> getUsersFind() {
return usersFind;
}
/impl/src/java/pt/estgp/estgweb/web/form/blogs/BlogForm.java
1,10 → 1,19
package pt.estgp.estgweb.web.form.blogs;
 
import pt.estgp.estgweb.domain.views.BlogView;
import pt.estgp.estgweb.domain.UserSessionImpl;
import pt.estgp.estgweb.web.form.AddRolesForm;
import pt.estgp.estgweb.web.UserSessionProxy;
import pt.estgp.estgweb.web.utils.DatesUtils;
import pt.estgp.estgweb.Globals;
 
import org.apache.struts.upload.FormFile;
import org.apache.struts.action.ActionErrors;
import org.apache.log4j.Logger;
 
import java.util.List;
import java.util.ArrayList;
 
/**
* @author Jorge Machado
* @date 21/Abr/2008
13,6 → 22,7
*/
public class BlogForm extends AddRolesForm
{
private static final Logger logger = Logger.getLogger(BlogForm.class);
private BlogView blogView = new BlogView();
 
33,4 → 43,37
public void setImage(FormFile image) {
this.image = image;
}
 
public ActionErrors validate(org.apache.struts.action.ActionMapping actionMapping, javax.servlet.http.HttpServletRequest httpServletRequest)
{
if(httpServletRequest.getParameter("dispatch").equals("save"))
{
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);
}
blogView.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(image.getFileSize() != 0 && image.getFileSize()>(Globals.MAX_BIGMAGE_FILE_SIZE_BYTES))
addMessage(errors,httpServletRequest,"blog.exceed.image.max.size");
if(blogView.getDescription() == null || blogView.getDescription().trim().length() == 0)
addMessageWithKeys(errors,httpServletRequest,"errors.required","blog.description");
if(blogView.getTitle() == null || blogView.getTitle().trim().length() == 0)
addMessageWithKeys(errors,httpServletRequest,"errors.required","blog.title");
return errors;
}
}
/impl/src/java/pt/estgp/estgweb/web/controllers/profile/ProfileController.java
128,7 → 128,7
pF.setSelectedRoles(uV.getUserRoles());
userSession.put(TARGET_ROLES_KEY, (Serializable) uV.getUserRoles());
userSession.serialize(request, response);
return mapping.findForward("load"); //todo muda para new copy paste do load mas muda topnav
return mapping.findForward("create");
}
catch (FilterChainFailedException e)
{
197,7 → 197,7
ProfileForm profileForm = new ProfileForm();
IServiceManager sm = ServiceManager.getInstance();
String[] names = new String[]{"serializable"};
Object[] args = new Object[]{fromRequest.getTextToSearch()};
Object[] args = new Object[]{fromRequest.getTextToSearch(),profileForm.getTypeToSearch()};
List<UserView> uVs = (List<UserView>) sm.execute(RequestUtils.getRequester(request, response), "SearchUser", args, names);
profileForm.setUsersFind(uVs);
request.setAttribute("ProfileForm", profileForm);
/impl/src/java/pt/estgp/estgweb/web/controllers/AddRolesController.java
42,7 → 42,7
UserSessionImpl sess = (UserSessionImpl) UserSessionProxy.loadUserSession(request,response);
sess.remove(TARGET_ROLES_KEY);
sess.serialize(request,response);
return mapping.findForward("submit");
return mapping.findForward("from.add.role");
}
catch(FilterChainFailedException e)
{
90,7 → 90,7
logger.error(e,e);
throw e;
}
return mapping.getInputForward();
return mapping.findForward("from.add.role");
}
 
public ActionForward removeRole(ActionMapping mapping,
120,7 → 120,7
addRolessForm.setSelectedRoles(roles);
sess.put(TARGET_ROLES_KEY, (Serializable) roles);
sess.serialize(request,response);
return mapping.getInputForward();
return mapping.findForward("from.add.role");
}
 
private boolean isInTargetRoles(String role, List l)
/impl/src/java/pt/estgp/estgweb/web/controllers/blogs/LoadBlogController.java
File deleted
/impl/src/java/pt/estgp/estgweb/web/controllers/blogs/BlogsController.java
39,6 → 39,12
try
{
BlogForm blogForm = (BlogForm) form;
ActionErrors errors = blogForm.validate(mapping,request);
if(!errors.isEmpty())
{
saveErrors(request,errors);
return mapping.findForward("submit");
}
if (blogForm.getBlogView().getId() <= 0)
{
Blog blog = DomainObjectFactory.createBlogImpl();
71,7 → 77,7
BlogView bV = (BlogView) sm.execute(RequestUtils.getRequester(request, response), "CreateBlog", args, names);
addMessage(request, "blog.created.success", "" + bV.getId());
request.setAttribute("BlogView", bV);
return mapping.findForward("success");
return mapping.findForward("load");
}
else
{
81,7 → 87,7
Object[] args = new Object[]{bV};
bV = (BlogView) sm.execute(RequestUtils.getRequester(request, response), "EditBlog", args, names);
addMessage(request, "blog.edited.success", "" + bV.getId());
return mapping.findForward("success");
return mapping.findForward("load");
}
}
catch (FilterChainFailedException e)
94,4 → 100,30
throw e;
}
}
 
public ActionForward load(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws ServletException
{
try
{
IServiceManager sm = ServiceManager.getInstance();
String[] names = new String[]{"serializable"};
Object[] args = new Object[]{Long.parseLong(request.getParameter("id"))};
BlogView bV = (BlogView) sm.execute(RequestUtils.getRequester(request, response), "LoadBlog", args, names);
request.setAttribute("BlogView", bV);
return mapping.findForward("load");
}
catch (FilterChainFailedException e)
{
return mapping.findForward("error401");
}
catch (Throwable e)
{
logger.error(e, e);
return mapping.findForward("error500");
}
}
}
/impl/src/java/pt/estgp/estgweb/web/filters/CookieFilter.java
1,11 → 1,13
package pt.estgp.estgweb.web.filters;
 
import pt.estgp.estgweb.web.utils.RequestUtils;
import pt.estgp.estgweb.Globals;
 
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
 
/**
*
15,6 → 17,9
public class CookieFilter implements Filter
{
 
public static final List<String> FILTER_IGNORE_EXTENSIONS = Globals.FILTER_IGNORE_EXTENSIONS;
public static final List<String> FILTER_IGNORE_PREFIXS = Globals.FILTER_IGNORE_PREFIXS;
 
public CookieFilter()
{
}
35,6 → 40,33
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException
{
HttpServletRequest hrequest = (HttpServletRequest) request;
String relativePath = hrequest.getServletPath();
if (relativePath == null)
relativePath = "";
 
if (hrequest.getPathInfo() != null && hrequest.getPathInfo().length() > 0)
{
relativePath += hrequest.getPathInfo();
}
 
for (String ignore : FILTER_IGNORE_EXTENSIONS)
{
if (relativePath.endsWith(ignore))
{
chain.doFilter(request, response);
return;
}
}
for (String ignore : FILTER_IGNORE_PREFIXS)
{
if (relativePath.startsWith(ignore))
{
chain.doFilter(request, response);
return;
}
}
 
if(RequestUtils.existRequester((HttpServletRequest)request,(HttpServletResponse)response))
{
chain.doFilter(request, response);
/impl/src/java/pt/estgp/estgweb/web/filters/UserSessionFilter.java
11,6 → 11,7
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Locale;
import java.util.List;
 
/**
*
20,6 → 21,10
public class UserSessionFilter implements Filter
{
 
 
public static final List<String> FILTER_IGNORE_EXTENSIONS = Globals.FILTER_IGNORE_EXTENSIONS;
public static final List<String> FILTER_IGNORE_PREFIXS = Globals.FILTER_IGNORE_PREFIXS;
 
private static Logger logger = Logger.getLogger(UserSessionFilter.class);
 
 
45,7 → 50,34
{
HttpServletRequest hrequest = (HttpServletRequest) request;
String relativePath = hrequest.getServletPath();
if (relativePath == null)
relativePath = "";
 
if (hrequest.getPathInfo() != null && hrequest.getPathInfo().length() > 0)
{
relativePath += hrequest.getPathInfo();
}
 
for (String ignore : FILTER_IGNORE_EXTENSIONS)
{
if (relativePath.endsWith(ignore))
{
chain.doFilter(request, response);
return;
}
}
for (String ignore : FILTER_IGNORE_PREFIXS)
{
if (relativePath.startsWith(ignore))
{
chain.doFilter(request, response);
return;
}
}
 
 
String path =((HttpServletRequest)request).getServletPath();
if(((HttpServletRequest)request).getServletPath().indexOf("errorNoCookies.do")>=0 || !hrequest.isRequestedSessionIdFromCookie())
chain.doFilter(request,response);
try
/impl/src/hbm/pt/estgp/estgweb/domain/GenericUser.hbm.xml
72,7 → 72,8
<property name="userNameNetpa" type="string"/>
<property name="academicName" type="string"/>
<property name="employerName" type="string"/>
<set name="teachedUnits" lazy="true">
<property name="unitCheck" type="boolean"/>
<set name="teachedUnits" lazy="true" order-by="courseUnitId">
<key column="studentId"/>
<many-to-many class="pt.estgp.estgweb.domain.CourseUnit" column="courseUnitId"/>
</set>
/impl/src/hbm/pt/estgp/estgweb/domain/Course.hbm.xml
25,6 → 25,10
<key column="course_id"/>
<one-to-many class="pt.estgp.estgweb.domain.CourseUserAssociation"/>
</set>
<set name="courseUnits" order-by="courseYear asc" lazy="true">
<key column="course"/>
<one-to-many class="pt.estgp.estgweb.domain.CourseUnit"/>
</set>
<subclass name="pt.estgp.estgweb.domain.CourseImpl" discriminator-value="CourseImpl"/>
</class>
</hibernate-mapping>
/impl/src/hbm/pt/estgp/estgweb/domain/CourseUnit.hbm.xml
22,6 → 22,14
<property name="institutionCode" type="string" />
<property name="status" type="boolean" />
<many-to-one name="course" class="pt.estgp.estgweb.domain.Course" lazy="false" outer-join="true"/>
<set name="teachers" lazy="true" table="teachedunits">
<key column="courseUnitId"/>
<many-to-many class="pt.estgp.estgweb.domain.TeacherImpl" column="studentId"/>
</set>
<set name="students" lazy="true" table="subscribedunits">
<key column="courseUnitId"/>
<many-to-many class="pt.estgp.estgweb.domain.StudentImpl" column="studentId"/>
</set>
<subclass name="pt.estgp.estgweb.domain.CourseUnitImpl" discriminator-value="CourseUnitImpl"/>
</class>
</hibernate-mapping>
/impl/src/web/admin/profile/findUser.jsp
1,3 → 1,7
<%@ page import="pt.estgp.estgweb.domain.User" %>
<%@ page import="pt.estgp.estgweb.domain.UserImpl" %>
<%@ page import="pt.estgp.estgweb.domain.TeacherImpl" %>
<%@ page import="pt.estgp.estgweb.domain.StudentImpl" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
18,6 → 22,13
<html:text property="textToSearch" maxlength="50"/>
</td>
<td>
<html:select property="typeToSearch">
<html:option value="<%=(UserImpl.class).getName()%>"><bean:message key="user"/></html:option>
<html:option value="<%=(StudentImpl.class).getName()%>"><bean:message key="student"/></html:option>
<html:option value="<%=(TeacherImpl.class).getName()%>"><bean:message key="teacher"/></html:option>
</html:select>
</td>
<td>
<input type="button" onclick="set(this.form,'search');this.form.submit()" value="<bean:message key="search"/>">
</td>
</tr>
/impl/src/web/admin/profile/profile.jsp
142,7 → 142,7
<bean:message key="address"/>
</th>
<td>
<html:text property="userView.address" maxlength="250" readonly="true"/>
<html:text property="userView.address" maxlength="250"/>
</td>
</tr>
<tr>
/impl/src/web/admin/blogs/submitBlog.jsp
1,32 → 1,50
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>
<jsp:useBean id="BlogForm" type="pt.estgp.estgweb.web.form.blogs.BlogForm" scope="request"/>
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSession" scope="request"/>
<jomm:messages/>
<html:errors/>
<html:form action="/submitBlog" enctype="multipart/form-data">
<%
String fromAction = "";
String from = "";
String user = "";
if (request.getParameter("from") != null)
{
user = "/user";
fromAction = "From" + request.getParameter("from");
from = "?from=" + request.getParameter("from");
}
request.setAttribute("from", from);
request.setAttribute("user", user);
request.setAttribute("fromAction", fromAction);
%>
<html:form action="${user}/blogsController${fromAction}${from}" enctype="multipart/form-data">
<html:hidden property="role"/>
<html:hidden property="blogView.id"/>
<input type="hidden" name="dispatch" value="addRole">
<table class="form">
 
<baco:isAdmin>
<tr>
<th>
<bean:message key="blog.status"/>
</th>
<td>
<html:select property="blogView.status">
<html:option value="true"><bean:message key="yes"/></html:option>
<html:option value="false"><bean:message key="no"/></html:option>
</html:select>
</td>
</tr>
<tr>
<th>
<bean:message key="blog.status"/>
</th>
<td>
<html:select property="blogView.status">
<html:option value="true">
<bean:message key="yes"/>
</html:option>
<html:option value="false">
<bean:message key="no"/>
</html:option>
</html:select>
</td>
</tr>
</baco:isAdmin>
<tr>
<th>
34,8 → 52,12
</th>
<td>
<html:select property="blogView.internal">
<html:option value="true"><bean:message key="announcement.internal.yes"/></html:option>
<html:option value="false"><bean:message key="announcement.internal.no"/></html:option>
<html:option value="true">
<bean:message key="announcement.internal.yes"/>
</html:option>
<html:option value="false">
<bean:message key="announcement.internal.no"/>
</html:option>
</html:select>
</td>
</tr>
46,32 → 68,50
<td>
<html:select property="targetRolesStr">
<baco:isAdmin>
<logic:present name="BlogForm" property="targetRoles">
<logic:iterate id="item" name="BlogForm" property="targetRoles">
<jomm:option itemName="item" comparableObjectName="BlogForm" comparableObjectProperty="targetRolesStr">
<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>
<logic:present name="BlogForm" property="targetRoles">
<logic:iterate id="item" name="BlogForm" property="targetRoles">
<jomm:option itemName="item" comparableObjectName="BlogForm"
comparableObjectProperty="targetRolesStr">
<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>
</baco:isAdmin>
<baco: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>
<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>
</baco:isNotAdmin>
</html:select>
 
 
<logic:present name="BlogForm" property="selectedRoles">
<logic:notEmpty name="BlogForm" property="selectedRoles">
<ul>
<table class="dataTable removeButton">
<logic:iterate id="item" name="BlogForm" property="selectedRoles">
<li><jomm:message patternMessage="user.role.{0}" name0="item"/> <a href="BlogForm.role.value='${item}';set(BlogForm,'removeRole');BlogForm.submit();"/></li>
<tr>
<th>
<jomm:message patternMessage="user.role.{0}" name0="item"/>
</th>
<td><input type="button" class="removeButton"
onclick="BlogForm.role.value='${item}';set(this.form,'removeRole');this.form.submit();">
</td>
</tr>
</logic:iterate>
</ul>
</table>
</logic:notEmpty>
</logic:present>
</td>
/impl/src/web/css/style.css
40,6 → 40,10
text-decoration:none;
cursor:pointer;
}
.errorPage
{
padding:10px;
}
 
form ul,.errorPage ul {
margin-left: 15px;
188,7 → 192,6
WIDTH: 100%;
PADDING-BOTTOM: 0;
VERTICAL-ALIGN: top;
border-bottom:0;
}
 
.contentPortal {
285,6 → 288,10
BACKGROUND-COLOR: #FFFFFF
}
 
#topnav LI A:visited {
COLOR: black;
}
 
#topnav LI A {
color: #FFFFFF;
text-decoration: none;
/impl/src/web/statUnits.jsp
New file
0,0 → 1,63
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles" %>
<html:html locale="true">
<head>
<title>Consulta de Unidades Curriculares</title>
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/style.css"/>
 
</head>
<body class="small" marginwidth="0" marginheight="0" bgcolor="#ffffff" topmargin="0" leftmargin="0" style="text-align:center">
<table width="100%" align="center">
<tr>
<td align="center">
<div id="body">
 
<table id="page">
<tr>
<td>
<div id="header">
<jsp:include page="layout/header.jsp"/>
</div>
</td>
</tr>
<tr>
<td id="content">
<h1>Bem vindo à página de consulta de unidades curriculares</h1>
<br>
<div class="listCircleWhite">
<ul>
<li>
Se é docente da ESTG por favor confirme as suas unidades curriculares e informe caso seja detectado algum erro
</li>
<li>
O objectivo desta consulta é identificar erros de importação do sistema SIGES na nova plataforma do sitio da ESTG
</li>
<li>
obrigado pela disponibilidade
</li>
</ul>
</div>
<div class="portalContent">
<form action="units.jsp">
<p>Código de docente: <input type="text" name="sigesTeacherCode"> (Este código é o mesmo que usa para entrar no NETPA para introduzir os sumários)
<p>ou número de BI: <input type="text" name="bi"> </p>
<p><input type="submit"/></p>
</form>
</div>
</td>
</tr>
</table>
<div id="footer">
<jsp:include page="layout/footer.jsp"/>
</div>
</div>
</td>
</tr>
</table>
</body>
</html:html>
/impl/src/web/layout/header.jsp
1,8 → 1,3
<%@ page import="java.util.Locale" %>
<%@ page import="org.apache.struts.Globals" %>
<%@ page import="pt.estgp.estgweb.web.UserSessionProxy" %>
<%@ page import="pt.estgp.estgweb.domain.UserSession" %>
<%@ page import="pt.estgp.estgweb.domain.UserSessionImpl" %>
<%@ page contentType="text/html; charset=UTF-8" language="java"%>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
12,7 → 7,7
<table width="100%">
<tr>
<td>
<img src="<%=request.getContextPath()%>/imgs/top.jpg"/>
<img alt="estg" src="<%=request.getContextPath()%>/imgs/top.jpg"/>
</td>
</tr>
</table>
/impl/src/web/layout/footer.jsp
16,7 → 16,7
<td align="center" width="33%">
<div id="license">
<ul class="copyRightLink">
<li>Copyright © <a href="http://www.estgp.com">ESTG</a> 2008</li>
<li>Copyright © <a href="http://www.estgp.pt">ESTG</a> 2008</li>
<!--<li>Contact ESTG Webmaster at (webmaster [AT] estgp [DOT] pt)</li>-->
</ul>
</div>
/impl/src/web/units.jsp
New file
0,0 → 1,194
<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="pt.estgp.estgweb.domain.Teacher" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="pt.estgp.estgweb.domain.CourseUnit" %>
<%@ page contentType="text/html" %>
<%@ page pageEncoding="UTF-8" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles" %>
<html:html locale="true">
<head>
<title>Consulta de Unidades Curriculares</title>
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/style.css"/>
 
</head>
<body class="small" marginwidth="0" marginheight="0" bgcolor="#ffffff" topmargin="0" leftmargin="0"
style="text-align:center">
<table width="100%" align="center">
<tr>
<td align="center">
<div id="body">
 
<table id="page">
<tr>
<td>
<div id="header">
<jsp:include page="layout/header.jsp"/>
</div>
</td>
</tr>
<tr>
<td id="content">
<h1>Bem vindo à página de consulta de unidades curriculares</h1>
<br>
 
<div class="listCircleWhite">
<ul>
<li>
Se é docente da ESTG por favor confirme as suas unidades curriculares e informe caso seja detectado algum
erro
</li>
<li>
O objectivo desta consulta é identificar erros de importação do sistema SIGES na nova plataforma do sitio da
ESTG
</li>
<li>
obrigado pela disponibilidade
</li>
</ul>
</div>
<div class="portalContent">
<form action="units.jsp">
<p>Código de docente: <input type="text" name="sigesTeacherCode"> (Este código é o mesmo que usa para entrar no NETPA para introduzir os sumários)
<p>ou número de BI: <input type="text" name="bi"> </p>
 
<p><input type="submit"/></p>
</form>
<div>
<%
try
{
AbstractDao.getCurrentSession().beginTransaction();
String code = request.getParameter("sigesTeacherCode");
String bi = request.getParameter("bi");
if((code == null && code.length() == 0) || ( bi == null && bi.length() == 0))
{
%>
<div class="statusERROR">
<p>Por favor coloque o código de docente ou o número de bilhete de identidade</p>
</div>
<%
}
else
{
try
{
Teacher teacher;
if(code != null && code.trim().length()>0)
teacher = DaoFactory.getTeacherDaoImpl().loadBySigesCode(Integer.parseInt(code));
else
teacher = DaoFactory.getTeacherDaoImpl().loadByBi(bi);
 
 
 
if (teacher == null)
{
%>
<div class="statusERROR">
<p>Docente não encontrado</p>
</div>
<%
}
else
{
teacher.setUnitCheck(true);
%>
<p>Docente: <%=teacher.getName()%>
</p>
 
<p>Email: <%=teacher.getEmail()%>
</p>
<%
if (teacher.getTeachedUnits() == null || teacher.getTeachedUnits().size() == 0)
{
%>
<div class="statusERROR">
<p>Não tem quaisquer unidades curriculares associadas</p>
</div>
<%
}
else
{
%>
<table border="1">
<tr>
<th>
Código de Curso
</th>
<th>
Curso
</th>
<th>
Unidade
</th>
<th>
Semestre
</th>
</tr>
<%
for (CourseUnit cu : teacher.getTeachedUnits())
{
%>
<tr>
<td>
<%=cu.getCourseCode()%>
</td>
<td>
<%=cu.getCourseName()%>
</td>
<td>
<%=cu.getName()%>
</td>
<td>
<%=cu.getSemestre()%>
</td>
</tr>
<%
}
%>
</table>
<%
 
}
}
 
}
catch (NumberFormatException e)
{
%>
<div class="statusERROR">
<p>Por favor introduza um número</p>
</div>
<%
}
}
 
AbstractDao.getCurrentSession().getTransaction().commit();
}
catch (Throwable e)
 
{
response.sendError(500);
}
%>
</div>
<div class="statusERROR">
<p>Por favor informe a equipa de desenvolvimento (<a href="mailto:bacodev@estgp.pt">bacoDev</a>) caso algum erro tenha sido detectado, em caso de estar tudo ok não é necessário feedback </p>
</div>
</div>
 
</td>
</tr>
</table>
<div id="footer">
<jsp:include page="layout/footer.jsp"/>
</div>
</div>
</td>
</tr>
</table>
</body>
</html:html>
/impl/src/web/public/blogs/blog.jsp
40,8 → 40,8
</div>
 
<div class="pFooter">
<a href="<%=request.getContextPath()%>/blog.do?id=<%=BlogView.getId()%>"><%=Globals.SITE_URL%>
/blog?id=<%=BlogView.getId()%>
<a href="<%=request.getContextPath()%>/blog/<%=BlogView.getId()%>"><%=Globals.SITE_URL%>
/blog/<%=BlogView.getId()%>
</a>
<bean:message key="blog.owner"/>
<a href="mailto:${BlogView.ownerEmail}">${BlogView.owner.name}</a>
/impl/src/web/user/courses/course.jsp
New file
0,0 → 1,75
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="pt.estgp.estgweb.domain.Course" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.domain.CourseUnit" %>
<%@ page import="pt.estgp.estgweb.domain.Teacher" %>
<%--
Created by IntelliJ IDEA.
User: Jorge
Date: 27/Mai/2008
Time: 12:20:34
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
 
<%
AbstractDao.getCurrentSession().beginTransaction();
 
List<Course> courses = DaoFactory.getCourseDaoImpl().findAll();
 
for(Course c: courses)
{
%>
<table border="1">
<tr>
<th>Nome</th>
<td><%=c.getName()%></td>
</tr>
<tr>
<th>Codigo</th>
<td><%=c.getCode()%></td>
</tr>
<tr>
<th>Grau</th>
<td><%=c.getDegree()%></td>
</tr>
</table>
 
<table border="1">
<tr>
<th>
Unidade
</th>
<th>
Semestre
</th>
</tr>
<%
for (CourseUnit cu : c.getCourseUnits())
{
%>
<tr>
<td>
<%=cu.getName()%>
</td>
<td>
<%=cu.getSemestre()%>
</td>
<%
for (Teacher t: cu.getTeachers())
{
%>
<td><%=t.getName()%></td>
<%
}
%>
</tr>
<%
}
%>
</table>
<%
}
AbstractDao.getCurrentSession().getTransaction().commit();
%>
/impl/src/web/user/ftpclient/ftpclient.jsp
3,24 → 3,36
<%@ page import="java.util.List" %>
<%@ page import="jomm.web.utils.NavPlace" %>
<%@ page import="pt.estgp.estgweb.web.utils.DatesUtils" %>
<%@ page import="org.apache.commons.httpclient.util.URIUtil" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%
List<IFile> iFiles = (List<IFile>) request.getAttribute("files");
 
List<NavPlace> navPlaces = (List<NavPlace>) request.getAttribute("NavPlaces");
if(navPlaces == null || iFiles == null)
{
%>
<div class="statusERROR">Problemas de comunicação com o Servidor FTP</div>
<%
}
else
{
%>
<div id="topnav">
<ul>
<%
 
NavPlace upDir = null;
List<IFile> iFiles = (List<IFile>) request.getAttribute("files");
 
List<NavPlace> navPlaces = (List<NavPlace>) request.getAttribute("NavPlaces");
NavPlace rootPlace = new NavPlace("../","nav.place.root");
String root = "../";
if (navPlaces.size() > 1) //if there is only one will be null because is the actual place
if (navPlaces != null && navPlaces.size() > 1) //if there is only one will be null because is the actual place
{
root += navPlaces.get(0).getUrl();
}
if(navPlaces.size() > 0)
if(navPlaces != null && navPlaces.size() > 0)
{
upDir = rootPlace;
%>
31,6 → 43,11
</li>
<%
}
else if(navPlaces == null)
{
%>
<%
}
else
{
%>
89,7 → 106,7
<tr>
<td colspan="3">
<img alt="<%=i.getCompleteUrl()%>" src="<%=request.getContextPath()%>/imgs/folder.gif">&nbsp;<a
href="<%=i.getName()%>/"><%=i.getName()%>
href="<%=URIUtil.encodePath(i.getName(),"ISO-8859-1")%>/"><%=i.getName()%>
</a>
</td>
</tr>
201,4 → 218,5
 
<%
}
}
%>
/impl/src/web/user/home/topnavLoadBlog.jsp
New file
0,0 → 1,10
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="jomm.web.utils.NavPlaceServer"%>
<%@ page import="jomm.web.utils.TopNav" %>
<%
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/user/startHome.do", "intranet.separator.home");
topNav.addNavPlace(null, "blog");
%>
<jsp:include page="/layout/topnav.jsp"/>
/impl/src/web/user/home/topnavCreateBlog.jsp
New file
0,0 → 1,10
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="jomm.web.utils.NavPlaceServer"%>
<%@ page import="jomm.web.utils.TopNav" %>
<%
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/user/startHome.do", "intranet.separator.home");
topNav.addNavPlace(null, "submit.blog");
%>
<jsp:include page="/layout/topnav.jsp"/>
/impl/src/web/user/serviceZone/topnavLoadBlog.jsp
New file
0,0 → 1,10
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="jomm.web.utils.NavPlaceServer"%>
<%@ page import="jomm.web.utils.TopNav" %>
<%
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/user/startServiceZone.do", "intranet.separator.service.zone.back");
topNav.addNavPlace(null, "blog");
%>
<jsp:include page="/layout/topnav.jsp"/>
/impl/src/web/user/serviceZone/serviceZone.jsp
1,14 → 1,13
<%@ page import="jomm.utils.MessageResources" %>
<%@ page import="pt.estgp.estgweb.domain.views.AnnouncementView" %>
<%@ page import="pt.estgp.estgweb.domain.views.BlogPostView" %>
<%@ page import="pt.estgp.estgweb.domain.views.BlogView" %>
<%@ page import="pt.estgp.estgweb.services.common.IToDo" %>
<%@ page import="pt.estgp.estgweb.services.common.IToDoCat" %>
<%@ page import="pt.estgp.estgweb.web.utils.RequestUtils" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.IServiceManager" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.ServiceManager" %>
<%@ page import="java.util.List" %>
<%@ page import="jomm.utils.MessageResources" %>
<%@ page import="pt.estgp.estgweb.domain.views.BlogPostView" %>
<%@ page import="pt.estgp.estgweb.services.common.CommonServicesManager" %>
<%@ page import="pt.estgp.estgweb.services.common.IToDoCat" %>
<%@ page import="pt.estgp.estgweb.services.common.IToDo" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
45,7 → 44,6
<tbody>
<tr>
<td class="column">
 
<div class="block">
<div class="head">
<bean:message key="intranet.services"/>
57,69 → 55,85
</html:link>
</li>
<li>
<html:link action="/startSubmitBlog">
<html:link action="/user/startSubmitBlogFromServiceZone">
<bean:message key="submit.blog"/>
</html:link>
</li>
 
<baco:isAdmin>
<li>
<html:link action="/user/findProfile">
<bean:message key="profile.search.user"/>
</html:link>
<bean:message key="users"/>
<ul>
<li>
<html:link action="/user/findProfile">
<bean:message key="profile.search.user"/>
</html:link>
</li>
<li>
<html:link action="/user/startNewUserFromServiceZone">
<bean:message key="profile.create.user"/>
</html:link>
</li>
<li>
<html:link action="/user/startNewTeacherFromServiceZone">
<bean:message key="profile.create.teacher"/>
</html:link>
</li>
<li>
<html:link action="/user/startNewStudentFromServiceZone">
<bean:message key="profile.create.student"/>
</html:link>
</li>
</ul>
</li>
<li>
<html:link action="/user/startNewUserFromServiceZone">
<bean:message key="profile.create.user"/>
</html:link>
</li>
<li>
<html:link action="/user/startNewTeacherFromServiceZone">
<bean:message key="profile.create.teacher"/>
</html:link>
</li>
<li>
<html:link action="/user/startNewStudentFromServiceZone">
<bean:message key="profile.create.student"/>
</html:link>
</li>
</baco:isAdmin>
</ul>
</div>
 
<div class="block">
<div class="head">
<bean:message key="intranet.todo"/>
</div>
<%
 
 
if(todos == null || todos.size() == 0)
{
 
 
%>
<div class="zerofound"><bean:message key="todo.zero.todos"/></div>
<div class="zerofound">
<bean:message key="todo.zero.todos"/>
</div>
<%
 
 
}
else
{
 
 
%>
<div class="tree">
<%
for(IToDoCat toDoCat: todos)
for (IToDoCat toDoCat : todos)
{
%>
<div class="node">
<%=MessageResources.getMessage(request,toDoCat.getDescription())%> (<%=toDoCat.getTotalToDo()%>)
<%=MessageResources.getMessage(request, toDoCat.getDescription())%> (<%=toDoCat.getTotalToDo()%>)
<%
for (IToDo todo: toDoCat.getAllToDos())
for (IToDo todo : toDoCat.getAllToDos())
{
if(todo.getUrl() != null)
if (todo.getUrl() != null)
{
%>
<div class="node">
<a href="<%=request.getContextPath() + todo.getUrl()%>"><%=todo.getLabelInsideCat(request)%></a>
<a href="<%=request.getContextPath() + todo.getUrl()%>"><%=todo.getLabelInsideCat(request)%>
</a>
</div>
<%
}
else
{
}
else
{
%>
<div class="node">
<%=todo.getLabelInsideCat(request)%>
281,19 → 295,25
if (ownerAnnouncement.size() == 0)
{
%>
<div class="zerofound"><bean:message key="announcement.zero.placed"/></div>
<div class="zerofound">
<bean:message key="announcement.zero.placed"/>
</div>
 
</div>
<%
 
 
 
 
 
}
else
{
 
 
 
 
 
%>
<table>
<%
309,6 → 329,8
 
 
 
 
 
String message;
if(a.isStatus())
message = MessageResources.getMessage(request,"announcement.status.valid");
318,6 → 340,8
 
 
 
 
 
%>
<%=message%>
<td><%=a.getFormatedUpdateDate()%>
331,10 → 355,14
 
 
 
 
 
}
 
 
 
 
 
%>
</div>
</td>
/impl/src/web/user/serviceZone/topnavCreateProfile.jsp
New file
0,0 → 1,12
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="java.util.*"%>
<%@ page import="jomm.web.utils.NavPlace" %>
<%@ page import="jomm.web.utils.NavPlaceServer" %>
<%@ page import="jomm.web.utils.TopNav" %>
<%
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/user/startServiceZone.do", "intranet.separator.service.zone.back");
topNav.addNavPlace(null, "profile.create.users");
%>
<jsp:include page="/layout/topnav.jsp"/>
/impl/src/web/user/serviceZone/topnavCreateBlog.jsp
New file
0,0 → 1,10
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="jomm.web.utils.NavPlaceServer"%>
<%@ page import="jomm.web.utils.TopNav" %>
<%
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/user/startServiceZone.do", "intranet.separator.service.zone.back");
topNav.addNavPlace(null, "submit.blog");
%>
<jsp:include page="/layout/topnav.jsp"/>