Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 20 → Rev 32

/log.txt
New file
0,0 → 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
/impl/conf/language/MessageResources.properties
86,7 → 86,6
 
 
#Menus
 
site.title=Escola Superior de Tecnologia e Gestão
administration=Administração
superuser=Super Utilizador
99,8 → 98,9
announcements=Ultimas Notícias
courses=Cursos
mainAnnouncements=Destaques
staff.header=Informação para funcionários docentes e não docentes
staff=Docentes
 
 
#Mensagens Status
authentication.ok=Benvindo Fulano
logout.ok=Caro {0}, obrigado por usar o nosso serviço.
113,9 → 113,9
 
 
#Cursos
 
course.aa=Acessoria e Administração
 
 
 
 
 
/impl/conf/WEB-INF/struts/struts-default.xml
41,6 → 41,7
<action path="/Welcome" forward="page.welcome"/>
<action path="/StartAuthentication" forward="page.authentication"/>
<action path="/Logout" forward="/authenticate.do?dispatch=logout"/>
<action path="/StaffPage" forward="page.staff"/>
 
<!-- Errors -->
<action path="/errorNoCookies" forward="page.no.cookies"/>
/impl/conf/WEB-INF/struts/tiles-default.xml
14,7 → 14,7
<put name="header" value="/layout/header.jsp"/>
<put name="topnav" value="/layout/topnavempty.jsp" />
<put name="footer" value="/layout/footer.jsp" />
<put name="navigationMenu" value="/layout/navigationMenu.jsp"/>
<put name="navigationTop" value="/layout/navigationTop.jsp"/>
</definition>
 
<definition name="base.simple.definition" path="/layout/siteSimpleLayout.jsp">
101,7 → 101,12
<put name="title" value="ESTG" />
<put name="body" value="/public/index.jsp" />
</definition>
<definition name="page.staff" extends="base.layout1">
<put name="title" value="ESTG" />
<put name="body" value="/public/staff/index.jsp" />
</definition>
 
 
<!-- Autenticacao -->
<definition name="page.authentication" extends="base.layout1">
<put name="title" value="Authentication" />
/impl/conf/WEB-INF/web.xml
15,7 → 15,7
</filter>
<filter>
<filter-name>AdminFilter</filter-name>
<filter-class>pt.estgp.estgweb.web.filters.UrlStatFilter</filter-class>
<filter-class>pt.estgp.estgweb.web.filters.AdminFilter</filter-class>
</filter>
<filter>
<filter-name>Set-Character-Encoding</filter-name>
29,6 → 29,11
<filter-name>UrlStatFilter</filter-name>
<filter-class>pt.estgp.estgweb.web.filters.UrlStatFilter</filter-class>
</filter>
<filter>
<filter-name>RelativePathFilter</filter-name>
<filter-class>pt.estgp.estgweb.web.filters.RelativePathFilter</filter-class>
</filter>
 
<filter-mapping>
<filter-name>Set-Character-Encoding</filter-name>
<url-pattern>/*</url-pattern>
42,13 → 47,17
<url-pattern>/user/*</url-pattern>
</filter-mapping>
<filter-mapping>
<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>AdminFilter</filter-name>-->
<!--<url-pattern>/admin/*</url-pattern>-->
<!--</filter-mapping>-->
<filter-mapping>
<filter-name>AdminFilter</filter-name>
<url-pattern>/admin/*</url-pattern>
</filter-mapping>
<!---->
<!--SERVLETS-->
<servlet>
86,15 → 95,15
<servlet-name>WebProxy</servlet-name>
<servlet-class>pt.estgp.estgweb.web.WebProxy</servlet-class>
</servlet>
<!--<servlet>-->
<!--<servlet-name>HTTPProxy</servlet-name>-->
<!--<servlet-class>pt.estgp.estgweb.web.TmpStream</servlet-class>-->
<!--</servlet>-->
<!--<servlet>-->
<!--<servlet-name>FTPProxy</servlet-name>-->
<!--<servlet-class>pt.estgp.estgweb.web.FTPProxy</servlet-class>-->
<!--</servlet>-->
<servlet>
<servlet-name>HTTPProxy</servlet-name>
<servlet-class>pt.estgp.estgweb.web.TmpStream</servlet-class>
</servlet>
<servlet>
<servlet-name>FTPProxy</servlet-name>
<servlet-class>pt.estgp.estgweb.web.FTPProxy</servlet-class>
</servlet>
<servlet>
<servlet-name>LayoutProxy</servlet-name>
<servlet-class>pt.estgp.estgweb.web.LayoutProxy</servlet-class>
</servlet>
112,15 → 121,15
<servlet-name>WebProxy</servlet-name>
<url-pattern>/WebProxy</url-pattern>
</servlet-mapping>
<!--<servlet-mapping>-->
<!--<servlet-name>HTTPProxy</servlet-name>-->
<!--<url-pattern>/HTTPProxy</url-pattern>-->
<!--</servlet-mapping>-->
<!--<servlet-mapping>-->
<!--<servlet-name>FTPProxy</servlet-name>-->
<!--<url-pattern>/FTPProxy</url-pattern>-->
<!--</servlet-mapping>-->
<servlet-mapping>
<servlet-name>HTTPProxy</servlet-name>
<url-pattern>/HTTPProxy</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>FTPProxy</servlet-name>
<url-pattern>/FTPProxy</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>LayoutProxy</servlet-name>
<url-pattern>/proxy/*</url-pattern>
</servlet-mapping>
/impl/conf/app.properties
1,22 → 1,26
 
tmp.dir=@tmp.dir@
 
use.ldap=false
 
system.language=pt
#Session Settings
user.session.timeout.minutes=15
 
email.server=mail.estgp.pt
email.user=
email.password=
email.from=jmachado@estgp.pt
email.templates.dir=@email.templates.dir@
##################################################
##Proxy Servers
#If is an HTTP Server needs encoding config if FTP needs user pass config
server.ionline=ftp://www.global.estgp.pt
 
ionline.pass=baco
ionline.user=Baco_web
 
server.estgp=http://www.estgp.pt
server.estgp=http://www.estgp.pt/testes/nova_web
estgp.encoding=UTF-8
 
 
#Kinds of roles
################################################
## Kinds of roles
user.admin=admin
user.super=all
user.role.0=all
70,15 → 74,16
url.stat.ignore.extension.5=.png
url.stat.ignore.extension.6=.tif
url.stat.ignore.extension.7=.bmp
url.stat.ignore.extension.8=.swf
 
url.stat.ignore.prefix.1=/urlstat
 
#See java.text.SimpleDateFormat
urlstat.chart.week.days=EEE dd-MMM;
urlstat.chart.week.days=EEE dd-MMM
urlstat.chart.month.days=EEE dd-MMM
urlstat.chart.trimestre.days=dd-MMM-yy
urlstat.chart.semestre.days=MMM-yy
urlstat.chart.year.days=MMM-yy")),
urlstat.chart.year.days=MMM-yy
urlstat.chart.trimestre.months=MMM-yy
urlstat.chart.semestre.months=MMM-yy
urlstat.chart.year.months=MMM-yy
/impl/conf/template/email/sendPageFriend_pt.txt
New file
0,0 → 1,13
#Email to send to a friend
Olá caro amigo
 
O Seu amigo {0} sugere-lhe que visite este sítio em linha
 
{1}
 
Com os Melhores cumprimentos
 
---------------------------------------------
Escola Superior de Tecnologia e Gestão
Instituto Politécnico de Portalegre
http://www.estgp.pt
/impl/conf/template/email/sendPageFriend_en.txt
New file
0,0 → 1,13
#Email to send to a friend
Dear friend
 
Your friend {0} suggest to visit our web site
 
{1}
 
Best Regards
 
---------------------------------------------
Escola Superior de Tecnologia e Gestão
Instituto Politécnico de Portalegre
http://www.estgp.pt
/impl/conf/hibernate.cfg.xml
10,7 → 10,7
<property name="connection.password">@database.password@</property>
<property name="connection.autocommit">false</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.show.sql">@hibernate.show.sql@</property>
<property name="show_sql">@hibernate.show.sql@</property>
<property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.max_size">20</property>
/impl/src/java/jomm/utils/TemplateUtils.java
New file
0,0 → 1,87
package jomm.utils;
 
import pt.estgp.estgweb.utils.*;
 
import java.io.IOException;
import java.io.BufferedReader;
import java.io.StringReader;
import java.io.InputStreamReader;
import java.util.HashMap;
 
import org.apache.log4j.Logger;
 
/**
* @author Jorge Machado
* @date 20/Mar/2008
* @time 18:37:09
* @see jomm.utils
*/
public class TemplateUtils
{
private static final Logger logger = Logger.getLogger(TemplateUtils.class);
 
private static HashMap templates = null;
 
/**
* Check if file content is already in Cache
* See:
*
* #getNoCommentText method
* @param file to get from class loader
* @return file content
*/
public static synchronized String getOrLoadTemplate(String file)
{
if(templates == null)
templates = new HashMap();
 
String temp = (String) templates.get(file);
if(temp == null)
{
try{
temp = getNoCommentText(file);
//temp = temp.
templates.put(file, temp);
}
catch(Exception e)
{
logger.fatal(e);
return null;
}
}
return temp;
 
}
 
/**
* Reads a file from class loader and get all text in UTF-8 ignoring lines starting with #
* @param file to read
* @return a String with file content
* @throws IOException on error opening file
*/
public static String getNoCommentText(String file) throws IOException
{
// Read in template
BufferedReader reader = new BufferedReader(new InputStreamReader(TemplateUtils.class.getResourceAsStream(file),"UTF-8"));
StringBuffer contentBuffer = new StringBuffer();
 
boolean more = true;
 
while (more)
{
String line = reader.readLine();
 
if (line==null)
{
more = false;
}
else if(!line.startsWith("#"))
{
// Add non-comment lines to the content
contentBuffer.append(line);
contentBuffer.append("\n");
}
}
return contentBuffer.toString();
}
}
/impl/src/java/jomm/dao/utils/HibernateUtils.java
4,6 → 4,7
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.classic.Session;
import org.apache.log4j.Logger;
 
