Move new page dir logic to JS.
This commit is contained in:
@@ -344,8 +344,6 @@ module Precious
|
|||||||
@content = page.formatted_data
|
@content = page.formatted_data
|
||||||
@toc_content = wiki.universal_toc ? @page.toc_data : nil
|
@toc_content = wiki.universal_toc ? @page.toc_data : nil
|
||||||
@mathjax = wiki.mathjax
|
@mathjax = wiki.mathjax
|
||||||
# Set @path for mustache :page new_page_data_variables
|
|
||||||
@path = path
|
|
||||||
mustache :page
|
mustache :page
|
||||||
elsif file = wiki.file(fullpath)
|
elsif file = wiki.file(fullpath)
|
||||||
content_type file.mime_type
|
content_type file.mime_type
|
||||||
|
|||||||
@@ -154,9 +154,12 @@ $(document).ready(function() {
|
|||||||
$('#minibutton-new-page').click(function(e) {
|
$('#minibutton-new-page').click(function(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
var path = $(this).data('path');
|
var path = location.pathname;
|
||||||
if (path) {
|
// ensure there's more than one slash in pathname.
|
||||||
path = path + '/';
|
if (path.split('/').length > 2) {
|
||||||
|
path = path.substr(path.lastIndexOf('/')+1) + '/';
|
||||||
|
} else {
|
||||||
|
path = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
$.GollumDialog.init({
|
$.GollumDialog.init({
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<li class="minibutton"><a href="{{base_url}}fileview"
|
<li class="minibutton"><a href="{{base_url}}fileview"
|
||||||
class="action-all-pages">Files</a></li>
|
class="action-all-pages">Files</a></li>
|
||||||
<li class="minibutton" class="jaws">
|
<li class="minibutton" class="jaws">
|
||||||
<a href="#" id="minibutton-new-page"{{{new_page_data_variables}}}>New</a></li>
|
<a href="#" id="minibutton-new-page">New</a></li>
|
||||||
<li class="minibutton" class="jaws">
|
<li class="minibutton" class="jaws">
|
||||||
<a href="#" id="minibutton-rename-page">Rename</a></li>
|
<a href="#" id="minibutton-rename-page">Rename</a></li>
|
||||||
{{#editable}}
|
{{#editable}}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<li class="minibutton"><a href="{{base_url}}"
|
<li class="minibutton"><a href="{{base_url}}"
|
||||||
class="action-edit-page">Home</a></li>
|
class="action-edit-page">Home</a></li>
|
||||||
<li class="minibutton" class="jaws">
|
<li class="minibutton" class="jaws">
|
||||||
<a href="#" id="minibutton-new-page"{{{new_page_data_variables}}}>New</a>
|
<a href="#" id="minibutton-new-page">New</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -7,10 +7,6 @@ module Precious
|
|||||||
DATE_FORMAT = "%Y-%m-%d %H:%M:%S"
|
DATE_FORMAT = "%Y-%m-%d %H:%M:%S"
|
||||||
DEFAULT_AUTHOR = 'you'
|
DEFAULT_AUTHOR = 'you'
|
||||||
|
|
||||||
def new_page_data_variables
|
|
||||||
%{ data-path="#{@path}"} if @path
|
|
||||||
end
|
|
||||||
|
|
||||||
def title
|
def title
|
||||||
@page.url_path.gsub("-", " ")
|
@page.url_path.gsub("-", " ")
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -9,10 +9,6 @@ module Precious
|
|||||||
"All pages in #{@ref}"
|
"All pages in #{@ref}"
|
||||||
end
|
end
|
||||||
|
|
||||||
def new_page_data_variables
|
|
||||||
%{ data-path="#{@path}"} if @path
|
|
||||||
end
|
|
||||||
|
|
||||||
def breadcrumb
|
def breadcrumb
|
||||||
if @path
|
if @path
|
||||||
path = Pathname.new(@path)
|
path = Pathname.new(@path)
|
||||||
|
|||||||
@@ -34,15 +34,4 @@ context "Precious::Views::Pages" do
|
|||||||
@page.instance_variable_set("@results", results)
|
@page.instance_variable_set("@results", results)
|
||||||
assert_equal %{<li><a href="/Mordor/Eye-Of-Sauron" class="file">Eye Of Sauron</a></li>\n<li><a href="/pages/Mordor/Orc/" class="folder">Orc</a></li>}, @page.files_folders
|
assert_equal %{<li><a href="/Mordor/Eye-Of-Sauron" class="file">Eye Of Sauron</a></li>\n<li><a href="/pages/Mordor/Orc/" class="folder">Orc</a></li>}, @page.files_folders
|
||||||
end
|
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
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user