From bf3ee8d7bb5937f70bc009c2ad62dd32fec63f6b Mon Sep 17 00:00:00 2001 From: Fabian Rodriguez Date: Sun, 1 Dec 2013 17:46:25 -0200 Subject: [PATCH] remove PostViewer --- .../javascripts/app/pages/post-viewer.js | 107 ------------------ app/assets/templates/post-viewer_tpl.jst.hbs | 4 - .../javascripts/app/pages/post-viewer_spec.js | 14 --- 3 files changed, 125 deletions(-) delete mode 100644 app/assets/javascripts/app/pages/post-viewer.js delete mode 100644 app/assets/templates/post-viewer_tpl.jst.hbs delete mode 100644 spec/javascripts/app/pages/post-viewer_spec.js diff --git a/app/assets/javascripts/app/pages/post-viewer.js b/app/assets/javascripts/app/pages/post-viewer.js deleted file mode 100644 index 237fdd3f1..000000000 --- a/app/assets/javascripts/app/pages/post-viewer.js +++ /dev/null @@ -1,107 +0,0 @@ -app.pages.PostViewer = app.views.Base.extend({ - templateName: "post-viewer", - - subviews : { - "#post-content" : "postView", - "#post-nav" : "navView", - "#post-interactions" : "interactionsView", - "#author-info" : "authorView" - }, - - initialize : function(options) { - this.model = new app.models.Post({ id : options.id }); - this.model.preloadOrFetch().done(_.bind(this.initViews, this)); - this.model.interactions.fetch() //async, yo, might want to throttle this later. - - this.bindEvents() - }, - - initViews : function() { - /* init view */ - this.authorView = new app.views.PostViewerAuthor({ model : this.model }); - this.interactionsView = new app.views.PostViewerInteractions({ model : this.model }); - this.navView = new app.views.PostViewerNav({ model : this.model }); - this.postView = app.views.Post.showFactory(this.model) - - this.render(); - }, - - bindEvents : function(){ - this.prepIdleHooks(); - this.bindNavHooks(); - - $(document).bind("keypress", _.bind(this.commentAnywhere, this)) - $(document).bind("keypress", _.bind(this.invokePane, this)) - $(document).bind("keyup", _.bind(this.closePane, this)) - }, - - unbind : function(){ - $(document).unbind("idle.idleTimer") - $(document).unbind("active.idleTimer") - $(document).unbind('keydown') - $(document).unbind('keypress') - $(document).unbind('keyup') - }, - - prepIdleHooks : function () { - $.idleTimer(3000); - - $(document).bind("idle.idleTimer", function(){ - $("body").addClass('idle'); - }); - - $(document).bind("active.idleTimer", function(){ - $("body").removeClass('idle'); - }); - }, - - bindNavHooks : function() { - var model = this.model; - $(document).keydown(function(evt){ - // prevent nav from happening if the user is using the arrow keys to navigate through their comment text - if($(evt.target).is("textarea")) { return } - - switch(evt.keyCode) { - case KEYCODES.LEFT: - app.router.navigate(model.get("next_post"), true); break; - case KEYCODES.RIGHT: - app.router.navigate(model.get("previous_post"), true); break; - default: - break; - } - }) - }, - - postRenderTemplate : function() { - if(this.model.get("title")){ - // formats title to html... - var html_title = app.helpers.textFormatter(this.model.get("title"), this.model); - //... and converts html to plain text - document.title = $('
').html(html_title).text(); - } - }, - - commentAnywhere : function(evt) { - /* ignore enter, space bar, arrow keys */ - if(_.include([KEYCODES.RETURN, KEYCODES.SPACE, KEYCODES.LEFT, - KEYCODES.UP, KEYCODES.RIGHT, KEYCODES.DOWN], evt.keyCode) || - this.modifierPressed(evt) ) { return } - - this.interactionsView.invokePane(); - $('#new-post-comment textarea').focus(); - }, - - invokePane : function(evt) { - if(evt.keyCode != KEYCODES.SPACE) { return } - this.interactionsView.invokePane(); - }, - - closePane : function(evt) { - if(evt.keyCode != KEYCODES.ESC) { return } - this.interactionsView.hidePane(); - }, - - modifierPressed: function(evt) { - return (evt.altKey || evt.ctrlKey || evt.shiftKey); - } -}); diff --git a/app/assets/templates/post-viewer_tpl.jst.hbs b/app/assets/templates/post-viewer_tpl.jst.hbs deleted file mode 100644 index dada78ec9..000000000 --- a/app/assets/templates/post-viewer_tpl.jst.hbs +++ /dev/null @@ -1,4 +0,0 @@ -
-
-
-
diff --git a/spec/javascripts/app/pages/post-viewer_spec.js b/spec/javascripts/app/pages/post-viewer_spec.js deleted file mode 100644 index eeda1184a..000000000 --- a/spec/javascripts/app/pages/post-viewer_spec.js +++ /dev/null @@ -1,14 +0,0 @@ -describe("app.Pages.PostViewer", function(){ - describe("postRenderTemplate", function(){ - beforeEach(function(){ - app.setPreload('post', factory.post({frame_name : "note"}).attributes); - this.page = new app.pages.PostViewer({id : 2}); - }) - it('translates post title from Markdown to plain text and pushes it in document.title', function () { - this.page.model.set({title : "### My [Markdown](url) *title*" }); - this.page.postRenderTemplate(); - expect(document.title).toEqual("My Markdown title"); - }) - }) -}); -