extract slider toggle cuz i can't get an ember mixin working

This commit is contained in:
Sven Fuchs 2012-09-23 03:18:54 +02:00
parent 2db81d1685
commit 89cb0c81c8
6 changed files with 29 additions and 19 deletions

View File

@ -5,6 +5,7 @@ require 'helpers'
require 'models'
require 'pusher'
require 'routes'
require 'slider'
require 'store'
require 'tailing'
require 'templates'
@ -33,6 +34,7 @@ Travis.reopen
@set('auth', Travis.Auth.create(store: @store, endpoint: Travis.config.api_endpoint))
@slider = new Travis.Slider()
@routes = new Travis.Routes()
@pusher = new Travis.Pusher()
@tailing = new Travis.Tailing()

View File

@ -4,28 +4,12 @@ Travis.reopen
@tickables = []
Travis.Ticker.create(target: this, interval: Travis.INTERVALS.sponsors)
@toggle() if localStorage?.getItem('travis.maximized')
@connectWorkers(Travis.Worker.find())
@connectQueues(Travis.QUEUES)
@connectSponsors('decks', Travis.Sponsor.decks(), 1)
@connectSponsors('links', Travis.Sponsor.links(), 6)
persist: ->
localStorage?.setItem('travis.maximized', @isMinimized())
isMinimized: ->
return $('body').hasClass('maximized');
toggle: ->
$('body').toggleClass('maximized')
@persist()
# TODO gotta force redraws here :/
element = $('<span></span>')
$('#top .profile').append(element)
Em.run.later (-> element.remove()), 10
connectSponsors: (name, sponsors, perPage) ->
controller = Travis.SponsorsController.create(perPage: perPage, content: sponsors)
viewClass = Em.View.extend(templateName: "sponsors/#{name}")

View File

@ -0,0 +1,24 @@
@Travis.Slider = ->
@minimize() if localStorage?.getItem('travis.maximized') == 'true'
this
$.extend Travis.Slider.prototype,
persist: ->
localStorage?.setItem('travis.maximized', @isMinimized())
isMinimized: ->
return $('body').hasClass('maximized');
minimize: ->
$('body').addClass('maximized')
toggle: ->
$('body').toggleClass('maximized')
@persist()
# TODO gotta force redraws here :/
element = $('<span></span>')
$('#top .profile').append(element)
Em.run.later (-> element.remove()), 10

View File

@ -11,7 +11,7 @@
</div>
<div id="right">
<div id="slider" {{action toggleSidebar target="Travis.app"}}>
<div id="slider" {{action toggle target="Travis.app.slider"}}>
<div class='icon'></div>&nbsp;
</div>

View File

@ -2,7 +2,7 @@
{{t layouts.application.fork_me}}
</a>
<div id="slider" {{action toggle target="controller"}}>
<div id="slider" {{action toggle target="Travis.app.slider"}}>
<div class='icon'></div>&nbsp;
</div>

File diff suppressed because one or more lines are too long