boton reload

parent b12e44b3
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -48,23 +48,28 @@
<p class="ml-2 mt-2 liceomsg" *ngIf="!liceoSeleccionado">Debe seleccionar un liceo ...</p>
<p class="ml-2 mt-2 liceomsg" *ngIf="!!liceoSeleccionado && loading">Cargando <img width=40 src="assets/img/btnloading.gif"/></p>
<table *ngIf="!!liceoSeleccionado && !loading" class="table table-hover">
<table *ngIf="seleccionaLiceo && !loading" class="table table-hover">
<thead>
<tr>
<th scope="col">Dato</th>
<th scope="col">
<button (click)="reloadES()" class="btn btn-sm btn-secondary" ngbPopover="Recargar Estado subsistema" triggers="mouseenter:mouseleave" placement="bottom">
<i class="fa fa-refresh"></i>
</button>
Dato
</th>
<th scope="col">Cantidad</th>
</tr>
</thead>
<tbody>
<tr>
<td>Nombre Liceo
</td>
<td>Nombre Liceo</td>
<td>{{ liceoSeleccionado.nombre }}</td>
</tr>
<tr>
<td>URL Liceo</td>
<td>
<p class="link" (click)="goto(liceoSeleccionado.url);">{{liceoSeleccionado.url}}</p>
<p *ngIf="liceoSeleccionado.url != 'N/A'" class="link" (click)="goto(liceoSeleccionado.url);">{{liceoSeleccionado.url}}</p>
<p *ngIf="liceoSeleccionado.url == 'N/A'">{{liceoSeleccionado.url}}</p>
</td>
</tr>
<tr>
......@@ -96,7 +101,7 @@
</div>
<div class="col-7">
<select [(ngModel)]="cursoSeleccionado" class="form-control" [ngModelOptions]="{standalone: true}">
<option value="undefined">Seleccionar curso</option>
<option value=undefined>Seleccionar curso</option>
<option *ngFor="let curso of liceoSeleccionado.cursos" [ngValue]="curso">{{curso.nombre}}</option>
</select>
</div>
......@@ -119,13 +124,23 @@
<td class="borderleft">Archivos compartidos (período)
&nbsp;&nbsp;<i triggers="mouseenter:mouseleave" class="fa fa-info-circle fa-4 helpinfo" placement="top" ngbPopover="{{help.textSharedFiles}}" popoverTitle="{{help.titleSharedFiles}}"></i>
</td>
<td class="borderright">{{cursoSeleccionado.archivosCompartidos.length}}&nbsp;&nbsp;<p *ngIf="cursoSeleccionado.archivosCompartidos.length>0" class="link" (click)="mostrarModalDetalle('share');">detalle</p> </td>
<td class="borderright">
{{!!cursoSeleccionado.archivosCompartidos ? cursoSeleccionado.archivosCompartidos.length : 0}}&nbsp;&nbsp;
<p *ngIf="!!cursoSeleccionado.archivosCompartidos && cursoSeleccionado.archivosCompartidos.length>0" class="link" (click)="mostrarModalDetalle('share');">
detalle
</p>
</td>
</tr>
<tr *ngIf="seleccionaCurso" class="gray">
<td class="borderleft borderbottom">Tareas/entregas
&nbsp;&nbsp;<i triggers="mouseenter:mouseleave" class="fa fa-info-circle fa-4 helpinfo" placement="top" ngbPopover="{{help.textTask}}" popoverTitle="{{help.titleTask}}"></i>
</td>
<td class="borderright borderbottom">{{cursoSeleccionado.tareasExistentes.length}}&nbsp;&nbsp;<p *ngIf="cursoSeleccionado.tareasExistentes.length>0" class="link" (click)="mostrarModalDetalle('task');">detalle</p> </td>
<td class="borderright borderbottom">
{{!!cursoSeleccionado.tareasExistentes ? cursoSeleccionado.tareasExistentes.length : 0}}&nbsp;&nbsp;
<p *ngIf="!!cursoSeleccionado.tareasExistentes && cursoSeleccionado.tareasExistentes.length>0" class="link" (click)="mostrarModalDetalle('task');">
detalle
</p>
</td>
</tr>
</tbody>
</table>
......@@ -163,7 +178,11 @@
<table class="table table-hover">
<thead>
<tr>
<th class="simLink" (click)="setOrder('nombre')" scope="col">Nombre <i *ngIf="tipoOrden=='nombre-down'" class="fa fa-arrow-down" aria-hidden="true"></i> <i *ngIf="tipoOrden=='nombre-up'" class="fa fa-arrow-up" aria-hidden="true"></i> </th>
<th class="simLink" (click)="setOrder('nombre')" scope="col">
<button style="z-index: 999;" (click)="reloadTiempos($event)" class="btn btn-sm btn-secondary" ngbPopover="Recargar Estado subsistema" triggers="mouseenter:mouseleave" placement="bottom">
<i class="fa fa-refresh"></i>
</button>
Nombre <i *ngIf="tipoOrden=='nombre-down'" class="fa fa-arrow-down" aria-hidden="true"></i> <i *ngIf="tipoOrden=='nombre-up'" class="fa fa-arrow-up" aria-hidden="true"></i> </th>
<th class="simLink" (click)="setOrder('tipo')" scope="col">Tipo <i *ngIf="tipoOrden=='tipo-down'" class="fa fa-arrow-down" aria-hidden="true"></i> <i *ngIf="tipoOrden=='tipo-up'" class="fa fa-arrow-up" aria-hidden="true"></i> </th>
<th class="simLink" (click)="setOrder('max')" scope="col">Maximo <i *ngIf="tipoOrden=='max-down'" class="fa fa-arrow-down" aria-hidden="true"></i> <i *ngIf="tipoOrden=='max-up'" class="fa fa-arrow-up" aria-hidden="true"></i> </th>
<th class="simLink" (click)="setOrder('promediodia')" scope="col">Promedio <i *ngIf="tipoOrden=='promediodia-down'" class="fa fa-arrow-down" aria-hidden="true"></i> <i *ngIf="tipoOrden=='promediodia-up'" class="fa fa-arrow-up" aria-hidden="true"></i> </th>
......
......@@ -32,6 +32,7 @@ export class EstadoSistemaComponent implements OnInit {
tipoOrden: string = 'promediodia-up';
setOrder(criteria: string){
console.log ('setOrder')
if (this.tipoOrden === criteria + '-up')
this.tipoOrden = this.tipoOrden.replace('-up','-down');
else if (this.tipoOrden === criteria + '-down') {
......@@ -64,12 +65,23 @@ export class EstadoSistemaComponent implements OnInit {
constructor(private dialogService: DialogService, private estadosistemaservice: EstadoSistemaService, private authenticationService: AuthenticationService,) { }
reloadES(){
this.cursoSeleccionado = undefined;
this.actualizarDataEstadoSistema();
}
reloadTiempos(event){
console.log ('reload tiempos')
this.tipoFuncion = undefined;
this.nombreFuncion = undefined;
this.actualizarDataTiempos();
event.stopPropagation();
}
async ngOnInit() {
this.loading = false;
this.schoolList = await this.authenticationService.getAllSchools().toPromise();
//if (this.schoolList.length > 1) {
this.schoolList.push({liceoid: 0, nombre : 'Todos'});
//}
this.schoolList.push({liceoid: 0, nombre : 'Todos'});
const user : Usuario = Usuario.getUser();
this.esAdminLiceo = user.esAdminLiceo();
if (this.esAdminLiceo){
......@@ -80,11 +92,6 @@ export class EstadoSistemaComponent implements OnInit {
cambioLiceo() {
this.cursoSeleccionado = undefined;
if (this.liceoSeleccionado.liceoid==0){
//cambiar opciones cursos
}else{
//cambiar opciones cursos
}
this.actualizarData();
}
......@@ -101,24 +108,17 @@ export class EstadoSistemaComponent implements OnInit {
return { prom: this.toFixedDown(promedioTotal,1), max: maximo , min: minimo };
}
actualizarData() {
actualizarDataEstadoSistema() {
if (!this.liceoSeleccionado || this.liceoSeleccionado=='undefined')
return;
const liceo = !!this.liceoSeleccionado ? this.liceoSeleccionado.liceoid : null;
const inicio = this.fechainicio ? ((this.fechainicio.year + '-') + (this.fechainicio.month + '-') + (this.fechainicio.day)) : '1970-01-01';
const fin = this.fechafin ? ((this.fechafin.year + '-') + (this.fechafin.month + '-') + (this.fechafin.day)) : '3000-01-01';
this.loadingTiempos = true;
this.estadosistemaservice.getTiempos(liceo, inicio, fin).subscribe(
data => {
this.loadingTiempos = false;
this.tiempos = data;
this.estadistico = this.actualizarEstadistico(this.tiempos);
},
error => {
this.loadingTiempos = false;
console.log(error);
}
);
this.loading = true;
this.estadosistemaservice.getEstadoSistema(liceo, inicio, fin).subscribe(
this.estadosistemaservice.getEstadoSistema(liceo, inicio, fin).subscribe(
dataEstadoSistema => {
this.loading = false;
console.log ('dataEstadoSistema: ' , dataEstadoSistema)
......@@ -135,6 +135,31 @@ export class EstadoSistemaComponent implements OnInit {
);
}
actualizarDataTiempos() {
if (!this.liceoSeleccionado || this.liceoSeleccionado=='undefined')
return;
const liceo = !!this.liceoSeleccionado ? this.liceoSeleccionado.liceoid : null;
const inicio = this.fechainicio ? ((this.fechainicio.year + '-') + (this.fechainicio.month + '-') + (this.fechainicio.day)) : '1970-01-01';
const fin = this.fechafin ? ((this.fechafin.year + '-') + (this.fechafin.month + '-') + (this.fechafin.day)) : '3000-01-01';
this.loadingTiempos = true;
this.estadosistemaservice.getTiempos(liceo, inicio, fin).subscribe(
data => {
this.loadingTiempos = false;
this.tiempos = data;
this.estadistico = this.actualizarEstadistico(this.tiempos);
},
error => {
this.loadingTiempos = false;
console.log(error);
}
);
}
actualizarData() {
this.actualizarDataTiempos();
this.actualizarDataEstadoSistema();
}
toFixedDown(num, digits){
let re = new RegExp("(\\d+\\.\\d{" + digits + "})(\\d)"),
......@@ -182,10 +207,17 @@ export class EstadoSistemaComponent implements OnInit {
get seleccionaCurso(): boolean {
return this.cursoSeleccionado !== undefined &&
this.cursoSeleccionado !== 'undefined' &&
this.cursoSeleccionado !== null &&
this.cursoSeleccionado != -1;
}
get seleccionaLiceo(): boolean {
return this.liceoSeleccionado !== undefined &&
this.liceoSeleccionado !== 'undefined' &&
this.liceoSeleccionado !== null;
}
get calcularAccesoACurso(): number{
if (!!this.liceoSeleccionado && !!this.liceoSeleccionado.cursos) {
let cantidad = 0;
......
......@@ -9,10 +9,10 @@
<div *ngIf="loginCommands" id="loginCommands">
<div class="form-group">
<input type="text" (ngModelChange)="cedulaChange($event)" [(ngModel)]=model.cedula name="cedula" class="form-control input-underline input-lg" placeholder="Usuario">
<input type="text" (ngModelChange)="cedulaChange($event)" [(ngModel)]="model.cedula" name="cedula" class="form-control input-underline input-lg" placeholder="Usuario">
</div>
<div class="form-group">
<input type="password" [(ngModel)]=model.password (keyup.enter)=login() name="password" class="form-control input-underline input-lg" placeholder="Contraseña">
<input type="password" [(ngModel)]="model.password" (keyup.enter)=login() name="password" class="form-control input-underline input-lg" placeholder="Contraseña">
</div>
<div *ngIf="mostrarSelect" class="rectangle">
<img *ngIf="!liceoscargados" width=50 src="assets/img/cargaliceo.gif" alt="CARGA LICEO">
......
......@@ -37,9 +37,16 @@ export class LoginComponent implements OnInit {
private genericServices : Services,
private sessionService: SessionService,
private authenticationService: AuthenticationService,
) { }
) {
console.log ('reset1');
this.model.cedula = '';
this.model.password = '';
}
ngOnInit() {
console.log ('reset2');
this.model.cedula = '';
this.model.password = '';
this.mostrarSelect = true;
this.showPage = true;
this.loginCommands = true;
......@@ -49,12 +56,13 @@ export class LoginComponent implements OnInit {
// get return url from route parameters or default to '/'
//this.returnUrl = this.route.snapshot.queryParams['returnUrl'] || '/matefun';
this.returnUrl = this.route.snapshot.queryParams['returnUrl'] || '/courseselector';
this.cedulaChange(this.model.cedula);
this.fillSelect()
}
cedulaChange(event){
console.log ('ejecutashit: ' , event);
if (!this.errorCargaLiceo){
this.mostrarSelect = (event!=this.matefunAdmin)
if (!this.mostrarSelect){
......
......@@ -18,14 +18,15 @@ export interface DetalleModel {
<button type="button" class="close" (click)="close()" style="margin-left:8px;">&times;</button>
</div>
<div class="modal-body" [ngStyle]="{ 'width': tipo !== 'task' ? '700px' : '900px' }" style="text-align: center !important;">
<div style="display: inline-block !important;">
<div style="width: 100%; display: inline-block !important;">
<table class="table table-striped">
<div *ngIf="tipo!='task'" style="overflow-y: scroll; height:400px;">
<thead>
<tr>
<th scope="col">Nombre</th>
<th scope="col">Tamaño (B)</th>
<th scope="col">{{ tipo=='share' ? 'Tipo' : 'Usuario' }}</th>
<th scope="col">Tam (B)</th>
<th scope="col">Tipo</th>
<th *ngIf="tipo=='file'" scope="col">Usuario</th>
<th scope="col">Fecha</th>
<th scope="col">Liceo</th>
</tr>
......@@ -34,7 +35,8 @@ export interface DetalleModel {
<tr *ngFor="let file of modalContent">
<td title='{{file.nombre}}'>{{ this.getFileNameFromRoute(file.nombre) }}</td>
<td>{{ file.tamanio }}</td>
<td>{{ file.additionalData }}</td>
<td>{{ tipo=='file' ? file.tipo : file.additionalData }}</td>
<td *ngIf="tipo=='file'">{{ file.additionalData }}</td>
<td>{{ file.fecha }}</td>
<td>{{ file.nombreliceo }}</td>
</tr>
......@@ -43,26 +45,25 @@ export interface DetalleModel {
<div *ngIf="tipo=='task'" style="overflow-y: scroll; height:400px;">
<thead>
<tr>
<th scope="col">Nombre</th>
<th scope="col">Liceo</th>
<th scope="col">Nombre curso</th>
<th scope="col">Nombre Tarea</th>
<th scope="col">Tipo</th>
<th scope="col">Entregados</th>
<th scope="col">Corregidos</th>
<th scope="col">Totales</th>
<th scope="col">% entregados</th>
<th scope="col">% corregidos</th>
<th scope="col">Liceo</th>
<th scope="col">Total</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let tarea of modalContent">
<td>{{ tarea.nombreliceo }}</td>
<td>{{ tarea.nombrecurso }}</td>
<td>{{ tarea.nombre }}</td>
<td>{{ tarea.tipo }}</td>
<td>{{ tarea.archivosEntregados }}</td>
<td>{{ tarea.archivosCorregidos }}</td>
<td>{{ tarea.archivosEntregados }} ({{ this.toFixedDown( (tarea.archivosEntregados/tarea.archivosTotales)*100 , 1) }}%)</td>
<td>{{ tarea.archivosCorregidos }} ({{ this.toFixedDown( (tarea.archivosCorregidos/tarea.archivosTotales)*100 , 1) }}%)</td>
<td>{{ tarea.archivosTotales }}</td>
<td>{{ this.toFixedDown( (tarea.archivosEntregados/tarea.archivosTotales)*100 , 1) }}%</td>
<td>{{ this.toFixedDown( (tarea.archivosCorregidos/tarea.archivosTotales)*100 , 1) }}%</td>
<td>{{ tarea.nombreliceo }}</td>
</tr>
</tbody>
</div>
......@@ -89,7 +90,8 @@ export class DetalleComponent extends DialogComponent<DetalleModel, boolean> imp
getFileNameFromRoute(route: string){
if (!route)
return '';
return route.substring(route.lastIndexOf('/')+1);
const nameWithoutRoute = route.substring(route.lastIndexOf('/')+1);
return nameWithoutRoute.replace(/%.+?%/gi,'');
}
toFixedDown(num, digits){
......@@ -100,6 +102,9 @@ export class DetalleComponent extends DialogComponent<DetalleModel, boolean> imp
ngOnInit() {
console.log ('modalContent: ' , this.modalContent)
console.log ('tipo: ' , this.tipo)
}
}
\ No newline at end of file
......@@ -8,6 +8,8 @@ import javax.json.JsonObject;
import edu.proygrado.modelo.Alumno;
import edu.proygrado.modelo.Archivo;
import edu.proygrado.utils.Pair;
import edu.proygrado.utils.Utils;
public class AlumnoDTO implements Serializable{
......@@ -24,11 +26,11 @@ public class AlumnoDTO implements Serializable{
public AlumnoDTO(JsonObject user, List<ArchivoDTO> archivos, List<ArchivoDTO> archivosCompartidos) {
super();
this.moodleUserId = new Long(user.getInt("id"));
this.cedula = null;
this.nombre = user.containsKey("firstname") ? user.getString("firstname") : (user.containsKey("fullname") ? user.getString("fullname").split(" ")[0] : "NO-FIRSTNAME");
this.apellido = user.containsKey("lastname") ? user.getString("lastname") : (user.containsKey("fullname") ? user.getString("fullname").split(" ")[1] : "NO-LASTNAME");
Pair<String,String> names = Utils.extractName(user);
this.nombre = names.getFirst();
this.apellido = names.getSecond();
this.archivos = archivos;
this.archivosCompartidos = archivosCompartidos;
}
......
......@@ -30,7 +30,7 @@ public class RegistroArchivoDTO implements Serializable {
this.tamanio = tamanio;
this.additionalData = additionalData;
this.liceoid = liceoid;
this.fecha = fecha.get(Calendar.YEAR) + "-" + (fecha.get(Calendar.MONTH)+1) + "-" + fecha.get(Calendar.DATE);
this.fecha = fecha.get(Calendar.DATE) + "/" + (fecha.get(Calendar.MONTH)+1) + "/" + (fecha.get(Calendar.YEAR) % 100);
}
public String getNombre() {
......
......@@ -21,7 +21,7 @@ public class RegistroLoginDTO {
this.nombreliceo = nombreLiceo;
this.moodleUserId = moodleUserId;
this.moodleUserName = moodleUserName;
this.fecha = fecha.get(Calendar.YEAR) + "-" + (fecha.get(Calendar.MONTH)+1) + "-" + fecha.get(Calendar.DATE);
this.fecha = fecha.get(Calendar.DATE) + "/" + (fecha.get(Calendar.MONTH)+1) + "/" + (fecha.get(Calendar.YEAR) % 100);
}
public Long getLiceoId() {
......
......@@ -15,6 +15,7 @@ public class RegistroTareaDTO implements Serializable {
String nombreliceo;
Long liceoid;
Long cursoid;
String nombrecurso;
String fecha;
public RegistroTareaDTO() {
......@@ -22,17 +23,18 @@ public class RegistroTareaDTO implements Serializable {
}
public void setFecha(GregorianCalendar fecha) {
this.fecha = fecha.get(Calendar.YEAR) + "-" + (fecha.get(Calendar.MONTH)+1) + "-" + fecha.get(Calendar.DATE);
this.fecha = fecha.get(Calendar.DATE) + "/" + (fecha.get(Calendar.MONTH)+1) + "/" + (fecha.get(Calendar.YEAR) % 100);
}
public RegistroTareaDTO(String nombre, Long archivosEntregados, Long archivosCorregidos, Long archivosTotales,
String tipo, Long liceoid, String nombreliceo, Long cursoid, GregorianCalendar fecha) {
String tipo, Long liceoid, String nombreliceo, Long cursoid, CoursesDTO curso, GregorianCalendar fecha) {
super();
this.nombre = nombre;
this.nombreliceo = nombreliceo;
this.liceoid = liceoid;
setFecha(fecha);
this.cursoid = cursoid;
this.nombrecurso = curso!=null ? curso.getDisplayname() : "";
this.archivosEntregados = archivosEntregados;
this.archivosCorregidos = archivosCorregidos;
this.archivosTotales = archivosTotales;
......@@ -94,6 +96,14 @@ public class RegistroTareaDTO implements Serializable {
public void setNombreliceo(String nombreliceo) {
this.nombreliceo = nombreliceo;
}
public String getNombrecurso() {
return nombrecurso;
}
public void setNombrecurso(String nombrecurso) {
this.nombrecurso = nombrecurso;
}
}
......@@ -3,10 +3,13 @@ package edu.proygrado.modelo;
import java.io.Serializable;
import java.util.Map;
import javax.json.JsonObject;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import edu.proygrado.dto.RegistroArchivoDTO;
import edu.proygrado.utils.Pair;
import edu.proygrado.utils.Utils;
@Entity
public class RegistroAccesoArchivo implements Serializable {
......@@ -17,8 +20,14 @@ public class RegistroAccesoArchivo implements Serializable {
Long tamanio;
Long cantidadVeces;
public RegistroArchivoDTO toDto(Map<Long, Liceo> liceosMap) {
return new RegistroArchivoDTO(id.getRuta(), tamanio, id.getMoodleUserId().toString(), id.getFecha(), id.getTipo().toString(), id.getCursoid(), id.getLiceoid(), liceosMap.get(id.getLiceoid()).getNombre());
public RegistroArchivoDTO toDto(Map<Long, Liceo> liceosMap, Map<String, JsonObject> todosLosUsuarios) {
String usuario = id.getMoodleUserId().toString();
String personKey = String.format("%d-%d", id.getLiceoid(), id.getMoodleUserId());
if (todosLosUsuarios.containsKey(personKey)) {
Pair<String,String> names = Utils.extractName(todosLosUsuarios.get(personKey));
usuario = names.getSecond() + ", " + names.getFirst();
}
return new RegistroArchivoDTO(id.getRuta(), tamanio, usuario, id.getFecha(), id.getTipo().toString(), id.getCursoid(), id.getLiceoid(), liceosMap.get(id.getLiceoid()).getNombre());
}
public RegistroAccesoArchivo(RegistroAccesoArchivoPK id, Long tamanio, Long cantidadVeces) {
......
......@@ -30,11 +30,6 @@ public class RegistroTarea implements Serializable {
Long cursoid;
TipoRegistroTarea tipoTarea;
TipoAccionRegistroTarea tipoAccion;
public RegistroTareaDTO toDto() {
return null;
//return new RegistroTareaDTO(this.nombre, this.archivosEntregados, this.archivosCorregidos, this.archivosTotales, this.tipo.toString(), this.liceo.getLiceoPK().getLiceoId(), this.cursoid, this.fecha);
}
public RegistroTarea() {
super();
......
......@@ -46,9 +46,6 @@ public class EstadoSistemaRS {
@EJB
private GruposEJB gruposEJB;
@Inject
private HttpServletRequest httpServletRequest;
@GET
@Path("/tiempos")
......
......@@ -20,12 +20,8 @@ public class MoodleHelper {
List<StringPair> allTokenPairs = invitadoEJB.getAllMoodleTokens(matefunToken);
boolean _forceMatefunWebServicesUser = forceMatefunWebServicesUser!=null && forceMatefunWebServicesUser.length>0 && forceMatefunWebServicesUser[0];
if (_forceMatefunWebServicesUser) {
System.out.println(" *** GET getFileContents SUPERUSER");
if (_forceMatefunWebServicesUser)
allTokenPairs = allTokenPairs.subList(allTokenPairs.size()-1, allTokenPairs.size());
}else {
System.out.println(" *** GET getFileContents");
}
for (StringPair tokenPair : allTokenPairs) {
String fileContents = getFileContentsUsingToken(fileurl, tokenPair, tiempoAccesoEJB, invitadoEJB.getLiceoId(matefunToken), invitadoEJB.getMoodleUserId(matefunToken));
if (fileContents != null)
......
......@@ -132,6 +132,7 @@ public class MoodleWS {
return target;
}
private static String getWho(StringPair moodleTokenPair) {
return moodleTokenPair.getKey().equals("serviciomatefun") ? " USUARIO" : " SUPERUSUARIO";
}
......@@ -141,7 +142,7 @@ public class MoodleWS {
}
public static JsonObject POST(StringPair moodleTokenPair, String moodleApiEndpoint, String functionName, Map<String, Object> params) throws Exception {
System.out.println(" ****(1) POST " + functionName + getWho(moodleTokenPair));
//System.out.println(" ****(1) POST " + functionName + getWho(moodleTokenPair));
return MAKE_REQUEST(POST, moodleApiEndpoint, functionName, params, Arrays.asList(moodleTokenPair), null, null, null);
}
......@@ -150,12 +151,12 @@ public class MoodleWS {
if (forceSuperuser!=null && forceSuperuser.length>0 && forceSuperuser[0]) {
moodleTokenPairs = moodleTokenPairs.subList(moodleTokenPairs.size()-1, moodleTokenPairs.size());
}
System.out.println(" ****(2) POST " + functionName + getWho(moodleTokenPairs));
//System.out.println(" ****(2) POST " + functionName + getWho(moodleTokenPairs));
return MAKE_REQUEST(POST, invitadoEJB.getMoodleApiEndpoint(matefunToken), functionName, params, moodleTokenPairs, invitadoEJB.getTiempoAccesoEJB(), invitadoEJB.getLiceoId(matefunToken), invitadoEJB.getMoodleUserId(matefunToken));
}
public static JsonObject GET(StringPair moodleTokenPair, String moodleApiEndpoint, String functionName, Map<String, Object> params) throws Exception {
System.out.println(" ****(1) GET " + functionName + getWho(moodleTokenPair));
//System.out.println(" ****(1) GET " + functionName + getWho(moodleTokenPair));
return MAKE_REQUEST(GET, moodleApiEndpoint, functionName, params, Arrays.asList(moodleTokenPair), null, null, null);
}
......@@ -164,7 +165,7 @@ public class MoodleWS {
if (forceSuperuser!=null && forceSuperuser.length>0 && forceSuperuser[0]) {
moodleTokenPairs = moodleTokenPairs.subList(moodleTokenPairs.size()-1, moodleTokenPairs.size());
}
System.out.println(" ****(2) GET " + functionName + getWho(moodleTokenPairs));
//System.out.println(" ****(2) GET " + functionName + getWho(moodleTokenPairs));
return MAKE_REQUEST(GET, invitadoEJB.getMoodleApiEndpoint(matefunToken), functionName, params, moodleTokenPairs, invitadoEJB.getTiempoAccesoEJB(), invitadoEJB.getLiceoId(matefunToken), invitadoEJB.getMoodleUserId(matefunToken));
}
......
......@@ -19,6 +19,13 @@ public class Utils {
public static final int DifferenceFromGMTSeconds = 3 * 60 * 60;
public static Pair<String,String> extractName(JsonObject user){
return new Pair<String,String> (
user.containsKey("firstname") ? user.getString("firstname") : (user.containsKey("fullname") ? user.getString("fullname").split(" ")[0] : "NO-FIRSTNAME"),
user.containsKey("lastname") ? user.getString("lastname") : (user.containsKey("fullname") ? user.getString("fullname").split(" ")[1] : "NO-LASTNAME")
);
}
public static boolean esAlumno(JsonObject user) {
if (user.containsKey("roles")) {
JsonArray roles = user.getJsonArray("roles");
......
#Generated by Maven Integration for Eclipse
#Mon Jun 29 22:08:54 BRT 2020
#Sun Jul 12 21:39:54 BRT 2020
version=0.0.1-SNAPSHOT
groupId=proygrado
m2e.projectName=Servidor JEE
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment