@fleetbase/fleetops-engine
Version:
Fleet & Transport Management Extension for Fleetbase
42 lines (36 loc) • 1.39 kB
JavaScript
import Controller from '@ember/controller';
import { tracked } from '@glimmer/tracking';
import { inject as service } from '@ember/service';
import { action } from '@ember/object';
import { task } from 'ember-concurrency';
const DEFAULT_PROPERTIES = { status: 'available' };
export default class ManagementVehiclesIndexNewController extends Controller {
store;
hostRouter;
intl;
notifications;
events;
overlay;
vehicle = this.store.createRecord('vehicle', DEFAULT_PROPERTIES);
*save(vehicle) {
try {
yield vehicle.save();
this.events.trackResourceCreated(vehicle);
this.overlay?.close();
yield this.hostRouter.refresh();
yield this.hostRouter.transitionTo('console.fleet-ops.management.vehicles.index.details', vehicle);
this.notifications.success(
this.intl.t('common.resource-created-success-name', {
resource: this.intl.t('resource.vehicle'),
resourceName: vehicle.display_name,
})
);
this.resetForm();
} catch (err) {
this.notifications.serverError(err);
}
}
resetForm() {
this.vehicle = this.store.createRecord('vehicle', DEFAULT_PROPERTIES);
}
}