Ghost/ghost/admin/app/controllers/collection.js
Naz cc4ff8c6d4 Added collections CRUD UI
refs https://github.com/TryGhost/Team/issues/3168

- This is basic scaffolding for collection resources UI in Admin. For the most part it's a copy-paste of tags code with slight modifications to fit the collections usecase
2023-05-23 17:26:47 +07:00

44 lines
1.1 KiB
JavaScript

import Controller from '@ember/controller';
import DeleteCollectionModal from '../components/collections/delete-collection-modal';
import {action} from '@ember/object';
import {inject as service} from '@ember/service';
import {task} from 'ember-concurrency';
export default class CollectionController extends Controller {
@service modals;
@service notifications;
@service router;
get collection() {
return this.model;
}
@action
confirmDeleteCollection() {
return this.modals.open(DeleteCollectionModal, {
collection: this.model
});
}
@task({drop: true})
*saveTask() {
let {collection} = this;
try {
if (collection.get('errors').length !== 0) {
return;
}
yield collection.save();
// replace 'new' route with 'collection' route
this.replaceRoute('collection', collection);
return collection;
} catch (error) {
if (error) {
this.notifications.showAPIError(error, {key: 'collection.save'});
}
}
}
}