Skip to content
Snippets Groups Projects
Commit 433d3beb authored by Martín Méndez's avatar Martín Méndez
Browse files

Ordenamiento de archivos según tipo y alfabéticamente dentor de la categoría....

Ordenamiento de archivos según tipo y alfabéticamente dentor de la categoría. (En sección Archivos) y por fecha de creación
parent 31f9cd9d
No related branches found
No related tags found
No related merge requests found
......@@ -45,7 +45,7 @@
<div class="dropdown-menu">
<a class="dropdown-item"(click)="ordenarPorTipo()" >Carpetas primero</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" (click)="ordenarPorNombre()">Nombre</a>
<a class="dropdown-item" (click)="ordenarPorFecha()">Fecha de creación</a>
</div>
</div>
......
......@@ -57,7 +57,7 @@ export class ArchivosComponent {
@ViewChild(CodemirrorComponent) codemirror: CodemirrorComponent;
ngOnInit(){
this.sortFunction = this.ordenarTipo;
this.sortFunction = 'tipo'
let cedula = this.authService.getUser().cedula;
this.loading = true;
this.haskellService.getArchivos(cedula)
......@@ -85,28 +85,94 @@ export class ArchivosComponent {
}
}
ordenarAlph(a, b){
ordenarMixto(){
//1. primero las carpetas.
this.archivosCompartidosSinDuplicados = this.archivosCompartidosSinDuplicados.sort(this.ordenarTipo);
this.directorioActual.archivos= this.directorioActual.archivos.sort(this.ordenarTipo);
var archs1 = this.directorioActual.archivos;
var archs2 = this.archivosCompartidosSinDuplicados;
var archs1_directorios = archs1.filter(
function (a) {
return a.directorio;
}
);
var archs1_archivos =archs1.filter(
function(a){
return !a.directorio;
}
);
var archs2_directorios = archs2.filter(
function (a) {
return a.directorio;
}
);
var archs2_archivos =archs2.filter(
function(a){
return !a.directorio;
}
);
//2. dentro de cada categoría ordeno alfabéticamente.
archs1_archivos = archs1_archivos.sort(this.ordenarAlph);
archs1_directorios = archs1_directorios.sort(this.ordenarAlph);
archs2_archivos = archs2_archivos.sort(this.ordenarAlph);
archs2_directorios = archs2_directorios.sort(this.ordenarAlph);
for(var i in archs1_archivos){
archs1_directorios.push(archs1_archivos[i])
}
for(var i in archs2_archivos){
archs2_directorios.push(archs2_archivos[i])
}
this.directorioActual.archivos = archs1_directorios;
this.archivosCompartidosSinDuplicados = archs2_directorios;
}
ordenarAlph(a,b){
if(a.nombre.toLowerCase() < b.nombre.toLowerCase()) return -1;
if(a.nombre.toLowerCase() > b.nombre.toLowerCase()) return 1;
return 0;
}
ordenarFecha(a, b){
if(a.fechaCreacion < b.fechaCreacion) return -1;
if(a.fechaCreacion > b.fechaCreacion) return 1;
return 0;
}
ordenarTipo(a,b){
if(a.directorio && !b.directorio) return -1;
if(!a.directorio && b.directorio) return 1;
return 0;
}
ordenarPorTipo(){
this.sortFunction=this.ordenarTipo;
this.sortFunction='tipo';
this.ordenarArchivos();
}
ordenarPorNombre(){
this.sortFunction=this.ordenarAlph;
ordenarPorFecha(){
this.sortFunction='fecha';
this.ordenarArchivos();
}
ordenarFechaCreacion(){
this.archivosCompartidosSinDuplicados = this.archivosCompartidosSinDuplicados.sort(this.ordenarFecha);
this.directorioActual.archivos= this.directorioActual.archivos.sort(this.ordenarFecha);
}
ordenarArchivos(){
this.archivosCompartidosSinDuplicados = this.archivosCompartidosSinDuplicados.sort(this.sortFunction);
this.directorioActual.archivos= this.directorioActual.archivos.sort(this.sortFunction);
var tipo = this.sortFunction;
if(tipo==='tipo'){
this.ordenarMixto();
} else if(tipo==='fecha'){
this.ordenarFechaCreacion();
}
}
mostrarEliminarDialogo(){
var that = this;
let disposable = this.dialogService.addDialog(ConfirmarEliminar, {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment