2013-05-01 03:01:54 +03:00
|
|
|
'use strict';
|
2013-05-28 03:19:07 +03:00
|
|
|
define(['app',
|
2013-06-19 04:02:23 +03:00
|
|
|
'marionette',
|
|
|
|
'Settings/Indexers/ItemView',
|
|
|
|
'Settings/Indexers/EditView',
|
|
|
|
'Settings/Indexers/Collection'],
|
2013-06-19 07:27:41 +03:00
|
|
|
function (App, Marionette, IndexerItemView, IndexerEditView, IndexerCollection) {
|
2013-06-19 04:02:23 +03:00
|
|
|
return Marionette.CompositeView.extend({
|
|
|
|
itemView : IndexerItemView,
|
|
|
|
itemViewContainer: '#x-indexers',
|
|
|
|
template : 'Settings/Indexers/CollectionTemplate',
|
|
|
|
|
|
|
|
events: {
|
|
|
|
'click .x-add': 'openSchemaModal'
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
openSchemaModal: function () {
|
|
|
|
var self = this;
|
|
|
|
//TODO: Is there a better way to deal with changing URLs?
|
|
|
|
var schemaCollection = new IndexerCollection();
|
|
|
|
schemaCollection.url = '/api/indexer/schema';
|
|
|
|
schemaCollection.fetch({
|
|
|
|
success: function (collection) {
|
|
|
|
collection.url = '/api/indexer';
|
|
|
|
var model = _.first(collection.models);
|
|
|
|
model.set('id', undefined);
|
|
|
|
model.set('name', '');
|
|
|
|
|
|
|
|
var view = new IndexerEditView({ model: model, indexerCollection: self.collection});
|
|
|
|
App.modalRegion.show(view);
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
2013-05-01 03:01:54 +03:00
|
|
|
});
|