diff options
Diffstat (limited to 'frontend/src/app/_pages')
13 files changed, 79 insertions, 119 deletions
diff --git a/frontend/src/app/_pages/archive/archive.component.html b/frontend/src/app/_pages/archive/archive.component.html index fc3c4763..f9cce56b 100644 --- a/frontend/src/app/_pages/archive/archive.component.html +++ b/frontend/src/app/_pages/archive/archive.component.html @@ -1,5 +1,5 @@ <div class="d-flex flex-column align-items-center my-5"> - <app-folder></app-folder> + <app-folder [archive]="true" [startingTab]="TabType.MyExperiments"></app-folder> <!--<div class="my-5" style="height: fit-content;"> <app-playlist [datasets]="publicDatasets"></app-playlist> diff --git a/frontend/src/app/_pages/archive/archive.component.ts b/frontend/src/app/_pages/archive/archive.component.ts index 47f96218..bb4bd9e9 100644 --- a/frontend/src/app/_pages/archive/archive.component.ts +++ b/frontend/src/app/_pages/archive/archive.component.ts @@ -1,5 +1,6 @@ import { Component, OnInit } from '@angular/core'; import Dataset from 'src/app/_data/Dataset'; +import { TabType } from 'src/app/_elements/folder/folder.component'; import { DatasetsService } from 'src/app/_services/datasets.service'; @Component({ @@ -10,6 +11,7 @@ import { DatasetsService } from 'src/app/_services/datasets.service'; export class ArchiveComponent implements OnInit { publicDatasets: Dataset[] = []; + TabType = TabType; constructor(private datasetsService: DatasetsService) { } diff --git a/frontend/src/app/_pages/experiment/experiment.component.css b/frontend/src/app/_pages/experiment/experiment.component.css index 36c35484..4c063f87 100644 --- a/frontend/src/app/_pages/experiment/experiment.component.css +++ b/frontend/src/app/_pages/experiment/experiment.component.css @@ -52,4 +52,16 @@ mat-stepper { width: 98%; height: 98%; overflow-y: auto; -}
\ No newline at end of file +} +.ekspName{ + font-weight: bold; + font-size: large; +} + + +.addedElement{ + color:var(--ns-accent); +} +.text-overflow { + overflow-wrap: break-word; +} diff --git a/frontend/src/app/_pages/experiment/experiment.component.html b/frontend/src/app/_pages/experiment/experiment.component.html index 2b32db81..a2ede838 100644 --- a/frontend/src/app/_pages/experiment/experiment.component.html +++ b/frontend/src/app/_pages/experiment/experiment.component.html @@ -1,28 +1,48 @@ <div class="container-fluid p-0 text-offwhite holder" style="height: calc(100vh - 64px); text-align: center;"> <div class="d-flex flex-colum align-items-center sidenav"> + <div> + <div class="ekspName " style="width: 250px;"> + <div class="text-overflow" *ngIf="experiment.name=='exp1'" style="width: 250px;"> + Novi Eksperiment + </div> + <div class="text-overflow" *ngIf="experiment.name!='exp1'" style="width: 250px;"> + {{experiment.name}} + </div> + + </div> <mat-stepper orientation="vertical" (selectionChange)="changePage($event)"> <mat-step> <!--editable="false"--> - <ng-template matStepLabel><span class="label">Izvor podataka</span></ng-template> + <ng-template matStepLabel> + <span class="label" *ngIf="dataset==undefined">Izvor podataka</span> + <span class="label addedElement" *ngIf="dataset!=undefined">{{dataset.name}}</span> + </ng-template> <ng-template matStepContent> - <p>Izaberite vas izvor podataka</p> + <p class="text-left">Izaberite vas izvor podataka</p> </ng-template> </mat-step> <mat-step> - <ng-template matStepLabel> <span class="label">Odabir kolona</span></ng-template> + <ng-template matStepLabel> + <span class="label addedElement" *ngIf="experiment.name!='exp1'">Predvideti:{{experiment.outputColumn}}</span> + <span class="label" *ngIf="experiment.name=='exp1'">Odabir kolona</span> + </ng-template> <ng-template matStepContent> - <p>Pripremite podatke i izaberite izlazne kolone</p> + <p class="text-left">Pripremite podatke i izaberite izlazne kolone</p> </ng-template> </mat-step> <mat-step> - <ng-template matStepLabel><span class="label">Treniranje</span></ng-template> - <p>Odaberite parametre i trenirajte model</p> + <ng-template matStepLabel> + <span class="label addedElement" *ngIf="modelToTrain!=undefined">{{modelToTrain.name}}</span> + <span class="label" *ngIf="modelToTrain==undefined">Treniranje</span> + </ng-template> + <p class="text-left">Odaberite parametre i trenirajte model</p> </mat-step> <mat-step> <ng-template matStepLabel><span class="label">Pregled rezultata treniranja</span></ng-template> - <p>Pregledajte tok treniranja i grafički prikaz rezultata</p> + <p class="text-left">Pregledajte tok treniranja i grafički prikaz rezultata</p> </mat-step> </mat-stepper> + </div> </div> <div #stepsContainer class="steps-container"> <div #steps id="step_1" class="step-content"> @@ -32,7 +52,7 @@ </div> <div #steps id="step_2" class="step-content"> <div class="step-content-inside"> - <app-column-table (okPressed)="goToPage(2); experiment._columnsSelected = true;" (columnTableChanged)="columnTableChangedEvent()" [experiment]="experiment" [dataset]="dataset"></app-column-table> + <app-column-table (okPressed)="goToPage(2); experiment._columnsSelected = true;" (columnTableChanged)="columnTableChangedEvent()" (experimentChanged)="experimentChangedEvent()" [experiment]="experiment" [dataset]="dataset"></app-column-table> </div> </div> <div #steps id="step_3" class="step-content"> @@ -46,4 +66,4 @@ </div> </div> </div> -</div>
\ No newline at end of file +</div> diff --git a/frontend/src/app/_pages/experiment/experiment.component.ts b/frontend/src/app/_pages/experiment/experiment.component.ts index 1dc18a78..abf4b697 100644 --- a/frontend/src/app/_pages/experiment/experiment.component.ts +++ b/frontend/src/app/_pages/experiment/experiment.component.ts @@ -147,12 +147,17 @@ export class ExperimentComponent implements AfterViewInit { //console.log("promenio se column-table"); } + experimentChangedEvent() { + this.folderModel.updateExperiment(); + } + setDataset(dataset: FolderFile) { const d = <Dataset>dataset; this.experiment.datasetId = d._id; this.dataset = d; this.columnTable.loadDataset(this.dataset); + } modelToTrain?: Model; diff --git a/frontend/src/app/_pages/filter-datasets/filter-datasets.component.ts b/frontend/src/app/_pages/filter-datasets/filter-datasets.component.ts deleted file mode 100644 index 66b3755e..00000000 --- a/frontend/src/app/_pages/filter-datasets/filter-datasets.component.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { DatasetsService } from 'src/app/_services/datasets.service'; -import Dataset from 'src/app/_data/Dataset'; -import {Router} from '@angular/router' -import { JwtHelperService } from '@auth0/angular-jwt'; -import { CookieService } from 'ngx-cookie-service'; -import shared from 'src/app/Shared'; - -@Component({ - selector: 'app-filter-datasets', - templateUrl: './filter-datasets.component.html', - styleUrls: ['./filter-datasets.component.css'] -}) -export class FilterDatasetsComponent implements OnInit { - - shared = shared; - publicDatasets?: Dataset[]; - term: string = ""; - constructor(private datasets: DatasetsService,private router:Router, private cookie: CookieService) { - this.datasets.getPublicDatasets().subscribe((datasets) => { - this.publicDatasets = datasets; - }); - } - - ngOnInit(): void { - - } - addDataset(dataset: Dataset):void{ - //this.router.navigateByUrl('/predict?id='+id); - const helper = new JwtHelperService(); - const decodedToken = helper.decodeToken(this.cookie.get("token")); - const newDataset={...dataset}; - newDataset._id = ""; - newDataset.isPublic = false; - newDataset.lastUpdated = new Date(); - newDataset.uploaderId = decodedToken.uploaderId; - let name=prompt("Unesite naziv dataset-a",newDataset.name); - newDataset.name=name as string; - if(name!=null && name!="") - this.datasets.addDataset(newDataset).subscribe((response:string)=>{ - shared.openDialog("Obaveštenje", "Uspešno ste dodali dataset sa nazivom " + newDataset.name); - },(error)=>{ - shared.openDialog("Obaveštenje", "U svojoj kolekciji već imate dataset sa ovim imenom. Molimo Vas da unesete drugo ime."); - }); - - }; - -} diff --git a/frontend/src/app/_pages/profile/profile.component.css b/frontend/src/app/_pages/profile/profile.component.css index 428870da..bbd4c9ba 100644 --- a/frontend/src/app/_pages/profile/profile.component.css +++ b/frontend/src/app/_pages/profile/profile.component.css @@ -1,21 +1,25 @@ -.card{ +.card { background-color: transparent; - color:var(--offwhite) + color: var(--offwhite) } -.card-header{ +.card-header { background-color: var(--ns-primary-50); - color:var(--offwhite) + color: var(--offwhite) } -.card-body{ + +.card-body { background-color: var(--ns-bg-dark-50); } -mat-form-field{ +mat-form-field { width: 100%; } -.danger-Text{ - color:var(--ns-warn) +.danger-Text { + color: var(--ns-warn) } +.selectedPicture { + background-color: var(--ns-accent); +}
\ No newline at end of file diff --git a/frontend/src/app/_pages/profile/profile.component.html b/frontend/src/app/_pages/profile/profile.component.html index 37df4f14..8d655513 100644 --- a/frontend/src/app/_pages/profile/profile.component.html +++ b/frontend/src/app/_pages/profile/profile.component.html @@ -12,7 +12,7 @@ <img class="img-account-profile rounded-circle mb-2" src="{{this.photoPath}}" alt="profilePicture"> <!-- User's info --> <span>@ {{this.user.username}}</span> - <span class="mt-3" style="font-weight: bold;">{{this.user.firstName}} {{this.user.lastName}}</span> + <span class="mt-3" style="font-weight: bold;">{{this.user.firstName}} {{this.user.lastName}}</span> </div> </div> </div> @@ -31,7 +31,7 @@ <mat-form-field appearance="fill"> <mat-label>Važeća lozinka</mat-label> <input matInput id="inputPassword" name="inputPassword" type="password" placeholder="" [(ngModel)]="this.oldPass"> - </mat-form-field> + </mat-form-field> <small *ngIf="wrongOldPassBool" class="form-text danger-Text">Pogrešan format.</small> </div> <!-- Form Group (new password)--> @@ -39,12 +39,12 @@ <mat-form-field appearance="fill"> <mat-label>Nova lozinka</mat-label> <input matInput id="inputNewPassword" name="inputNewPassword" type="password" placeholder="" [(ngModel)]="this.newPass1"> - </mat-form-field> + </mat-form-field> <small *ngIf="wrongNewPassBool" class="form-text danger-Text">Lozinke se ne podudaraju.</small> <small *ngIf="wrongNewPass1Bool" class="form-text danger-Text">Pogrešan format.</small> </div> </div> - + <!-- Form Row--> <div class="row gx-3 mb-3"> <div class="col-md-6"> @@ -118,24 +118,23 @@ <div> <label class="small mt-2 mb-3">Kliknite na sliku kako biste je odabrali za profilnu:</label> - + <div class="container"> <div class="card-group"> <!--bootstrap card with 3 horizontal images--> <div class="row overflow-auto" style="max-height: 200px;"> - <div class="card col-md-3" *ngFor="let picture of this.pictures" (click)="this.photoId = picture.photoId.toString()" - [ngClass]="{'selectedPicture': this.photoId == picture.photoId.toString()}"> + <div class="card col-md-3" *ngFor="let picture of this.pictures" (click)="this.photoId = picture.photoId.toString()" [ngClass]="{'selectedPicture': this.photoId == picture.photoId.toString()}"> <img src="{{picture.path}}"> </div> </div> </div> </div> </div> - + <div class="row mt-5"> <div class="col text-center"> <!-- Save changes button--> - <button mat-raised-button color="primary" (click)="saveInfoChanges()" >Sačuvaj izmene</button> + <button mat-raised-button color="primary" (click)="saveInfoChanges()">Sačuvaj izmene</button> </div> </div> </form> @@ -147,7 +146,7 @@ <div class="row"> <div class="col-xl-4"> - + </div> </div> diff --git a/frontend/src/app/_pages/profile/profile.component.ts b/frontend/src/app/_pages/profile/profile.component.ts index ae9fb12c..fdcd347c 100644 --- a/frontend/src/app/_pages/profile/profile.component.ts +++ b/frontend/src/app/_pages/profile/profile.component.ts @@ -28,6 +28,8 @@ export class ProfileComponent implements OnInit { newPass2: string = ''; photoId: string = ''; photoPath: string = ''; + isPermament:boolean=false; + dateCreated:Date=new Date(); wrongPassBool: boolean = false; wrongNewPassBool: boolean = false; @@ -60,6 +62,9 @@ export class ProfileComponent implements OnInit { this.firstName = this.user.firstName; this.lastName = this.user.lastName; this.photoId = this.user.photoId; + this.dateCreated=this.user.dateCreated; + this.isPermament=this.user.isPermament; + for (let i = 0; i < this.pictures.length; i++) { if (this.pictures[i].photoId.toString() === this.photoId) { @@ -81,7 +86,9 @@ export class ProfileComponent implements OnInit { password: this.user.password, firstName: this.firstName, lastName: this.lastName, - photoId: this.photoId + photoId: this.photoId, + isPermament:this.isPermament, + dateCreated:this.dateCreated } this.userInfoService.changeUserInfo(editedUser).subscribe((response: any) =>{ diff --git a/frontend/src/app/_pages/settings/settings.component.css b/frontend/src/app/_pages/settings/settings.component.css deleted file mode 100644 index e69de29b..00000000 --- a/frontend/src/app/_pages/settings/settings.component.css +++ /dev/null diff --git a/frontend/src/app/_pages/settings/settings.component.html b/frontend/src/app/_pages/settings/settings.component.html deleted file mode 100644 index 4ab2a415..00000000 --- a/frontend/src/app/_pages/settings/settings.component.html +++ /dev/null @@ -1 +0,0 @@ -<p>settings works!</p> diff --git a/frontend/src/app/_pages/settings/settings.component.spec.ts b/frontend/src/app/_pages/settings/settings.component.spec.ts deleted file mode 100644 index a3a508b0..00000000 --- a/frontend/src/app/_pages/settings/settings.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { SettingsComponent } from './settings.component'; - -describe('SettingsComponent', () => { - let component: SettingsComponent; - let fixture: ComponentFixture<SettingsComponent>; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ SettingsComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(SettingsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/frontend/src/app/_pages/settings/settings.component.ts b/frontend/src/app/_pages/settings/settings.component.ts deleted file mode 100644 index 19862fb0..00000000 --- a/frontend/src/app/_pages/settings/settings.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector: 'app-settings', - templateUrl: './settings.component.html', - styleUrls: ['./settings.component.css'] -}) -export class SettingsComponent implements OnInit { - - constructor() { } - - ngOnInit(): void { - } - -} |