Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 651 → Rev 670

/impl/conf/language/MessageResourcesCourse.properties
74,7 → 74,17
course.validation.role=Comissão de Curso para validação de Programas
 
 
course.pagina.nao.disponivel=De momento a página à qual acedeu não se encontra disponivel, pedimos desculpa por qualquer incómodo que isto lhe possa causar, a administração foi informada deste facto e irá resolver o problema o mais depressa possivel.
courseunit.programfile.valid=programa <u>Aprovado</u> pela pela comissão de curso
 
course.courseunit.program.validate.todo={0} Unidades por aprovar (programa)
 
course.menu.home=Inicio
course.menu.studiesplan=Plano de Estudos
course.menu.internacionalicao=Internacionalização
course.menu.labs=Laboratorios
course.menu.actividades=Actividades
course.menu.casos=Casos de sucesso
course.menu.parceiros=Parceiros
course.menu.faq=FAQ
 
/impl/conf/language/MessageResourcesCourseUnits.properties
7,6 → 7,8
course={0} &gt
courseunit={0}
 
course.nav.without.arrow={0}
 
courseunit.menu.unit.old.units=Anos anteriores
courseunit.menu.unit.other.units=Outros Anos
courseunit.menu.unit=Unidade
/impl/conf/WEB-INF/struts/struts-courses.xml
27,14 → 27,15
 
 
<action path="/startLoadCourseSeparators" forward="/courseController.do?dispatch=loadSeparators"/>
<action path="/startLoadCourse" forward="/courseController.do?dispatch=loadSeparators"/>
 
<action path="/startLoadMenuCourse" forward="/courseController.do?dispatch=loadMenu"/>
 
<action path="/startLoadCourseStudiesPlan" forward="/courseController.do?dispatch=loadPlan"/>
<!--ESTE E O LINK DO PROGRAMA CURRICULAR-->
 
<action path="/startLoadCourse" forward="/courseController.do?dispatch=load"/>
 
 
<action path="/courseController"
type="pt.estgp.estgweb.web.controllers.courses.CoursesController"
/impl/conf/app.properties
85,7 → 85,8
##Proxy Servers
#If is an HTTP Server needs encoding config if FTP needs user pass config
#This server is the server for unit contents, must be named ionline, it is hardcoded
server.ionline=ftp://www.global.estgp.pt
#server.ionline=ftp://www.global.estgp.pt
server.ionline=ftp://w2.estgp.pt
server.ionline.start.path=
ionline.pass=baco
ionline.user=Baco_web
/impl/src/java/pt/estgp/estgweb/services/courses/CoursesCommonServices.java
1,18 → 1,21
package pt.estgp.estgweb.services.courses;
 
import pt.utl.ist.berserk.logic.serviceManager.IService;
import org.apache.log4j.Logger;
import pt.estgp.estgweb.Globals;
import pt.estgp.estgweb.domain.Course;
import pt.estgp.estgweb.domain.DomainObject;
import pt.estgp.estgweb.domain.Teacher;
import pt.estgp.estgweb.domain.UserSession;
import pt.estgp.estgweb.domain.dao.DaoFactory;
import pt.estgp.estgweb.services.common.*;
import pt.estgp.estgweb.services.common.impl.DefaultResult;
import pt.estgp.estgweb.services.common.impl.DefaultSearchResults;
import pt.estgp.estgweb.services.common.impl.DefaultResult;
import pt.estgp.estgweb.services.common.impl.DefaultToDo;
import pt.estgp.estgweb.services.courseunits.CourseUnitsCommonServices;
import pt.estgp.estgweb.domain.*;
import pt.estgp.estgweb.domain.dao.DaoFactory;
import pt.estgp.estgweb.Globals;
import pt.estgp.estgweb.utils.DatesUtils;
import org.apache.log4j.Logger;
import pt.utl.ist.berserk.logic.serviceManager.IService;
 
import java.util.*;
import java.util.ArrayList;
import java.util.List;
 
