mirror of
https://github.com/wassname/side-by-side.git
synced 2026-09-10 12:37:06 +08:00
Split controllers
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
angular.module("sideBySide").controller "AppController",
|
||||
['$scope', 'ngDialog', 'poems'
|
||||
($scope, ngDialog, poems) ->
|
||||
$scope.title = =>
|
||||
sbs = 'Side By Side viewer'
|
||||
if poems.config.title
|
||||
poems.config.title + ' – ' + sbs
|
||||
else
|
||||
sbs
|
||||
|
||||
$scope.showPage = (page) ->
|
||||
ngDialog.open {
|
||||
template: 'partials/' + page + '.html'
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,54 @@
|
||||
angular.module("sideBySide").controller "ComparisonController",
|
||||
['$document', '$rootScope', '$scope', 'filter', 'load', 'poems', 'route', 'transformer'
|
||||
($document, $rootScope, $scope, filter, load, poems, route, transformer) ->
|
||||
min = 1
|
||||
max = 5
|
||||
|
||||
scroll = ->
|
||||
setTimeout ->
|
||||
if 'section' of route.params
|
||||
section = 'section-' + route.params['section']
|
||||
element = document.getElementById section
|
||||
$document.scrollTo(element, 10, 200) if element
|
||||
, 1
|
||||
|
||||
$rootScope.$on 'duScrollspy:becameActive', ($event, $element) ->
|
||||
if not $scope.meta[0].Loading
|
||||
route.update 'section', $element.prop('id').replace('section-', '')
|
||||
$rootScope.$apply()
|
||||
|
||||
$scope.$watchCollection ->
|
||||
poems.getActive()
|
||||
, ->
|
||||
active = poems.getActive()
|
||||
|
||||
$scope.columns = active.length
|
||||
transformed = transformer active
|
||||
$scope.verses = transformed.verses
|
||||
$scope.meta = transformed.meta
|
||||
|
||||
headingKey = poems.config.heading or "Author"
|
||||
$scope.headings = (version[headingKey] for version in transformed.meta)
|
||||
|
||||
$scope.metaKeys = poems.getMetaKeys()
|
||||
$scope.all = poems.all
|
||||
scroll()
|
||||
|
||||
$scope.switchActive = (poem) ->
|
||||
length = poems.getActive().length
|
||||
active = poem.meta.Active
|
||||
if (length > min or not active) and (length < max or active)
|
||||
poem.meta.Active = ! active
|
||||
route.update 'display', filter.getFilter()
|
||||
# TODO else notification
|
||||
|
||||
$scope.flipPick = ->
|
||||
$scope.pick = not $scope.pick
|
||||
|
||||
$scope.pick = false
|
||||
|
||||
load(
|
||||
route.appUrl + '/' + route.params.base.replace /\./g, '/'
|
||||
route.params.display
|
||||
)
|
||||
]
|
||||
Reference in New Issue
Block a user