<eg-grid #grid [dataSource]="gridSource"
[sortable]="true" persistKey="booking.current_reservations" >
<eg-grid-toolbar-action label="Edit Selected" i18n-label [action]="editSelected"></eg-grid-toolbar-action>
+ <eg-grid-toolbar-action label="Cancel Selected" i18n-label [action]="cancelSelected"></eg-grid-toolbar-action>
<eg-grid-column name="id" [hidden]="true" [index]="true" i18n-label label="ID" path="id"></eg-grid-column>
<eg-grid-column i18n-label [hidden]="true" path="usr.first_given_name"></eg-grid-column>
<eg-grid-column i18n-label [hidden]="true" path="usr.second_given_name"></eg-grid-column>
import { Component, OnInit, ViewChild } from '@angular/core';
import {GridComponent} from '@eg/share/grid/grid.component';
import { GridDataSource } from '@eg/share/grid/grid';
+import {AuthService} from '@eg/core/auth.service';
import {IdlObject} from '@eg/core/idl.service';
import {PcrudService} from '@eg/core/pcrud.service';
import {Pager} from '@eg/share/util/pager';
import { Router, ActivatedRoute, ParamMap } from '@angular/router';
import {StringComponent} from '@eg/share/string/string.component';
import {FmRecordEditorComponent} from '@eg/share/fm-editor/fm-editor.component';
+import {NetService} from '@eg/core/net.service';
@Component({
selector: 'eg-current-reservations',
@ViewChild('successString') successString: StringComponent;
editSelected: (rows: IdlObject[]) => void;
+ cancelSelected: (rows: IdlObject[]) => void;
constructor(
private route: ActivatedRoute,
private toast: ToastService,
- private pcrud: PcrudService
+ private pcrud: PcrudService,
+ private auth: AuthService,
+ private net: NetService
){
this.gridSource = new GridDataSource();
}
editOneThing(idlThings.shift()); };
+ this.cancelSelected = (reservations: IdlObject[]) => {
+ let reservationIds = reservations.map(reservation => reservation.id());
+ this.net.request(
+ 'open-ils.booking',
+ 'open-ils.booking.reservations.cancel',
+ this.auth.token(), reservationIds)
+ .subscribe(
+ (res) => alert("RES: " + JSON.stringify(res)),
+ (err) => alert("ERR: " + JSON.stringify(err))
+ );
+ this.grid.reload();
+ }
+
}
showEditDialog(idlThing: IdlObject) {