Add basic dunlop/user-filter model connected to the dunlop-core api since these filters are engine/adapter independent

This commit is contained in:
2018-11-17 22:36:58 -03:00
parent 2b0248fbb8
commit 88d5f55e90
6 changed files with 64 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
import JSONAPIAdapter from 'ember-data/adapters/json-api'
import DataAdapterMixin from 'ember-simple-auth/mixins/data-adapter-mixin'
import { pluralize } from 'ember-inflector'
import config from 'ember-get-config'
export default JSONAPIAdapter.extend DataAdapterMixin,
#namespace: config.apiNamespace
host: config.apiHost
authorizer: 'authorizer:devise'
createRecord: (store, type, snapshot) ->
data = {}
#var serializer = store.serializerFor(type.modelName);
serializer = Ember.get(snapshot.record, 'store').serializerFor('create-and-update')
url = @buildURL(type.modelName, null, snapshot, 'createRecord')
serializer.serializeIntoHash data, type, snapshot, includeId: true
@ajax url, 'POST', data: data
# return pluralized underscored version
pathForType: (modelName) ->
base = Ember.String.underscore(modelName)
base = base.replace(/\./g, '/')
#base.split(/\//).map( (str) -> pluralize(str) ).join('/') # all parts pluralized
pluralize(base)
updateRecord: (store, type, snapshot) ->
data = {}
#var serializer = store.serializerFor(type.modelName);
serializer = Ember.get(snapshot.record, 'store').serializerFor('create-and-update')
id = snapshot.id
url = @buildURL(type.modelName, id, snapshot, 'updateRecord')
serializer.serializeIntoHash data, type, snapshot, includeId: true
@ajax url, 'PUT', data: data
+6
View File
@@ -0,0 +1,6 @@
import DS from 'ember-data'
export default DS.Model.extend
scope_key: DS.attr('string')
filters: DS.attr(defaultValue: -> {})
is_default: DS.attr('boolean', defaultValue: false)