Rev 1728 | Rev 1730 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="pt.estgp.estgweb.domain.CourseSchool" %>
<%@ page import="pt.estgp.estgweb.domain.CourseSchoolImpl" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="pt.estgp.estgweb.domain.ConfigurationSeparator" %>
<%@ page import="pt.estgp.estgweb.domain.ConfigurationSeparatorImpl" %>
<%@ 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-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="bacoTags" %>
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>
<baco:isAdmin>
<%
AbstractDao.getCurrentSession().beginTransaction();
ArrayList<CourseSchool> schools = (ArrayList<CourseSchool>) DaoFactory.getCourseSchoolDaoImpl().findAll();
String jsonArraySchools = CourseSchoolImpl.getJson(schools);
ArrayList<ConfigurationSeparator> seps = (ArrayList<ConfigurationSeparator>) DaoFactory.getConfigurationSeparatorDaoImpl().findAll();
String jsonArraySeps = ConfigurationSeparatorImpl.getJson(seps);
request.setAttribute("jsonArraySchools",jsonArraySchools);
request.setAttribute("schools",schools);
request.setAttribute("jsonArraySeps",jsonArraySeps);
request.setAttribute("seps",seps);
%>
<div class="container-fluid">
<div id="configSepModule"
ng-app="configSepModule"
ng-controller="configSepModuleController">
<script>
//DECLARACAO DA APLICACAO LOCAL EM ANGULAR
var configSepModule = angular.module('configSepModule', ['ui.tree','checklist-model']);
GLOBAL_BacoAngularAppDependencies.push('configSepModule');
configSepModule.controller('configSepModuleController', function($scope) {
$scope.schools = ${jsonArraySchools};
$scope.seps = ${jsonArraySeps};
$scope.setDirty = function(school)
{
school.dirty = "true";
}
$scope.save = function(separator)
{
var d = JSON.stringify(separator);
widgetCallWithActionParameters(
"<%=request.getContextPath()%>/admin/setConfigurationSeparators.do",
"updateConfigSeparator",
{
"separatorJson" : d
},
".form-horizontal",
function(separatorJson)
{
separatorJson.dirty = "false";
$scope.$apply();
}
);
}
$scope.removeSeparator = function(separator,$index)
{
var d = JSON.stringify(separator);
widgetCallWithActionParameters(
"<%=request.getContextPath()%>/admin/setConfigurationSeparators.do",
"removeConfigSeparator",
{
"separatorJson" : d
},
".form-horizontal",
function(separatorJson)
{
$scope.seps.splice($index,1);
$scope.$apply();
}
);
}
$scope.newSeparator = function()
{
widgetCallWithActionParameters(
"<%=request.getContextPath()%>/admin/setConfigurationSeparators.do",
"newConfigSeparator",
{},
".form-horizontal",
function(separatorJson)
{
separatorJson.dirty = "true";
$scope.seps.push(separatorJson);
$scope.$apply();
}
);
}
});
</script>
<p><label class="label-info">Informação sobre o Módulo:</label> </p>
<ul>
<li>Papeis das Escolas são usados para decidir quem vê o separador</li>
<li>Necessita de confirmação de Funcionários, Alunos e Professores</li>
<li>Necessita de escolha das escolas afetas</li>
<li>Necessita de escolha se aparece no DashBoard (PAE) ou eEscola (BACO)</li>
<li>Necessita de escolha da pasta do Virtual File System a escolher</li>
<li>O Módulo de escrita de separadores seprators.jsp depende deste sistema</li>
</ul>
<button class="btn btn-default" data-toggle="collapse" data-target=".languageNames">Mostrar Campos Multinliguisticos</button>
<button class="btn btn-success pull-right" ng-click="newSchool()"><span class="glyphicon glyphicon-plus"/></button>
<div class="form-horizontal">
<div class="web-messages">
</div>
<table class="tablesorter-blue">
<thead>
<tr>
<th>Identificador</th>
<th style="width: 30%">Nome</th>
<th>Estado</th>
<th>Pasta VFS</th>
<th>Escolas</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr ng-class="{dirty: d.dirty=='true'}" ng-repeat="d in seps | orderBy:id:false">
<td>
<input class="form-control" type="hidden" ng-model="d.id">
<div class="row">
<div class="col-md-8">
{{d.id}}
</div>
<div class="col-md-2">*</div>
</div>
</td>
<td>
<input class="form-control" type="text" ng-model="d.name" ng-keyup="setDirty(d)">
<div class="languageNames collapse">
EN:<input class="form-control" type="text" ng-model="d.nameEn" ng-keyup="setDirty(d)">
ES:<input class="form-control" type="text" ng-model="d.nameEs" ng-keyup="setDirty(d)">
FR:<input class="form-control" type="text" ng-model="d.nameFr" ng-keyup="setDirty(d)">
</div>
</td>
<td>
<select class="chosenOff" ng-model="d.active" ng-change="setDirty(d)">
<option ng-value="true" ng-selected="d.active == true">Ativo</option>
<option ng-value="false" ng-selected="d.active == false">Inativo</option>
</select>
</td>
<td></td>
<td>
<div class="list-group">
<div class="list-group-item" style="text-align: left" ng-repeat="school in schools" data-ng-element-ready="setCheck()">
<input style="zoom: 1.5;" class="schoolCheck" type="checkbox" checklist-model="d.schoolsIds" checklist-value="school.id"> - {{school.name}}
</div>
</div>
</td>
<td>
<button type="button" class="btn btn-success btn-xs" ng-click="save(d)">
<span class="glyphicon glyphicon-ok"/>
</button>
</td>
<td>
<bacoTags:confirm msg="Tem a certeza que deseja remover o separador {{d.name}}" targetFunction="angular.element($('#configSepModule')).scope().removeSchool({{d}},{{$index}});angular.element($('#configSepModule')).scope().$apply();" btnClass="btn btn-danger btn-xs" icon="glyphicon glyphicon-remove"/>
</td>
</tr>
</tbody>
</table>
<p class="label label-warning">* - A sigla é o identificador do departamento, altere a sigla apenas se perceber as suas implicações. Existem Classes no sistema que dependem da sigla do departamento, a sigla tem de ser unica</p>
<%--
<model:id name="school" property="id"/>
<model:field name="school" property="name"/>
<model:field name="school" property="nameEn"/>
<model:field name="school" property="nameEs"/>
<model:field name="school" property="nameFr"/>
<model:remove name="school"/>
--%>
</div>
<pre>{{seps | json}}</pre>
</div>
</div>
<%
AbstractDao.getCurrentSession().getTransaction().commit();
%>
</baco:isAdmin>
Generated by GNU Enscript 1.6.5.2.