Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 1198 → Rev 1205

/impl/conf/WEB-INF/struts/tiles-courseunits.xml
193,7 → 193,7
<put name="body" value="/admin/courseunits/courseunit.jsp"/>
</definition>
<definition name="page.edit.courseunit.admin.from.course.course.units" extends="base.separators.home">
<definition name="page.edit.courseunit.admin.from.course.course.units" extends="page.separators.home">
<put name="title" value="Unidade Curricular"/>
<put name="topnav" value="/admin/courseunits/topnavEditCourseUnitFromCourseCourseUnits.jsp"/>
<put name="body" value="/admin/courseunits/courseunit.jsp"/>
/impl/src/java/pt/estgp/estgweb/services/courseunits/CreateCourseUnitDirPackageServiceBat.java
166,6 → 166,17
// List<CourseUnit> courseUnits = DaoFactory.getCourseUnitDaoImpl().loadByCourse(c.getId(),importYear);
for(CourseUnit courseUnit: courseUnits)
{
boolean turmasMultiplas = false;
for(CourseUnit cuCompare: courseUnits)
{
if(cuCompare.getId() == courseUnit.getId())
continue;
if(((CourseUnitImpl)cuCompare).equalsIgnoringTurma(courseUnit))
{
turmasMultiplas = true;
break;
}
}
//FileWriter nowWriter;
String semestre;
if(courseUnit.getSemestre().equals("S1"))
212,9 → 223,23
md Unidade\DTP\6.Inquerito.Pedagogico.Unidade.Curricular
md Unidade\DTP\7.Relatorio.Final*/
 
 
 
 
String normalizedName = StringsUtils.normalizeResourceName(courseUnit.getName());
//Em caso de turmas multiplas necessitamos de colocar na path a turma
//todo mudar isto no futuro para meter sempre que houver turma
if(turmasMultiplas && courseUnit.getCdTurma() !=null && courseUnit.getCdTurma().trim().length() > 0)
{
normalizedName = normalizedName + "." + courseUnit.getCdTurma();
batRunner.write("REM Unidade de Turma Multipla " + courseImportYearPath + "/" + semestre + "/" + normalizedName + " \n");
}
 
courseUnit.setNormalizedName(normalizedName);
 
String unitPath = courseImportYearPath + "/" + semestre + "/" + normalizedName;
courseUnit.setNormalizedName(normalizedName);
 
 
courseUnit.setPathIntranet(unitPath.substring(tmpDir.length()));
 
String semestreUnitName = semestre + "\\" + normalizedName + "\\";
300,7 → 325,7
batRunner.write("cd ..\\\n");
 
}
if(Globals.INTRANET_DTP_CourseDirectorWrite && c.getCoordinator() != null)
if(Globals.INTRANET_DTP_CourseDirectorWrite && c.getDirector() != null)
{
batRunner.write("cacls " + Globals.INTRANET_DTP + " /t /e /g \"" + c.getDirector().getUsername() + "\":c\n");
batRunner.write("cd " + Globals.INTRANET_DTP + "\n");
/impl/src/java/pt/estgp/estgweb/domain/CourseUnitImpl.java
108,6 → 108,21
 
}
 
public boolean equalsIgnoringTurma(Object anotherInstance)
{
if(anotherInstance instanceof CourseUnitImpl)
{
CourseUnitImpl anCourseUnit = (CourseUnitImpl) anotherInstance;
 
return anCourseUnit.getCode() != null && getCode() != null && getCode().equals(anCourseUnit.getCode()) &&
anCourseUnit.getCourseCode() != null && getCourseCode() != null && getCourseCode().equals(anCourseUnit.getCourseCode()) &&
anCourseUnit.getSemestre() != null && getSemestre() != null && getSemestre().equals(anCourseUnit.getSemestre()) &&
anCourseUnit.getImportYear() != null && getImportYear() != null && getImportYear().equals(anCourseUnit.getImportYear());
}
return false;
 
}
 
/**
* Means that is teacher os responsable teacher or from course commission
* Only works in open transaction
/impl/src/java/pt/estgp/estgweb/domain/dao/impl/UserDaoImpl.java
14,6 → 14,7
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
 
import static org.hibernate.criterion.Restrictions.*;
136,7 → 137,15
{
if(role == null || role.trim().length() == 0)
return new ArrayList<User>();
return createCriteria().add(like("roles", "%" + role + "%")).addOrder(Order.asc("name")).list();
List<User> users = createCriteria().add(like("roles", "%" + role + "%")).addOrder(Order.asc("name")).list();
Iterator<User> iter = users.iterator();
while(iter.hasNext())
{
User u = iter.next();
if(!u.hasRole(role))
iter.remove();
}
return users;
}
 
public List<User> loadRoleAreaUsers(String role, String area)
144,7 → 153,15
Criteria c = createCriteria().add(like("roles", "%" + role + "%")).addOrder(Order.asc("name"));
if(area != null && area.trim().length() > 0)
c.add(eq("mainArea",area));
return c.list();
List<User> users = c.list();
Iterator<User> iter = users.iterator();
while(iter.hasNext())
{
User u = iter.next();
if(!u.hasRole(role))
iter.remove();
}
return users;
}
 
public List<User> findUsers(String textToSearch)
244,6 → 261,23
co = or(co, cor);
}
criteria.add(co);
return criteria.list();
List<User> users = criteria.list();
Iterator<User> iter = users.iterator();
while(iter.hasNext())
{
boolean hasIt = false;
User u = iter.next();
for(String role: roles)
{
if(u.hasRole(role))
{
hasIt = true;
break;
}
}
if(!hasIt)
iter.remove();
}
return users;
}
}
/impl/src/web/admin/courses/courseComissions.jsp
34,6 → 34,7
<%
String importYear = request.getParameter("importYear");
 
String nowInterfaceImportYear = DaoFactory.getConfigurationDaoImpl().getInterfaceImportYear();
 
if(importYear == null || importYear.length()==0)
{
86,7 → 87,7
<thead>
<tr>
<th>Codigo</th>
<th>Grau</th>
<th>Tipo de Curso</th>
<th>Curso</th>
<baco:hasRole role="services,admin,all">
<th>Papel Comissão Curso</th>
109,7 → 110,9
int unitsSize=DaoFactory.getCourseDaoImpl().countCoursesUnits(importYear,c.getId());
int unitsSizeOthers=DaoFactory.getCourseDaoImpl().countCoursesUnitsNot(importYear, c.getId());
int totalUnits = unitsSize + unitsSizeOthers;
if(totalUnits > 0 || userSession.getUser().isAdmin() || userSession.getUser().hasRole("services"))
//So da verdadeiro se estivermos neste ano e ele estiver inativo
boolean notActiveAndActualThisYear = nowInterfaceImportYear.equals(importYear) && !cv.isStatus();
if((totalUnits > 0 && !notActiveAndActualThisYear) || userSession.getUser().isAdmin() || userSession.getUser().hasRole("services"))
{
%>