/log.txt |
---|
1,5 → 1,5 |
Estão feitos os templates base para o pedro começar a fazer as paginas á vontade. |
Foi criado dois tipos diferentes de templates: |
*templatePortal-template mais especifico para as páginas que vão ter listas de links para outras páginas |
*templatePage-template genérico com o qual o pedro têm vários objectos para poder contruir grande parte dos sites da escola |
-Auto validação a funcionar |
-Corrigido noticias do lado esquerdo nos portais o tipo que aparecia estava errado |
-No index os announcements center e bottom já carregam as imagens da base de dados, carregam o tipo de noticas certo |
-Acrescentado links para cantinas e associação de estudantes nos alunos (falta por a redirecionar) |
-Atribuição automatica de roles atraves do LDAP feita (fazer alguns testes) |
/impl/conf/language/MessageResources.properties |
---|
141,6 → 141,11 |
portal.instituto.politecnico.merchandising=Merchandising |
portal.instituto.politecnico.cultura.lazer=Cultura e lazer |
portal.paginas.alunos=Páginas dos Alunos |
portal.paginas.exemplo=Exemplo |
portal.paginas.alunos.assessoria=Assessoria de Administração |
portal.paginas.nucleo.engenharia=Nucleo de Engenharia |
portal.servicos.online=Serviços on-line |
portal.servicos.online.webmail=Webmail |
portal.servicos.online.eduroam=Eduroam |
208,6 → 213,7 |
#Mensagens Status |
authentication.ok=Benvindo Fulano |
logout.ok=Caro {0}, obrigado por usar o nosso serviço. |
authentication.first.time=Olá bem-vindo, é a primeira vez que que se esta a ligar |
authenticate.already.authenticated=O seu usuário já está autênticado |
username=Nome de Utilizador |
password=Password |
217,11 → 223,21 |
yes=Sim |
no=Não |
#Login |
login.firts.time.name=Nome |
login.first.time.address=Morada |
login.first.time.zip=Código Postal |
login.first.time.country=País |
login.first.time.email=E-mail |
login.first.time.phone.number=Telefone |
#Cursos |
course.aa=Acessoria e Administração |
#Nucleos |
nucleo.engenharia=Nucleo de Engenharia |
/impl/conf/WEB-INF/struts/struts-default.xml |
---|
89,6 → 89,10 |
<forward name="accaoSocialDocentesPortalMenu" path="page.docentesAccaoSocialPortalMenu.proxy"/> |
<forward name="orgaosDocentesPortalMenu" path="page.docentesOrgaoPortalMenu.proxy"/> |
<forward name="institutoPolitecnicoDocentesPortalMenu" path="page.docentesInstitutoPolitecnicoPortalMenu.proxy"/> |
<!--Assessoria Administracao--> |
<forward name="layoutAA" path="page.layoutAA.proxy"/> |
<!--Nucleo de Engenharia--> |
<forward name="layoutNucleoEng" path="page.layoutNucleoENG.proxy"/> |
<forward name="layoutCourses" path="page.layoutCourses.proxy"/> |
115,6 → 119,7 |
input="page.authentication"> |
<forward name="success" path="page.authentication.ok"/> |
<forward name="logout" path="page.logout.ok"/> |
<forward name="firstTimeAuthenticate" path="page.first.time.authenticate"/> |
</action> |
/impl/conf/WEB-INF/struts/tiles-processworkflow.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> |
10,4 → 10,8 |
<definition name="page.load.process" extends="base.layout1"> |
</definition> |
<definition name="page.teste" extends="base.layout1"> |
<put name="body" value="/teste.jsp"/> |
</definition> |
</tiles-definitions> |
/impl/conf/WEB-INF/struts/tiles-default.xml |
---|
88,6 → 88,12 |
<definition name="page.layoutPortal.proxy" extends="base.layoutPortal"> |
<put name="body" value="/WebProxy"/> |
</definition> |
<definition name="page.layoutAssessoria.proxy" extends="base.layoutPortal"> |
<put name="body" value="/WebProxy"/> |
</definition> |
<definition name="page.layoutNuleoEngenharia.proxy" extends="base.layoutPortal"> |
<put name="body" value="/WebProxy"/> |
</definition> |
<definition name="page.layout1.proxy.ftp" extends="base.layout1"> |
119,7 → 125,8 |
<put name="body" value="/public/portals/futurosAlunos/futureStudent.jsp"/> |
</definition> |
<definition name="page.portal.teacher" extends="base.layoutPortal"> |
<put name="body" value="/public/portals/Docentes/teacher.jsp"/> |
<put name="body" value="/public/portals/Docentes/teacher.jsp"/> |
<!-- <put name="body" value="/templates/templatePage.jsp"/> --> |
</definition> |
<!--Alunos--> |
238,6 → 245,16 |
<put name="topnav" value="/public/portals/Docentes/topnavInstitutoPolitecnico.jsp" /> |
<put name="navigationLeft" value="/public/portals/Docentes/institutoPolitecnico.jsp" /> |
</definition> |
<!--Alunos Assessoria--> |
<definition name="page.layoutAA.proxy" extends="page.layoutAssessoria.proxy"> |
<put name="topnav" value="/public/portals/assessoria/topnavAssessoria.jsp" /> |
<put name="navigationLeft" value="/public/portals/assessoria/assessoria.jsp" /> |
</definition> |
<!--Nucleo de Engenharia--> |
<definition name="page.layoutNucleoENG.proxy" extends="page.layoutNuleoEngenharia.proxy"> |
<put name="topnav" value="/public/portals/nucleoEngenharia/topnavNucleoEngenharia.jsp" /> |
<put name="navigationLeft" value="/public/portals/nucleoEngenharia/nucleoEngenharia.jsp" /> |
</definition> |
260,6 → 277,10 |
<put name="title" value="Logout Success" /> |
<put name="body" value="/auth/logoutok.jsp" /> |
</definition> |
<definition name="page.first.time.authenticate" extends="base.layout1"> |
<put name="title" value="First Time Authenticate" /> |
<put name="body" value="/auth/firstTimeAuthenticate.jsp" /> |
</definition> |
<!-- ERRORS DEFINITIONS --> |
<definition name="page.error.500" extends="base.error.definition"> |
/impl/conf/WEB-INF/struts/struts-processworkflow.xml |
---|
1,13 → 1,13 |
<?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> |
<form-beans> |
<form-bean type="pt.estgp.estgweb.web.form.TesteForm" name="TesteForm"/> |
</form-beans> |
<global-exceptions> |
20,6 → 20,17 |
<action-mappings> |
<!--Authentication--> |
<action path="/testeStart" forward="page.teste"/> |
<action path="/teste" |
type="pt.estgp.estgweb.web.controllers.TesteController" |
name="TesteForm" |
scope="request" |
parameter="dispatch" |
validate="false" |
input="page.teste"> |
<forward name="ok" path="page.teste"/> |
</action> |
</action-mappings> |
</struts-config> |
/impl/conf/WEB-INF/struts/struts-announcements.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/app.properties |
---|
17,6 → 17,8 |
ionline.user=Baco_web |
server.estgp=http://www.estgp.pt/testes/nova_web |
server.estgweb=http://www.estgp.pt/testes/estgweb |
estgweb.encoding=UTF-8 |
estgp.encoding=UTF-8 |
################################################ |
56,6 → 58,8 |
# Announcements |
# |
announcements.text.summary.size=250 |
announcements.text.summary.size.small=100 |
announcements.automatic.validation.role.1=all |
announcements.automatic.validation.role.2=admin |
announcements.automatic.validation.role.3=ci |
/impl/conf/berserk/sd.xml |
---|
163,4 → 163,16 |
</filterChains> |
</service> |
<!--Teste--> |
<service> |
<name>TesteSaver</name> |
<implementationClass>pt.estgp.estgweb.services.teste.TesteService</implementationClass> |
<description>Saves a teste</description> |
<isTransactional>true</isTransactional> |
<filterChains> |
<chain name="Logger"/> |
</filterChains> |
</service> |
</serviceDefinitions> |
/impl/src/java/jomm/dao/impl/AbstractDao.java |
---|
15,6 → 15,7 |
import java.sql.SQLException; |
import java.util.Collection; |
import java.util.List; |
import java.util.Date; |
/** |
400,6 → 401,8 |
public Serializable save(CLAZZ obj) |
{ |
try { |
DomainObject o = (DomainObject) obj; |
o.setSaveDate(new Date()); |
return (Serializable) getCurrentSession().save(obj); |
} |
catch (HibernateException e) { |
/impl/src/java/jomm/web/utils/NavPlace.java |
---|
27,6 → 27,7 |
public String getUrl() |
{ |
if(url != null) |
{ |
if(url.indexOf("?")>=0) |
/impl/src/java/pt/estgp/estgweb/services/teste/TesteService.java |
---|
New file |
0,0 → 1,34 |
package pt.estgp.estgweb.services.teste; |
import pt.utl.ist.berserk.logic.serviceManager.IService; |
import pt.estgp.estgweb.services.authenticate.LogoutService; |
import pt.estgp.estgweb.services.expceptions.ServiceException; |
import pt.estgp.estgweb.domain.UserSession; |
import pt.estgp.estgweb.domain.UserSessionImpl; |
import pt.estgp.estgweb.domain.Teste; |
import pt.estgp.estgweb.domain.dao.DaoFactory; |
import org.apache.log4j.Logger; |
/* |
* @author Goncalo Luiz gedl [AT] rnl [DOT] ist [DOT] utl [DOT] pt |
* |
* |
* Created at 17/Out/2003 , 23:45:24 |
* |
*/ |
/** |
* @author Jorge Machado |
* |
* |
* Created at 17/Out/2003 , 23:45:24 |
* |
*/ |
public class TesteService implements IService |
{ |
private static final Logger logger = Logger.getLogger(TesteService.class); |
public void run(Teste t) throws ServiceException |
{ |
DaoFactory.getTesteDaoImpl().save(t); |
} |
} |
/impl/src/java/pt/estgp/estgweb/services/announcements/LoadRoleTypeMaxAnnouncementsService.java |
---|
60,8 → 60,8 |
//tens de ter cuidado com o nome que metes no servico, tavas a meter LoadRoleTypeMaxAnnouncements e no XML estava LoadRoleTypeMaxAnnouncementsService, o nome nao tem de ser igual a classe mas convem, por norma eu tenho tirado a palavra service do nome do servico |
//ou seja esta LoadRoleTypeMaxAnnouncements para a classe LoadRoleTypeMaxAnnouncementsService logo no sm.execute tem de estar LoadRoleTypeMaxAnnouncements |
//mudei a propriedade log.file build.properties para log.file=${data.dir}/estgweb.log assim já não dá o erro do log |
//adicionei as libs jsp-api.jar da pasta tomcat/common/lib para não te falhar os imports nas TAGS aqui no Intellij |
//mudei a propriedade log.file build.properties para log.file=${data.dir}/estgweb.log assim ja nao da o erro do log |
//adicionei as libs jsp-api.jar da pasta tomcat/common/lib para nao te falhar os imports nas TAGS aqui no Intellij |
//adiciona sempre todos os jars da common aqui no Intellij faltava-te o activation.jar do jaxb e era preciso para o MimeTypeGuesser |
public static void main(String[] args) throws Throwable { |
IServiceManager sm = ServiceManager.getInstance(); |
/impl/src/java/pt/estgp/estgweb/services/announcements/LoadTopFlashNewsIterateService.java |
---|
55,8 → 55,8 |
//tens de ter cuidado com o nome que metes no servico, tavas a meter LoadRoleTypeMaxAnnouncements e no XML estava LoadRoleTypeMaxAnnouncementsService, o nome nao tem de ser igual a classe mas convem, por norma eu tenho tirado a palavra service do nome do servico |
//ou seja esta LoadRoleTypeMaxAnnouncements para a classe LoadRoleTypeMaxAnnouncementsService logo no sm.execute tem de estar LoadRoleTypeMaxAnnouncements |
//mudei a propriedade log.file build.properties para log.file=${data.dir}/estgweb.log assim já não dá o erro do log |
//adicionei as libs jsp-api.jar da pasta tomcat/common/lib para não te falhar os imports nas TAGS aqui no Intellij |
//mudei a propriedade log.file build.properties para log.file=${data.dir}/estgweb.log assim ja nao da o erro do log |
//adicionei as libs jsp-api.jar da pasta tomcat/common/lib para nao te falhar os imports nas TAGS aqui no Intellij |
//adiciona sempre todos os jars da common aqui no Intellij faltava-te o activation.jar do jaxb e era preciso para o MimeTypeGuesser |
public static void main(String[] args) throws Throwable { |
IServiceManager sm = ServiceManager.getInstance(); |
/impl/src/java/pt/estgp/estgweb/services/authenticate/AuthenticateService.java |
---|
40,7 → 40,7 |
ILdapManager ldapManager = LdapManagerFactory.getLdapManager(); |
public User run(String username, String password, UserSession userSession) throws ServiceException |
public UserSession run(String username, String password, UserSession userSession) throws ServiceException |
{ |
if(userSession.getUser() != null) |
throw new AuthenticateException(AuthenticateException.ALREADY_AUTHENTICATED); |
76,10 → 76,9 |
userSession.setUsername(u.getUsername()); |
userSession.setUser(u); |
DaoFactory.getUserSessionDaoImpl().reattach(userSession); |
return u; |
return userSession; |
} |
//todo completar isto |
private User getUserInfo(String username) |
{ |
HashMap map = ldapManager.getUserInfo(username); |
/impl/src/java/pt/estgp/estgweb/domain/UserImpl.java |
---|
14,7 → 14,6 |
*/ |
public class UserImpl extends User |
{ |
private boolean newUser = false; |
24,8 → 23,7 |
public void setNewUser(boolean newUser) { |
this.newUser = newUser; |
} |
} |
/** |
* check if user is in some group |
* @param g to check |
/impl/src/java/pt/estgp/estgweb/domain/TesteImpl.java |
---|
New file |
0,0 → 1,10 |
package pt.estgp.estgweb.domain; |
/** |
* @author Jorge Machado |
* @date 9/Abr/2008 |
* @time 16:57:12 |
* @see pt.estgp.estgweb.domain |
*/ |
public class TesteImpl extends Teste{ |
} |
/impl/src/java/pt/estgp/estgweb/domain/views/AnnouncementView.java |
---|
19,6 → 19,7 |
public class AnnouncementView extends DomainObjectView |
{ |
public static final int TEXT_SUMMARY_SIZE = ConfigProperties.getIntProperty("announcements.text.summary.size"); |
public static final int TEXT_SUMMARY_SIZE_SMALL = ConfigProperties.getIntProperty("announcements.text.summary.size.small"); |
private long id; |
private String title; |
36,7 → 37,7 |
public AnnouncementView() |
{} |
public AnnouncementView(Announcement announcement) |
{ |
200,4 → 201,23 |
return getText().substring(0,getText().substring(0,TEXT_SUMMARY_SIZE).lastIndexOf(' ')) + "..."; |
return getText(); |
} |
public String getTextSummarySmall() |
{ |
if(getText().length() > TEXT_SUMMARY_SIZE_SMALL) |
return getText().substring(0,getText().substring(0,TEXT_SUMMARY_SIZE_SMALL).lastIndexOf(' ')) + "..."; |
return getText(); |
} |
public Boolean getHaveAllText() |
{ |
if(getType().equals("top.flash.news")) |
{ |
return getText().length() > TEXT_SUMMARY_SIZE; |
} |
else |
{ |
return getText().length() > TEXT_SUMMARY_SIZE_SMALL; |
} |
} |
} |
/impl/src/java/pt/estgp/estgweb/domain/dao/impl/TesteDaoImpl.java |
---|
New file |
0,0 → 1,42 |
package pt.estgp.estgweb.domain.dao.impl; |
import pt.estgp.estgweb.domain.DomainObjectFactory; |
import pt.estgp.estgweb.domain.Teste; |
import pt.estgp.estgweb.domain.dao.DaoFactory; |
import pt.utl.ist.berserk.logic.serviceManager.IServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.ServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.exceptions.ServiceManagerException; |
import pt.utl.ist.berserk.logic.filterManager.exceptions.*; |
/** |
* @author Jorge Machado |
* @date 28/Fev/2008 |
* @time 2:51:06 |
* @see pt.estgp.estgweb.domain.dao.impl |
*/ |
public class TesteDaoImpl extends TesteDao { |
public static TesteDaoImpl getInstance() { |
if (myInstance == null) |
myInstance = new TesteDaoImpl(); |
return (TesteDaoImpl) myInstance; |
} |
public static void main(String[] args) throws ClassNotIFilterException, InvalidFilterException, ServiceManagerException, InvalidFilterExpressionException, IncompatibleFilterException, FilterRetrieveException { |
Teste t = DomainObjectFactory.createTesteImpl(); |
t.setMorada("portalegre"); |
t.setName("jorge"); |
Object[] args2 = {t}; |
IServiceManager sm = ServiceManager.getInstance(); |
try { |
sm.execute("123", "TesteSaver", args2); |
} |
catch (Throwable e) { |
System.out.println("Already exist fail creation, gone login now"); |
} |
} |
} |
/impl/src/java/pt/estgp/estgweb/domain/dao/DaoFactory.java |
---|
64,4 → 64,9 |
{ |
return UrlStatDayDaoImpl.getInstance(); |
} |
public static TesteDaoImpl getTesteDaoImpl() |
{ |
return TesteDaoImpl.getInstance(); |
} |
} |
/impl/src/java/pt/estgp/estgweb/domain/DomainObjectFactory.java |
---|
72,4 → 72,10 |
{ |
return new UrlStatDayImpl(); |
} |
public static TesteImpl createTesteImpl() |
{ |
return new TesteImpl(); |
} |
} |
/impl/src/java/pt/estgp/estgweb/domain/DomainObject.java |
---|
21,6 → 21,8 |
private static final String ALL_ROLE = ConfigProperties.getProperty("user.super"); |
public void setSaveDate(Date d){} |
/** |
* can be override in proper classes |
* @return generic user owner of object |
/impl/src/java/pt/estgp/estgweb/web/Globals.java |
---|
12,6 → 12,8 |
{ |
private static final String PORTAL_MENU_START_LINK_START = "/proxy/"; |
private static final String PORTAL_MENU_START_LINK_END = "/estgp/public/portal"; |
private static final String PORTAL_MENU_START_LINK_END_AA = "/estgweb/aa"; |
private static final String PORTAL_MENU_START_LINK_END_NUCLEO_ENG = "/estgweb/nucleoeng"; |
public static final String PORTAL_ROLE_VIEW_STUDENT ="?role=student&menu=menu.alunos"; |
public static final String PORTAL_ROLE_VIEW_FUTURE_STUDENT ="?role=futureStudent&menu=menu.futurosAlunos"; |
public static final String PORTAL_ROLE_VIEW_OLD_STUDENT ="?role=oldStudent&menu=menu.antigosAlunos"; |
20,7 → 22,13 |
public static String getStartLinkPortalMenu(String layout) |
{ |
return PORTAL_MENU_START_LINK_START + layout + PORTAL_MENU_START_LINK_END; |
if(layout.contains("AA")) |
return PORTAL_MENU_START_LINK_START + layout + PORTAL_MENU_START_LINK_END_AA; |
else if(layout.contains("NucleoEng")) |
return PORTAL_MENU_START_LINK_START + layout + PORTAL_MENU_START_LINK_END_NUCLEO_ENG; |
else |
return PORTAL_MENU_START_LINK_START + layout + PORTAL_MENU_START_LINK_END; |
} |
} |
/impl/src/java/pt/estgp/estgweb/web/form/TesteForm.java |
---|
New file |
0,0 → 1,26 |
package pt.estgp.estgweb.web.form; |
import org.apache.struts.action.ActionForm; |
import pt.estgp.estgweb.domain.Teste; |
import pt.estgp.estgweb.domain.DomainObjectFactory; |
/** |
* @author Jorge Machado |
* @date 28/Fev/2008 |
* @time 20:42:25 |
* @see pt.estgp.estgweb.web.form |
*/ |
public class TesteForm extends ApplicationForm |
{ |
Teste teste = DomainObjectFactory.createTesteImpl(); |
public Teste getTeste() { |
return teste; |
} |
public void setTeste(Teste teste) { |
this.teste = teste; |
} |
} |
/impl/src/java/pt/estgp/estgweb/web/controllers/TesteController.java |
---|
New file |
0,0 → 1,66 |
package pt.estgp.estgweb.web.controllers; |
import org.apache.log4j.Logger; |
import org.apache.struts.action.*; |
import pt.estgp.estgweb.web.controllers.authenticate.AuthenticateController; |
import pt.estgp.estgweb.web.utils.RequestUtils; |
import pt.estgp.estgweb.web.UserSessionProxy; |
import pt.estgp.estgweb.web.form.TesteForm; |
import pt.estgp.estgweb.web.exceptions.NoCookiesException; |
import pt.estgp.estgweb.services.authenticate.AuthenticateException; |
import pt.estgp.estgweb.domain.UserSession; |
import pt.estgp.estgweb.Globals; |
import pt.utl.ist.berserk.logic.serviceManager.IServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.ServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.exceptions.ServiceManagerException; |
import pt.utl.ist.berserk.logic.filterManager.exceptions.*; |
import javax.servlet.http.HttpServletRequest; |
import javax.servlet.http.HttpServletResponse; |
import javax.servlet.ServletException; |
import java.io.IOException; |
/** |
* @author Jorge Machado |
* @date 26/Fev/2008 |
* @time 18:01:54 |
* @see pt.estgp.estgweb.web |
*/ |
public class TesteController extends ApplicationDispatchController |
{ |
private static final Logger logger = Logger.getLogger(TesteController.class); |
public ActionForward save(ActionMapping mapping, |
ActionForm form , |
HttpServletRequest request, |
HttpServletResponse response) |
throws IOException, ServletException |
{ |
TesteForm tf = (TesteForm) form; |
Object[] args2 = {tf.getTeste()}; |
IServiceManager sm = null; |
try |
{ |
sm = ServiceManager.getInstance(); |
} |
catch (Exception e) |
{ |
logger.error(e); |
} |
try |
{ |
sm.execute(RequestUtils.getRequester(request), "TesteSaver", args2); |
} |
catch (Throwable e) |
{ |
System.out.println("Already exist fail creation, gone login now"); |
} |
return mapping.findForward("ok"); |
} |
} |
/impl/src/java/pt/estgp/estgweb/web/controllers/authenticate/AuthenticateController.java |
---|
12,6 → 12,9 |
import pt.estgp.estgweb.services.authenticate.AuthenticateException; |
import pt.estgp.estgweb.Globals; |
import pt.estgp.estgweb.domain.UserSession; |
import pt.estgp.estgweb.domain.User; |
import pt.estgp.estgweb.domain.UserImpl; |
import pt.estgp.estgweb.domain.UserSessionImpl; |
import pt.utl.ist.berserk.logic.serviceManager.IServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.ServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.exceptions.ServiceManagerException; |
37,12 → 40,12 |
private static final Logger logger = Logger.getLogger(AuthenticateController.class); |
public ActionForward login(ActionMapping mapping, |
ActionForm form , |
HttpServletRequest request, |
HttpServletResponse response) |
ActionForm form , |
HttpServletRequest request, |
HttpServletResponse response) |
throws IOException, ServletException |
{ |
String username = request.getParameter("username"); |
String password = request.getParameter("password"); |
50,9 → 53,13 |
{ |
IServiceManager sm = ServiceManager.getInstance(); |
Object[] args = new Object[]{username,password}; |
sm.execute(RequestUtils.getRequester(request),"Authenticate",args); |
UserSessionProxy.loadUserSession(request); |
return mapping.findForward("success"); |
UserSession userSession = (UserSession) sm.execute(RequestUtils.getRequester(request),"Authenticate",args); |
request.setAttribute(Globals.USER_SESSION_KEY,userSession); |
if(!((UserImpl)userSession.getUser()).isNewUser()) |
return mapping.findForward("success"); |
else |
return mapping.findForward("firstTimeAuthenticate"); |
} |
catch (AuthenticateException e) |
{ |
71,9 → 78,9 |
} |
public ActionForward logout(ActionMapping mapping, |
ActionForm form , |
HttpServletRequest request, |
HttpServletResponse response) |
ActionForm form , |
HttpServletRequest request, |
HttpServletResponse response) |
throws IOException, ServletException |
{ |
/impl/src/hbm/pt/estgp/estgweb/domain/Teste.hbm.xml |
---|
New file |
0,0 → 1,20 |
<?xml version="1.0"?> |
<!DOCTYPE hibernate-mapping |
PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" |
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> |
<hibernate-mapping> |
<class name="pt.estgp.estgweb.domain.Teste" table="teste" abstract="true"> |
<meta attribute="extends">pt.estgp.estgweb.domain.DomainObject</meta> |
<meta attribute="scope-class">public abstract</meta> |
<id name="id" type="long"> |
<generator class="native"/> |
</id> |
<discriminator column="discrimitator"/> |
<timestamp name="updateDate" unsaved-value="null"/> |
<property name="saveDate" type="timestamp"/> |
<property name="name" type="string"/> |
<property name="morada" type="string"/> |
<subclass name="pt.estgp.estgweb.domain.TesteImpl" discriminator-value="TesteImpl"/> |
</class> |
</hibernate-mapping> |
/impl/src/web/teste.jsp |
---|
New file |
0,0 → 1,13 |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %> |
<html:form action="/teste"> |
<input type="hidden" name="dispatch" value="save"> |
Nome <html:text property="teste.name"/><br> |
Morada <html:text property="teste.morada"/><br> |
<html:submit/> |
</html:form> |
/impl/src/web/auth/firstTimeAuthenticate.jsp |
---|
New file |
0,0 → 1,39 |
<%@ 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" %> |
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %> |
<bean:message key="authentication.first.time"/> <bean:write name="UserSession" property="name"/> |
<table> |
<tr> |
<th><bean:message key="login.firts.time.name"/></th> |
<td> |
</td> |
</tr> |
<tr> |
<th><bean:message key="login.first.time.address"/></th> |
<td> |
</td> |
</tr> |
<tr> |
<th><bean:message key="login.first.time.zip"/></th> |
<td> |
</td> |
</tr> |
<tr> |
<th><bean:message key="login.first.time.email"/></th> |
<td> |
</td> |
</tr> |
<tr> |
<th><bean:message key="login.first.time.email"/></th> |
<td> |
</td> |
</tr> |
</table> |
/impl/src/web/css/style.css |
---|
191,56 → 191,32 |
/**********************************************************************************/ |
/****************************** Standard Page Template ***************************/ |
.page,.pageText |
.contentPortal h1 |
{ |
font-size :11.5pt; |
background-color:#8EC73F; |
color:#FFFFFF; |
} |
.page P |
.contentPortal p |
{ |
margin:0; |
color:#4d4d4d; |
} |
.page h1,.pageHeader h1 |
.section |
{ |
font-size:15pt; |
margin-bottom:10px; |
} |
.page h2,.sectionTitle h2 |
.contentPortal li a:link,.contentPortal a:visited |
{ |
font-size:13pt; |
font-weight:bold; |
color:#4d4d4d; |
} |
.page h3,.sectionTitle h3 |
.contentPortal li a:hover |
{ |
font-size:10pt; |
font-weight:bold; |
color:#000000; |
} |
.pageHeader h1 |
{ |
color:#FFFFFF; |
background-color:#8EC73F; |
padding-left:10px; |
padding-right:10px; |
} |
.portalContent |
{ |
} |
.pageBlock a:hover |
{ |
color:#8EC73F; |
text-decoration :underline; |
} |
.pageColumnTableSolid |
{ |
border:#000000 solid 1px; |
} |
.listClean UL /*Lista sem nada*/ |
{ |
LIST-STYLE-TYPE: none; |
267,24 → 243,10 |
LIST-STYLE-TYPE: square; |
} |
.pageSection |
{ |
} |
.sectionTitle h2 |
{ |
color:#000000; |
} |
.pageText,.pageBlock a,.pageBlock a:visited |
{ |
color:#4d4d4d; |
text-decoration:none; |
} |
.portalLeftAnnouncements img |
{ |
height:133px; |
width:177px; |
} |
/*PASSA PARA AQUI TUDO O QUE SEJA DE BLOCOS E VAMOS LIMPAR TUDO */ |
332,6 → 294,7 |
#flashTopNews img |
{ |
height:167px; |
width:341px; |
} |
#flashTopNews * td |
{ |
389,6 → 352,7 |
#flashCenterNews img,#flashCenterNews td.imageContainer |
{ |
width:133px; |
height:133px; |
} |
397,6 → 361,7 |
#flashBottomNews img |
{ |
width:100px; |
height:100px; |
} |
#flashBottomNews h2 a:link,#flashBottomNews h2 a:visited |
556,6 → 521,15 |
{ |
} |
#footer a:link,#footer a:visited |
{ |
color:#4d4d4d; |
} |
#footer a:hover |
{ |
color:#8EC73F; |
} |
/**************************************************************************************/ |
/******************************** Bar Module Color ************************************/ |
583,14 → 557,18 |
font-weight :bold; |
} |
/*************************************************************************************/ |
.form , .boxHorizontal |
form , .boxHorizontal |
{ |
margin:0; |
padding:3px; |
border:1px #793B0D solid ; |
background-color:#F5BB91; |
border:0px #793B0D solid ; |
background-color:#FFFFFF; |
} |
.boxHorizontal |
{ |
padding-top:33px; |
padding-left:180px; |
} |
.form th, .boxHorizontal th |
{ |
599,10 → 577,10 |
padding-top:3px; |
padding-bottom:3px; |
padding-right:15px; |
color:#793B0D; |
background-color: #F5BB91; |
border: 1px solid #793B0D; |
font-size:0.76em; |
color:#4d4d4d; |
background-color: #FFFFFF; |
border: 0px solid #793B0D; |
font-size:0.86em; |
font-weight:bold; |
font-family:Helvetica,sans-serif; |
text-align:left; |
617,7 → 595,7 |
padding-right:15px; |
color:#793B0D; |
background-color: #FFFFFF; |
border: 1px solid #793B0D; |
border: 0px solid #793B0D; |
font-size:0.8em; |
font-family:Helvetica,sans-serif; |
vertical-align:middle; |
626,7 → 604,7 |
.form .buttons td, .boxHorizontal .buttons td |
{ |
text-align:center; |
background-color: #FDE1CD; |
background-color: #FFFFFF; |
} |
.form textarea, .boxHorizontal textarea |
687,7 → 665,7 |
input[type="button"], input[type="submit"] |
{ |
color: black; |
color: #4d4d4d; |
border-top-width: 1px; |
border-right-width: 1px; |
border-bottom-width: 1px; |
696,10 → 674,10 |
border-right-style: solid; |
border-bottom-style: solid; |
border-left-style: solid; |
border-top-color: black; |
border-right-color: black; |
border-bottom-color: black; |
border-left-color: black; |
border-top-color:#4d4d4d; |
border-right-color: #4d4d4d; |
border-bottom-color: #4d4d4d; |
border-left-color: #4d4d4d; |
background-color: transparent; |
background-image: none; |
background-repeat: repeat; |
708,7 → 686,7 |
input[type="button"]:hover, input[type="submit"]:hover |
{ |
background-color: #909090; |
background-color: #8EC73F; |
background-image: none; |
background-repeat: repeat; |
background-attachment: scroll; |
/impl/src/web/public/index.jsp |
---|
60,12 → 60,22 |
<%if(item.getSmallImage() != null){%><img alt="<%=item.getTitle()%>" src="<%=request.getContextPath()%>/imageStream/<%=item.getSmallImage().getId()%>"><%}%> |
</td> |
<td class="textContainer"> |
<h2> |
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.title}</html:link> |
</h2> |
<p> |
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.text}</html:link> |
</p> |
<logic:empty name="item" property="url"> |
<h2><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.title}</html:link></h2> |
<p><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.textSummarySmall}</html:link></p> |
</logic:empty> |
<logic:notEmpty name="item" property="url"> |
<%if(!item.getHaveAllText()) |
{%> |
<h2><html:link href="${item.url}">${item.title}</html:link></h2> |
<p><html:link href="${item.url}">${item.textSummarySmall}</html:link></p> |
<%} |
else |
{%> |
<h2><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.title}</html:link></h2> |
<p><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.textSummarySmall}</html:link></p> |
<%}%> |
</logic:notEmpty> |
</td> |
<%if(centerAnnouncements==Globals.NUMBER_ANNOUNCEMENT_TYPE_BOTTOM_FLASH_NEWS_INDEX) |
92,12 → 102,22 |
<%if(item.getSmallImage() != null){%><img alt="<%=item.getTitle()%>" src="<%=request.getContextPath()%>/imageStream/<%=item.getSmallImage().getId()%>"><%}%> |
</div> |
<div class="textContainer"> |
<h2> |
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link> |
</h2> |
<p> |
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.text}</html:link> |
</p> |
<logic:empty name="item" property="url"> |
<h2><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link></h2> |
<p><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.textSummarySmall}</html:link></p> |
</logic:empty> |
<logic:notEmpty name="item" property="url"> |
<%if(!item.getHaveAllText()) |
{%> |
<h2><html:link href="${item.url}">${item.title}</html:link></h2> |
<p><html:link href="${item.url}">${item.textSummarySmall}</html:link></p> |
<%} |
else |
{%> |
<h2><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.title}</html:link></h2> |
<p><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.textSummarySmall}</html:link></p> |
<%}%> |
</logic:notEmpty> |
</div> |
</td> |
<%if(bottomAnnouncements==Globals.NUMBER_ANNOUNCEMENT_TYPE_NEW_INDEX) |
/impl/src/web/public/portals/alunos/student.jsp |
---|
18,6 → 18,8 |
<jsp:include page="../blocoPortal.jsp"/> |
<jsp:include page="accaoSocialLinks.jsp"/> |
<jsp:include page="../blocoPortal.jsp"/> |
<jsp:include page="paginasAlunosLinks.jsp"/> |
<jsp:include page="../blocoPortal.jsp"/> |
</td> |
<td class="column"> |
<jsp:include page="orgaosLinks.jsp"/> |
/impl/src/web/public/portals/alunos/contactosLinks.jsp |
---|
13,5 → 13,5 |
topNav.addNavPlace(startLink + "/contactosGabineteComunicacao.html"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.contactos.gabinete.comunicacao"); |
topNav.addNavPlace(startLink + "/contactosReprografia.html"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.contactos.reprografia"); |
topNav.addNavPlace(startLink + "/contactosDocentesContactos.html"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.contactos.docentes"); |
topNav.addNavPlace(startLink + "/associacaoEstudantes.html"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.contactos.associacao.estudantes"); |
%> |
topNav.addNavPlace("http://www.global.estgp.pt/ae/"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.contactos.associacao.estudantes"); |
%> |
/impl/src/web/public/portals/alunos/accaoSocialLinks.jsp |
---|
13,5 → 13,5 |
topNav.addNavPlace(startLink + "/accaoSocialDesportoCultura.html"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.accao.social.desporto.cultura"); |
topNav.addNavPlace(startLink + "/accaoSocialGaap.html"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.accao.social.gapp"); |
topNav.addNavPlace(startLink + "/accaoSocialInformacoes.html"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.accao.social.informacoes"); |
topNav.addNavPlace(startLink + "/cantinas"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.accao.social.cantinas"); |
topNav.addNavPlace("http://www.ipportalegre.pt/wwwsas/alimentacao_refeitorios.htm"+Globals.PORTAL_ROLE_VIEW_STUDENT, "portal.accao.social.cantinas"); |
%> |
/impl/src/web/public/portals/alunos/paginasAlunosLinks.jsp |
---|
New file |
0,0 → 1,13 |
<%@ page import="jomm.web.utils.TopNav" %> |
<%@ page import="pt.estgp.estgweb.web.Globals" %> |
<%@ page import="jomm.web.utils.NavPlaceServer" %> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<% |
TopNav topNav = NavPlaceServer.getInstance().createPortalMenuPlacesKey(request); |
topNav.setTitle("portal.paginas.alunos"); |
String startLinkAA = Globals.getStartLinkPortalMenu("layoutAA"); |
String startLinkNucleoENG = Globals.getStartLinkPortalMenu("layoutNucleoEng"); |
topNav.addNavPlace(startLinkAA + "/exemplo.html", "portal.paginas.alunos.assessoria"); |
topNav.addNavPlace(startLinkNucleoENG + "/exemplo.html", "portal.paginas.nucleo.engenharia"); |
%> |
/impl/src/web/public/portals/menuPortal.jsp |
---|
40,11 → 40,22 |
NavPlace navPlace = (NavPlace) navKey; |
if (navPlace.getUrl() != null) |
{ |
if(!navPlace.getUrl().contains("http://")) |
{ |
%> |
<li class="navPlace<%=selectedClass%>"> |
<a href="<%=request.getContextPath() + navPlace.getUrl()%>"><%=MessageResources.getMessage(request, navPlace.getKey())%></a> |
</li> |
<% |
} |
else |
{ |
%> |
<li class="navPlace<%=selectedClass%>"> |
<a href="<%=navPlace.getUrl()%>"><%=MessageResources.getMessage(request, navPlace.getKey())%></a> |
</li> |
<% |
} |
} |
else |
{ |
/impl/src/web/public/portals/nucleoEngenharia/nucleoEngenharia.jsp |
---|
New file |
0,0 → 1,7 |
<%@ page import="jomm.web.utils.TopNav" %> |
<%@ page import="jomm.web.utils.NavPlaceServer" %> |
<%@ page import="pt.estgp.estgweb.web.Globals" %> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<jsp:include page="/public/portals/nucleoEngenharia/nucleoEngenhariaLinks.jsp"/> |
<jsp:include page="/public/portals/menuPortal.jsp"/> |
/impl/src/web/public/portals/nucleoEngenharia/nucleoEngenhariaLinks.jsp |
---|
New file |
0,0 → 1,10 |
<%@ page import="jomm.web.utils.TopNav" %> |
<%@ page import="pt.estgp.estgweb.web.Globals" %> |
<%@ page import="jomm.web.utils.NavPlaceServer" %> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<% |
TopNav topNav = NavPlaceServer.getInstance().createPortalMenuPlacesKey(request); |
topNav.setTitle("portal.paginas.nucleo.engenharia"); |
String startLink = Globals.getStartLinkPortalMenu("layoutNucleoEng"); |
topNav.addNavPlace(startLink + "/exemplo.html", "portal.paginas.exemplo"); |
%> |
/impl/src/web/public/portals/nucleoEngenharia/topnavNucleoEngenharia.jsp |
---|
New file |
0,0 → 1,14 |
<%@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" %> |
<%@ page import="pt.estgp.estgweb.web.Globals" %> |
<% |
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request); |
topNav.addNavPlace("/Welcome.do", "Home"); |
topNav.addNavPlace("/student.do" + Globals.PORTAL_ROLE_VIEW_STUDENT, "menu.alunos"); |
topNav.addNavPlace(null, "portal.paginas.nucleo.engenharia"); |
%> |
<jsp:include page="/layout/topnav.jsp"/> |
/impl/src/web/public/portals/blocoPortal.jsp |
---|
11,31 → 11,41 |
{ |
%> |
<div class="block"> |
<p><%=MessageResources.getMessage(request, topNav.getTitle())%></p> |
<% |
} |
%> |
<ul> |
<% |
List<NavPlace> navKeys = topNav.getNavPlaces(); |
for (NavPlace navKey : navKeys) |
<p><%=MessageResources.getMessage(request, topNav.getTitle())%></p> |
<% |
} |
%> |
<ul> |
<% |
List<NavPlace> navKeys = topNav.getNavPlaces(); |
for (NavPlace navKey : navKeys) |
{ |
NavPlace navPlace = (NavPlace) navKey; |
if (navPlace.getUrl() != null) |
{ |
NavPlace navPlace = (NavPlace) navKey; |
if (navPlace.getUrl() != null) |
if(!navPlace.getUrl().contains("http://")) |
{ |
%> |
<li> |
<a href="<%=request.getContextPath() + navPlace.getUrl()%>"><%=MessageResources.getMessage(request, navPlace.getKey())%></a> |
</li> |
<% |
%> |
<li> |
<a href="<%=request.getContextPath() + navPlace.getUrl()%>"><%=MessageResources.getMessage(request, navPlace.getKey())%></a> |
</li> |
<% |
} |
else |
{ |
%> |
<li> |
<a href="<%=navPlace.getUrl()%>"><%=MessageResources.getMessage(request, navPlace.getKey())%></a> |
</li> |
<%} |
} |
else |
{ |
%> |
<li><%=MessageResources.getMessage(request, navPlace.getKey())%></li> |
<% |
} |
} |
else |
{ |
%> |
<li><%=MessageResources.getMessage(request, navPlace.getKey())%></li> |
<% |
} |
} |
%> |
</ul> |
%> |
</ul> |
</div> |
/impl/src/web/public/portals/assessoria/topnavAssessoria.jsp |
---|
New file |
0,0 → 1,14 |
<%@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" %> |
<%@ page import="pt.estgp.estgweb.web.Globals" %> |
<% |
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request); |
topNav.addNavPlace("/Welcome.do", "Home"); |
topNav.addNavPlace("/student.do" + Globals.PORTAL_ROLE_VIEW_STUDENT, "menu.alunos"); |
topNav.addNavPlace(null, "portal.paginas.alunos.assessoria"); |
%> |
<jsp:include page="/layout/topnav.jsp"/> |
/impl/src/web/public/portals/assessoria/assessoria.jsp |
---|
New file |
0,0 → 1,7 |
<%@ page import="jomm.web.utils.TopNav" %> |
<%@ page import="jomm.web.utils.NavPlaceServer" %> |
<%@ page import="pt.estgp.estgweb.web.Globals" %> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<jsp:include page="/public/portals/assessoria/assessoriaLinks.jsp"/> |
<jsp:include page="/public/portals/menuPortal.jsp"/> |
/impl/src/web/public/portals/assessoria/assessoriaLinks.jsp |
---|
New file |
0,0 → 1,10 |
<%@ page import="jomm.web.utils.TopNav" %> |
<%@ page import="pt.estgp.estgweb.web.Globals" %> |
<%@ page import="jomm.web.utils.NavPlaceServer" %> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<% |
TopNav topNav = NavPlaceServer.getInstance().createPortalMenuPlacesKey(request); |
topNav.setTitle("portal.paginas.alunos.assessoria"); |
String startLink = Globals.getStartLinkPortalMenu("layoutAA"); |
topNav.addNavPlace(startLink + "/exemplo.html", "portal.paginas.exemplo"); |
%> |
/impl/src/web/public/announcements/announcementsPortalLeft.jsp |
---|
31,16 → 31,24 |
<td> |
<div class="portalAnnouncementTop"> |
<div class="imageAnnouncementTop"> |
<%if(item.getSmallImage() != null){%><img alt="<%=item.getTitle()%>" src="<%=request.getContextPath()%>/imageStream/<%=item.getSmallImage().getId()%>"><%}%> |
<%if(item.getBigImage() != null){%><img alt="<%=item.getTitle()%>" src="<%=request.getContextPath()%>/imageStream/<%=item.getSmallImage().getId()%>"><%}%> |
</div> |
<div class="portalAnnouncement"> |
<logic:empty name="item" property="url"> |
<div class="portalAnnouncementTitle"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link></div> |
<div class="portalAnnouncementText"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.text}</html:link></div> |
<div class="portalAnnouncementText"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.textSummarySmall}</html:link></div> |
</logic:empty> |
<logic:notEmpty name="item" property="url"> |
<%if(!item.getHaveAllText()) |
{%> |
<div class="portalAnnouncementTitle"><html:link href="${item.url}">${item.title}</html:link></div> |
<div class="portalAnnouncementText"><html:link href="${item.url}">${item.text}</html:link></div> |
<div class="portalAnnouncementText"><html:link href="${item.url}">${item.textSummarySmall}</html:link></div> |
<%} |
else |
{%> |
<div class="portalAnnouncementTitle"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link></div> |
<div class="portalAnnouncementText"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.textSummarySmall}</html:link></div> |
<%}%> |
</logic:notEmpty> |
</div> |
</div> |
/impl/src/web/public/announcements/getFlashNews.jsp |
---|
23,12 → 23,21 |
<table class="container"> |
<tr> |
<td class="textContainer"> |
<h2> |
<html:link action="/loadAnnouncement?id=<%=announcementView.getId()%>&dispatch=load"><%=announcementView.getTitle()%></html:link> |
</h2> |
<p> |
<html:link action="/loadAnnouncement?id=<%=announcementView.getId()%>&dispatch=load"><%=announcementView.getTextSummary()%></html:link> |
</p> |
<%if(announcementView.getUrl()==null) |
{%> |
<h2><a href="<%=request.getContextPath()%>/loadAnnouncement.do?id=<%=announcementView.getId()%>&dispatch=load"><%=announcementView.getTitle()%></a></h2> |
<p><a href="<%=request.getContextPath()%>/loadAnnouncement.do?id=<%=announcementView.getId()%>&dispatch=load"><%=announcementView.getTextSummary()%></a></p> |
<%} |
else if(!announcementView.getHaveAllText()) |
{%> |
<h2><a href="<%=announcementView.getUrl()%>"><%=announcementView.getTitle()%></a></h2> |
<p><a href="<%=announcementView.getUrl()%>"><%=announcementView.getText()%></a></p> |
<%} |
else |
{%> |
<h2><a href="<%=request.getContextPath()%>/loadAnnouncement.do?id=<%=announcementView.getId()%>&dispatch=load"><%=announcementView.getTitle()%></a></h2> |
<p><a href="<%=request.getContextPath()%>/loadAnnouncement.do?id=<%=announcementView.getId()%>&dispatch=load"><%=announcementView.getTextSummary()%></a></p> |
<%}%> |
</td> |
<td class="imageContainer"> |
<%if(announcementView.getBigImage() != null){%><img alt="<%=announcementView.getTitle()%>" src="<%=request.getContextPath()%>/imageStream/<%=announcementView.getBigImage().getId()%>"><%}%> |
/impl/src/web/public/announcements/loadAnnouncement.jsp |
---|
7,18 → 7,25 |
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %> |
<jsp:useBean id="Announcement" type="pt.estgp.estgweb.domain.views.AnnouncementView" scope="request"/> |
<table class="box"> |
<tr> |
<th> |
${Announcement.title} |
</th> |
</tr> |
<tr> |
<td> |
<p> |
${Announcement.text} |
</p> |
</td> |
</tr> |
</table> |
<div class="pageSection"> |
<div class="sectionTitle"> |
<h2>${Announcement.title}</h2> |
</div> |
<div class="pageText"> |
<% |
if(Announcement.getBigImage() != null) |
{ |
%> |
<img align="left" alt="<%=Announcement.getTitle()%>" src="<%=request.getContextPath()%>/imageStream/<%=Announcement.getBigImage().getId()%>"> |
<% |
} |
else if(Announcement.getSmallImage() != null) |
{ |
%> |
<img align="left" alt="<%=Announcement.getTitle()%>" src="<%=request.getContextPath()%>/imageStream/<%=Announcement.getSmallImage().getId()%>"> |
<% |
} |
%> |
${Announcement.text} |
</div> |
</div> |
/impl/src/web/public/announcements/announcements.jsp |
---|
27,7 → 27,14 |
<h2><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link></h2> |
</logic:empty> |
<logic:notEmpty name="item" property="url"> |
<%if(!item.getHaveAllText()) |
{%> |
<h2><html:link href="${item.url}">${item.title}</html:link></h2> |
<%} |
else |
{%> |
<h2><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link></h2> |
<%}%> |
</logic:notEmpty> |
</li> |
</logic:equal> |
/impl/src/web/public/announcements/announcementsPortalRight.jsp |
---|
42,11 → 42,19 |
<div class="portalAnnouncement"> |
<logic:empty name="item" property="url"> |
<div class="portalAnnouncementTitle"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link></div> |
<div class="portalAnnouncementText"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.text}</html:link></div> |
<div class="portalAnnouncementText"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.textSummarySmall}</html:link></div> |
</logic:empty> |
<logic:notEmpty name="item" property="url"> |
<%if(!item.getHaveAllText()) |
{%> |
<div class="portalAnnouncementTitle"><html:link href="${item.url}">${item.title}</html:link></div> |
<div class="portalAnnouncementText"><html:link href="${item.url}">${item.text}</html:link></div> |
<div class="portalAnnouncementText"><html:link href="${item.url}">${item.textSummarySmall}</html:link></div> |
<%} |
else |
{%> |
<div class="portalAnnouncementTitle"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link></div> |
<div class="portalAnnouncementText"><html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.textSummarySmall}</html:link></div> |
<%}%> |
</logic:notEmpty> |
</div> |
</div> |
/impl/src/web/templates/templatePage.jsp |
---|
1,105 → 1,99 |
<%-- |
Created by IntelliJ IDEA. |
User: Fabio Velez |
Date: 19/Mar/2008 |
Time: 15:52:44 |
To change this template use File | Settings | File Templates. |
--%> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<div class="page"> |
<div class="pageHeader"> |
<h1>Titulo</h1> |
</div> |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<div class="pageContent"> |
<div class="pageHeader"> |
<img src="<%=request.getContextPath()%>/imgs/docente.gif"/> |
</div> |
<table class="pageColumnTable"> |
<tbody> |
<tr> |
<td class="pageColumn" width="50%"> |
<div class="pageBlock"> |
<h2>Serviços On-line</h2> |
<div class="listClean"> |
<ul> |
<li><a href="#">WEBmail</a></li> |
</ul> |
</div> |
</div> |
<div class="pageBlock"> |
<h2>Contactos</h2> |
<div class="listCircleWhite"> |
<ul> |
<li><a href="#">Contactos Gerais Estg</a></li> |
</ul> |
</div> |
</div> |
<div class="pageBlock"> |
<h2>Informação Académica</h2> |
<div class="listDecimal"> |
<ul> |
<li><a href="#">Calendário Escolar</a></li> |
</ul> |
</div> |
</div> |
</td> |
<td class="pageColumn" width="50%"> |
<div class="pageBlock"> |
<h2>Informação Académica</h2> |
<div class="listDisc"> |
<ul> |
<li><a href="#">Calendário Escolar</a></li> |
</ul> |
</div> |
</div> |
<div class="pageBlock"> |
<h2>Informação Académica</h2> |
<div class="listSquare"> |
<ul> |
<li><a href="#">Calendário Escolar</a></li> |
</ul> |
</div> |
</div> |
</td> |
</tr> |
</tbody> |
</table> |
<h1>Página do Nucleo de Engenharia</h1> |
<div class="section"> |
<h2>O que é a Engenharia?</h2> |
<p>Engenharia é a arte, a ciência e a técnica de bem conjugar os conhecimentos especializados |
(científicos) de uma dada área do saber com a sua viabilidade técnico-econômica, para produzir |
novas utilidades e/ou transformar a natureza, em conformidade com idéias bem planejadas. Já se |
disse que "Engenharia é tão-somente aplicação da física aliada ao bom-senso" |
[LUZ, Antônio Máximo Ribeiro da, Professor Emérito da UFMG (Belo Horizonte, MG, Brasil] |
e — com os mais recentes avanços da ciência e da tecnologia, aqui se o pode aperfeiçoar: |
Engenharia é aplicação prática dalgum conhecimento especializado aliado ao bom-senso.</p> |
</div> |
<p>Digno de nota é o fato de tradicionalmente as engenharias terem lidado apenas com objetos concretos, |
palpáveis. Modernamente, porém, esse cenário mudou e deu lugar ao trato também de entidades ou objetos |
abstratos, não-palpáveis. Tais são, por exemplo, as engenharias de custos, informática, de software, entre |
outras. Numa certa medida, não rigorosa, pode-se incluir nesse novo rol, também as engenharias do ambiente e |
genética, com as reservas que lhes são próprias. Toda engenharia, contudo, envolve certo grau de abstração.</p> |
<div class="section"> |
<h2>Areas da Engenharia</h2> |
<p>Várias são as especialidades/ramos de engenharia. Com o progresso das ciências e das tecnologias |
que lhes são associadas, mais e mais especialidades continuamente estão a surgir. Eis, a seguir, |
uma lista não-exaustiva das especialidades atuais de engenharia:</p> |
<div class="listDecimal"> |
<ul> |
<li>Engenharia Acústica</li> |
<li>Engenharia Aeroespacial</li> |
<li>Engenharia Aeronáutica</li> |
<li>Engenharia Aeroviária</li> |
<li><a href="http://pt.wikipedia.org/wiki/Engenharia_Agr%C3%ADcola">Engenharia Agrícola</a></li> |
<li><a href="http://pt.wikipedia.org/wiki/Engenharia_de_Agrimensura">Engenharia de Agrimensura</a></li> |
<li><a href="http://pt.wikipedia.org/w/index.php?title=Engenharia_Agron%C3%B4mica&action=edit&redlink=1">Engenharia Agronômica</a></li> |
<li><a href="http://pt.wikipedia.org/wiki/Engenharia_de_Alimentos">Engenharia de Alimentos</a></li> |
<li>Etc...</li> |
</ul> |
</div> |
</div> |
<div class="pageSection"> |
<div class="sectionTitle"> |
<h2>Titulo</h2> |
</div> |
<div class="pageText"> |
Aqui mete o texto.... |
dsdasdsa |
dsdas |
</div> |
<div class="section"> |
<h2>Ver Também</h2> |
<div class="listSquare"> |
<ul> |
<li><a href="http://pt.wikipedia.org/wiki/Ci%C3%AAncia">Ciência</a></li> |
<li><a href="http://pt.wikipedia.org/wiki/Modelos_f%C3%ADsicos">Modelos Fisicos</a></li> |
<li><a href="http://pt.wikipedia.org/wiki/Tecnologia">Tecnologia</a></li> |
<li><a href="http://pt.wikipedia.org/wiki/Toler%C3%A2ncia_%28engenharia%29">Tolerância</a></li> |
</ul> |
</div> |
</div> |
<table class="pageColumnTableSolid"> |
<tbody> |
<tr> |
<td>fdfdfdf</td> |
<td>sasasa</td> |
</tr> |
</tbody> |
</table> |
<div class="listClean"> |
<ul> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
</ul> |
</div> |
<div class="pageDefenitions"> |
<div class=defenitionsTitle> |
<h2>Titulo</h2> |
</div> |
<div class="defenitionsSubTitle"> |
<h3>Sub-Titulo-</h3> |
</div> |
<div class="pageBlock"> |
<div class="listClean"> |
<ul> |
<li>defenição.........</li> |
</ul> |
</div> |
</div> |
</div> |
</div> |
<div class="listCircleWhite"> |
<ul> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
</ul> |
</div> |
<div class="listDecimal"> |
<ul> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
</ul> |
</div> |
<div class="listDisc"> |
<ul> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
</ul> |
</div> |
<div class="listSquare"> |
<ul> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
</ul> |
</div> |
<img src=""/> |
/impl/src/web/templates/templatePageOriginal.jsp |
---|
New file |
0,0 → 1,54 |
<%@ page contentType="text/html;charset=UTF-8" language="java" %> |
<h1>Titulo Principal a Verde</h1> |
<div class="section"> |
<h2>Titulo da Secção</h2> |
<p>textotextotextotextotextotextotextotexto</p> |
</div> |
<div class="listClean"> |
<ul> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
<li><a href="#">Lista de Elemento Sem Estilo</a></li> |
</ul> |
</div> |
<div class="listCircleWhite"> |
<ul> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
<li><a href="#">Lista de Elementos Circulo Branco</a></li> |
</ul> |
</div> |
<div class="listDecimal"> |
<ul> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
<li><a href="#">Lista de Elementos Decimal</a></li> |
</ul> |
</div> |
<div class="listDisc"> |
<ul> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
<li><a href="#">Lista de Elementos Circulo Preto</a></li> |
</ul> |
</div> |
<div class="listSquare"> |
<ul> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
<li><a href="#">Lista de Elementos Quadrado</a></li> |
</ul> |
</div> |
<img src=""/> |
/impl/gen/java/pt/estgp/estgweb/domain/GenericUser.java |
---|
10,53 → 10,53 |
public abstract class GenericUser extends pt.estgp.estgweb.domain.DomainObject implements java.io.Serializable { |
private long id; |
private Date updateDate; |
private Date saveDate; |
private boolean superuser; |
private String name; |
private long id; |
private Date updateDate; |
private Date saveDate; |
private boolean superuser; |
private String name; |
public GenericUser() { |
} |
public GenericUser(Date saveDate, boolean superuser, String name) { |
this.saveDate = saveDate; |
this.superuser = superuser; |
this.name = name; |
this.saveDate = saveDate; |
this.superuser = superuser; |
this.name = name; |
} |
public long getId() { |
return this.id; |
} |
public void setId(long id) { |
this.id = id; |
} |
public Date getUpdateDate() { |
return this.updateDate; |
} |
public void setUpdateDate(Date updateDate) { |
this.updateDate = updateDate; |
} |
public Date getSaveDate() { |
return this.saveDate; |
} |
public void setSaveDate(Date saveDate) { |
this.saveDate = saveDate; |
} |
public boolean isSuperuser() { |
return this.superuser; |
} |
public void setSuperuser(boolean superuser) { |
this.superuser = superuser; |
} |
public String getName() { |
return this.name; |
} |
public void setName(String name) { |
this.name = name; |
} |
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/TesteDao.java |
---|
New file |
0,0 → 1,39 |
package pt.estgp.estgweb.domain.dao.impl; |
// Generated 9/Abr/2008 17:13:21 by Hibernate Tools 3.2.0.b9 |
import org.apache.log4j.Logger; |
/** |
* Home object for domain model class Teste. |
* @author Jorge Machado - Hibernate Tools |
*/ |
import jomm.dao.IDomainObjectDao; |
import jomm.dao.impl.AbstractDao; |
import pt.estgp.estgweb.domain.Teste; |
public class TesteDao extends AbstractDao<Teste> { |
//public class TesteDao extends AbstractDao implements IDomainObjectDao { |
private static final Logger log = Logger.getLogger(TesteDao.class); |
protected static TesteDao myInstance = null; |
protected TesteDao(){ |
super(); |
} |
public static TesteDao getInstance() { |
if (myInstance == null) |
myInstance = new TesteDao(); |
return myInstance; |
} |
protected Class getReferenceClass() { |
return Teste.class; |
} |
} |
/impl/gen/java/pt/estgp/estgweb/domain/Teste.java |
---|
New file |
0,0 → 1,69 |
package pt.estgp.estgweb.domain; |
// Generated 9/Abr/2008 17:13:19 by Hibernate Tools 3.2.0.b9 |
import java.util.Date; |
/** |
* Teste generated by hbm2java |
*/ |
public abstract class Teste extends pt.estgp.estgweb.domain.DomainObject implements java.io.Serializable { |
private long id; |
private Date updateDate; |
private Date saveDate; |
private String name; |
private String morada; |
public Teste() { |
} |
public Teste(Date saveDate, String name, String morada) { |
this.saveDate = saveDate; |
this.name = name; |
this.morada = morada; |
} |
public long getId() { |
return this.id; |
} |
public void setId(long id) { |
this.id = id; |
} |
public Date getUpdateDate() { |
return this.updateDate; |
} |
public void setUpdateDate(Date updateDate) { |
this.updateDate = updateDate; |
} |
public Date getSaveDate() { |
return this.saveDate; |
} |
public void setSaveDate(Date saveDate) { |
this.saveDate = saveDate; |
} |
public String getName() { |
return this.name; |
} |
public void setName(String name) { |
this.name = name; |
} |
public String getMorada() { |
return this.morada; |
} |
public void setMorada(String morada) { |
this.morada = morada; |
} |
} |
/impl/build.xml |
---|
1,4 → 1,4 |
<?xml version="1.0"?> |
<?xml version="1.0" encoding="utf-8"?> |
<project name="estgweb" basedir="." default="help"> |