blob: 7329033ccf4ba226b0188cb5b601ad4abb375372 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
import { Component, OnInit, ViewChild, ViewChildren } from '@angular/core';
import { AddNewDatasetComponent } from '../add-new-dataset/add-new-dataset.component';
import { ModelsService } from 'src/app/_services/models.service';
import shared from 'src/app/Shared';
import Dataset from 'src/app/_data/Dataset';
import { DatatableComponent } from 'src/app/_elements/datatable/datatable.component';
import { DatasetsService } from 'src/app/_services/datasets.service';
import { CsvParseService } from 'src/app/_services/csv-parse.service';
import { Output, EventEmitter } from '@angular/core';
@Component({
selector: 'app-dataset-load',
templateUrl: './dataset-load.component.html',
styleUrls: ['./dataset-load.component.css']
})
export class DatasetLoadComponent {
@Output() selectedDatasetChangeEvent = new EventEmitter<Dataset>();
@ViewChild(AddNewDatasetComponent) addNewDatasetComponent?: AddNewDatasetComponent;
@ViewChild(AddNewDatasetComponent) datatable?: DatatableComponent;
datasetLoaded: boolean = false;
selectedDatasetLoaded: boolean = false;
showMyDatasets: boolean = true;
myDatasets?: Dataset[];
existingDatasetSelected: boolean = false;
selectedDataset?: Dataset;
otherDataset?: Dataset;
otherDatasetFile?: any[];
datasetFile?: any[];
datasetHasHeader?: boolean = true;
term: string = "";
constructor(private models: ModelsService, private datasets: DatasetsService, private csv: CsvParseService) {
this.datasets.getMyDatasets().subscribe((datasets) => {
this.myDatasets = datasets;
});
}
viewMyDatasetsForm() {
this.showMyDatasets = true;
this.resetSelectedDataset();
//this.resetCbsAndRbs(); //TREBA DA SE DESI
}
viewNewDatasetForm() {
this.showMyDatasets = false;
this.resetSelectedDataset();
//this.resetCbsAndRbs(); //TREBA DA SE DESI
}
refreshMyDatasets() {
this.datasets.getMyDatasets().subscribe((datasets) => {
this.myDatasets = datasets;
this.showMyDatasets = true;
//this.
});
}
selectThisDataset(dataset: Dataset) {
this.selectedDataset = dataset;
this.selectedDatasetLoaded = false;
this.existingDatasetSelected = true;
this.datasetHasHeader = this.selectedDataset.hasHeader;
this.datasets.getDatasetFile(dataset.fileId).subscribe((file: string | undefined) => {
if (file) {
console.log(file);
this.datatable!.hasInput = true;
this.datatable!.loaded = true;
this.datasetFile = this.csv.csvToArray(file, (dataset.delimiter == "razmak") ? " " : (dataset.delimiter == "") ? "," : dataset.delimiter);
/*for (let i = this.datasetFile.length - 1; i >= 0; i--) { //moguce da je vise redova na kraju fajla prazno i sl.
if (this.datasetFile[i].length != this.datasetFile[0].length)
this.datasetFile[i].pop();
else
break; //nema potrebe dalje
}*/
console.log(this.datatable!.data);
console.log(this.datasetFile);
console.log(this.datatable!.hasInput);
//this.resetCbsAndRbs(); //TREBA DA SE DESI
//this.refreshThreeNullValueRadioOptions(); //TREBA DA SE DESI
this.selectedDatasetLoaded = true;
//this.scrollToNextForm();
this.selectedDatasetChangeEvent.emit(this.selectedDataset);
}
});
}
resetSelectedDataset(): boolean {
const temp = this.selectedDataset;
this.selectedDataset = this.otherDataset;
this.otherDataset = temp;
const tempFile = this.datasetFile;
this.datasetFile = this.otherDatasetFile;
this.otherDatasetFile = tempFile;
this.selectedDatasetChangeEvent.emit(this.selectedDataset);
return true;
}
}
|