argos/dmp-admin/src/app/datasets-viewer/datasets-viewer.component.html

195 lines
9.8 KiB
HTML

<!-- This is the dataset viewer -->
<div [ngClass]="{true:'visible', false:'invisible'}[viewingComponent==1]">
<div class="container">
<div class="row">
<div class="">
<div class="panel panel-default panel-table">
<div class="panel-heading">
<div class="row">
<div class="col col-xs-6">
<h3 class="panel-title">Manage Datasets</h3>
</div>
<div class="col col-xs-6 text-right">
<button type="button" class="btn btn-sm btn-primary btn-create" data-toggle="modal" data-target="#newdataset-modal-container" >Create New</button>
</div>
</div>
</div>
<div class="panel-body">
<table class="table table-striped" [mfData]="data | dataFilter : filterQuery" #mf="mfDataTable" [mfRowsOnPage]="rowsOnPage" [(mfSortBy)]="sortBy" [(mfSortOrder)]="sortOrder">
<!--<table class="table table-striped" [mfData]="data" #mf="mfDataTable" [mfRowsOnPage]="rowsOnPage" [(mfSortBy)]="sortBy" [(mfSortOrder)]="sortOrder">-->
<thead>
<tr>
<th colspan="1">
<input class="form-control" [(ngModel)]="filterQuery" placeholder='Filter'/>
</th>
<th>
<button class="btn btn-default" (click)="refreshTable($event)">
<span class="glyphicon glyphicon-refresh"></span>
</button>
</th>
</tr>
<tr>
<th [ngClass]="{true:'visible', false:'invisible'}[showIDs]"><mfDefaultSorter by="id">ID</mfDefaultSorter></th>
<th><mfDefaultSorter by="label">Label</mfDefaultSorter></th>
<th>DMP</th>
<th><mfDefaultSorter by="uri">Uri</mfDefaultSorter></th>
<th>Properties</th>
<th>Profile</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let dataset of mf.data" class="hover">
<td [ngClass]="{true:'visible', false:'invisible'}[showIDs]">{{dataset?.id}}</td>
<td><input class="noborder" type="text" [(ngModel)]="dataset.label" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutLabel($event)"></td>
<td>
<div class="dropdown">
<button class="btn btn-primary dropdown-toggle dmp-btn-width" type="button" data-toggle="dropdown">{{dataset?.dmp?.label}}
<span class="caret"></span>
</button>
<ul class="dropdown-menu" >
<li class="margined" *ngFor="let idLabel of dmpsIDLabels" (click)="assignDMPToDataset($event, idLabel.id)"><a style="cursor:pointer;">{{idLabel?.label}}</a></li>
</ul>
</div>
</td>
<td><input class="noborder" type="text" [(ngModel)]="dataset.uri" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutURI($event)"></td>
<td>
<button type="button" class="btn btn-default" data-toggle="modal" data-target="#edit-properties-modal-container" (click)="onShowingPropertiesModal($event)">
<span class="glyphicon glyphicon-pencil"></span>
</button>
</td>
<td>
<button type="button" class="btn btn-default" (click)="gotoProfileEditor($event, dataset.profile?.id)">
<span [ngClass]="{true:'glyphicon glyphicon-plus', false:'glyphicon glyphicon-pencil'}[dataset?.profile?.id==null]"></span>
</button>
</td>
<td style='float: left;'>
<button class="btn btn-default" data-toggle="modal" data-target="#confirmation-modal" (click)="setClickedDatasetID($event)">
<span class="glyphicon glyphicon-trash red"></span>
</button>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="7">
<mfBootstrapPaginator [rowsOnPageSet]="[10,20,40]"></mfBootstrapPaginator>
</td>
</tr>
</tfoot>
</table>
</div>
</div>
</div>
</div>
<new-dataset (idSender)="notifyNewDatasetID($event)"></new-dataset>
<properties-editor [datasetID]=clickedDatasetID></properties-editor>
<confirmation [confirmationTitle]="'Caution'" [confirmationDescr]="'This action will delete the dataset. Are you sure you want to delete this dataset ? This is not revertable !'" (responseSender)="applyConfirmation($event)"></confirmation>
</div>
</div>
<!-- END of DatasetViewer -->
<!-- new profile editor -->
<!--
<div [ngClass]="{true:'visible', false:'invisible'}[viewingComponent==2]">
<dataset-profile-gui-editor [profile]=profile (notifyClick)="goToMain()" ></dataset-profile-gui-editor>
</div>
-->
<!-- end of new profile editor -->
<!-- OLD Profile Editor -->
<div [ngClass]="{true:'visible', false:'invisible'}[viewingComponent==2]">
<div class="panel panel-default margin10">
<div class="panel-heading">
<div class="row">
<div class="col col-xs-6">
<h3 class="panel-title">Editing profile: {{profile?.label}}</h3>
</div>
<div class="col col-xs-6 text-right">
<button type="button" class="btn btn-sm btn-primary btn-create" (click)="goToMain()" > <span class="glyphicon glyphicon-arrow-left"></span> Go back</button>
</div>
</div>
</div>
<div class="panel-body">
<ul class="nav nav-tabs content-tabs" id="maincontent" role="tablist">
<li class="active"><a href="#profile" role="tab" data-toggle="tab">Profile</a></li>
<li class=""><a href="#viewstyle" role="tab" data-toggle="tab">Profile's viewstyle</a></li>
<li class=""><a href="#ruleset" role="tab" data-toggle="tab">Profile's ruleset</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane fade active in" id="profile">
<br />
<div class="custom-table">
<input name="profile-label" type="text" placeholder="Enter profile label" [ngModel]="profile?.label" (ngModelChange)="profile.label=$event" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutProfileWin($event)" (keydown)="preventDefaults($event)">
<label for="profile-label">Label</label>
</div>
<br />
<div class="custom-table">
<textarea class="form-control custom" rows="10" cols="65" name="profile-definition" [ngModel]="profile?.definition" (ngModelChange)="profile.definition=$event" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutProfileWin($event)" (keydown)="preventDefaults($event)" placeholder="Enter profile definition"></textarea>
<label for="profile-definition">Definition</label>
</div>
</div>
<div class="tab-pane fade" id="viewstyle">
<br />
<div class="custom-table">
<input name="viewstyle-label" type="text" placeholder="Enter viewstyle label" [ngModel]="profile?.viewstyle?.label" (ngModelChange)="profile.viewstyle.label=$event" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutProfileWin($event)" (keydown)="preventDefaults($event)">
<label for="viewstyle-label">Label</label>
</div>
<br />
<div class="custom-table">
<textarea class="form-control custom" rows="10" cols="65" name="viewstyle-definition" [ngModel]="profile?.viewstyle?.definition" (ngModelChange)="profile.viewstyle.definition=$event" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutProfileWin($event)" (keydown)="preventDefaults($event)"></textarea>
<label for="viewstyle-definition">Definition</label>
</div>
</div>
<div class="tab-pane fade" id="ruleset">
<br />
<div class="custom-table">
<input name="ruleset-label" type="text" placeholder="Enter ruleset label" [ngModel]="profile?.ruleset?.label" (ngModelChange)="profile.ruleset.label=$event" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutProfileWin($event)" (keydown)="preventDefaults($event)">
<label for="ruleset-label">Label</label>
</div>
<br />
<div class="custom-table">
<textarea class="form-control custom" rows="10" cols="65" name="ruleset-definition" [ngModel]="profile?.ruleset?.definition" (ngModelChange)="profile.ruleset.definition=$event" (focusin)="onFocusIn($event)" (ngModelChange)="onValueChanged($event)" (focusout)="onFocusOutProfileWin($event)" (keydown)="preventDefaults($event)"></textarea>
<label for="ruleset-definition">Definition</label>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- End of OLD Profile Editor -->