aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/app/_elements/add-new-dataset
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/app/_elements/add-new-dataset')
-rw-r--r--frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.css0
-rw-r--r--frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.html49
-rw-r--r--frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.spec.ts25
-rw-r--r--frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.ts106
4 files changed, 0 insertions, 180 deletions
diff --git a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.css b/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.css
deleted file mode 100644
index e69de29b..00000000
--- a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.css
+++ /dev/null
diff --git a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.html b/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.html
deleted file mode 100644
index bff8b022..00000000
--- a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<div class="row mb-4">
- <div class="col-2">
- </div>
- <div class="col-3">
- <label for="name" class="col-form-label">Naziv dataseta:</label>
- <input type="text" class="form-control mb-1" name="name" placeholder="Naziv..." [(ngModel)]="dataset.name">
-
- <label for="desc" class="col-sm-2 col-form-label">Opis:</label>
- <div>
- <textarea class="form-control" name="desc" rows="3" [(ngModel)]="dataset.description"></textarea>
- </div>
-
- <label for="checkboxIsPublic" class="form-check-label mt-3 mb-1">Želite li da dataset bude javan?
- <input class="mx-3 form-check-input" type="checkbox" [(ngModel)]="dataset.isPublic" (change)="checkAccessible()" type="checkbox"
- value="" id="checkboxIsPublic">
- </label>
-
- <label for="checkboxAccessibleByLink" class="form-check-label">Želite li da bude deljiv linkom? &nbsp;
- <input class="mx-3 form-check-input" type="checkbox" [(ngModel)]="dataset.accessibleByLink" type="checkbox"
- value="" id="checkboxAccessibleByLink">
- </label>
- </div>
- <div class="col-1">
- </div>
- <div class="col-4 mt-4">
-
- <input list="delimiterOptions" placeholder="Izaberite ili ukucajte delimiter za .csv fajl" class="form-control mt-2"
- [(ngModel)]="dataset.delimiter" (input)="update()">
- <datalist id="delimiterOptions">
- <option *ngFor="let option of delimiterOptions">{{option}}</option>
- </datalist>
-
- <label for="type" class="form-check-label my-5">Da li .csv ima header?
- <input class="mx-3 form-check-input" type="checkbox" (input)="update()" [(ngModel)]="dataset.hasHeader" type="checkbox"
- value="" id="checkboxHeader" checked>
- </label>
- <br>
- <input id="fileInput" class="form-control" type="file" class="upload" (change)="changeListener($event)"
- accept=".csv">
- </div>
-</div>
-
-<div class="px-5 mt-5">
- <app-datatable [tableData]="tableData"></app-datatable>
-</div>
-
-<div class="d-flex flex-row align-items-center justify-content-center w-100 my-2">
- <button (click)="uploadDataset()" class="btn btn-lg col-4" style="background-color:#003459; color:white;">Dodaj izvor podataka</button>
-</div>
diff --git a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.spec.ts b/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.spec.ts
deleted file mode 100644
index a9ea25b4..00000000
--- a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.spec.ts
+++ /dev/null
@@ -1,25 +0,0 @@
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-
-import { AddNewDatasetComponent } from './add-new-dataset.component';
-
-describe('AddNewDatasetComponent', () => {
- let component: AddNewDatasetComponent;
- let fixture: ComponentFixture<AddNewDatasetComponent>;
-
- beforeEach(async () => {
- await TestBed.configureTestingModule({
- declarations: [ AddNewDatasetComponent ]
- })
- .compileComponents();
- });
-
- beforeEach(() => {
- fixture = TestBed.createComponent(AddNewDatasetComponent);
- component = fixture.componentInstance;
- fixture.detectChanges();
- });
-
- it('should create', () => {
- expect(component).toBeTruthy();
- });
-});
diff --git a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.ts b/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.ts
deleted file mode 100644
index 3e1b5c73..00000000
--- a/frontend/src/app/_elements/add-new-dataset/add-new-dataset.component.ts
+++ /dev/null
@@ -1,106 +0,0 @@
-import { Component, EventEmitter, Output, ViewChild } from '@angular/core';
-import Dataset from 'src/app/_data/Dataset';
-import { DatasetsService } from 'src/app/_services/datasets.service';
-import { ModelsService } from 'src/app/_services/models.service';
-import shared from 'src/app/Shared';
-import { DatatableComponent, TableData } from '../datatable/datatable.component';
-import { CsvParseService } from 'src/app/_services/csv-parse.service';
-
-@Component({
- selector: 'app-add-new-dataset',
- templateUrl: './add-new-dataset.component.html',
- styleUrls: ['./add-new-dataset.component.css']
-})
-export class AddNewDatasetComponent {
-
- @Output() newDatasetAdded = new EventEmitter<string>();
- @ViewChild(DatatableComponent) datatable!: DatatableComponent;
-
- delimiterOptions: Array<string> = [",", ";", "\t", "razmak", "|"]; //podrazumevano ","
-
- csvRecords: any[] = [];
- files: File[] = [];
- rowsNumber: number = 0;
- colsNumber: number = 0;
-
- dataset: Dataset; //dodaj ! potencijalno
-
- tableData: TableData = new TableData();
-
- constructor(private modelsService: ModelsService, private datasetsService: DatasetsService, private csv: CsvParseService) {
- this.dataset = new Dataset();
- }
-
- //@ViewChild('fileImportInput', { static: false }) fileImportInput: any; cemu je ovo sluzilo?
-
- changeListener($event: any): void {
- this.files = $event.srcElement.files;
- if (this.files.length == 0 || this.files[0] == null) {
- //console.log("NEMA FAJLA");
- //this.loaded.emit("not loaded");
- this.tableData.hasInput = false;
- return;
- }
- else
- this.tableData.hasInput = true;
-
- this.tableData.loaded = false;
- this.update();
- }
-
- update() {
-
- if (this.files.length < 1)
- return;
-
- const fileReader = new FileReader();
- fileReader.onload = (e) => {
- if (typeof fileReader.result === 'string') {
- const result = this.csv.csvToArray(fileReader.result, (this.dataset.delimiter == "razmak") ? " " : (this.dataset.delimiter == "") ? "," : this.dataset.delimiter)
-
- if (this.dataset.hasHeader)
- this.csvRecords = result.splice(0, 11);
- else
- this.csvRecords = result.splice(0, 10);
-
- this.colsNumber = result[0].length;
- this.rowsNumber = result.length;
-
- this.tableData.data = this.csvRecords
- this.tableData.hasHeader = this.dataset.hasHeader;
- this.tableData.loaded = true;
- this.tableData.numCols = this.colsNumber;
- this.tableData.numRows = this.rowsNumber;
- }
- }
- fileReader.readAsText(this.files[0]);
- }
-
- checkAccessible() {
- if (this.dataset.isPublic)
- this.dataset.accessibleByLink = true;
- }
-
- uploadDataset() {
- if (this.files[0] == undefined) {
- shared.openDialog("Greška", "Niste izabrali fajl za učitavanje.");
- return;
- }
-
- this.modelsService.uploadData(this.files[0]).subscribe((file) => {
- //console.log('ADD MODEL: STEP 2 - ADD DATASET WITH FILE ID ' + file._id);
- this.dataset.fileId = file._id;
- this.dataset.uploaderId = shared.userId;
-
- this.datasetsService.addDataset(this.dataset).subscribe((dataset) => {
- this.newDatasetAdded.emit("added");
- shared.openDialog("Obaveštenje", "Uspešno ste dodali novi izvor podataka u kolekciju. Molimo sačekajte par trenutaka da se procesira.");
- }, (error) => {
- shared.openDialog("Neuspeo pokušaj!", "Izvor podataka sa unetim nazivom već postoji u Vašoj kolekciji. Izmenite naziv ili iskoristite postojeći dataset.");
- }); //kraj addDataset subscribe
- }, (error) => {
-
- }); //kraj uploadData subscribe
- }
-
-}