import java.sql.SQLException;
 
14,6 → 15,7
public class HibernateUtils implements Runnable{
 
// private static Session session;
private static final Logger logger = Logger.getLogger(HibernateUtils.class);
private static final SessionFactory sessionFactory;
 
static
25,9 → 27,10
sessionFactory = config.buildSessionFactory();
// session = sessionFactory.openSession();
}
catch (Throwable ex)
catch (Throwable e)
{
throw new ExceptionInInitializerError(ex);
logger.fatal(e,e);
throw new ExceptionInInitializerError(e);
}
}
 
/impl/src/java/openldap/Test.java
11,22 → 11,36
{
public static void main(String[] args) throws Exception
{
System.out.println(LdapManagerFactory.getLdapManager().login("a8824","21286"));
HashMap map = LdapManagerFactory.getLdapManager().getUserInfo("jmachado");
//System.out.println(LdapManagerFactory.getLdapManager().login("a8824","21286"));
HashMap map = LdapManagerFactory.getLdapManager().getUserInfo("a8822");
Set s = map.entrySet();
Iterator iter = s.iterator();
while(iter.hasNext())
/* while(iter.hasNext())
{
Map.Entry e = (Entry) iter.next();
System.out.println(e.getKey() + ":" + e.getValue());
}
map = LdapManagerFactory.getLdapManager().getUserInfo("a8822");
s = map.entrySet();
iter = s.iterator();
iter = s.iterator();*/
int iterNumber=0;
String[] messageBrokenDot=null;
String[] spliters={",","="};
 
while(iter.hasNext())
{
Map.Entry e = (Entry) iter.next();
System.out.println(e.getKey() + ":" + e.getValue());
if(iterNumber==3)
{
messageBrokenDot=e.getValue().toString().split(spliters[0]);
}
iterNumber++;
//System.out.println(e.getKey() + ":" + e.getValue());
}
for (int i = 0 ; i < iterNumber ; i++) {
// System.out.println("->" + messageBrokenDot[i].split(spliters[1]));
}
 
}
}
/impl/src/java/pt/estgp/estgweb/utils/Email.java
New file
0,0 → 1,101
package pt.estgp.estgweb.utils;
 
import jomm.utils.TemplateUtils;
 
import javax.mail.*;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.InternetAddress;
import java.util.Properties;
import java.util.List;
import java.util.ArrayList;
import java.text.MessageFormat;
 
import pt.estgp.estgweb.Globals;
 
/**
* @author Jorge Machado
* @date 20/Mar/2008
* @time 18:32:21
* @see pt.estgp.estgweb.utils
*/
public class Email
{
public static String EMAIL_TEMPLATES_PATH = "/template/email";
 
private String subject;
private List<String> recipients;
private String from;
private String emailTemplateName;
private List<String> arguments;
 
 
public Email(String subject, List<String> recipients, String from, String mailTemplateName, List<String> arguments)
{
this.subject = subject;
this.recipients = recipients;
this.from = from;
this.emailTemplateName = mailTemplateName;
this.arguments = arguments;
}
 
/**
* Sends the email.
*
* @throws javax.mail.MessagingException if there was a problem sending the mail.
*/
public void send()
throws MessagingException
{
 
// Set up properties for mail session
Properties props = System.getProperties();
props.put("mail.smtp.host", Globals.EMAIL_SERVER_HOST);
 
// Get session
Session session = Session.getDefaultInstance(props, null);
 
// Create message
MimeMessage message = new MimeMessage(session);
 
// Set the recipients of the message
for (String recipient : recipients) {
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(recipient));
}
String content = TemplateUtils.getOrLoadTemplate(EMAIL_TEMPLATES_PATH + "/" + emailTemplateName);
// Format the mail message
String fullMessage = MessageFormat.format(content, arguments.toArray());
 
message.setFrom(new InternetAddress(from));
message.setSubject(subject);
message.setText(fullMessage);
 
// if (replyTo != null)
// {
// Address[] replyToAddr = new Address[1];
// replyToAddr[0] = new InternetAddress(replyTo);
// message.setReplyTo(replyToAddr);
// }
System.out.println(fullMessage);
Transport.send(message);
}
 
public static void main(String[]args)
{
List<String> recipients = new ArrayList<String>();
recipients.add("jmachado@estgp.pt");
 
List<String> arguments = new ArrayList<String>();
arguments.add("João Pedro");
arguments.add("http://www.estgp.pt/teste");
Email email = new Email("assunto de teste",recipients,Globals.SYSTEM_EMAIL_BOX,"sendPageFriend_en.txt",arguments);
try {
email.send();
}
catch (MessagingException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
 
}
/impl/src/java/pt/estgp/estgweb/Globals.java
19,4 → 19,6
public static final String USER_SESSION_KEY = "USER_SESSION_KEY";
public static final List<String> AUTOMATIC_VALIDATION_ROLES = ConfigProperties.getListValues("announcements.automatic.validation.role");
public static final String TMP_DIR = ConfigProperties.getProperty("tmp.dir");
public static final String EMAIL_SERVER_HOST = ConfigProperties.getProperty("email.server");
public static final String SYSTEM_EMAIL_BOX = ConfigProperties.getProperty("email.from");
}
/impl/src/java/pt/estgp/estgweb/services/users/UpdateUserSessionService.java
37,7 → 37,6
DaoFactory.getUserSessionDaoImpl().reattach(userSession);
if(removeList != null)
{
 
if(userSession.getObjects() != null)
{
Iterator<SessionObject> iter = userSession.getObjects().iterator();
53,6 → 52,11
}
DaoFactory.getSessionObjectDaoImpl().evictAndDelete(removeList);
}
// if(userSession.getObjects() != null)
// for(SessionObject o: userSession.getObjects())
// {
// DaoFactory.getSessionObjectDaoImpl().saveOrUpdate(o);
// }
}
 
 
/impl/src/java/pt/estgp/estgweb/services/email/SendUrl2FriendService.java
New file
0,0 → 1,17
package pt.estgp.estgweb.services.email;
 
