From 02539bfdd3f290d583ff35b9b4c31abf081458d8 Mon Sep 17 00:00:00 2001 From: bootstraponline Date: Wed, 1 Aug 2012 01:49:26 -0600 Subject: [PATCH] Move new page dir logic to JS. --- lib/gollum/frontend/app.rb | 2 -- .../frontend/public/gollum/javascript/gollum.js | 9 ++++++--- lib/gollum/frontend/templates/page.mustache | 2 +- lib/gollum/frontend/templates/pages.mustache | 2 +- lib/gollum/frontend/views/page.rb | 4 ---- lib/gollum/frontend/views/pages.rb | 4 ---- test/test_pages_view.rb | 11 ----------- 7 files changed, 8 insertions(+), 26 deletions(-) diff --git a/lib/gollum/frontend/app.rb b/lib/gollum/frontend/app.rb index b3c5197c..f30630d3 100644 --- a/lib/gollum/frontend/app.rb +++ b/lib/gollum/frontend/app.rb @@ -344,8 +344,6 @@ module Precious @content = page.formatted_data @toc_content = wiki.universal_toc ? @page.toc_data : nil @mathjax = wiki.mathjax - # Set @path for mustache :page new_page_data_variables - @path = path mustache :page elsif file = wiki.file(fullpath) content_type file.mime_type diff --git a/lib/gollum/frontend/public/gollum/javascript/gollum.js b/lib/gollum/frontend/public/gollum/javascript/gollum.js index 5d59d7a2..f71d6f6c 100755 --- a/lib/gollum/frontend/public/gollum/javascript/gollum.js +++ b/lib/gollum/frontend/public/gollum/javascript/gollum.js @@ -154,9 +154,12 @@ $(document).ready(function() { $('#minibutton-new-page').click(function(e) { e.preventDefault(); - var path = $(this).data('path'); - if (path) { - path = path + '/'; + var path = location.pathname; + // ensure there's more than one slash in pathname. + if (path.split('/').length > 2) { + path = path.substr(path.lastIndexOf('/')+1) + '/'; + } else { + path = ''; } $.GollumDialog.init({ diff --git a/lib/gollum/frontend/templates/page.mustache b/lib/gollum/frontend/templates/page.mustache index 1936c17d..1d108a64 100644 --- a/lib/gollum/frontend/templates/page.mustache +++ b/lib/gollum/frontend/templates/page.mustache @@ -10,7 +10,7 @@
  • Files
  • - New
  • + New
  • Rename
  • {{#editable}} diff --git a/lib/gollum/frontend/templates/pages.mustache b/lib/gollum/frontend/templates/pages.mustache index 6a94e4e1..8d88263f 100644 --- a/lib/gollum/frontend/templates/pages.mustache +++ b/lib/gollum/frontend/templates/pages.mustache @@ -8,7 +8,7 @@
  • Home
  • - New + New
  • diff --git a/lib/gollum/frontend/views/page.rb b/lib/gollum/frontend/views/page.rb index 8afac5f0..84246a9d 100644 --- a/lib/gollum/frontend/views/page.rb +++ b/lib/gollum/frontend/views/page.rb @@ -7,10 +7,6 @@ module Precious DATE_FORMAT = "%Y-%m-%d %H:%M:%S" DEFAULT_AUTHOR = 'you' - def new_page_data_variables - %{ data-path="#{@path}"} if @path - end - def title @page.url_path.gsub("-", " ") end diff --git a/lib/gollum/frontend/views/pages.rb b/lib/gollum/frontend/views/pages.rb index e5988220..ae6a33b0 100644 --- a/lib/gollum/frontend/views/pages.rb +++ b/lib/gollum/frontend/views/pages.rb @@ -9,10 +9,6 @@ module Precious "All pages in #{@ref}" end - def new_page_data_variables - %{ data-path="#{@path}"} if @path - end - def breadcrumb if @path path = Pathname.new(@path) diff --git a/test/test_pages_view.rb b/test/test_pages_view.rb index 37fb1da2..bb4bc958 100644 --- a/test/test_pages_view.rb +++ b/test/test_pages_view.rb @@ -34,15 +34,4 @@ context "Precious::Views::Pages" do @page.instance_variable_set("@results", results) assert_equal %{
  • Eye Of Sauron
  • \n
  • Orc
  • }, @page.files_folders end - - test "new_page_data_variables within Home directory" do - assert_equal nil, @page.new_page_data_variables - end - - test "new_page_data_variables within subdirectory" do - @page.instance_variable_set("@path", "Mordor") - assert_equal ' data-path="Mordor"', @page.new_page_data_variables - @page.instance_variable_set("@path", "Mordor/Eye-Of-Sauron") - assert_equal ' data-path="Mordor/Eye-Of-Sauron"', @page.new_page_data_variables - end end