Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 1325 → Rev 1326

/branches/v3/impl/src/web/admin/courses/courseComissions.jsp
88,22 → 88,22
<div class="panel-body">
<table class="tablesorter tablesorterfiltered">
<thead>
<tr>
<th>Codigo</th>
<th>Tipo de Curso</th>
<th>Curso</th>
<baco:hasRole role="services,admin,all">
<th>Activo</th>
<th>Papel Comissão Curso</th>
<th>Unidades <%=importYear%></th>
<th>Unidades noutros anos</th>
</baco:hasRole>
<th>Comissão de Curso</th>
<baco:hasRole role="services,admin,all">
<th>Unidades</th>
<th>Editar</th>
</baco:hasRole>
</tr>
<tr>
<th>Codigo</th>
<th>Tipo de Curso</th>
<th>Curso</th>
<baco:hasRole role="services,admin,all">
<th>Activo</th>
<th>Papel Comissão Curso</th>
<th>Unidades <%=importYear%></th>
<th>Unidades noutros anos</th>
</baco:hasRole>
<th>Comissão de Curso</th>
<baco:hasRole role="services,admin,all">
<th>Unidades</th>
<th>Editar</th>
</baco:hasRole>
</tr>
</thead>
<tbody>
<%
/branches/v3/impl/src/web/admin/courseunits/courseUnitDeleteAdministration.jsp
93,7 → 93,7
<script>
$(document).ready(function(){
$('.deleteModal').on('show.bs.modal', function(e) {
$(this).find('.btn-ok').attr('href', $(e.relatedTarget).data('href'));
$(this).find('.btn-ok').attr('href', $(e.relatedTarget).data('href'));
});
});
</script>
/branches/v3/impl/src/web/admin/questionarios/questionarioStateASSIGNATION_DETAILS.jsp
New file
0,0 → 1,111
<%@ page import="pt.estgp.estgweb.utils.DatesUtils" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.web.form.questionarios.QuestionarioForm" %>
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<jsp:useBean id="Questionario" type="pt.estgp.estgweb.domain.QuestionarioImpl" scope="request"/>
 
 
<logic:empty name="Questionario" property="year">
<script>
$(document).ready(
function(){
$("#yearSemestreForm").show();
}
);
</script>
</logic:empty>
<logic:notEmpty name="Questionario" property="year">
<div class="col-md-3 col-sm-3" id="yearSemestreInfo">
<div class="list-group">
<div class="list-group-item">
<bean:message key="survey.list.form.year"/>: ${Questionario.year}
</div>
<div class="list-group-item">
Semestre: ${Questionario.semestre}
</div>
</div>
<baco:clearOperation name="Questionario" op="QUESTIONARIO_SET_ANO_SEMESTRE">
<button class="btn btn-default" type="button" onclick="$('#yearSemestreForm').show();$('#yearSemestreInfo').hide()">Modificar</button>
</baco:clearOperation>
</div>
</logic:notEmpty>
 
<baco:clearOperation name="Questionario" op="QUESTIONARIO_SET_ANO_SEMESTRE">
<div class="col-md-6" style="display: none" id="yearSemestreForm">
<div class="panel panel-default">
<div class="panel-body">
 