import java.util.List;
 
/**
* @author Jorge Machado
* @date 20/Mar/2008
* @time 18:31:00
* @see pt.estgp.estgweb.services.email
*/
public class SendUrl2FriendService
{
public boolean sendEmail(String url, String from, List<String> recipients)
{
return false;
}
}
/impl/src/java/pt/estgp/estgweb/services/authenticate/AuthenticateService.java
89,3 → 89,5
return u;
}
}
 
 
/impl/src/java/pt/estgp/estgweb/services/urlstat/UrlStatService.java
102,7 → 102,7
AbstractDao.getCurrentSession().beginTransaction();
HashMap<String,UrlStatFilter.IntegerContainer> map = new HashMap<String,UrlStatFilter.IntegerContainer>();
UrlStatFilter.IntegerContainer ic = new UrlStatFilter.IntegerContainer(3);
map.put("/teste2",ic);
map.put("/proxy/layout4/estgp/escola/EstruturaOrganizativa/CCientifico.asp",ic);
MyCalendar now = new MyCalendar();
MyCalendar c = new MyCalendar(2003,1,1,11,11,11);
Random r = new Random(now.getTimeInMillis());
/impl/src/java/pt/estgp/estgweb/filters/filters/Session.java
7,6 → 7,7
import pt.estgp.estgweb.domain.dao.DaoFactory;
import pt.estgp.estgweb.utils.ConfigProperties;
import pt.estgp.estgweb.Globals;
import pt.estgp.estgweb.services.users.UpdateUserSessionService;
import pt.estgp.estgweb.filters.chains.FlowFilter;
import pt.utl.ist.berserk.ServiceRequest;
import pt.utl.ist.berserk.ServiceResponse;
15,6 → 16,8
 
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Set;
 
import org.hibernate.ObjectNotFoundException;
import org.apache.log4j.Logger;
66,6 → 69,9
}
else
{
Set<SessionObject> sessionObjects = userSession.getObjects();
DaoFactory.getSessionObjectDaoImpl().delete(sessionObjects);
userSession.setObjects(null);
userSession.reset();
}
userSession.setSaveDate(new Date());
/impl/src/java/pt/estgp/estgweb/web/WebProxy.java
37,6 → 37,7
String path = (String) request.getAttribute("path");
String server = (String) request.getAttribute("server");
String useOutputStream = (String) request.getAttribute("useOutputStream");
String encoding = (String) request.getAttribute("encoding");
logger.info("server:" + server);
logger.info("path:" + path);
if(path != null)
66,7 → 67,7
{
while((readedBytes = stream.read(buf)) > 0)
{
String s = new String(buf,0,readedBytes,"ISO-8859-1");
String s = new String(buf,0,readedBytes,encoding);
response.getWriter().write(s);
}
}
/impl/src/java/pt/estgp/estgweb/web/LayoutController.java
49,6 → 49,8
String server = ConfigProperties.getProperty("server." + serverParameter);
 
 
 
 
if(serverParameter== null || server == null || server.length()==0 || path == null || layout == null)
throw new FileNotFoundException("url not found for server:" + server + " and path:" + path);
 
73,6 → 75,8
}
else if(path.endsWith("html") || path.endsWith("htm") || path.endsWith("shtml") || path.endsWith("asp") || path.endsWith("jsp") || path.endsWith("aspx") || path.endsWith("/"))
{
String encoding = ConfigProperties.getProperty(serverParameter + ".encoding");
request.setAttribute("encoding",encoding);
return mapping.findForward(layout);
}
else
/impl/src/java/pt/estgp/estgweb/web/controllers/announcements/AnnouncementsController.java
39,6 → 39,7
 
private static final Logger logger = Logger.getLogger(AnnouncementsController.class);
 
