Skip to content
Snippets Groups Projects
Select Git revision
  • 3bbc2af34f015bc08efa5dc53c48946eb6ced5e3
  • master default
  • dja
  • dja_various_fixes
  • dja_differentiate_same_user_connections
  • dja_fix_bugs
  • dja_guest
  • dja_guests
  • dja_sign_out_without_race_conditions
  • dja_subgroups
  • dua_subgroups
  • dja_groups_2
  • dja_groups
  • dja_heroku_11_7_2024
  • dja_share_files
  • dja_execute_files_aux_2
  • dja_execute_files_aux
  • dja_execute_files
  • dja_files_page
  • dja-create-main-button
  • feature/aristas-metadata-vertices
  • v2.0
  • v1.0
23 results

main.ts

Blame
  • calificarEntrega.component.ts 2.97 KiB
    import { Component } from '@angular/core';
    import { DialogComponent, DialogService } from "ng2-bootstrap-modal";
    import { Archivo, Evaluacion } from '../../shared/objects/archivo';
    
    export interface ConfirmModel {
      cedula:string;
      archivo: Archivo;
      parentContext: any;
    }
    @Component({  
        selector: 'confirm',
        template: `<div class="modal-dialog" style="margin-top:100px;">
                    <div class="modal-content">
    
                       <div class="modal-header">
                          <h5 class="modal-title">Calificar entrega</h5> 
                          <button type="button" class="close" (click)="close()" style="margin-left:8px;">&times;</button>
                       </div>
                       
                       <div class="modal-body">
                        <form>                      
                          <div class="form-group">
                            <label for="message-text" class="form-control-label">Calificacion (1-100):</label>
                            <input type="number" class="form-control" [(ngModel)]="nota" min=1 max=100 [ngModelOptions]="{standalone: true}" >                        
                          </div>
                          <div class="form-group">
                            <label for="message-text" class="form-control-label">Detalle:</label>
                            <textarea class="form-control" id="message-text" [(ngModel)]="descripcion" [ngModelOptions]="{standalone: true}" ></textarea>
                          </div>
                        </form>
                      </div>
    
                      <div class="modal-footer">
                        <button type="button" class="btn btn-secondary" (click)="cancel()">Cancelar</button>
                        <button type="button" class="btn btn-success" (click)="confirm()">Calificar</button>
                      </div>
    
                     </div>
                  </div>`
    })
    export class CalificarEntrega extends DialogComponent<ConfirmModel, boolean> implements ConfirmModel {
      descripcion: string = "";
      cedula: string;
      archivo: Archivo;
      nota: number = 1;
    
      parentContext: any;
    
      constructor(dialogService: DialogService) {
        super(dialogService);
        
      }
    
      ngOnInit() {
        if(this.archivo.evaluacion){
          this.descripcion = this.archivo.evaluacion.descripcion;
          this.nota = this.archivo.evaluacion.nota;
        }
      }
    
      confirm() {
        var evaluacion = new Evaluacion();
        evaluacion.cedulaDocente = this.cedula;
        evaluacion.descripcion = this.descripcion;
        evaluacion.nota = this.nota;
        if(this.nota>0 && this.nota<100){
          this.parentContext.haskellService.calificarArchivo(this.archivo.id,evaluacion )
           .subscribe(
            evaluacion => {
              this.parentContext.notifService.success("Archivo evaluado");
              this.archivo.evaluacion = evaluacion;
              this.close();
            }, 
            error => {
              this.parentContext.notifService.error(error);
            });
        }else{
          this.parentContext.notifService.error("Calificacion fuera de rango");
        }
      }
    
      cancel(){
        this.close();
      }
      
    }