<html:form styleClass="form-horizontal" action="/admin/questionariosPaeYearSemestre">
<%
QuestionarioForm qFr = (QuestionarioForm) request.getAttribute("QuestionarioForm");
if(qFr.getQuestionario().getId() <= 0)
qFr.setQuestionario(Questionario);
%>
<input type="hidden" name="dispatch" value="setYearSemestre"/>
<html:hidden property="questionario.id"/>
<div class="form-group">
<label class="control-label col-sm-2" for="year"><bean:message key="survey.list.form.year"/></label>
<div class="col-sm-10">
<%
List<String> years = DatesUtils.getImportYears(10);
%>
<html:select styleClass="form-control" styleId="year" property="questionario.year">
<html:option value="">Escolha Ano</html:option>
<%
for(String year:years)
{
request.setAttribute("year",year);
%>
<html:option value="${year}">${year}</html:option>
<%
}
%>
</html:select>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="semestre">Semestre:</label>
<div class="col-sm-10">
<html:select styleClass="form-control" styleId="semestre" property="questionario.semestre">
<html:option value="">Escolha semestre</html:option>
<html:option value="A">Anual</html:option>
<html:option value="S1">Semestre 1</html:option>
<html:option value="S2">Semestre 2</html:option>
<html:option value="T1">Trimestre 1</html:option>
<html:option value="T2">Trimestre 2</html:option>
<html:option value="T3">Trimestre 3</html:option>
<html:option value="T4">Trimestre 4</html:option>
</html:select>
</div>
</div>
<button class="btn btn-default" type="button" onclick="this.form.action = this.form.action + '#NOWTASK';this.form.submit();"><bean:message key="confirm"/></button>
</html:form>
</div>
</div>
</div>
</baco:clearOperation>
 
<logic:notEmpty name="Questionario" property="year">
<logic:notEmpty name="Questionario" property="semestre">
<div class="col-md-3 col-sm-3">
<html:link styleClass="btn btn-warning" action="/admin/questionarioPedagogicoStartChooseCourses?questionarioId=${Questionario.id}">
Iniciar selecção de Cursos
</html:link>
</div>
</logic:notEmpty>
</logic:notEmpty>
 
 
 
 
 
 
 
 
/branches/v3/impl/src/web/admin/questionarios/questionarioAdmin.jsp
1,24 → 1,26
<%@ taglib prefix="bean" uri="http://jakarta.apache.org/struts/tags-nested" %>
<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="pt.estgp.estgweb.domain.QuestionarioHistoryDrive" %>
<%@ page import="pt.estgp.estgweb.domain.QuestionarioImpl" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="pt.estgp.estgweb.utils.DatesUtils" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.domain.Questionario" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.IServiceManager" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.ServiceManager" %>
<%@ page import="pt.estgp.estgweb.web.utils.RequestUtils" %>
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
 
 
<%
long questionarioId = Long.parseLong(request.getParameter("questionario.id"));
AbstractDao.getCurrentSession().beginTransaction();
QuestionarioImpl questionario = (QuestionarioImpl) DaoFactory.getQuestionarioDaoImpl().get(questionarioId);
request.setAttribute("Questionario",questionario);
List<QuestionarioHistoryDrive> historyDrives = DaoFactory.getQuestionarioHistoryDriveDaoImpl().getHistoryDrivesList();
request.setAttribute("historyDrives",historyDrives);
AbstractDao.getCurrentSession().getTransaction().commit();
 
 
IServiceManager sm = ServiceManager.getInstance();
String[] names = {"questionarioId"};
Object[] args = {questionarioId};
QuestionarioImpl questionario = (QuestionarioImpl) sm.execute(RequestUtils.getRequester(request, response),"loadQuestionarioAdmin",args,names);
request.setAttribute("Questionario", questionario);
%>
<div class="container-fluid">
<div class="panel panel-default">
29,6 → 31,8
 
 
<div class="panel-body" id="diagrama" style="display: none">
<html:errors/>
<jomm:messages/>
<div class="panel panel-default">
<div class="panel-body">
<div class="row-centered">
50,17 → 54,20
</div>
</div>
<div class="panel-body">
<p><strong>Descrição:</strong> ${Questionario.description}</p>
<p><strong>Categoria Histórica:</strong> <span class="bg-info"> ${Questionario.questionarioHistoryDrive.description}</span></p>
<p><strong>Processador de Respostas:</strong> <span class="bg-primary">${Questionario.iAnswersProcessorClass.title}</span></p>
 
 
 
 
<div class="panel panel-default">
<div class="panel-heading">Dados Administrativos</div>
<div class="panel-body">
<p><strong>Descrição:</strong> ${Questionario.description}</p>
<p><strong>Categoria Histórica:</strong> <span class="bg-info"> ${Questionario.questionarioHistoryDrive.description}</span></p>
<p><strong>Processador de Respostas:</strong> <span class="bg-primary">${Questionario.iAnswersProcessorClass.title}</span></p>
</div>
</div>
</div>
<div class="panel-body">
<div class="container">
<div class="row">
<div class="panel panel-success">
<div class="panel-heading">Tarefas Executadas</div>
<div class="panel-body">
 
<%
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.CREATED.getPosition())
69,7 → 76,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.CREATED"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.ASSIGNATION_DETAILS.getPosition())
78,7 → 85,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.ASSIGNATION_DETAILS"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.ASSIGNING_ANSWERS_PROCESSEMENT.getPosition())
87,7 → 94,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.ASSIGNING_ANSWERS_PROCESSEMENT"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.ASSIGNED_ANSWERS.getPosition())
96,7 → 103,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.ASSIGNED_ANSWERS"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.PROCESSING.getPosition())
105,7 → 112,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.PROCESSING"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.PROCESSING_WITH_ANSWERS.getPosition())
114,7 → 121,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.PROCESSING_WITH_ANSWERS"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.CLOSED.getPosition())
123,7 → 130,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.CLOSED"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.PROCESSING_OLAP.getPosition())
132,7 → 139,7
<div class="alert alert-success col-md-2 col-sm-2">
<bean:message key="questionario.state.PROCESSING_OLAP"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() > QuestionarioImpl.State.OLAP.getPosition())
144,34 → 151,40
<%
}
%>
 
<%
String alert = "alert-info";
if(questionario.getStateEnum() == QuestionarioImpl.State.STOPED_WITH_ANSWERS)
{
alert = "alert-danger";
}
%>
<div class="alert <%=alert%> col-md-2 col-sm-2">
<bean:message key="questionario.state.${Questionario.state}"/>
</div>
 
</div>
</div>
 
<%
String alert = "alert-warning";
if(questionario.getStateEnum() == QuestionarioImpl.State.STOPED_WITH_ANSWERS)
{
alert = "alert-danger";
}
%>
 
<div class="panel panel-default">
<a name="NOWTASK"> </a>
<div class="panel panel-primary">
<div class="panel-heading">
Tarefas Disponiveis
 
<label class="alert <%=alert%> alert-small">
<bean:message key="questionario.state.${Questionario.state}"/>
</label>
 
</div>
<div class="panel-body">
 
<html:errors/>
<jomm:messages/>
<jsp:include page="questionarioState${Questionario.state}.jsp"/>
</div>
</div>
 
 
<div class="row">
<div class="row-centered">
<div class="panel panel-default">
<div class="panel-heading">Tarefas por realizar</div>
<div class="panel-body">
 
 
<%
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.CREATED.getPosition())
{
179,7 → 192,7
<div class="alert alert-disabled col-md-2 col-sm-2">
<bean:message key="questionario.state.CREATED"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.ASSIGNATION_DETAILS.getPosition())
188,7 → 201,7
<div class="alert alert-disabled col-md-2 col-sm-2">
<bean:message key="questionario.state.ASSIGNATION_DETAILS"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.ASSIGNING_ANSWERS_PROCESSEMENT.getPosition())
197,7 → 210,7
<div class="alert alert-disabled col-md-2 col-sm-2">
<bean:message key="questionario.state.ASSIGNING_ANSWERS_PROCESSEMENT"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.ASSIGNED_ANSWERS.getPosition())
206,7 → 219,7
<div class="alert alert-disabled col-md-2 col-sm-2">
<bean:message key="questionario.state.ASSIGNED_ANSWERS"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.PROCESSING.getPosition())
224,7 → 237,7
<div class="alert alert-disabled col-md-2 col-sm-2">
<bean:message key="questionario.state.PROCESSING_WITH_ANSWERS"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.CLOSED.getPosition())
233,7 → 246,7
<div class="alert alert-disabled col-md-2 col-sm-2">
<bean:message key="questionario.state.CLOSED"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.PROCESSING_OLAP.getPosition())
242,7 → 255,7
<div class="alert alert-disabled col-md-2 col-sm-2">
<bean:message key="questionario.state.PROCESSING_OLAP"/>
</div>
<div class="col-md-1 col-sm-1 vcenter alert"><span class="glyphicon glyphicon-chevron-right"/></div>
<div class="col-md-1 col-sm-1 vcenter alert hidden-xs"><span class="glyphicon glyphicon-chevron-right"/></div>
<%
}
if( questionario.getStateEnum().getPosition() < QuestionarioImpl.State.OLAP.getPosition())
254,11 → 267,10
<%
}
%>
 
 
</div>
</div>
</div>
<html:link styleClass="btn btn-success" action="/admin/listQuestionarios">Voltar</html:link>
</div>
</div>
</div>
/branches/v3/impl/src/web/admin/questionarios/questionarioStatePROCESSING_OLAP.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado processando OLAP disponiveis
/branches/v3/impl/src/web/admin/questionarios/questionarioStateOLAP.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado Cubos OLAP terminados
/branches/v3/impl/src/web/admin/questionarios/questionarioStateSTOPED_WITH_ANSWERS.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado Parado para responder com Respostas
/branches/v3/impl/src/web/admin/questionarios/questionariosList.jsp
21,9 → 21,11
 
