Add experimental analytics

This commit is contained in:
2018-01-15 17:55:11 -03:00
parent 799371f432
commit fde01b8f05
4 changed files with 53 additions and 5 deletions
+1
View File
@@ -42,6 +42,7 @@ export default DS.Model.extend
project_scenarios_sort: ['name:asc']
sorted_project_scenarios: Ember.computed.sort 'project_scenarios', 'project_scenarios_sort'
#unassigned_workflow_action_definitions: Ember.computed ->
# promise = new Ember.RSVP.Promise (resolve) =>
# @get('workflow_action_definitions').then (workflow_action_definitions) ->
+29
View File
@@ -0,0 +1,29 @@
import Ember from 'ember'
{get} = Ember
export default Ember.Route.extend
session: Ember.inject.service('session')
model: ->
project = @modelFor('project.show')
project.reload() unless @controllerFor('application').get('currentRouteName') in ['loading', 'project.show.dunlop', 'project.show.analytics']
#TODO: implement with ember-custom-actions if v2 is released
session = @get('session')
model_name = 'panda/project'
base_url = @store.adapterFor(model_name).buildURL(model_name)
url = base_url + "/#{project.id}/analytics"
request =
url: url
type: 'GET'
contentType: "application/json"
dataType: "json"
if get(session, 'isAuthenticated')
session.authorize 'authorizer:devise', (key, authorization) ->
request.crossDomain = true
request.headers ||= {}
request.headers[key] = authorization
Ember.RSVP.hash
project: project
analytics: Ember.$.ajax(request)
setupController: (controller, model) ->
controller.set 'project', @modelFor('project.show')
@_super arguments...
@@ -22,6 +22,8 @@ export default Ember.Route.extend
#@store.findAll('epots/migration-window-planning')
default_filter.project_id = project.id
otherParams = {q: default_filter.toProperties()}
includes = 'action-list'
otherParams.include = includes
PagedRemoteArray.create
modelName: 'panda/project-instance-action'
store: @store
+21 -5
View File
@@ -4,16 +4,32 @@ d-breadcrumbs as |breadcrumb|
breadcrumb.item
span= t 'models.project'
span :
= link-to 'project.show' model: span= model.name
= link-to 'project.show' project: span= project.name
breadcrumb.item active=true
span= t 'project.analysis.title'
.ui.container
.ui.header
.content
span.resource-descriptor= t 'models.project'
span.resource-name= model.name
span.resource-name= project.name
span.resource-suffix= t 'project.analysis.title'
.ui.divider
br
br
= panda-image path="under-construction.svg"
each project.sorted_workflow_groups as |workflow_group|
.ui.segment
span= workflow_group.name
span -
span= workflow_group.id
each-in (get (get model.analytics 'instance_groups') workflow_group.id) as |state count|
= state-badge state
'
span.between-brackets= count
.ui.segments
each workflow_group.sorted_workflow_action_definitions as |workflow_action_definition|
.ui.segment
span= workflow_action_definition.title
each-in (get (get model.analytics 'instance_actions') workflow_action_definition.id) as |state count|
= state-badge state
'
span.between-brackets= count
br
= panda-image path="under-construction.svg"