private static final String TARGET_ROLES_KEY = "targetRoles";
public ActionForward save(ActionMapping mapping,
ActionForm form ,
55,7 → 56,7
Announcement a = DomainObjectFactory.createAnnouncementImpl();
UserSessionImpl userSession = null;
userSession = (UserSessionImpl) request.getAttribute(Globals.USER_SESSION_KEY);
List<String> roles = (List<String>) userSession.get("targetRoles");
List<String> roles = (List<String>) userSession.get(TARGET_ROLES_KEY);
announcementsForm.getAnnouncementView().setTargetRoles(roles);
announcementsForm.getAnnouncementView().persistViewInObject(a);
IServiceManager sm = ServiceManager.getInstance();
109,7 → 110,7
else
{
UserSessionImpl userSession = (UserSessionImpl) request.getAttribute(Globals.USER_SESSION_KEY);
List<String> roles = (List<String>) userSession.get("targetRoles");
List<String> roles = (List<String>) userSession.get(TARGET_ROLES_KEY);
AnnouncementView a = announcementsForm.getAnnouncementView();
a.setTargetRoles(roles);
IServiceManager sm = ServiceManager.getInstance();
140,7 → 141,7
try
{
UserSessionImpl sess = (UserSessionImpl) UserSessionProxy.loadUserSession(request);
sess.clearObjects();
sess.remove(TARGET_ROLES_KEY);
sess.serialize(request);
return mapping.getInputForward();
}
177,7 → 178,7
announcementsForm.setStartDate(DatesUtils.getStringFromDate(aV.getStartDate()));
announcementsForm.setExpireDate(DatesUtils.getStringFromDate(aV.getExpireDate()));
announcementsForm.setSelectedRoles(aV.getTargetRoles());
sess.put("targetRoles", (Serializable) aV.getTargetRoles());
sess.put(TARGET_ROLES_KEY, (Serializable) aV.getTargetRoles());
sess.serialize(request);
return mapping.getInputForward();
}
204,14 → 205,14
{
AnnouncementsForm announcementsForm = (AnnouncementsForm) form;
UserSessionImpl sess = (UserSessionImpl) UserSessionProxy.loadUserSession(request);
List<String> l = (List<String>) sess.get("targetRoles");
List<String> l = (List<String>) sess.get(TARGET_ROLES_KEY);
if(l == null)
l = new ArrayList<String>();
 
if(!isInTargetRoles(announcementsForm.getTargetRolesStr(),l))
{
l.add(announcementsForm.getTargetRolesStr());
sess.put("targetRoles", (Serializable) l);
sess.put(TARGET_ROLES_KEY, (Serializable) l);
sess.serialize(request);
}
else
242,12 → 243,12
{
AnnouncementsForm announcementsForm = (AnnouncementsForm) form;
UserSessionImpl sess = (UserSessionImpl) request.getAttribute(Globals.USER_SESSION_KEY);
List<String> l = (List<String>) sess.get("targetRoles");
List<String> l = (List<String>) sess.get(TARGET_ROLES_KEY);
 
if(l != null)
{
l.remove(announcementsForm.getRole());
sess.put("targetRoles", (Serializable) l);
sess.put(TARGET_ROLES_KEY, (Serializable) l);
sess.serialize(request);
}
}
/impl/src/java/pt/estgp/estgweb/web/controllers/authenticate/AuthenticateController.java
87,7 → 87,11
Object[] args = new Object[]{};
//to send good by message
request.setAttribute("username",userSession.getUser().getUsername());
request.setAttribute("name",userSession.getUser().getName());
if(userSession.getUser().getName()!=null)
request.setAttribute("name",userSession.getUser().getName());
else
request.setAttribute("name",userSession.getUser().getUsername());
 
userSession = (UserSession) sm.execute(RequestUtils.getRequester(request),"Logout",args);
request.setAttribute(Globals.USER_SESSION_KEY,userSession);
return mapping.findForward("logout");
/impl/src/java/pt/estgp/estgweb/web/filters/UrlStatFilter.java
91,13 → 91,13
month = c.getMonth();
year = c.getYear();
 
String relativePath = hrequest.getPathInfo();
String relativePath = hrequest.getServletPath();
if(relativePath == null)
relativePath = "";
 
if(hrequest.getServletPath() != null && hrequest.getServletPath().length() > 0)
if(hrequest.getPathInfo() != null && hrequest.getPathInfo().length() > 0)
{
relativePath += hrequest.getServletPath();
relativePath += hrequest.getPathInfo();
}
 
for(String ignore: ignoreEstensions)
112,8 → 112,6
if(hrequest.getQueryString() != null && hrequest.getQueryString().length() > 0)
relativePath += "?" + hrequest.getQueryString();
 
hrequest.setAttribute(Globals.ACTUAL_RELATIVE_PATH,relativePath);
 
for(String ignore: ignorePrefixs)
{
if(relativePath.startsWith(ignore))
/impl/src/java/pt/estgp/estgweb/web/filters/RelativePathFilter.java
New file
0,0 → 1,58
package pt.estgp.estgweb.web.filters;
 
import org.apache.log4j.Logger;
import pt.estgp.estgweb.Globals;
 
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
 
/**
*
* @author Jorge Machado
*/
 
public class RelativePathFilter implements Filter {
 
public RelativePathFilter()
{
}
 
public void init(FilterConfig config)
{
 
}
 
/**
*
* @param request The servlet request we are processing
* @param chain The filter chain we are processing
*
* @exception java.io.IOException if an input/output error occurs
* @exception javax.servlet.ServletException if a servlet error occurs
*/
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();
}
 
if(hrequest.getQueryString() != null && hrequest.getQueryString().length() > 0)
relativePath += "?" + hrequest.getQueryString();
 
hrequest.setAttribute(Globals.ACTUAL_RELATIVE_PATH,relativePath);
chain.doFilter(request,response);
}
 
public void destroy()
{
// Nothing
}
}
/impl/src/java/pt/utl/ist/berserk/storage/hibernate/HibernateTransactionBroker.java
1,17 → 1,14
package pt.utl.ist.berserk.storage.hibernate;
 
import jomm.dao.utils.HibernateUtils;
import org.hibernate.LockMode;
import org.hibernate.Session;
import org.hibernate.Transaction;
import pt.utl.ist.berserk.storage.ITransactionBroker;
import pt.utl.ist.berserk.storage.exceptions.StorageException;
import pt.utl.ist.berserk.storage.empty.TransactionBrokerEmpty;
 
import java.util.List;
 
import jomm.dao.impl.AbstractDao;
import jomm.dao.utils.HibernateUtils;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.LockMode;
 
/**
* Creates an hibernate transaction
*
46,7 → 43,9
}
public void abortTransaction() throws StorageException
{
HibernateUtils.getCurrentSession().getTransaction().rollback();
Session sess = HibernateUtils.getCurrentSession();
Transaction t = sess.getTransaction();
t.rollback();
}
public void lockRead(List list) throws StorageException
{
/impl/src/java/pt/utl/ist/berserk/logic/serviceManager/delegateGenerator/ServiceDelegate.java
119,7 → 119,7
}
 
/**
* @param string
 
* @param method
*/
private void generateBody(String serviceName, MethodDeclaration method)
/impl/src/doc/Proposta de ProjectoBACO.doc
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/impl/src/doc/estgweb.eap
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/impl/src/doc/planoTrabalho.xls
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/impl/src/doc/processos.xsd
New file
0,0 → 1,144
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 sp1 (http://www.altova.com) by jmachado (casa) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="process">
<xs:annotation>
<xs:documentation>Process element describing any organization workflow</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element name="controlPoints">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="controlPoint" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="joinPoints" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="joinPoint" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="forkPoints" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="forkPoint" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="tasks">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="task" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="startControlPointId" type="xs:integer"/>
</xs:sequence>
<xs:attribute name="name"/>
<xs:attribute name="unique" type="xs:boolean"/>
</xs:complexType>
</xs:element>
<xs:element name="task">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="arguments" minOccurs="0"/>
<xs:element ref="transition" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string"/>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="transition">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="guardConditions" minOccurs="0"/>
<xs:choice>
<xs:element name="forkPointId" type="xs:integer"/>
<xs:element name="joinPointId" type="xs:integer"/>
<xs:element name="controlPointId" type="xs:integer"/>
<xs:element name="taskId" type="xs:integer"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="targetProcessName" type="xs:integer"/>
<xs:attribute name="targetProcessID" type="xs:integer"/>
</xs:complexType>
</xs:element>
<xs:element name="guardConditions">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:choice maxOccurs="unbounded">
<xs:element name="user" type="xs:string"/>
<xs:element name="decision" type="xs:string"/>
<xs:element name="role" type="xs:string"/>
<xs:element name="startDate" type="xs:date"/>
<xs:element name="expireDate" type="xs:date"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="controlPoint">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="transition" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute name="unique" type="xs:boolean"/>
</xs:complexType>
</xs:element>
<xs:element name="forkPoint">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="transition" minOccurs="2" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="joinPoint">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element ref="transition"/>
</xs:sequence>
<xs:attribute name="tokens" type="xs:integer"/>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="arguments">
<xs:complexType>
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
<xs:element name="input" type="argumentType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="output" type="argumentType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="argumentType">
<xs:sequence>
<xs:element ref="annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="name"/>
<xs:attribute name="type"/>
</xs:complexType>
<xs:element name="annotation">
<xs:complexType>
<xs:sequence>
<xs:element name="author" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="appInfo" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="documentation" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
/impl/src/hbm/pt/estgp/estgweb/domain/UrlStat.hbm.xml
17,8 → 17,8
<property name="description" type="text"/>
<property name="totalClicks" type="integer"/>
<property name="status" type="boolean"/>
<set name="years" order-by="year asc" lazy="true" cascade="all">
<key column="relativePathId"/>
<set name="years" order-by="year asc" lazy="true" cascade="all" inverse="true">
<key column="relativePath"/>
<one-to-many class="pt.estgp.estgweb.domain.UrlStatYear"/>
</set>
<subclass name="pt.estgp.estgweb.domain.UrlStatImpl" discriminator-value="UrlStatImpl"/>
/impl/src/hbm/pt/estgp/estgweb/domain/UrlStatYear.hbm.xml
16,7 → 16,7
<timestamp name="updateDate" unsaved-value="null"/>
<property name="saveDate" type="timestamp"/>
<property name="totalClicks" type="integer"/>
<set name="months" order-by="month asc" lazy="true" cascade="all">
<set name="months" order-by="month asc" lazy="true" cascade="all" inverse="true">
<key>
<column name="year"/>
<column name="relativePath"/>
/impl/src/hbm/pt/estgp/estgweb/domain/UserSession.hbm.xml
18,8 → 18,8
<property name="name" type="string"/>
<property name="username" type="string"/>
<many-to-one name="user" class="pt.estgp.estgweb.domain.User" outer-join="true"/>
<set name="objects" cascade="all"><!--lazy="true">-->
<key column="cookieId"/>
<set name="objects" cascade="all" inverse="true"><!--lazy="true">-->
<key column="cookie"/>
<one-to-many class="pt.estgp.estgweb.domain.SessionObject"/>
</set>
<subclass name="pt.estgp.estgweb.domain.UserSessionImpl" discriminator-value="UserSessionImpl"/>
/impl/src/hbm/pt/estgp/estgweb/domain/UrlStatMonth.hbm.xml
20,7 → 20,7
<property name="saveDate" type="timestamp"/>
<property name="date" type="date"/>
<property name="totalClicks" type="integer"/>
<set name="days" order-by="day asc" lazy="true" cascade="all">
<set name="days" order-by="day asc" lazy="true" cascade="all" inverse="true">
<key>
<column name="month"/>
<column name="year"/>
/impl/src/hbm/pt/estgp/estgweb/domain/SessionObject.hbm.xml
10,7 → 10,9
<composite-id name="id" class="pt.estgp.estgweb.domain.SessionObjectId">
<meta attribute="scope-class">public</meta>
<key-property name="keyId" type="string" column="keyId" length="150"/>
<key-many-to-one name="userSession" class="pt.estgp.estgweb.domain.UserSession"/>
<key-many-to-one name="userSession" class="pt.estgp.estgweb.domain.UserSession">
<column name="cookie"/>
</key-many-to-one>
</composite-id>
<discriminator column="discrimitator"/>
<timestamp name="updateDate" unsaved-value="null"/>
/impl/src/web/css/style.css
20,11 → 20,11
BACKGROUND-COLOR: white
}
 
#page
/*#page
{
LEFT: 0;
WIDTH: 100%
}
} */
 
TD#leftPage
{
79,15 → 79,235
{
VERTICAL-ALIGN: top
}
/****************************Text Size*************************************************/
 
TABLE .indexPage
h1
{
font-size:14pt;
}
h2
{
font-size:12pt;
}
 
/*************************************************************************************/
 
/*****************************Portal Page Template************************************/
.portal
{
}
 
.header h1
{
font-size:20px;
color:#FFFFFF;
background-color:#8EC73F;
padding-left:10px;
padding-right:10px;
}
 
.portalContent
{
padding-left:10px;
}
 
.block P
{
font-weight:bold;
}
 
.block UL
{
LIST-STYLE-TYPE: none;
padding:0;
}
 
.block a:link
{
color:#4d4d4d;
text-decoration:none;
}
 
.block a:visited
{
color:#4d4d4d;
text-decoration:none;
}
 
.block a:hover
{
color:#8EC73F;
text-decoration:underline;
}
/**********************************************************************************/
 
/****************************** Standard Page Template ***************************/
.page,.pageText
{
font-size :11.5pt;
}
 
.page P
{
}
 
.page h1,.pageHeader h1
{
font-size:15pt;
}
 
.page h2,.sectionTitle h2
{
font-size:13pt;
font-weight:bold;
}
 
.page h3,.sectionTitle h3
{
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;
padding:0;
}
 
.listCircleWhite UL/*Lista circulo branco*/
{
LIST-STYLE-TYPE: circle;
}
 
.listDecimal UL/*Lista decimal*/
{
LIST-STYLE-TYPE: decimal;
}
 
.listDisc UL/*Lista circulo preto*/
{
LIST-STYLE-TYPE: disc;
}
 
.listSquare UL/*Lista quadrado preto*/
{
LIST-STYLE-TYPE: square;
}
 
.pageSection
{
}
 
.sectionTitle h2
{
color:#000000;
}
 
.pageText,.pageBlock a,.pageBlock a:visited
{
color:#4d4d4d;
text-decoration:none;
}
/*********************************************************************************/
 
/******************************* Index Page***************************************/
.indexPage Table
{
width:100%;
border-collapse: collapse;
}
/*************************************************/
 
/**************** Left Menu Style****************/
.flashTopNews
{
text-align :right;
}
 
.flashTopNews tr
{
background-color:#4d4d4d;
}
 
.flashTopNews td,.flashCenterNews td,.flashBottomNews td
{
vertical-align:top;
}
 
.flashCenterNews
{
border-top-style: dotted;
border-top-color:#DEDEDD;
}
 
.textNewsTop
{
text-align :left;
}
 
.textNewsCenter,.textNewsBottom
{
padding-top :10px;
}
 
.titleNewsTop a:link,.titleNewsCenter a:link,.titleNewsBottom a:link
{
color:#8EC73F;
font-weight:bold;
}
 
.titleNewsCenter,.descriptionNewsCenter,.descriptionNewsBottom
{
text-decoration:underline;
}
 
.descriptionNewsCenter a:link,.descriptionNewsCenter a:visited,.descriptionNewsBottom a:link,.descriptionNewsBottom a:visited
{
color:#4d4d4d;
}
 
.descriptionNewsTop a:link,.descriptionNewsTop a:visited
{
color:#FFFFFF;
}
 
.imageNewsCenter
{
width:50px;
}
 
.titleNewsTop,.titleNewsCenter,.titleNewsBottom,.descriptionNewsCenter,.descriptionNewsBottom,.descriptionNewsTop
{
padding-left :10px;
}
 
/*********************************************************************************/
 
 
/*****************************Left Menu Style************************************/
 
#leftMenuModule LI A:link
{
PADDING-RIGHT: 0;
133,7 → 353,7
FONT-SIZE: 14px;
LIST-STYLE-TYPE: none;
}
/************************************************/
/**********************************************************************************/
 
/****************** topnav **********************
 
452,6 → 672,13
 
/**************************************************************************************/
 
/*************************Staff Links Structure***************************************/
.staffLinks P
{
font-weight :bold;
}
/*************************************************************************************/
 
/************************Announcements Structure*********************************/
 
.lastAnnouncementsModule td
/impl/src/web/layout/navigationMenu.jsp
File deleted
/impl/src/web/layout/layout1.jsp
34,15 → 34,15
<div id="header">
<tiles:insert attribute="header"/>
</div>
<table id="page">
<table >
<tr>
<td colspan="2"><tiles:insert attribute="navigationMenu"/></td>
<td colspan="2"><tiles:insert attribute="navigationTop"/></td>
</tr>
<tr>
<td id="leftPage">
<tiles:insert attribute="navigation" />
</td>
<td id="content1">
<td>
<tiles:insert attribute="topnav"/>
<tiles:insert attribute="body" />
</td>
/impl/src/web/layout/layout2.jsp
36,7 → 36,7
</div>
<table id="page">
<tr>
<td><tiles:insert attribute="navigationMenu"/></td>
<td><tiles:insert attribute="navigationTop"/></td>
</tr>
<tr>
<td id="content2">
/impl/src/web/layout/navigationLeftMenu.jsp
19,7 → 19,7
<a href="http://www.estgp.pt/Alunos/HomeAlunos.asp">Alunos</a>
</li>
<li>
<a href="http://www.estgp.pt/Alunos/HomeAlunos.asp">Docentes</a>
<html:link action="/StaffPage"><bean:message key="staff"/></html:link>
</li>
<li>
<a href="http://www.estgp.pt/Alunos/HomeAlunos.asp">Futuros Alunos</a>
/impl/src/web/layout/layout3.jsp
36,7 → 36,7
</div>
<table id="page">
<tr>
<td colspan="2"><tiles:insert attribute="navigationMenu"/></td>
<td colspan="2"><tiles:insert attribute="navigationTop"/></td>
</tr>
<tr>
<td id="content3">
/impl/src/web/layout/layout4.jsp
38,7 → 38,7
</div>
<table id="page">
<tr>
<td colspan="3"><tiles:insert attribute="navigationMenu"/></td>
<td colspan="3"><tiles:insert attribute="navigationTop"/></td>
</tr>
<tr>
<td id="leftPage">
/impl/src/web/layout/navigationLeft.jsp
8,7 → 8,7
 
<div id="leftPagePosition">
<%--ANONIMOUS MENUS--%>
<jsp:include page="/layout/navigationTop.jsp"/>
<jsp:include page="/layout/navigationLeftAdmin.jsp"/>
<jsp:include page="/layout/navigationLeftMenu.jsp"/>
 
<%-- USER MENUS--%>
/impl/src/web/layout/navigationCourse.jsp
9,7 → 9,7
 
<div id="latnavLeft">
 
<jsp:include page="/layout/navigationTop.jsp"/>
<jsp:include page="/layout/navigationLeftAdmin.jsp"/>
 
<p><bean:message key="courses"/></p>
<ul>
/impl/src/web/layout/navigationTop.jsp
1,30 → 1,78
<%@ page contentType="text/html; charset=UTF-8" language="java"%>
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 13/Mar/2008
Time: 15:28:29
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<%@ taglib uri="/WEB-INF/tlds/estgweb.tld" prefix="estgweb" %>
<div id="leftMenuModule">
<div id="linkTypeOne">
<ul>
<li>
<html:link action="/Welcome"><bean:message key="Home"/></html:link>
</li>
 
<estgweb:isNotAuthenticated>
<li>
<html:link action="/StartAuthentication"><bean:message key="authenticate"/></html:link>
</li>
</estgweb:isNotAuthenticated>
 
 
<estgweb:isAuthenticated>
<li>
<html:link action="/Logout"><bean:message key="logout"/></html:link>
</li>
</estgweb:isAuthenticated>
</ul>
</div>
<div>
<ul id="menu_dropdown" class="menubar">
<li class="submenu"><a href="#">Apresentação</a>
<div class="shadow ">
<ul class="menu">
<li><a href="#">Mensagem do Presidente</a></li>
<li><a href="#">A ESTG e a sua missão</a></li>
<li><a href="#">História</a></li>
<li><a href="#">Localização</a></li>
<li><a href="#">Factos e números</a></li>
<li><a href="#">A ESTG em Fotografias</a></li>
</ul>
</div>
</li>
<li class="submenu"><a href="#">Organização</a>
<div class="shadow ">
<ul class="menu">
<li><a href="#">Assembleia de Representantes</a></li>
<li><a href="#">Conselho Directivo</a></li>
<li><a href="#">Conselho Ciêntifico</a></li>
<li><a href="#">Conselho Pedagógico</a></li>
</ul>
</div>
</li>
<li class="submenu"><a href="#">Áreas</a>
<div class="shadow ">
<ul class="menu">
<li><a href="#">Engenharias</a></li>
<li><a href="#">Ciências Empresariais</a></li>
<li><a href="#">Ciências Humanas</a></li>
<li><a href="#">Design</a></li>
</ul>
</div>
</li>
<li class="submenu"><a href="#">Ensino</a>
<div class="shadow ">
<ul class="menu">
<li><a href="#">Cursos</a></li>
<li><a href="#">Mestrados</a></li>
<li><a href="#">Pós Graduações</a></li>
<li><a href="#">Cet´s</a></li>
<li><a href="#">Formação TIC</a></li>
<li><a href="#">Formação CTOC</a></li>
<li><a href="#">Acções de Formação de Curta Duração</a></li>
</ul>
</div>
</li>
<li class="submenu"><a href="#">I&D</a>
<div class="shadow ">
<ul class="menu">
<li><a href="#">OTIC-INOVAA</a></li>
<li><a href="#">POLIEMPRIENDE</a></li>
<li><a href="#">Gab. Empreendedorismo</a></li>
<li><a href="#">SGQ</a></li>
<li><a href="#">Protocolos com o Exterior</a></li>
<li><a href="#">LAQI Lab. Anal. Qui. e Industriais</a></li>
</ul>
</div>
</li>
</ul>
<estgweb:pageUrlStat><img src="<%=request.getContextPath()%>/imgs/minichart.gif"></estgweb:pageUrlStat>
</div>
 
/impl/src/web/layout/navigationLeftAdmin.jsp
New file
0,0 → 1,30
<%@ 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" %>
<%@ 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" %>
<%@ taglib uri="/WEB-INF/tlds/estgweb.tld" prefix="estgweb" %>
<div id="leftMenuModule">
<div id="linkTypeOne">
<ul>
<li>
<html:link action="/Welcome"><bean:message key="Home"/></html:link>
</li>
 
<estgweb:isNotAuthenticated>
<li>
<html:link action="/StartAuthentication"><bean:message key="authenticate"/></html:link>
</li>
</estgweb:isNotAuthenticated>
 
 
<estgweb:isAuthenticated>
<li>
<html:link action="/Logout"><bean:message key="logout"/></html:link>
</li>
</estgweb:isAuthenticated>
</ul>
</div>
</div>
 
/impl/src/web/public/index.jsp
19,91 → 19,83
<jomm:messages/>
<html:errors/>
 
<table class="indexPage" style=" border-collapse: collapse;">
<tr>
<td id="topBar" colspan="2">
<bean:message key="mainAnnouncements"/>
</td>
</tr>
<tr>
<td class="topSpace" colspan="2">
 
</td>
</tr>
<tr id="backOne">
<td style="vertical-align:top; width :100%;">
<div class="padLeft10">
<logic:iterate length="1" id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="top.flash.news" name="item" property="type">
<div class="linkTypeSeven" style="font-weight :bold ;">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link>
</div>
<div class="linkTypeHeight" style="padding-top :10px;">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.text}</html:link>
</div>
</logic:equal>
</logic:iterate>
</div>
</td>
<td style="text-align :right;">
<img src="<%=request.getContextPath()%>/imgs/destaque_1.jpg"/>
</td>
</tr>
</table>
<div class="indexPage" >
 
<div class="topSpace">
<table class="indexPage" style=" border-top-style: dotted; border-top-color:#DEDEDD;">
<tr>
<div class="padLeft10">
<logic:iterate length="2" id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="bottom.flash.news" name="item" property="type">
<td>
<img src="<%=request.getContextPath()%>/imgs/destaque_2_1.jpg"/>
</td>
<td style="vertical-align:top; width :200px;">
<div class="linkTypeSeven" style="font-weight :bold;padding-left :5px;">
<div class="header">
<h1> <bean:message key="mainAnnouncements"/></h1>
</div>
 
</div>
<div class="linkTypeSix" style="padding-left :5px;">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.text}</html:link>
</div>
</td>
</logic:equal>
</logic:iterate>
</div>
</tr>
</table>
</div>
 