<div class="panel panel-primary">
<div class="panel-heading clearfix">
Questionários <html:link styleClass="btn btn-default btn-sm pull-right" action="/admin/newQuestionario">Criar Novo <span class="glyphicon glyphicon-plus"> </span></html:link>
Questionários <html:link styleClass="btn btn-default btn-sm pull-right" action="/admin/startNewQuestionario">Criar Novo <span class="glyphicon glyphicon-plus"> </span></html:link>
</div>
<div class="panel-body">
<html:errors/>
<jomm:messages/>
<table class="tablesortersimple">
<thead>
<tr>
34,39 → 36,70
<th>Formulário</th>
<th>Estado</th>
<th>Alterado a</th>
<th>Apagar</th>
</tr>
</thead>
<tbody>
<%
AbstractDao.getCurrentSession().beginTransaction();
List<Questionario> questionarios = DaoFactory.getQuestionarioDaoImpl().findByPage(0,10);
for(Questionario q: questionarios)
List<QuestionarioImpl> questionarios = DaoFactory.getQuestionarioDaoImpl().findSortedBy(0, 10, "id");
 
//As transacoes tem de estar fechadas para se chamar a tag initClearances
for(QuestionarioImpl q: questionarios)
{
request.setAttribute("q",q);
%>
<baco:initClearances name="q"/>
<tr>
<td>${q.id}</td>
<td>${q.year}</td>
<td>${q.semestre}</td>
<td><html:link styleClass="btn btn-default" action="/admin/adminQuestionario?questionario.id=${q.id}">Admin</html:link></td>
<td>
<html:link styleClass="btn btn-default" action="/admin/adminQuestionario?questionario.id=${q.id}">Admin</html:link></td>
<td>
<%
if(((QuestionarioImpl)q).getStateEnum().getPosition() < QuestionarioImpl.State.PROCESSING.getPosition())
if(q.getStateEnum().getPosition() < QuestionarioImpl.State.PROCESSING.getPosition())
{
%>
<html:link action="/admin/formQuestionariosPae?questionario.id=${q.id}" styleClass="btn btn-default">Editar</html:link>
<%
}
else if (q.getStateEnum().getPosition() < QuestionarioImpl.State.OLAP.getPosition())
{
%>
<html:link action="/admin/formQuestionariosPae?questionario.id=${q.id}" styleClass="btn btn-warning">Trancado</html:link>
<%
}
else
{
%>
<html:link action="/admin/formQuestionariosPae?questionario.id=${q.id}" styleClass="btn btn-warning">Em processamento</html:link>
<html:link action="/admin/formQuestionariosPae?questionario.id=${q.id}" styleClass="btn btn-success">Terminado</html:link>
<%
}
%>
</td>
<td>${q.state}</td>
<td>
<logic:equal name="q" property="state" value="OLAP">
<div class="alert alert-success alert-small" >
<bean:message key="questionario.state.${q.state}"/>
</div>
</logic:equal>
<logic:notEqual name="q" property="state" value="OLAP">
<div class="alert alert-warning alert-small">
<bean:message key="questionario.state.${q.state}"/>
</div>
</logic:notEqual>
 
</td>
<td><%=pt.estgp.estgweb.web.utils.DatesUtils.getStringFromDate(q.getUpdateDate())%></td>
<td>
<baco:clearOperation name="q" op="QUESTIONARIO_DELETE">
<button class="btn btn-danger" data-href="<%=request.getContextPath()%>/admin/deleteQuestionario.do?questionario.id=${q.id}" data-message="Tem a certeza que deseja eliminar o questionário ${q.id}?" data-toggle="modal" data-target="#confirm-ModalGeneric">
<span class="glyphicon glyphicon-remove small"> </span>
</button>
</baco:clearOperation>
 
</td>
</tr>
<%
}
/branches/v3/impl/src/web/admin/questionarios/questionarioNewEdit.jsp
1,10 → 1,9
<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="pt.estgp.estgweb.domain.IAnswersProcessor" %>
<%@ page import="pt.estgp.estgweb.domain.QuestionarioHistoryDrive" %>
<%@ page import="pt.estgp.estgweb.domain.QuestionarioImpl" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.utils.ConfigProperties" %>
<%@ page import="pt.estgp.estgweb.domain.IAnswersProcessor" %>
<%@ page import="pt.estgp.estgweb.domain.QuestionarioImpl" %>
<%@ 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" %>
103,18 → 102,13
</div>
<div class="panel-body">
 
