[Logilogi-svn] SF.net SVN: logilogi:[1635] trunk
Status: Beta
Brought to you by:
wybow
|
From: <wy...@us...> - 2009-10-29 00:20:25
|
Revision: 1635
http://logilogi.svn.sourceforge.net/logilogi/?rev=1635&view=rev
Author: wybow
Date: 2009-10-29 00:20:18 +0000 (Thu, 29 Oct 2009)
Log Message:
-----------
Added disabled buttons for up/down & parsing of anchors
Modified Paths:
--------------
trunk/app/helpers/application_helper.rb
trunk/app/models/const/link.rb
trunk/app/views/layouts/_foot.html.erb
trunk/app/views/logis/_steps.html.erb
trunk/public/images/up_button.svg
trunk/public/stylesheets/logilogi.css
trunk/test/unit/link_test.rb
Modified: trunk/app/helpers/application_helper.rb
===================================================================
--- trunk/app/helpers/application_helper.rb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/helpers/application_helper.rb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -611,6 +611,14 @@
button_to text, new_logi_url(), :class => 'go_button'
end
+ def toggle_button_to(name, *args, &block)
+ if args.last[:disabled]
+ disabled_button(name, *args, &block)
+ else
+ button_to(name, *args, &block)
+ end
+ end
+
def toggle_button_to_remote(name, *args, &block)
if args.last[:disabled]
disabled_button(name, *args, &block)
Modified: trunk/app/models/const/link.rb
===================================================================
--- trunk/app/models/const/link.rb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/models/const/link.rb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -29,9 +29,10 @@
(#{Const::LogiVersion::BLOCK_LOGI_VERSION})?/x
SCAN_EXTRA_SPECS_RE = /((?:#{BLOCK_SPEC_STANCE_S_SLASHED})[^$]+)/
DISSECT_LINK_RE = /^
- ([^=$]+)? # link parts, divided by \/
- ([^$]+)? # requested-logi-and-version (=i2, =i3=v2)
- (.+)? # extra specifications
+ ([^=$#]+)? # link parts, divided by \/
+ ([^$#]+)? # requested-logi-and-version (=i2, =i3=v2)
+ ([^#]+)? # extra specifications
+ (.+)? # anchor
$/x
end
end
Modified: trunk/app/views/layouts/_foot.html.erb
===================================================================
--- trunk/app/views/layouts/_foot.html.erb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/views/layouts/_foot.html.erb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -63,9 +63,15 @@
mcorners.add('div.up_button', {
'scaled_image' : 'up_button.svg', 'corner_size' : 7,
'stretch_side' : 'right'});
+ mcorners.add('div.up_button_disabled', {
+ 'scaled_image' : 'up_button_disabled.svg', 'corner_size' : 7,
+ 'stretch_side' : 'right'});
mcorners.add('div.down_button', {
'scaled_image' : 'down_button.svg', 'corner_size' : 7,
'stretch_side' : 'right'});
+ mcorners.add('div.down_button_disabled', {
+ 'scaled_image' : 'down_button_disabled.svg', 'corner_size' : 7,
+ 'stretch_side' : 'right'});
mcorners.add('div.next_button', {
'scaled_image' : 'next_button.svg', 'corner_size' : 7,
'stretch_side' : 'right'});
Modified: trunk/app/views/logis/_steps.html.erb
===================================================================
--- trunk/app/views/logis/_steps.html.erb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/views/logis/_steps.html.erb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -1,5 +1,7 @@
-<% if steps.size > 11
- index = steps.index(steps.detect {|s| s.logi == current_logi})
+<%
+index = steps.index(steps.detect {|s| s.logi == current_logi})
+
+if steps.size > 11
if index + 6 > steps.size
i_start = steps.size - 11
else
@@ -12,23 +14,24 @@
i_end = index + 6
end
i_end = steps.size if i_end > steps.size
- puts i_end
- puts steps.size
+else
+ i_start = 0
+ i_end = steps.size
+end
%>
- <% if index > 1 %>
- <%= button_to 'Previous', logi_ll_url(steps[index - 1].logi, :anchor => 'logi_top'),
- :class => 'up_button' %>
- <div class="spacer"></div>
- <% end %>
- <% if i_start != 0 %>
- <div class="step">
- <div class="level2">
- ...
- </div>
+<%= toggle_button_to 'Previous',
+ (index > 0 ? logi_ll_url(steps[index - 1].logi, :anchor => 'logi_top') : ''),
+ :class => 'up_button', :disabled => (index == 0) %>
+<div class="spacer"></div>
+
+<div class="steps">
+<% if i_start != 0 %>
+ <div class="step">
+ <div class="level2">
+ ...
</div>
- <% end %>
+ </div>
<% end %>
-
<% steps[i_start...i_end].each do |step| %>
<% if current_logi == step.logi %>
<div class="step step_current">
@@ -47,17 +50,17 @@
</div>
<% end %>
<% end %>
-<% if steps.size > 11 %>
- <% if i_end != steps.size %>
- <div class="step">
- <div class="level2">
- ...
- </div>
+<% if i_end != steps.size %>
+ <div class="step">
+ <div class="level2">
+ ...
</div>
- <% end %>
- <% if index + 1 < steps.size %>
- <div class="spacer"></div>
- <%= button_to 'Next', logi_ll_url(steps[index + 1].logi, :anchor => 'logi_top'),
- :class => 'down_button' %>
- <% end %>
+ </div>
<% end %>
+</div>
+
+<div class="spacer"></div>
+<%= toggle_button_to 'Next',
+ (index + 1 < steps.size ? logi_ll_url(steps[index + 1].logi, :anchor => 'logi_top') : ''),
+ :class => 'down_button', :disabled => (index + 1 == steps.size) %>
+<div class="spacer"></div>
Modified: trunk/public/images/up_button.svg
===================================================================
--- trunk/public/images/up_button.svg 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/public/images/up_button.svg 2009-10-29 00:20:18 UTC (rev 1635)
@@ -14,7 +14,7 @@
sodipodi:version="0.32"
inkscape:version="0.46"
version="1.0"
- sodipodi:docname="previous_button.svg"
+ sodipodi:docname="up_button.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"
inkscape:export-filename="/home/wybo/logilogi/trunk/public/images/add_icon_16.png"
inkscape:export-xdpi="90"
Modified: trunk/public/stylesheets/logilogi.css
===================================================================
--- trunk/public/stylesheets/logilogi.css 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/public/stylesheets/logilogi.css 2009-10-29 00:20:18 UTC (rev 1635)
@@ -254,6 +254,10 @@
padding-left: 0.2em;
list-style: none;
}
+.panel div.steps {
+ padding-top: 1em;
+ padding-bottom: 1em;
+}
.panel div.step div.level1,
.panel div.step div.level2 {
font-family: "Times New Roman", Times, serif;
Modified: trunk/test/unit/link_test.rb
===================================================================
--- trunk/test/unit/link_test.rb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/test/unit/link_test.rb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -467,6 +467,7 @@
def test_parsing_to_s_for_edit
link_string_hash = self.get_link_string_hash
link_string_hash.delete(:tag_current_logi_version)
+ link_string_hash.delete(:tags_anchor)
assert_equal_string_parsing_for_hashes(link_string_hash,
link_string_hash, :for => :edit)
@@ -658,6 +659,8 @@
'Eduard_Edison/' + Tag.user.to_s,
:tags_stance =>
'Peter_Abelard/Botanics$stance=critique',
+ :tags_anchor =>
+ 'Peter_Abelard/Botanics#logi_top',
:non_existing_tag =>
'Non_Existing',
:tags_with_non_existing_tag =>
@@ -670,37 +673,40 @@
return {
:tag =>
[test_link_string_hash[:tag],
- 'Botanics', nil, nil],
+ 'Botanics', nil, nil, nil],
:multi_part_tag =>
[test_link_string_hash[:multi_part_tag],
- 'Peter_Abelard_Economics', nil, nil],
+ 'Peter_Abelard_Economics', nil, nil, nil],
:tag_logi =>
[test_link_string_hash[:tag_logi],
- 'Logi_Logi', logis(:logi_logi).to_s, nil],
+ 'Logi_Logi', logis(:logi_logi).to_s, nil, nil],
:tag_logi_version =>
[test_link_string_hash[:tag_logi_version],
- 'Logi_Logi', logis(:logi_logi).to_s + '=v2', nil],
+ 'Logi_Logi', logis(:logi_logi).to_s + '=v2', nil, nil],
:tag_current_logi_version =>
[test_link_string_hash[:tag_current_logi_version],
- 'Logi_Logi', logis(:logi_logi).to_s + '=vc', nil],
+ 'Logi_Logi', logis(:logi_logi).to_s + '=vc', nil, nil],
:tags =>
[test_link_string_hash[:tags],
- 'Peter_Abelard/Botanics', nil, nil],
+ 'Peter_Abelard/Botanics', nil, nil, nil],
:tags_logi =>
[test_link_string_hash[:tags_logi],
- 'Peter_Abelard/Botanics', logis(:peter_abelard_botanics).to_s, nil],
+ 'Peter_Abelard/Botanics', logis(:peter_abelard_botanics).to_s, nil, nil],
:tags_user_home =>
[test_link_string_hash[:tags_user_home],
- 'Eduard_Edison/' + Tag.user.to_s, nil, nil],
+ 'Eduard_Edison/' + Tag.user.to_s, nil, nil, nil],
:tags_stance =>
[test_link_string_hash[:tags_stance],
- 'Peter_Abelard/Botanics', nil, '$stance=critique'],
+ 'Peter_Abelard/Botanics', nil, '$stance=critique', nil],
+ :tags_anchor =>
+ [test_link_string_hash[:tags_anchor],
+ 'Peter_Abelard/Botanics', nil, nil, '#logi_top'],
:non_existing_tag =>
[test_link_string_hash[:non_existing_tag],
- 'Non_Existing', nil, nil],
+ 'Non_Existing', nil, nil, nil],
:tags_with_non_existing_tag =>
[test_link_string_hash[:tags_with_non_existing_tag],
- 'Peter_Abelard/Economics/Non_Existing_Word/Botanics', nil, nil]
+ 'Peter_Abelard/Economics/Non_Existing_Word/Botanics', nil, nil, nil]
}
end
@@ -744,12 +750,15 @@
:to_logi_perma_id => logis(:peter_abelard_botanics).perma_id
},
:tags_user_home =>
- {:requested_tags => [Tag.from_s('Eduard_Edison'), Tag.user],
+ {:requested_tags => [Tag.from_s('Eduard_Edison'), Tag.user]
},
:tags_stance =>
{:requested_tags => [Tag.from_s('Peter_Abelard'),Tag.from_s('Botanics')],
:stance => Const::Link::STANCES[:critique]
},
+ :tags_anchor =>
+ {:requested_tags => [Tag.from_s('Peter_Abelard'),Tag.from_s('Botanics')]
+ },
:non_existing_tag =>
{:requested_tags => [Tag.from_s('Non_Existing')]
},
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|