Rewrite a couple of Handlebars helpers into HTMLBars helpers
This commit is contained in:
parent
0cfc7b85e7
commit
b609b11ff2
|
@ -10,9 +10,9 @@
|
|||
`import tipsy from 'travis/helpers/tipsy'`
|
||||
#`import input from 'travis/helpers/input'`
|
||||
`import filterInput from 'travis/helpers/filter-input'`
|
||||
Ember.Handlebars.registerHelper('label', label)
|
||||
Ember.Handlebars.registerHelper('travis-field', travisField)
|
||||
Ember.Handlebars.registerHelper('travis-errors', travisErrors)
|
||||
Ember.HTMLBars._registerHelper('label', label)
|
||||
Ember.HTMLBars._registerHelper('travis-field', travisField)
|
||||
Ember.HTMLBars._registerHelper('travis-errors', travisErrors)
|
||||
Ember.Handlebars.registerHelper('tipsy', tipsy)
|
||||
#Ember.Handlebars.registerHelper('input', input)
|
||||
Ember.Handlebars.registerHelper('filter-input', filterInput)
|
||||
|
|
|
@ -20,8 +20,14 @@ Controller = Ember.ObjectController.extend Validations,
|
|||
add: ->
|
||||
id = @get('repo.id')
|
||||
model = @store.recordForId('sshKey', id)
|
||||
if model.get('currentState.stateName') == 'root.empty'
|
||||
# TODO: this can be removed in favor of simply unloading record
|
||||
# once https://github.com/emberjs/data/pull/2867
|
||||
# and https://github.com/emberjs/data/pull/2870 are merged
|
||||
if model
|
||||
@store.dematerializeRecord(model)
|
||||
typeMap = @store.typeMapFor('sshKey')
|
||||
idToRecord = typeMap.idToRecord
|
||||
delete idToRecord[id]
|
||||
|
||||
model = @store.createRecord('sshKey', id: id)
|
||||
@set('model', model)
|
||||
|
|
|
@ -7,15 +7,16 @@ LabelView = Ember.View.extend(
|
|||
classNameBindings: ['class']
|
||||
)
|
||||
|
||||
label = (options) ->
|
||||
label = (params, hash, options, env) ->
|
||||
view = LabelView
|
||||
|
||||
name = options.hash.for
|
||||
controller = env.data.view.get('controller')
|
||||
name = hash.for
|
||||
if name
|
||||
labels = @get('_labels')
|
||||
labels = controller.get('_labels')
|
||||
unless labels
|
||||
labels = Ember.Object.create()
|
||||
@set('_labels', labels)
|
||||
controller.set('_labels', labels)
|
||||
|
||||
# for now I support only label + input in their own context
|
||||
id = labels.get(name)
|
||||
|
@ -23,12 +24,10 @@ label = (options) ->
|
|||
id = "#{name}-#{Math.round(Math.random() * 1000000)}"
|
||||
labels.set(name, id)
|
||||
|
||||
options.hash.for = id
|
||||
options.hashTypes.for = 'STRING'
|
||||
options.hashContexts.for = this
|
||||
if options.hash.content
|
||||
hash.for = id
|
||||
if hash.content
|
||||
view = view.extend(templateName: 'helpers/label')
|
||||
|
||||
Ember.Handlebars.helpers.view.call(this, view, options)
|
||||
env.helpers.view.helperFunction.call(this, [view], hash, options, env)
|
||||
|
||||
`export default label`
|
||||
|
|
|
@ -10,14 +10,14 @@ ErrorsView = Ember.View.extend
|
|||
).property('@errors', 'errors.length')
|
||||
show: Ember.computed.notEmpty('errors.[]')
|
||||
|
||||
fn = (name, options) ->
|
||||
errors = @get('errors').for(name)
|
||||
window[name + 'Errors'] = errors
|
||||
fn = (params, hash, options, env) ->
|
||||
controller = env.data.view.get('controller')
|
||||
errors = controller.get('errors').for(name)
|
||||
view = ErrorsView.create(
|
||||
controller: this
|
||||
controller: controller
|
||||
errors: errors
|
||||
)
|
||||
|
||||
Ember.Handlebars.helpers.view.call(this, view, options)
|
||||
env.helpers.view.helperFunction.call(this, [view], hash, options, env)
|
||||
|
||||
`export default fn`
|
||||
|
|
|
@ -5,19 +5,21 @@ FormFieldRowView = Ember.View.extend
|
|||
classNameBindings: ['invalid']
|
||||
classNames: 'field'
|
||||
|
||||
fn = (name, options) ->
|
||||
errors = @get('errors').for(name)
|
||||
template = options.fn
|
||||
delete options.fn
|
||||
fn = (params, hash, options, env) ->
|
||||
name = params[0]
|
||||
controller = env.data.view.get('controller')
|
||||
errors = controller.get('errors').for(name)
|
||||
template = options.template
|
||||
delete options.template
|
||||
|
||||
view = FormFieldRowView.create(
|
||||
controller: this
|
||||
controller: controller
|
||||
template: template
|
||||
errors: errors
|
||||
name: name
|
||||
classNameBindings: ['name']
|
||||
)
|
||||
|
||||
Ember.Handlebars.helpers.view.call(this, view, options)
|
||||
env.helpers.view.helperFunction.call(this, [view], hash, options, env)
|
||||
|
||||
`export default fn`
|
||||
|
|
Loading…
Reference in New Issue
Block a user