<div class="topSpace">
<table class="indexPage">
<tr>
<div class="padLeft10">
<logic:iterate length="5" id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="news" name="item" property="type">
<td style=" width :200px;">
<img src="<%=request.getContextPath()%>/imgs/destaque_3_3.gif"/>
</td>
</logic:equal>
</logic:iterate>
</div>
</tr>
<tr>
<div class="padLeft10">
<logic:iterate length="5" id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="news" name="item" property="type">
<td style="vertical-align:top; width :200px;">
<div class="linkTypeTen" style="font-weight :bold;padding-left :10px; padding-right:5px;">
<table class="flashTopNews">
<tr>
<td>
<div class="textNewsTop">
<logic:iterate id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="top.flash.news" name="item" property="type">
<div class="titleNewsTop">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link>
</div>
<div class="linkTypeNine" style="padding-left :10px; padding-right:5px;">
<div class="descriptionNewsTop">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.text}</html:link>
</div>
</td>
</logic:equal>
</logic:iterate>
</div>
</tr>
</table>
</div>
</logic:equal>
</logic:iterate>
</div>
</td>
<td class="imageNewsTop">
<img src="<%=request.getContextPath()%>/imgs/destaque_1.jpg"/>
</td>
</tr>
</table>
 
<table class="flashCenterNews">
<tr>
<div class="textNewsCenter">
<logic:iterate id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="bottom.flash.news" name="item" property="type">
<td class="imageNewsCenter">
<img src="<%=request.getContextPath()%>/imgs/destaque_2_1.jpg"/>
</td>
<td>
<div class="titleNewsCenter">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.title}</html:link>
</div>
<div class="descriptionNewsCenter">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.text}</html:link>
</div>
</td>
</logic:equal>
</logic:iterate>
</div>
</table>
 