<%
if(QuestionarioForm.getQuestionario().getStateEnum().getPosition()
>= QuestionarioImpl.State.PROCESSING.getPosition())
{
%>
<div class="alert alert-warning">
Formulário Trancado - Estado do Questionário ${QuestionarioForm.questionario.state}
</div>
<%
}
%>
 
<baco:notClearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_FORM">
<div class="alert alert-warning">
Formulário Trancado - Estado do Questionário ${QuestionarioForm.questionario.state}
</div>
</baco:notClearOperation>
 
<%
List<IAnswersProcessor> answersProcessors = QuestionarioImpl.getIAnswerProcessors();
request.setAttribute("answersProcessors",answersProcessors);
127,46 → 121,34
<script>
$(document).ready( function()
{
<%
if(QuestionarioForm.getQuestionario().getId() <= 0)
{
//por omissao tornamo-lo um pedagogico de alunos
%>
<logic:lessEqual value="0" name="QuestionarioForm" property="questionario.id">
$("#answProc").val("pt.estgp.estgweb.services.questionarios.PedagogicoAlunosProcessor");
setHistoryDrive($("#answProc").val());
<%
}
else if(QuestionarioForm.getQuestionario().getStateEnum().getPosition() > QuestionarioImpl.State.CREATED.getPosition())
{
//se for superior a criado nao permitimos modificacoes nestes selectores
%>
</logic:lessEqual>
 
<baco:notClearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_ANSWER_PROCESSOR">
$("#histDrives").prop( "disabled", true );
$("#histDrivesHidden").prop( "disabled", false );
$("#answProc").prop( "disabled", true );
<%
}
$("#answProcHidden").prop( "disabled", false );
</baco:notClearOperation>
 
//set history allays after answerproc defined
setHistoryDrive($("#answProc").val());
 
//deactivar todos os inputs caso esteja em processamento
if(QuestionarioForm.getQuestionario().getStateEnum().getPosition()
>= QuestionarioImpl.State.PROCESSING.getPosition())
{
%>
<baco:notClearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_FORM">
$('#allInputs').find('input, textarea, button, select, #editor').attr('disabled','disabled');
<%
</baco:notClearOperation>
}
%>
}
);
 
