From 34f8d994fa1595f285c3565cff3e8832073b2903 Mon Sep 17 00:00:00 2001 From: Ari Entlich Date: Thu, 31 Jul 2014 01:23:48 +0000 Subject: [PATCH] reading view panel stubbed in place --- client/client.js | 22 ++++++++++++ client/controllers/readingview.js | 22 ++++++++++++ client/home.html | 6 ++-- client/stylesheets/sass/_readingview.scss | 44 +++++++++++++++++++++-- client/templates/readingview.html | 32 ++++++++++++++--- 5 files changed, 117 insertions(+), 9 deletions(-) diff --git a/client/client.js b/client/client.js index bd15d4f..86645e0 100644 --- a/client/client.js +++ b/client/client.js @@ -21,4 +21,26 @@ if (Meteor.isClient) { return current && current.route && current.route.name === 'readingview'; } + function set_panel(name) { + if (Session.equals('reading-view-panel', name) && + Session.get('reading-view-panel-visible')) { + Session.set('reading-view-panel-visible', false); + } else { + Session.set('reading-view-panel', name); + Session.set('reading-view-panel-visible', true); + } + } + + Template.readingmenu.events({ + 'click #show-table-of-contents': function() { + set_panel('table_of_contents_panel'); + }, + 'click #show-annotations': function() { + set_panel('annotation_list_panel'); + }, + 'click #show-type-menu': function() { + set_panel('type_panel'); + } + }); + } diff --git a/client/controllers/readingview.js b/client/controllers/readingview.js index ed0805c..8ae2ad5 100644 --- a/client/controllers/readingview.js +++ b/client/controllers/readingview.js @@ -1,8 +1,30 @@ if (Meteor.isClient) { + Meteor.startup(function() { + Session.setDefault('reading-view-panel', null); + Session.setDefault('reading-view-panel-visible', false); + }); + Template.readingview.get_section = function() { var id = new Meteor.Collection.ObjectID(Router.current().params._id); return SectionContents.findOne(id); } + Template.readingview.get_panel_visible = function() { + if (Session.get('reading-view-panel-visible')) { + return 'show-panel'; + } else { + return 'hide-panel'; + } + } + + Template.readingview.get_panel_contents = function() { + var panel = Session.get('reading-view-panel'); + if (panel === null) { + return null; + } + + return Template[panel]; + } + } diff --git a/client/home.html b/client/home.html index 2d9caef..5b8bdae 100644 --- a/client/home.html +++ b/client/home.html @@ -50,9 +50,9 @@

Annotorious

diff --git a/client/stylesheets/sass/_readingview.scss b/client/stylesheets/sass/_readingview.scss index cc1f6de..c5660e9 100644 --- a/client/stylesheets/sass/_readingview.scss +++ b/client/stylesheets/sass/_readingview.scss @@ -1,5 +1,45 @@ @import 'palette'; -.content { - margin: 1em 25%; +.show-panel { + #side-panel-wrap { + width: 25%; + } + + #content-wrap { + width: 75%; + } +} + +.hide-panel { + #side-panel-wrap { + width: 0%; + } + + #content-wrap { + width: 100%; + } +} + +#panel-selector { + font-size: 0em; + + #side-panel-wrap { + vertical-align: top; + overflow: hidden; + + #side-panel-content { + min-width: 25%; + } + } + + #side-panel-wrap, #content-wrap { + font-size: 1rem; + display: inline-block; + transition: width 1s ease; + } +} + +#content { + width: 75%; + margin: 1em auto; } diff --git a/client/templates/readingview.html b/client/templates/readingview.html index d642496..d3b0f42 100644 --- a/client/templates/readingview.html +++ b/client/templates/readingview.html @@ -1,9 +1,33 @@ + + + + + +