<table class="flashBottomNews">
<tr>
<div class="textNewsBottom">
<logic:iterate id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="news" name="item" property="type">
<td class="imageNewsBottom">
<img src="<%=request.getContextPath()%>/imgs/destaque_3_3.gif"/>
</td>
</logic:equal>
</logic:iterate>
</div>
</tr>
<tr>
<div class="textNewsBottom">
<logic:iterate length="5" id="item" name="Announcements" type="pt.estgp.estgweb.domain.views.AnnouncementView">
<logic:equal value="news" name="item" property="type">
<td width="50px">
<div class="titleNewsBottom">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load">${item.title}</html:link>
</div>
<div class="descriptionNewsBottom">
<html:link action="/loadAnnouncement?id=${item.id}&dispatch=load" >${item.text}</html:link>
</div>
</td>
</logic:equal>
</logic:iterate>
</div>
</tr>
</table>
</div>
/impl/src/web/public/staff/organization.jsp
New file
0,0 → 1,25
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 15:04:44
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
 
<div class="staffLinks">
<p>Orgãos</p>
<ul class="linkeTypeTwo">
<li><a href="#">Conselho Pedagógico</a></li>
<li><a href="#">Conselho Ciêntifico</a></li>
<li><a href="#">Conselho Directivo</a></li>
<li><a href="#">Assembleia de Representantes</a></li>
</ul>
</div>
/impl/src/web/public/staff/index.jsp
New file
0,0 → 1,112
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 12:26:11
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
<div class="portal">
<div class="header">
<h1><bean:message key="staff.header"/></h1>
</div>
 