//Metodo para alterar a History dado o AnswerProcessor
//Usa o Answer Processor Contraint
function setHistoryDrive(answerProcessor)
{
<%
if(QuestionarioForm.getQuestionario().getStateEnum().getPosition() <= QuestionarioImpl.State.CREATED.getPosition())
{
%>
$("#histDrives").prop( "disabled", false );
<baco:clearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_ANSWER_PROCESSOR">
 
$("#histDrivesHidden").prop( "disabled", true );
$("#histDrives").removeAttr( "disabled");
$("#histDrives").val("");
<%
for(IAnswersProcessor iAnswersProcessor: answersProcessors)
181,7 → 163,9
if(answerProcessor == '<%=iAnswersProcessor.getClass().getName()%>')
{
$("#histDrives").val('<%=hD.getId()%>');
$("#histDrives").prop( "disabled", true );
$("#histDrivesHidden").val('<%=hD.getId()%>');
$("#histDrives").prop("disabled",true);
$("#histDrivesHidden").prop( "disabled", false );
}
<%
break;
190,28 → 174,23
}
}
%>
<%
}
%>
</baco:clearOperation>
}
</script>
 
<%
if(QuestionarioForm.getQuestionario().getStateEnum().getPosition()
> QuestionarioImpl.State.CREATED.getPosition())
{
%>
<div class="alert alert-info">
Estado ${QuestionarioForm.questionario.state}
</div>
<p>Edição de tipo de questionário trancada</p>
<%
}
%>
<baco:notClearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_ANSWER_PROCESSOR">
<p>
Estado: <label class="alert alert-warning alert-small">
<bean:message key="questionario.state.${QuestionarioForm.questionario.state}"/>
</label>
</p>
<div class="alert alert-danger alert-small">A alteração do processador de respostas está trancado devido ao estado em que o questionário se encontra</div>
</baco:notClearOperation>
 
<div class="form-group">
<label class="control-label col-sm-2">Processador de Respostas</label>
<div class="col-sm-10">
 
<html:hidden styleId="answProcHidden" styleClass="form-control" property="questionario.iAnswersProcessor" disabled="true"/>
<html:select styleId="answProc" styleClass="form-control" property="questionario.iAnswersProcessor" onchange="setHistoryDrive($(this).val());">
<option value=""></option>
<html:optionsCollection name="answersProcessors" label="title" value="class.name"/>
222,6 → 201,7
<div class="form-group">
<label class="control-label col-sm-2">Categoria Histórica de Análise de Dados</label>
<div class="col-sm-10">
<html:hidden styleId="histDrivesHidden" styleClass="form-control" property="questionario.questionarioHistoryDrive.id" disabled="true"/>
<html:select styleId="histDrives" styleClass="form-control" property="questionario.questionarioHistoryDrive.id">
<option value=""></option>
<html:optionsCollection name="historyDrives" label="codeName" value="id"/>
273,19 → 253,12
<div class="col-sm-12">
 
<h3>Texto Introdutório do Questionário</h3>
<%
if(QuestionarioForm.getQuestionario().getStateEnum().getPosition()
>= QuestionarioImpl.State.PROCESSING.getPosition())
{
%>
<baco:notClearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_FORM">
<div style="border:1px solid gray">
${QuestionarioForm.questionario.introHtml}
${QuestionarioForm.questionario.introHtml}
</div>
<%
}
else
{
%>
</baco:notClearOperation>
<baco:clearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_FORM">
<div class="btn-toolbar" data-role="editor-toolbar" data-target="#editor">
<!-- <div class="btn-group">
<a class="btn dropdown-toggle" data-toggle="dropdown" title="Font"><i class="aweicon-font"></i><b class="caret"></b></a>
373,20 → 346,14
</div>
<div id="editor" class="dropable">
</div>
<%
}
%>
</baco:clearOperation>
</div>
</div>
 
