117 lines
3.0 KiB
CoffeeScript
117 lines
3.0 KiB
CoffeeScript
require 'ext/ember/namespace'
|
|
|
|
Em.View.reopen
|
|
init: ->
|
|
this.container ||= Travis.__container__
|
|
|
|
@_super.apply(this, arguments)
|
|
|
|
@Travis.reopen
|
|
View: Em.View.extend
|
|
actions:
|
|
popup: (name) -> @popup(name)
|
|
popupClose: -> @popupClose()
|
|
|
|
popup: (name) ->
|
|
@popupCloseAll()
|
|
name = event?.target?.name || name
|
|
$("##{name}").toggleClass('display')
|
|
popupClose: ->
|
|
$(event.target).closest('.popup').removeClass('display')
|
|
popupCloseAll: ->
|
|
if view = Travis.View.currentPopupView
|
|
view.destroy()
|
|
Travis.View.currentPopupView = null
|
|
|
|
$('.popup').removeClass('display')
|
|
|
|
Travis.IndexView = Travis.View.extend
|
|
layoutName: 'layouts/home'
|
|
classNames: ['application']
|
|
|
|
@Travis.NoOwnedReposView = Ember.View.extend
|
|
templateName: 'pro/no_owned_repos'
|
|
|
|
Travis.GettingStartedView = Travis.View.extend
|
|
templateName: (->
|
|
if Travis.config.pro
|
|
'pro/no_owned_repos'
|
|
else
|
|
'no_owned_repos'
|
|
).property()
|
|
|
|
Travis.InsufficientOauthPermissionsView = Travis.View.extend
|
|
layoutName: 'layouts/simple'
|
|
classNames: ['application']
|
|
|
|
Travis.FirstSyncView = Travis.View.extend
|
|
layoutName: 'layouts/simple'
|
|
classNames: ['application']
|
|
didInsertElement: ->
|
|
this.addObserver('controller.isSyncing', this, this.isSyncingDidChange)
|
|
|
|
willDestroyElement: ->
|
|
this.removeObserver('controller.isSyncing', this, this.isSyncingDidChange)
|
|
|
|
isSyncingDidChange: ->
|
|
if !@get('controller.isSyncing')
|
|
self = this
|
|
Ember.run.later this, ->
|
|
Travis.Repo.fetch(member: @get('controller.user.login')).then( (repos) ->
|
|
if repos.get('length')
|
|
self.get('controller').transitionToRoute('index')
|
|
else
|
|
self.get('controller').transitionToRoute('profile')
|
|
).then(null, (e) ->
|
|
console.log('There was a problem while redirecting from first sync', e)
|
|
)
|
|
, Travis.config.syncingPageRedirectionTime
|
|
|
|
|
|
Travis.SidebarView = Travis.View.extend
|
|
templateName: 'layouts/sidebar'
|
|
|
|
didInsertElement: ->
|
|
@_super.apply this, arguments
|
|
|
|
classQueues: (->
|
|
'active' if @get('activeTab') == 'queues'
|
|
).property('activeTab')
|
|
|
|
classWorkers: (->
|
|
'active' if @get('activeTab') == 'workers'
|
|
).property('activeTab')
|
|
|
|
classJobs: (->
|
|
'active' if @get('activeTab') == 'jobs'
|
|
).property('activeTab')
|
|
|
|
Travis.QueueItemView = Travis.View.extend
|
|
tagName: 'li'
|
|
|
|
Travis.RunningJobsView = Em.View.extend
|
|
templateName: 'pro/jobs'
|
|
elementId: 'running-jobs'
|
|
|
|
Travis.QueueView = Em.View.extend
|
|
templateName: 'queues/show'
|
|
init: ->
|
|
@_super.apply this, arguments
|
|
@set 'controller', @get('controller').container.lookup('controller:queues')
|
|
|
|
require 'views/accounts'
|
|
require 'views/annotation'
|
|
require 'views/application'
|
|
require 'views/build'
|
|
require 'views/events'
|
|
require 'views/flash'
|
|
require 'views/job'
|
|
require 'views/log'
|
|
require 'views/repo'
|
|
require 'views/profile'
|
|
require 'views/stats'
|
|
require 'views/signin'
|
|
require 'views/top'
|
|
require 'views/status_images'
|
|
require 'views/status_image_input'
|