<div class="portalContent">
<div class="header">
<img src="<%=request.getContextPath()%>/imgs/docente.gif"/>
</div>
<table class="columnTable">
<tbody>
<tr>
<td class="column" width="50%">
<div class="block">
<p>Serviços On-line</p>
<ul>
<li><a href="#">WEBmail</a></li>
<li><a href="#">Eduroam</a></li>
<li><a href="#">Secretaria</a></li>
<li><a href="#">In-Estg</a></li>
<li><a href="#">Biblioteca Online</a></li>
<li><a href="#">N.zero</a></li>
<li><a href="#">Académicos Online</a></li>
<li><a href="#">Portal de Assiduidade</a></li>
<li><a href="#">Sisgom-Ocorrências</a></li>
<li><a href="#">Siadap</a></li>
</ul>
</div>
<div class="block">
<p>Contactos</p>
<ul>
<li><a href="#">Contactos Gerais Estg</a></li>
<li><a href="#">Áreas Cientificas</a></li>
<li><a href="#">Secretaria</a></li>
<li><a href="#">Centro Informatico</a></li>
<li><a href="#">Reprografia</a></li>
<li><a href="#">Docentes</a></li>
</ul>
</div>
<div class="block">
 
<p>Informação Académica</p>
<ul>
<li><a href="#">Calendário Escolar</a></li>
<li><a href="#">Licenciaturas</a></li>
<li><a href="#">Mestrados</a></li>
<li><a href="#">Pós-Graduações</a></li>
<li><a href="#">Cet´s</a></li>
</ul>
</div>
</td>
<td class="column" width="50%">
<div class="block">
<p>Mobilidade</p>
<ul>
<li><a href="#">Os Docentes Estrangeiros na Estg</a></li>
<li><a href="#">Os Docentes da Estg no Estrangeiro</a></li>
<li><a href="#">Protocolos Internacionais</a></li>
<li><a href="#">Candidaturas</a></li>
<li><a href="#">Programa Erasmus</a></li>
</ul>
</div>
<div class="block">
<p>Acção Social</p>
<ul>
<li><a href="#">Cantinas</a></li>
<li><a href="#">Residências</a></li>
<li><a href="#">Ementas</a></li>
<li><a href="#">Desporto e Cultura</a></li>
<li><a href="#">Apoio Psicopedagógico</a></li>
</ul>
</div>
<div class="block">
<p>Orgãos</p>
<ul>
<li><a href="#">Conselho Pedagógico</a></li>
<li><a href="#">Conselho Ciêntifico</a></li>
<li><a href="#">Conselho Directivo</a></li>
<li><a href="#">Assembleia de Representantes</a></li>
</ul>
</div>
<div class="block">
<p>Instituto Politécnico</p>
<ul>
<li><a href="#">Serviços Centrais</a></li>
<li><a href="#">Loja do Aluno</a></li>
<li><a href="#">Merchandising</a></li>
<li><a href="#">Cultura e Lazer</a></li>
</ul>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
 
/impl/src/web/public/staff/school.jsp
New file
0,0 → 1,25
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 15:06:59
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
 
<div class="staffLinks">
<p>Instituto Politécnico</p>
<ul class="linkeTypeTwo">
<li><a href="#">Serviços Centrais</a></li>
<li><a href="#">Loja do Aluno</a></li>
<li><a href="#">Merchandising</a></li>
<li><a href="#">Cultura e Lazer</a></li>
</ul>
</div>
/impl/src/web/public/staff/onLineServices.jsp
New file
0,0 → 1,31
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 14:21:43
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
 
<div class="staffLinks">
<p>Serviços On-line</p>
<ul class="linkeTypeTwo">
<li><a href="#">WEBmail</a></li>
<li><a href="#">Eduroam</a></li>
<li><a href="#">Secretaria</a></li>
<li><a href="#">In-Estg</a></li>
<li><a href="#">Biblioteca Online</a></li>
<li><a href="#">N.zero</a></li>
<li><a href="#">Académicos Online</a></li>
<li><a href="#">Portal de Assiduidade</a></li>
<li><a href="#">Sisgom-Ocorrências</a></li>
<li><a href="#">Siadap</a></li>
</ul>
</div>
/impl/src/web/public/staff/socialAction.jsp
New file
0,0 → 1,26
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 14:53:29
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
 
<div class="staffLinks">
<p>Acção Social</p>
<ul class="linkeTypeTwo">
<li><a href="#">Cantinas</a></li>
<li><a href="#">Residências</a></li>
<li><a href="#">Ementas</a></li>
<li><a href="#">Desporto e Cultura</a></li>
<li><a href="#">Apoio Psicopedagógico</a></li>
</ul>
</div>
/impl/src/web/public/staff/academicInformation.jsp
New file
0,0 → 1,26
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 14:49:03
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
 
<div class="staffLinks">
<p>Informação Académica</p>
<ul class="linkeTypeTwo">
<li><a href="#">Calendário Escolar</a></li>
<li><a href="#">Licenciaturas</a></li>
<li><a href="#">Mestrados</a></li>
<li><a href="#">Pós-Graduações</a></li>
<li><a href="#">Cet´s</a></li>
</ul>
</div>
/impl/src/web/public/staff/internationalRelationships.jsp
New file
0,0 → 1,26
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 14:50:57
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
 
<div class="staffLinks">
<p>Mobilidade e Relações Internacionais</p>
<ul class="linkeTypeTwo">
<li><a href="#">Os Docentes Estrangeiros na Estg</a></li>
<li><a href="#">Os Docentes da Estg no Estrangeiro</a></li>
<li><a href="#">Protocolos Internacionais</a></li>
<li><a href="#">Candidaturas</a></li>
<li><a href="#">Programa Erasmus</a></li>
</ul>
</div>
/impl/src/web/public/staff/contacts.jsp
New file
0,0 → 1,27
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 18/Mar/2008
Time: 14:44:05
To change this template use File | Settings | File Templates.
--%>
<%@ 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" %>
<%@ 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" %>
<jomm:messages/>
<html:errors/>
 
<div class="staffLinks">
<p>Contactos</p>
<ul class="linkeTypeTwo">
<li><a href="#">Contactos Gerais Estg</a></li>
<li><a href="#">Áreas Cientificas</a></li>
<li><a href="#">Secretaria</a></li>
<li><a href="#">Centro Informatico</a></li>
<li><a href="#">Reprografia</a></li>
<li><a href="#">Docentes</a></li>
</ul>
</div>
/impl/src/web/public/urlstat/index.jsp
19,4 → 19,10
<estgweb:chartPageUrlStat chartType="urlstat.chart.year.months" altKey="urlstat.chart.year.months"/>
</td>
</tr>
<tr>
<td>
<estgweb:chartPageUrlStat chartType="urlstat.chart.year.days" altKey="urlstat.chart.year.days"/>
</td>
</tr>
 
</table>
/impl/src/web/templates/templatePage.jsp
New file
0,0 → 1,105
<%--
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>
 
<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>
</div>
 
<div class="pageSection">
<div class="sectionTitle">
<h2>Titulo</h2>
</div>
<div class="pageText">
Aqui mete o texto....
dsdasdsa
dsdas
</div>
</div>
 
<table class="pageColumnTableSolid">
<tbody>
<tr>
<td>fdfdfdf</td>
<td>sasasa</td>
</tr>
</tbody>
</table>
 