<html:hidden styleId="introHtml" property="questionario.introHtml"/>
 
 
 
 
<hr/>
 
 
<%
 
for(int i = 1; i <= 40; i ++)
500,17 → 467,10
</div>
 
 
<%
if(QuestionarioForm.getQuestionario().getStateEnum().getPosition()
< QuestionarioImpl.State.PROCESSING.getPosition())
{
%>
<button type="button" class="btn btn-success" onclick="submitQuestionarioForm(form);"><bean:message key="confirm"/></button>
<%
}
%>
 
<button type="button" class="btn btn-danger" onclick="window.history.back()"><bean:message key="cancel"/></button>
<baco:clearOperation name="QuestionarioForm" property="questionario" op="QUESTIONARIO_SAVE_FORM">
<button type="button" class="btn btn-success" onclick="submitQuestionarioForm(form);"><bean:message key="confirm"/></button>
</baco:clearOperation>
<html:link action="/admin/listQuestionarios" styleClass="btn btn-danger"><bean:message key="cancel"/></html:link>
</div>
 
</div>
/branches/v3/impl/src/web/admin/questionarios/questionarioStateASSIGNED_ANSWERS.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado Respostas Atribuidas Tarefas disponiveis
/branches/v3/impl/src/web/admin/questionarios/questionarioStateCREATED.jsp
New file
0,0 → 1,16
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<jsp:useBean id="Questionario" type="pt.estgp.estgweb.domain.QuestionarioImpl" scope="request"/>
<p>${Questionario.iAnswersProcessorClass.title}:</p>
<p>
<html:link styleClass="btn btn-default" action="/admin/questionariosPaeStartAfectacoes?questionario.id=${Questionario.id}">
Iniciar Afectações Especificas <span class="glyphicon glyphicon-wrench"/>
</html:link>
</p>
 
/branches/v3/impl/src/web/admin/questionarios/questionarioStateCLOSED.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado Fechado
/branches/v3/impl/src/web/admin/questionarios/questionarioStatePROCESSING_WITH_ANSWERS.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado Aberto para Responder com Respostas
/branches/v3/impl/src/web/admin/questionarios/questionarioStateASSIGNING_ANSWERS_PROCESSEMENT.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado Atribuindo Respostas Tarefas disponiveis
/branches/v3/impl/src/web/admin/questionarios/questionarioStatePROCESSING.jsp
New file
0,0 → 1,9
<%@ 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
Estado Aberto para Responder
/branches/v3/impl/src/web/admin/questionarios/pedagogicoEstudante/pedagogicoEstudanteCoursesSelection.jsp
New file
0,0 → 1,112
<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="pt.estgp.estgweb.domain.Course" %>
<%@ page import="pt.estgp.estgweb.domain.QuestionarioImpl" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="pt.estgp.estgweb.domain.views.CourseView" %>
<%@ page import="pt.estgp.estgweb.utils.ConfigProperties" %>
<%@ page import="pt.estgp.estgweb.web.utils.RequestUtils" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.IServiceManager" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.ServiceManager" %>
<%@ page import="java.util.List" %>
<%@ page 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/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<%
long questionarioId = Long.parseLong(request.getParameter("questionarioId"));
IServiceManager sm = ServiceManager.getInstance();
String[] names = {"questionarioId"};
Object[] args = {questionarioId};
QuestionarioImpl questionario = (QuestionarioImpl) sm.execute(RequestUtils.getRequester(request, response),"loadQuestionarioAdmin",args,names);
request.setAttribute("Questionario", questionario);
 
 
 
AbstractDao.getCurrentSession().beginTransaction();
 
List<String> institutionCodes = ConfigProperties.getListValues("questionario.instituition.");
 
