Added caching of tickets.
This commit is contained in:
parent
ca73a740b6
commit
2e9a94c8be
1 changed files with 27 additions and 19 deletions
|
@ -23,9 +23,13 @@ class Index extends App.Controller
|
||||||
@navupdate '#'
|
@navupdate '#'
|
||||||
|
|
||||||
@edit_form = undefined
|
@edit_form = undefined
|
||||||
# @render()
|
|
||||||
@ticket_id = params.ticket_id
|
@ticket_id = params.ticket_id
|
||||||
@article_id = params.article_id
|
@article_id = params.article_id
|
||||||
|
|
||||||
|
@key = 'ticket::' + @ticket_id
|
||||||
|
cache = App.Store.get( @key )
|
||||||
|
if cache
|
||||||
|
@load(cache)
|
||||||
@fetch(@ticket_id)
|
@fetch(@ticket_id)
|
||||||
|
|
||||||
fetch: (ticket_id) ->
|
fetch: (ticket_id) ->
|
||||||
|
@ -40,26 +44,30 @@ class Index extends App.Controller
|
||||||
}
|
}
|
||||||
processData: true,
|
processData: true,
|
||||||
success: (data, status, xhr) =>
|
success: (data, status, xhr) =>
|
||||||
# reset old indexes
|
@load(data)
|
||||||
@ticket = undefined
|
App.Store.write( @key, data )
|
||||||
@articles = undefined
|
|
||||||
|
|
||||||
# get edit form attributes
|
|
||||||
@edit_form = data.edit_form
|
|
||||||
|
|
||||||
# load user collection
|
|
||||||
@loadCollection( type: 'User', data: data.users )
|
|
||||||
|
|
||||||
# load ticket collection
|
|
||||||
@loadCollection( type: 'Ticket', data: [data.ticket] )
|
|
||||||
|
|
||||||
# load article collections
|
|
||||||
@loadCollection( type: 'TicketArticle', data: data.articles || [] )
|
|
||||||
|
|
||||||
# render page
|
|
||||||
@render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
load: (data) =>
|
||||||
|
# reset old indexes
|
||||||
|
@ticket = undefined
|
||||||
|
@articles = undefined
|
||||||
|
|
||||||
|
# get edit form attributes
|
||||||
|
@edit_form = data.edit_form
|
||||||
|
|
||||||
|
# load user collection
|
||||||
|
@loadCollection( type: 'User', data: data.users )
|
||||||
|
|
||||||
|
# load ticket collection
|
||||||
|
@loadCollection( type: 'Ticket', data: [data.ticket] )
|
||||||
|
|
||||||
|
# load article collections
|
||||||
|
@loadCollection( type: 'TicketArticle', data: data.articles || [] )
|
||||||
|
|
||||||
|
# render page
|
||||||
|
@render()
|
||||||
|
|
||||||
render: =>
|
render: =>
|
||||||
|
|
||||||
if !App.Ticket.exists(@ticket_id)
|
if !App.Ticket.exists(@ticket_id)
|
||||||
|
|
Loading…
Reference in a new issue