<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>
/impl/src/web/templates/templatePortal.jsp
New file
0,0 → 1,104
<%--
Created by IntelliJ IDEA.
User: Fabio Velez
Date: 19/Mar/2008
Time: 10:20:20
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<div class="portal">
<div class="header">
<h1><bean:message key="staff.header"/></h1>
</div>
 
<div class="portalContent">
<div class="header">
<img src="<%=request.getContextPath()%>/imgs/docente.gif"/>
</div>
<table class="columnTable">
<tbody>
<tr>
<td class="column" width="50%">
<div class="block">
<p>Serviços On-line</p>
<ul>
<li><a href="#">WEBmail</a></li>
<li><a href="#">Eduroam</a></li>
<li><a href="#">Secretaria</a></li>
<li><a href="#">In-Estg</a></li>
<li><a href="#">Biblioteca Online</a></li>
<li><a href="#">N.zero</a></li>
<li><a href="#">Académicos Online</a></li>
<li><a href="#">Portal de Assiduidade</a></li>
<li><a href="#">Sisgom-Ocorrências</a></li>
<li><a href="#">Siadap</a></li>
</ul>
</div>
<div class="block">
<p>Contactos</p>
<ul>
<li><a href="#">Contactos Gerais Estg</a></li>
<li><a href="#">Áreas Cientificas</a></li>
<li><a href="#">Secretaria</a></li>
<li><a href="#">Centro Informatico</a></li>
<li><a href="#">Reprografia</a></li>
<li><a href="#">Docentes</a></li>
</ul>
</div>
<div class="block">
 
<p>Informação Académica</p>
<ul>
<li><a href="#">Calendário Escolar</a></li>
<li><a href="#">Licenciaturas</a></li>
<li><a href="#">Mestrados</a></li>
<li><a href="#">Pós-Graduações</a></li>
<li><a href="#">Cet´s</a></li>
</ul>
</div>
</td>
<td class="column" width="50%">
<div class="block">
<p>Mobilidade</p>
<ul>
<li><a href="#">Os Docentes Estrangeiros na Estg</a></li>
<li><a href="#">Os Docentes da Estg no Estrangeiro</a></li>
<li><a href="#">Protocolos Internacionais</a></li>
<li><a href="#">Candidaturas</a></li>
<li><a href="#">Programa Erasmus</a></li>
</ul>
</div>
<div class="block">
<p>Acção Social</p>
<ul>
<li><a href="#">Cantinas</a></li>
<li><a href="#">Residências</a></li>
<li><a href="#">Ementas</a></li>
<li><a href="#">Desporto e Cultura</a></li>
<li><a href="#">Apoio Psicopedagógico</a></li>
</ul>
</div>
<div class="block">
<p>Orgãos</p>
<ul>
<li><a href="#">Conselho Pedagógico</a></li>
<li><a href="#">Conselho Ciêntifico</a></li>
<li><a href="#">Conselho Directivo</a></li>
<li><a href="#">Assembleia de Representantes</a></li>
</ul>
</div>
<div class="block">
<p>Instituto Politécnico</p>
<ul>
<li><a href="#">Serviços Centrais</a></li>
<li><a href="#">Loja do Aluno</a></li>
<li><a href="#">Merchandising</a></li>
<li><a href="#">Cultura e Lazer</a></li>
</ul>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
/impl/gen/java/pt/estgp/estgweb/domain/Course.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/UrlStatMonth.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/UrlStatDayId.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
 
/impl/gen/java/pt/estgp/estgweb/domain/SessionObject.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/GenericUser.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/User.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/UrlStatYear.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/UrlStatMonthId.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
 
/impl/gen/java/pt/estgp/estgweb/domain/UserSession.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/Image.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/GenericUserDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UserDao.java
1,9 → 1,16
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
 
/**
* Home object for domain model class User.
* @author Jorge Machado - Hibernate Tools
*/
 
import jomm.dao.IDomainObjectDao;
import jomm.dao.impl.AbstractDao;
import org.apache.log4j.Logger;
import pt.estgp.estgweb.domain.User;
 
 
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UrlStatYearDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UrlStatMonthIdDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UserSessionDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/ImageDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/SessionObjectIdDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/AnnouncementDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/CourseUserAssociationDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/GroupDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UrlStatDayDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UrlStatYearIdDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UrlStatDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/CourseDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UrlStatMonthDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/UrlStatDayIdDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/dao/impl/SessionObjectDao.java
1,5 → 1,5
package pt.estgp.estgweb.domain.dao.impl;
// Generated 15/Mar/2008 9:07:44 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:34 by Hibernate Tools 3.2.0.b9
 
 
import org.apache.log4j.Logger;
/impl/gen/java/pt/estgp/estgweb/domain/SessionObjectId.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
 
/impl/gen/java/pt/estgp/estgweb/domain/Announcement.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/Group.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/UrlStatDay.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/UrlStatYearId.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
 
/impl/gen/java/pt/estgp/estgweb/domain/CourseUserAssociation.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/gen/java/pt/estgp/estgweb/domain/UrlStat.java
1,5 → 1,5
package pt.estgp.estgweb.domain;
// Generated 15/Mar/2008 13:17:05 by Hibernate Tools 3.2.0.b9
// Generated 26/Mar/2008 10:44:32 by Hibernate Tools 3.2.0.b9
 
 
import java.util.Date;
/impl/build.properties
85,6 → 85,11
#log file confirguration
log.file=/estgweb.log
 
#email templates
email.templates.dir=/template/email
email.templates.dir.build=${build.dir.classes}${email.templates.dir}
email.templates.dir.conf=${conf.dir}${email.templates.dir}
 
#DATA
out.dir=${data.dir}/out
tmp.dir=${data.dir}/tmp
/impl/build.xml
27,6 → 27,9
<fileset dir="${tomcat.libs.ant.home}">
<include name="**.jar"/>
</fileset>
<fileset dir="${common.lib.dir}/mail">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${common.lib.dir}/berserk">
<include name="**/*.jar"/>
</fileset>
246,6 → 249,9
<fileset dir="${common.lib.dir}/ldap">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${common.lib.dir}/mail">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${common.lib.dir}/jfreechart">
<include name="**/*.jar"/>
</fileset>
261,6 → 267,7
<fileset dir="${build.dir.classes}">
<include name="**/*.types"/>
<include name="**/*.properties"/>
<include name="**/*.txt"/>
<include name="**/*.xml"/>
</fileset>
</copy>
298,6 → 305,10
<copy overwrite="true" todir="${build.dir.classes}">
<fileset dir="${conf.dir}/berserk" includes="*.*"/>
</copy>
<mkdir dir="${email.templates.dir.build}"/>
<copy overwrite="true" todir="${email.templates.dir.build}">
<fileset dir="${email.templates.dir.conf}" includes="*.*"/>
</copy>
<copy overwrite="true" todir="${hibernate.cfg.xml.build}" file="${hibernate.cfg.xml}"/>
<copy overwrite="true" todir="${mime.types.build}" file="${mime.types}"/>
<copy overwrite="true" todir="${app.properties.build}" file="${app.properties}"/>
327,6 → 338,7
<replace file="${app.properties.build}/app.properties">
<replacefilter token="@tmp.dir@" value="${tmp.dir}"/>
<replacefilter token="@out.dir@" value="${out.dir}"/>
<replacefilter token="@email.templates.dir@" value="${email.templates.dir}"/>
</replace>
<replace file="${build.dir.classes}/${log4j.properties.filename}">
<replacefilter token="@log.file@" value="${log.file}"/>
/common/mail/mail.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/common/jfreechart/swtgraphics2d.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/common/jfreechart/jfreechart-1.0.9-experimental.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/common/jfreechart/jfreechart-1.0.9-swt.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/common/jfreechart/itext-2.0.6.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/common/jfreechart/jcommon-1.0.12.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream
/common/jfreechart/jfreechart-1.0.9.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+ application/octet-stream