%>
<div class="container-fluid">
<script>
function selectAll(code,source)
{
$('#institution' + code).find('.courseCheck').each(
function()
{
this.checked = $(source).prop('checked');
});
}
</script>
<%
for(String institutionCode: institutionCodes)
{
String institutionName = ConfigProperties.getProperty("institution.code." + institutionCode);
List<Course> courses = DaoFactory.getCourseDaoImpl().findCoursesWithUnitsIn(questionario.getYear(),institutionCode);
%>
<div class="panel panel-default" id="institution<%=institutionCode%>">
<div class="panel-heading">
Cursos da <%=institutionName%>
</div>
<div class="panel-body">
 
<table class="tablesorterfiltered">
<thead>
<tr>
<th>Codigo</th>
<th>Tipo de Curso</th>
<th>Curso</th>
<th>Papel Comissão Curso</th>
<th>Unidades</th>
<th class="filter-false" data-sorter="false">
<input type="checkbox" onchange="selectAll('<%=institutionCode%>',this)">
</th>
</tr>
</thead>
<tbody>
<%
for(Course course: courses)
{
int unitsSize=DaoFactory.getCourseDaoImpl().countCoursesUnits(questionario.getYear(), course.getId());
CourseView cv = new CourseView(course);
request.setAttribute("CourseView",cv);
%>
<tr>
<td>${CourseView.code}</td>
<td><bean:message key="course.${CourseView.degreeCleanCode}"/></td>
<td>${CourseView.name}</td>
<td>
<logic:notEmpty name="CourseView" property="validationRole">
<bean:message key="user.role.${CourseView.validationRole}"/>
</logic:notEmpty>
<logic:empty name="CourseView" property="validationRole">
Papel não atribuido (Corrigir Situação)
</logic:empty>
</td>
<td><%=unitsSize%></td>
<td>
<input class="courseCheck" type="checkbox" />
</td>
</tr>
<%
}
%>
</tbody>
</table>
</div>
</div>
<%
}
%>
 
 
 
</div>
 
<%
AbstractDao.getCurrentSession().getTransaction().commit();
%>
/branches/v3/impl/src/web/admin/questionarios/pedagogicoEstudante/topnavQuestionarioPedagogicoCoursesAdmin.jsp
New file
0,0 → 1,13
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="jomm.web.utils.NavPlaceServer"%>
<%@ page import="jomm.web.utils.TopNav" %>
<%
Long questionarioId = Long.parseLong(request.getParameter("questionarioId"));
TopNav topNav = NavPlaceServer.getInstance().createTopNav(request);
topNav.addNavPlace("/user/startHome.do", "intranet.separator.home.back");
topNav.addNavPlace("/admin/listQuestionarios.do", "surveys");
topNav.addNavPlace("/admin/adminQuestionario.do?questionario.id=" + questionarioId, "survey.admin");
topNav.addNavPlace(null, "questionarios.choose.courses");
%>
<jsp:include page="/layout/topnav.jsp"/>
/branches/v3/impl/src/web/css/style.css
26,6 → 26,11
}
 
 
.alert-small
{
padding: 3px !important;
margin-bottom: 3px !important;
}
 
 
 
/branches/v3/impl/src/web/layout/headerTools.jsp
51,3 → 51,34
 
</div>
</div>
 
 
 
<script>
$(document).ready(function(){
$('.confirmModal').on('show.bs.modal', function(e) {
$(this).find('.btn-ok').attr('href', $(e.relatedTarget).data('href'));
$(this).find('.ConfirmMessageToUser').html($(e.relatedTarget).data('message'));
});
});
</script>
<div class="modal fade confirmModal" id="confirm-ModalGeneric" tabindex="-1" role="dialog" >
<div class="modal-dialog" data-width="450" style="display: block; width: 450px; margin-top: 50px;" aria-hidden="false">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Tem a certeza que deseja efectuar a seguinte operação?</h4>
</div>
<div class="modal-body">
 
<p class="ConfirmMessageToUser">
 
</p>
 
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
<a class="btn btn-danger btn-ok">Sim</a>
</div>
</div>
</div>
</div>