/*
* @author Goncalo Luiz gedl [AT] rnl [DOT] ist [DOT] utl [DOT] pt
59,7 → 62,7
defaultResult.setTitle(course.getName());
defaultResult.setText(course.getDescription());
if (from == null)
defaultResult.setUrl("/startLoadCourse.do?courseView.id=" + course.getId());
defaultResult.setUrl("/startLoadCourseSeparators.do?courseView.id=" + course.getId());
else
defaultResult.setUrl("/user/startLoadCourseFrom" + from + ".do?courseView.id=" + course.getId());
searchResults.addResult(defaultResult);
/impl/src/java/pt/estgp/estgweb/web/DirWebProxy.java
180,6 → 180,7
}
catch (Exception e)
{
logger.error(e,e);
throw new IOException(e.toString());
}
}
429,12 → 430,21
UserSession userSession = UserSessionProxy.loadUserSessionFromRequest(request);
 
parameters.put("contextPath", request.getContextPath());
if (userSession.getUsername() != null)
parameters.put("username", userSession.getUsername());
if (userSession.getName() != null)
parameters.put("name", userSession.getName());
if (userSession.getUser() != null)
parameters.put("roles", userSession.getUser().getRoles());
String username = "descolnhecido";
String roles = "";
String name = username;
 
if (userSession != null && userSession.getUsername() != null)
username = userSession.getUsername();
if (userSession != null && userSession.getName() != null)
name = userSession.getName();
if (userSession != null && userSession.getUser() != null)
roles = userSession.getUser().getRoles();
 
parameters.put("username", username);
parameters.put("name", name);
parameters.put("roles", roles);
 
parameters.put("ACTUAL", actualNodeId);
parameters.put("ACTUAL_REMOTE_CHILD", actualRemoteNodeId);
 
/impl/src/java/pt/estgp/estgweb/web/WebProxy.java
1,5 → 1,6
package pt.estgp.estgweb.web;
 
import org.apache.commons.httpclient.URIException;
import org.apache.commons.httpclient.util.URIUtil;
import org.apache.log4j.Logger;
import pt.estgp.estgweb.utils.ConfigProperties;
189,8 → 190,14
return in;
}
 
public static void main(String[] args) throws URIException {
String path = "pagina.php?id=asdasd&jj=kk";
String pathFinal = path.indexOf("?") >=0 ? URIUtil.encodePath(path.substring(0,path.indexOf("?")), "ISO-8859-1") + "?" +path.substring(path.indexOf("?")+1) : path;
System.out.println(pathFinal);
}
public static void processHttpRequestService(JspWriter out, String server, String path) throws IOException, ServletException
{
 
String serverUrl = ConfigProperties.getProperty("server." + server);
String serverEncoding = ConfigProperties.getProperty(server + ".encoding");
String confStartPath = ConfigProperties.getProperty("server." + server + ".start.path");
200,7 → 207,11
 
try
{
URL url = new URL(serverUrl + URIUtil.encodePath(path, "ISO-8859-1"));
 
String pathFinal = path.indexOf("?") >=0 ? URIUtil.encodePath(path.substring(0,path.indexOf("?")), "ISO-8859-1") + path.substring(path.indexOf("?")) : path;
System.out.println("Getting: " + serverUrl + pathFinal);
URL url = new URL(serverUrl + pathFinal);
 
URLConnection con = url.openConnection();
InputStream stream = con.getInputStream();
 
/impl/src/java/pt/estgp/estgweb/web/utils/RequestUtils.java
1,11 → 1,9
package pt.estgp.estgweb.web.utils;
 
import jomm.utils.BytesUtils;
import pt.estgp.estgweb.Globals;
import pt.estgp.estgweb.web.UserSessionProxy;
import pt.estgp.estgweb.web.exceptions.NoCookiesException;
 
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
19,52 → 17,56
{
public static String getRequester(HttpServletRequest request, HttpServletResponse response) throws NoCookiesException
{
if(request == null)
return "unknown";
if (request.getCookies() == null || request.getCookies().length == 0)
{
Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, request.getSession().getId());
response.addCookie(cookie);
return cookie.getValue();
}
else if (request.getCookies() != null && request.getCookies().length > 0)
{
for (Cookie cookie : request.getCookies())
{
if (cookie.getName().equals(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE))
{
return cookie.getValue();
}
}
Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, request.getSession().getId());
response.addCookie(cookie);
return cookie.getValue();
}
throw new NoCookiesException();
// if(request == null)
// return "unknown";
// if (request.getCookies() == null || request.getCookies().length == 0)
// {
// Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, request.getSession().getId());
// response.addCookie(cookie);
// return cookie.getValue();
// }
// else if (request.getCookies() != null && request.getCookies().length > 0)
// {
// for (Cookie cookie : request.getCookies())
// {
// if (cookie.getName().equals(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE))
// {
// return cookie.getValue();
// }
// }
// Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, request.getSession().getId());
// response.addCookie(cookie);
// return cookie.getValue();
// }
// throw new NoCookiesException();
if(request.getSession() != null)
return request.getSession().getId();
return "unkown";
}
 
public static boolean existRequester(HttpServletRequest request, HttpServletResponse response) throws NoCookiesException
{
if (request.getCookies() == null || request.getCookies().length == 0)
{
Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, BytesUtils.generateHexKey());
response.addCookie(cookie);
return false;
}
else if (request.getCookies() != null && request.getCookies().length > 0)
{
for (Cookie cookie : request.getCookies())
{
if (cookie.getName().equals(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE))
{
return true;
}
}
Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, BytesUtils.generateHexKey());
response.addCookie(cookie);
return false;
}
throw new NoCookiesException();
// if (request.getCookies() == null || request.getCookies().length == 0)
// {
// Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, BytesUtils.generateHexKey());
// response.addCookie(cookie);
// return false;
// }
// else if (request.getCookies() != null && request.getCookies().length > 0)
// {
// for (Cookie cookie : request.getCookies())
// {
// if (cookie.getName().equals(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE))
// {
// return true;
// }
// }
// Cookie cookie = new Cookie(pt.estgp.estgweb.web.Globals.BACO_SESSION_COOKIE, BytesUtils.generateHexKey());
// response.addCookie(cookie);
// return false;
// }
// throw new NoCookiesException();
return true;
}
 
private static final String EMPTY_STRING = "";
/impl/src/java/pt/estgp/estgweb/web/Globals.java
2,8 → 2,6
 
import pt.estgp.estgweb.utils.ConfigProperties;
 
import javax.servlet.http.HttpServletRequest;
 
/**
* @author Fabio
* @date 31/Mar/2008
15,7 → 13,7
 
public static final String SITE_URL = ConfigProperties.getProperty("site.url");
 
public static final String BACO_SESSION_COOKIE = "BACOSESSIONID";
public static final String BACO_SESSION_COOKIE = "JSESSIONID";
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 PUBLIC_MENU_START_LINK_END = "/estgp/public";
/impl/src/web/public/courses/courseSeparators.jsp
13,8 → 13,8
<h2>${CourseView.name} (<%=Globals.NATIONAL_INSTITUTION_CODE%> / ${CourseView.code})</h2>
 
 
<logic:notEmpty name="courseView" property="formatedDescription"><p>${courseView.formatedDescription}</p></logic:notEmpty>
<logic:notEmpty name="courseView" property="externalSitePath">
<logic:notEmpty name="CourseView" property="formatedDescription"><p>${CourseView.formatedDescription}</p></logic:notEmpty>
<logic:notEmpty name="CourseView" property="externalSitePath">
<%
WebProxy.processHttpRequestService(out, CourseView.getExternalSiteServer(), CourseView.getExternalSitePath());
%>
25,6 → 25,8
<%--<h3><bean:message key="course.studies.plan"/></h3>--%>
<%--<bean:write name="CourseView" property="cacheWebDocument" filter="no"/>--%>
<%--</logic:notEmpty>--%>
 
</div>
 
 
/impl/src/web/public/courses/courseMenu.jsp
16,16 → 16,14
<div class="linkLeftMenu">
<div class="listClean">
<ul>
<li><a href="<%=request.getContextPath() + "/startLoadCourseSeparators.do?type=" + request.getAttribute("type") + "&courseView.id=" + CourseView.getId()%>">Inicio</a></li>
 
<li><html:link action="/startLoadCourseStudiesPlan?type=${CourseView.degree}&courseView.id=${CourseView.id}">Plano de Estudos</html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=internacionalicao">Internacionalização</html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=labs">Laboratorios</html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=actividades">Actividades</html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=casos">Casos de sucesso</html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=parceiros">Parceiros</html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=faq">FAQ</html:link></li>
<li><a href="<%=request.getContextPath() + "/startLoadCourseSeparators.do?content=home&type=" + CourseView.getDegree() + "&courseView.id=" + CourseView.getId()%>"><bean:message key="course.menu.home"/></a></li>
<li><html:link action="/startLoadCourseStudiesPlan?content=studiesplan&type=${CourseView.degree}&courseView.id=${CourseView.id}"><bean:message key="course.menu.studiesplan"/></html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=internacionalicao"><bean:message key="course.menu.internacionalicao"/></html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=labs"><bean:message key="course.menu.labs"/></html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=actividades"><bean:message key="course.menu.actividades"/></html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=casos"><bean:message key="course.menu.casos"/></html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=parceiros"><bean:message key="course.menu.parceiros"/></html:link></li>
<li><html:link action="/startLoadMenuCourse?type=${CourseView.degree}&courseView.id=${CourseView.id}&content=faq"><bean:message key="course.menu.faq"/></html:link></li>
</ul>
</div>
</div>
/impl/src/web/public/courses/topnavCourse.jsp
6,7 → 6,15
<%
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/Welcome.do", "Home");
topNav.addNavPlace("/courses.do?type=" + request.getAttribute("type"), "module.Courses");
topNav.addNavPlace(null, "course", CourseView.getName());
 
topNav.addNavPlace("/courses.do?type=" + CourseView.getDegree() , "course." + CourseView.getDegree());
if(request.getParameter("content")!= null)
{
topNav.addNavPlace("/startLoadCourseSeparators.do?content=home&type=" + CourseView.getDegree() + "&courseView.id=" + CourseView.getId() , "course.nav.without.arrow", CourseView.getName());
topNav.addNavPlace(null, "course.menu." + request.getParameter("content"));
}
else
topNav.addNavPlace(null, "course.nav.without.arrow", CourseView.getName());
 
%>
<jsp:include page="/layout/topnav.jsp"/>
/impl/src/web/public/courses/studiesPlan.jsp
10,7 → 10,7
<jsp:useBean id="CourseView" type="pt.estgp.estgweb.domain.views.CourseView" scope="request"/>
 
<div class="seccao">
<h2>${CourseView.name} (<%=Globals.NATIONAL_INSTITUTION_CODE%> / ${CourseView.code})</h2>
<h2><bean:message key="course.studies.plan"/></h2>
 
<logic:empty name="CourseView" property="cacheWebDocument">
<div class="seccao">
25,7 → 25,7
</div>
</logic:empty>
<logic:notEmpty name="CourseView" property="cacheWebDocument">
<h3><bean:message key="course.studies.plan"/></h3>
 
<bean:write name="CourseView" property="cacheWebDocument" filter="no"/>
</logic:notEmpty>
</div>
/impl/src/web/public/courses/topnavCourses.jsp
1,12 → 1,10
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="java.util.*"%>
<%@ page import="jomm.web.utils.NavPlace" %>
<%@ page import="jomm.web.utils.NavPlaceServer" %>
<%@ page import="jomm.web.utils.TopNav" %>
<%
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/Welcome.do", "Home");
topNav.addNavPlace(null, "courses");
topNav.addNavPlace(null, "course." + request.getParameter("type"));
%>
<jsp:include page="/layout/topnav.jsp"/>
/impl/src/web/public/courses/courseMenuLoader.jsp
11,8 → 11,26
<jsp:useBean id="CourseView" type="pt.estgp.estgweb.domain.views.CourseView" scope="request"/>
 
 
<%
String contentsPage = (String) request.getParameter("content");
String pagina = "/pagina.php?nome_id=curso_" + CourseView.getCode() + "_" + contentsPage;
WebProxy.processHttpRequestService(out,"conteudos", pagina);
%>
 
<div class="seccao">
<%
String contentsPage = (String) request.getParameter("content");
request.setAttribute("contentM",contentsPage);
%>
<h2><bean:message key="course.menu.${contentM}"/></h2>
<%
 
try{
String pagina = "/pagina.php?nome_id=curso_" + CourseView.getCode() + "_" + contentsPage;
WebProxy.processHttpRequestService(out,"conteudos", pagina);
}
catch(Throwable e)
{
%>
<p><bean:message key="course.pagina.nao.disponivel"/></p>
<%
}
%>
 
</div>