mirror of
https://github.com/flynx/PortableMag.git
synced 2025-12-23 20:11:46 +00:00
some refactoring on the #URL handlers, still not complete...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
f64db62e88
commit
6b36c34c91
8
TODO.otl
8
TODO.otl
@ -1,9 +1,9 @@
|
|||||||
[_] 39% Priority work
|
[_] 39% Priority work
|
||||||
[_] 76% general todo
|
[_] 76% general todo
|
||||||
[_] 0% Priority work for 10.03.13
|
[_] 0% Priority work for 10.03.13
|
||||||
[_] load/save from JSON
|
|
||||||
[_] add page via template
|
|
||||||
[_] change image
|
[_] change image
|
||||||
|
[_] add page via template
|
||||||
|
[_] load/save from JSON
|
||||||
[_] basic instructions
|
[_] basic instructions
|
||||||
[_] 37% Version 1.0 checklist (migration to layout.html)
|
[_] 37% Version 1.0 checklist (migration to layout.html)
|
||||||
[X] page scaling for full page view
|
[X] page scaling for full page view
|
||||||
@ -24,8 +24,8 @@
|
|||||||
[_] issue selection & related navigation
|
[_] issue selection & related navigation
|
||||||
| essentially a special magazine that will load other magazines
|
| essentially a special magazine that will load other magazines
|
||||||
| instead of going into a full page view...
|
| instead of going into a full page view...
|
||||||
[_] 0% #URL rework...
|
[_] 20% #URL rework...
|
||||||
[_] make #URLs a configurable framework...
|
[X] make #URLs a configurable framework...
|
||||||
| rather than being hard-coded as they are now...
|
| rather than being hard-coded as they are now...
|
||||||
[_] make #URLs magazine-specific...
|
[_] make #URLs magazine-specific...
|
||||||
[_] BUG: when #URL updates are off layer toggling breaks...
|
[_] BUG: when #URL updates are off layer toggling breaks...
|
||||||
|
|||||||
143
magazine.js
143
magazine.js
@ -874,6 +874,70 @@ function prevBookmark(){
|
|||||||
*
|
*
|
||||||
**********************************************************************/
|
**********************************************************************/
|
||||||
|
|
||||||
|
URL_HANDLERS = {
|
||||||
|
// basic navigation...
|
||||||
|
home: function(){
|
||||||
|
return 0
|
||||||
|
},
|
||||||
|
end: function(){
|
||||||
|
return $('.page').length-1
|
||||||
|
},
|
||||||
|
|
||||||
|
// relative URLs...
|
||||||
|
next: function(){
|
||||||
|
nextPage()
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
prev: function(){
|
||||||
|
prevPage()
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
nextArticle: function(){
|
||||||
|
nextArticle()
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
prevArticle: function(){
|
||||||
|
prevArticle()
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
nextBookmark: function(){
|
||||||
|
nextBookmark()
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
prevBookmark: function(){
|
||||||
|
prevBookmark()
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
|
||||||
|
// actions...
|
||||||
|
// XXX this scrolls someplace odd...
|
||||||
|
thumbnails: function(){
|
||||||
|
n = getPageNumber()
|
||||||
|
togglePageView('off')
|
||||||
|
return n
|
||||||
|
},
|
||||||
|
bookmark: function(){
|
||||||
|
toggleBookmark()
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
// hide all visible layers on current page...
|
||||||
|
hideLayers: function(){
|
||||||
|
$('.current.page .shown')
|
||||||
|
.addClass('hidden')
|
||||||
|
.removeClass('shown')
|
||||||
|
return getPageNumber()
|
||||||
|
},
|
||||||
|
|
||||||
|
// history...
|
||||||
|
// NOTE: these are handled by hashChangeHandler()
|
||||||
|
back: function(){
|
||||||
|
return 'back'
|
||||||
|
},
|
||||||
|
forward: function(){
|
||||||
|
return anchor
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
// XXX make URLs magazine-specific...
|
// XXX make URLs magazine-specific...
|
||||||
// ...for extrnal linking we'll need the magazine ID, or make each
|
// ...for extrnal linking we'll need the magazine ID, or make each
|
||||||
// magazine a seporate path...
|
// magazine a seporate path...
|
||||||
@ -899,75 +963,24 @@ function loadURLState(){
|
|||||||
return n
|
return n
|
||||||
}
|
}
|
||||||
|
|
||||||
// XXX add real external aliases...
|
if(anchor in URL_HANDLERS){
|
||||||
if(anchor == 'thumbnails') {
|
return URL_HANDLERS[anchor]()
|
||||||
togglePageView('off')
|
}
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else if(anchor == 'home') {
|
// show a layer...
|
||||||
return 0
|
var elem = $('[name='+anchor+']')
|
||||||
|
n = getPageNumber(elem.parents('.page'))
|
||||||
} else if(anchor == 'end') {
|
// toggle hidden/shown elements...
|
||||||
return $('.page').length-1
|
if(elem.hasClass('hidden')){
|
||||||
|
elem
|
||||||
// history...
|
.addClass('shown')
|
||||||
// NOTE: these are handled by hashChangeHandler()
|
.removeClass('hidden')
|
||||||
} else if(anchor == 'back') {
|
} else if(elem.hasClass('shown')){
|
||||||
return anchor
|
elem
|
||||||
} else if(anchor == 'forward') {
|
|
||||||
return anchor
|
|
||||||
|
|
||||||
// relative URLs...
|
|
||||||
} else if(anchor == 'next') {
|
|
||||||
nextPage()
|
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else if(anchor == 'prev') {
|
|
||||||
prevPage()
|
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else if(anchor == 'nextArticle') {
|
|
||||||
nextArticle()
|
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else if(anchor == 'prevArticle') {
|
|
||||||
prevArticle()
|
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else if(anchor == 'nextBookmark') {
|
|
||||||
nextBookmark()
|
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else if(anchor == 'prevBookmark') {
|
|
||||||
prevBookmark()
|
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else if(anchor == 'bookmark'){
|
|
||||||
toggleBookmark()
|
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
// hide all visible layers on current page...
|
|
||||||
} else if(anchor == 'hideLayers') {
|
|
||||||
$('.current.page .shown')
|
|
||||||
.addClass('hidden')
|
.addClass('hidden')
|
||||||
.removeClass('shown')
|
.removeClass('shown')
|
||||||
return getPageNumber()
|
|
||||||
|
|
||||||
} else {
|
|
||||||
var elem = $('[name='+anchor+']')
|
|
||||||
n = getPageNumber(elem.parents('.page'))
|
|
||||||
// toggle hidden/shown elements...
|
|
||||||
if(elem.hasClass('hidden')){
|
|
||||||
elem
|
|
||||||
.addClass('shown')
|
|
||||||
.removeClass('hidden')
|
|
||||||
} else if(elem.hasClass('shown')){
|
|
||||||
elem
|
|
||||||
.addClass('hidden')
|
|
||||||
.removeClass('shown')
|
|
||||||
}
|
|
||||||
return n
|
|
||||||
}
|
}
|
||||||
|
return n
|
||||||
}
|
}
|
||||||
// save current state to URL...
|
// save current state to URL...
|
||||||
function saveURLState(){
|
function saveURLState(){
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user