[Logilogi-svn] SF.net SVN: logilogi:[1726] trunk
Status: Beta
Brought to you by:
wybow
|
From: <wy...@us...> - 2010-06-21 20:11:40
|
Revision: 1726
http://logilogi.svn.sourceforge.net/logilogi/?rev=1726&view=rev
Author: wybow
Date: 2010-06-21 20:11:33 +0000 (Mon, 21 Jun 2010)
Log Message:
-----------
Fixed several bugs, browser history one among others
Modified Paths:
--------------
trunk/app/controllers/application_controller.rb
trunk/app/controllers/logis_controller.rb
trunk/app/helpers/application_helper.rb
trunk/app/models/context.rb
trunk/app/views/logis/_clear_button.html.erb
trunk/app/views/logis/_edit_with_tags.html.erb
trunk/app/views/logis/_navigation_bar_browse.html.erb
trunk/app/views/logis/_navigation_bar_edit.html.erb
trunk/app/views/logis/_navigation_bar_new.html.erb
trunk/app/views/logis/_navigation_bar_view.html.erb
trunk/app/views/logis/_tag_list.html.erb
trunk/app/views/logis/edit.html.erb
trunk/app/views/logis/index.html.erb
trunk/app/views/logis/index_new_edit.js.rjs
trunk/app/views/logis/new.html.erb
trunk/config/routes.rb
trunk/public/javascripts/application.js
trunk/test/functional/logis_controller_test.rb
trunk/test/unit/context_test.rb
Modified: trunk/app/controllers/application_controller.rb
===================================================================
--- trunk/app/controllers/application_controller.rb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/controllers/application_controller.rb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -120,7 +120,7 @@
link_options = ":direction => :requested, :step => -1, :force => true"
optional = " = {}"
end
- eval <<FUN
+ str = <<FUN
def #{action_suffixed}#{logi_s_p}_#{url_path}(options#{optional},
extra_options = {})
case options
@@ -138,12 +138,24 @@
if current_context.link?
options[:ll_link_string] ||= current_context.link.to_s(
#{link_options})
+ end
+FUN
+ if action == "new"
+ str += <<FUN
+ if current_context.link?
+ return #{action_suffixed}_hidden_#{logi_s_p}_#{url_path}(options)
else
- options[:ll_link_string] ||= Tag.sandbox.to_s
+ return #{action_suffixed}_hidden_untagged_#{logi_s_p}_#{url_path}(options)
end
+ end
+FUN
+ else
+ str += <<FUN
return #{action_suffixed}_hidden_#{logi_s_p}_#{url_path}(options)
end
FUN
+ end
+ eval str
end
end
@@ -647,14 +659,13 @@
if params[:controller] == "logis" and
(params[:action] == "new" or params[:action] == "edit")
force = true
- replace_tag_string = Tag.sandbox.to_s
+ replace_tag = Tag.sandbox
else
force = params[:force]
- replace_tag_string = nil
+ replace_tag = nil
end
self.current_context = Context.new(
- context_link_string, :force => force,
- :replace_tag_string => replace_tag_string)
+ context_link_string, :force => force, :replace_tag => replace_tag)
end
def not_empty(string)
Modified: trunk/app/controllers/logis_controller.rb
===================================================================
--- trunk/app/controllers/logis_controller.rb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/controllers/logis_controller.rb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -77,7 +77,8 @@
:locals => {:name => 'browse_list',
:button_text => t('v.logis.add_word_or_tag')})
@clear_button = render_to_string(:partial => 'clear_button',
- :locals => {:button_text => t('v.logis.clear_query')})
+ :locals => {:name => 'browse_list',
+ :button_text => t('v.logis.clear_query')})
else
@add_tag_button = render_to_string(:partial => 'add_tag_button',
:locals => {:name => 'browse_list',
@@ -87,7 +88,7 @@
end
render :template => 'logis/index_new_edit.js.rjs', :locals => {
:name => "browse_list",
- :url => (current_context.link? ? "/do/logis/" + current_context.link.to_s : nil),
+ :url => ("/do/logis" + (current_context.link? ? "/" + current_context.link.to_s : "")),
:with_main => true}
end
end
@@ -128,7 +129,7 @@
self.new_edit_js_response
render :template => 'logis/index_new_edit.js.rjs', :locals => {
:name => "logi_tags_edit_list",
- :url => (current_context.link? ? "/" + current_context.link.to_s + "/do/new" : nil)}
+ :url => (current_context.link? ? "/" + current_context.link.to_s + "/do/new" : "/do/new")}
end
end
end
@@ -287,11 +288,12 @@
@primary_tabs = render_to_string(:partial => 'layouts/tabs')
if current_context.tags?
@add_tag_button = render_to_string(:partial => 'add_tag_button',
- :locals => {:name => 'browse_list'})
- @clear_button = render_to_string(:partial => 'clear_button')
+ :locals => {:name => 'logi_tags_edit_list'})
+ @clear_button = render_to_string(:partial => 'clear_button',
+ :locals => {:name => 'logi_tags_edit_list'})
else
@add_tag_button = render_to_string(:partial => 'add_tag_button',
- :locals => {:name => 'browse_list',
+ :locals => {:name => 'logi_tags_edit_list',
:button_text => t('v.logis.set_tag'),
:button_class => 'go_button'})
@clear_button = ""
Modified: trunk/app/helpers/application_helper.rb
===================================================================
--- trunk/app/helpers/application_helper.rb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/helpers/application_helper.rb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -136,12 +136,12 @@
return tabs
end
- def add_simple_history(name, tags_string)
- page << add_simple_history_string(name, tags_string)
+ def add_simple_history(tag_list_name, url_name, tags_string)
+ page << add_simple_history_string(tag_list_name, url_name, tags_string)
end
- def add_simple_history_string(name, tags_string)
- return %[dhtmlHistory.add("#{name}", "browse_list.replace_tags_string('#{tags_string}'); browse_list.submit();")]
+ def add_simple_history_string(tag_list_name, url_name, tags_string)
+ return %[dhtmlHistory.add("#{url_name}", "#{tag_list_name}.replace_tags_string('#{tags_string}'); #{tag_list_name}.submit();")]
end
def edit_tabs
Modified: trunk/app/models/context.rb
===================================================================
--- trunk/app/models/context.rb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/models/context.rb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -36,11 +36,9 @@
# Sets the link, required as an option.
#
def initialize(query_string, options = {})
+ self.force = options[:force]
+ self.replace_tag = options[:replace_tag]
if query_string and !query_string.empty?
- self.force = options[:force]
- if options[:replace_tag_string]
- self.replace_tag = Tag.from_s(options[:replace_tag_string])
- end
# force and replace_tag need to be set before link
self.link = Link.new_from_s(query_string.dup)
self.query = query_string
Modified: trunk/app/views/logis/_clear_button.html.erb
===================================================================
--- trunk/app/views/logis/_clear_button.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/_clear_button.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -1,5 +1,5 @@
<% if current_context.tags? %>
<%= button_to_function (local_assigns[:button_text] ? local_assigns[:button_text] : t('v.logis.clear_tags')),
- 'browse_list.remove_all_tags(); browse_list.submit()',
+ (name + '.remove_all_tags(); ' + name + '.submit()'),
:class => 'cancel_button' %>
<% end %>
Modified: trunk/app/views/logis/_edit_with_tags.html.erb
===================================================================
--- trunk/app/views/logis/_edit_with_tags.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/_edit_with_tags.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -15,7 +15,7 @@
<% render :layout => 'application/panel', :locals => {:id => "submit"} do %>
<label><%= t 'defaults.submit_label' %></label>
<%= form.submit t('defaults.submit'),
- : "logiEditPrepareLink(); $('logi_form').submit()",
+ : "logiEditPrepareLink(logi_tags_edit_list); $('logi_form').submit()",
:tabindex => 100 %>
<%= cancel_button :url => (@logi.new_record? ? nil : logi_url(@logi)) %>
<% end %>
Modified: trunk/app/views/logis/_navigation_bar_browse.html.erb
===================================================================
--- trunk/app/views/logis/_navigation_bar_browse.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/_navigation_bar_browse.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -1,16 +1,14 @@
<% render :layout => 'navigation_bar', :locals => {
:selected => "navigation_browse"} do %>
- <div id="clear_button_space">
- <%= render :partial => 'clear_button',
- :locals => {:button_text => t('v.logis.clear_query')} %>
- </div>
- <%= render :partial => 'tag_list', :locals => {:name => 'browse_list',
+ <%= render :partial => 'tag_list', :locals => {
+ :name => 'browse_list',
:link => current_context.link,
:url => browse_logis_url(:ll_link_string => ''),
:param_name => 'll_link_string',
:without_spacer => true,
:no_focus => true, :replace_pre => true,
:button_text => (current_context.tags? ? t('v.logis.add_word_or_tag') : t('v.logis.search_word_or_tag')),
+ :clear_button_text => t('v.logis.clear_query'),
:button_class => (current_context.tags? ? nil : 'go_button')} %>
<div class="spacer"></div>
<% end %>
Modified: trunk/app/views/logis/_navigation_bar_edit.html.erb
===================================================================
--- trunk/app/views/logis/_navigation_bar_edit.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/_navigation_bar_edit.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -1,9 +1,7 @@
<% render :layout => 'logis/navigation_bar', :locals => {
:selected => "navigation_edit"} do %>
- <div id="clear_button_space">
- <%= render :partial => 'logis/clear_button' %>
- </div>
- <%= render :partial => 'logis/tag_list', :locals => {:name => 'logi_tags_edit_list',
+ <%= render :partial => 'logis/tag_list', :locals => {
+ :name => 'logi_tags_edit_list',
:link => current_context.link,
:url => edit_logi_url(current_context.link.volatile_to_logi),
:param_name => 'new_ll_link_string',
Modified: trunk/app/views/logis/_navigation_bar_new.html.erb
===================================================================
--- trunk/app/views/logis/_navigation_bar_new.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/_navigation_bar_new.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -1,9 +1,11 @@
<% render :layout => 'logis/navigation_bar', :locals => {
:selected => "navigation_new"} do %>
<div id="clear_button_space">
- <%= render :partial => 'clear_button' %>
+ <%= render :partial => 'clear_button', :locals => {
+ :name => 'logi_tags_edit_list'} %>
</div>
- <%= render :partial => 'tag_list', :locals => {:name => 'logi_tags_edit_list',
+ <%= render :partial => 'tag_list', :locals => {
+ :name => 'logi_tags_edit_list',
:link => current_context.link,
:url => new_logi_url(),
:param_name => 'new_ll_link_string',
Modified: trunk/app/views/logis/_navigation_bar_view.html.erb
===================================================================
--- trunk/app/views/logis/_navigation_bar_view.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/_navigation_bar_view.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -4,18 +4,19 @@
:class => 'back_button' %>
<div class="tags_container">
<% link = current_context.link %>
- <% tags = link.requested_tags %>
- <%= link_to_navigation_tag(
- link.to_s(:for => :show, :direction => :requested,
- :step => 0, :per_part => true),
- ll_url(link, :direction => :requested, :step => 0)) %>
- <% if link.size(:requested) > 1 %>
- <% (1..(link.size(:requested) - 1)).each do |i| %>
- <div class="tag_separator">/</div>
- <%= link_to_navigation_tag(
- link.to_s(:for => :show, :direction => :requested,
- :step => i, :per_part => true),
- ll_url(link, :direction => :requested, :step => i)) %>
+ <% if link.size(:requested) > 0 %>
+ <%= link_to_navigation_tag(
+ link.to_s(:for => :show, :direction => :requested,
+ :step => 0, :per_part => true),
+ ll_url(link, :direction => :requested, :step => 0)) %>
+ <% if link.size(:requested) > 1 %>
+ <% (1..(link.size(:requested) - 1)).each do |i| %>
+ <div class="tag_separator">/</div>
+ <%= link_to_navigation_tag(
+ link.to_s(:for => :show, :direction => :requested,
+ :step => i, :per_part => true),
+ ll_url(link, :direction => :requested, :step => i)) %>
+ <% end %>
<% end %>
<% end %>
<% if !link.volatile_to_logi.nil? %>
Modified: trunk/app/views/logis/_tag_list.html.erb
===================================================================
--- trunk/app/views/logis/_tag_list.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/_tag_list.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -1,3 +1,7 @@
+<div id="clear_button_space">
+ <%= render :partial => 'clear_button', :locals => {:name => name,
+ :button_text => local_assigns[:clear_button_text]} %>
+</div>
<div id="<%= name %>" class="tags_container">
<!-- Filled via js -->
</div>
Modified: trunk/app/views/logis/edit.html.erb
===================================================================
--- trunk/app/views/logis/edit.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/edit.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -4,7 +4,7 @@
<% javascript_tag do -%>
<% if !current_context.link? %>
if (dhtmlHistory.isFirstLoad()) {
- <%= add_simple_history_string("", "") %>
+ <%= add_simple_history_string('logi_tags_edit_list', '', '') %>
}
<% end -%>
<% end %>
Modified: trunk/app/views/logis/index.html.erb
===================================================================
--- trunk/app/views/logis/index.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/index.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -3,7 +3,7 @@
<% javascript_tag do -%>
<% if !current_context.link? %>
if (dhtmlHistory.isFirstLoad()) {
- <%= add_simple_history_string("", "") %>
+ <%= add_simple_history_string('logi_tags_edit_list', '', '') %>
}
<% end -%>
<% end %>
Modified: trunk/app/views/logis/index_new_edit.js.rjs
===================================================================
--- trunk/app/views/logis/index_new_edit.js.rjs 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/index_new_edit.js.rjs 2010-06-21 20:11:33 UTC (rev 1726)
@@ -8,7 +8,7 @@
page.call("mcorners.run")
page.call(name + ".focus")
if current_context.link?
- page.add_simple_history(url, current_context.link.to_s)
+ page.add_simple_history(name, url, current_context.link.to_s)
else
- page.add_simple_history('', '')
+ page.add_simple_history(name, '', '')
end
Modified: trunk/app/views/logis/new.html.erb
===================================================================
--- trunk/app/views/logis/new.html.erb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/app/views/logis/new.html.erb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -2,7 +2,7 @@
<% javascript_tag do -%>
<% if !current_context.link? %>
if (dhtmlHistory.isFirstLoad()) {
- <%= add_simple_history_string("","") %>
+ <%= add_simple_history_string('logi_tags_edit_list','','') %>
}
<% end -%>
<% end %>
Modified: trunk/config/routes.rb
===================================================================
--- trunk/config/routes.rb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/config/routes.rb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -54,10 +54,10 @@
:path_prefix => 'do', :has_many => :invitations, :shallow => true
# The diff
- map.diff__hidden_logi_versions ':ll_link_string/do/logi_versions/diff',
- :controller => 'logi_versions',
- :action => 'diff',
- :requirements => { :ll_link_string => /.*/ }
+# map.diff__hidden_logi_versions ':ll_link_string/do/logi_versions/diff',
+# :controller => 'logi_versions',
+# :action => 'diff',
+# :requirements => { :ll_link_string => /.*/ }
# Popover clouds with links
map.links_listing_for_remove 'do/links/listing_for_remove/:ids/:not_deleted_ids',
@@ -68,11 +68,11 @@
:not_deleted_ids => /.*/ }
# Editing remarks
- map.edit__hidden_remark ':ll_link_string/do/remarks/edit',
- :controller => 'remarks',
- :action => 'edit',
- :requirements => { :ll_link_string => /.*/ },
- :conditions => { :method => :get }
+# map.edit__hidden_remark ':ll_link_string/do/remarks/edit',
+# :controller => 'remarks',
+# :action => 'edit',
+# :requirements => { :ll_link_string => /.*/ },
+# :conditions => { :method => :get }
# Popover clouds with annotations & links
map.popover_listing 'do/popovers/listing',
@@ -105,6 +105,7 @@
map._hidden_logis 'do/logis/:ll_link_string',
:controller => 'logis',
:action => 'create',
+ :ll_link_string => nil,
:requirements => { :ll_link_string => /.*/ },
:conditions => { :method => :post }
@@ -115,6 +116,16 @@
:ll_link_string => nil,
:requirements => { :ll_link_string => /.*/ }
+ # Added for new tagless logis
+ map.new__hidden_untagged_formatted_logi 'do/new.:format',
+ :controller => 'logis',
+ :action => 'new',
+ :conditions => { :method => :get }
+ map.new__hidden_untagged_logi 'do/new',
+ :controller => 'logis',
+ :action => 'new',
+ :conditions => { :method => :get }
+
# The RESTfull & other request methods for Logi's
["edit","new","check"].each do |action|
eval <<FUN
Modified: trunk/public/javascripts/application.js
===================================================================
--- trunk/public/javascripts/application.js 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/public/javascripts/application.js 2010-06-21 20:11:33 UTC (rev 1726)
@@ -357,9 +357,9 @@
// For editing and new
-function logiEditPrepareLink() {
- if (typeof(logi_tags_edit_list) != "undefined") {
- $('logi_link_string').value = logi_tags_edit_list.hidden_tags_string();
+function logiEditPrepareLink(edit_list) {
+ if (typeof(edit_list) != "undefined") {
+ $('logi_link_string').value = edit_list.hidden_tags_string();
}
}
Modified: trunk/test/functional/logis_controller_test.rb
===================================================================
--- trunk/test/functional/logis_controller_test.rb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/test/functional/logis_controller_test.rb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -45,6 +45,14 @@
assert_response :success
assert_equal logis(:logi_logi_manta), assigns(:logi)
+ get :show, :ll_link_string => logis(:lubber).link.to_s
+ assert_response :success
+ assert_equal logis(:lubber), assigns(:logi)
+
+ get :show, :ll_link_string => logis(:lubber).to_s
+ assert_response :success
+ assert_equal logis(:lubber), assigns(:logi)
+
get :show, :ll_link_string => 'Manta/Logi_Logi',
:printer_friendly => true
assert_response :success
Modified: trunk/test/unit/context_test.rb
===================================================================
--- trunk/test/unit/context_test.rb 2010-06-21 14:07:40 UTC (rev 1725)
+++ trunk/test/unit/context_test.rb 2010-06-21 20:11:33 UTC (rev 1726)
@@ -38,13 +38,18 @@
end
def test_replace_tag_string
+ c = Context.new('Botanics/Logi_Logi',
+ :replace_tag => Tag.sandbox)
+ assert_equal Tag.sandbox, c.replace_tag
+
c = Context.new(Tag.sandbox.to_s,
- :replace_tag_string => Tag.sandbox.to_s,
+ :replace_tag => Tag.sandbox,
:force => true)
+ assert_equal Tag.sandbox, c.replace_tag
assert !c.link?
c = Context.new(Tag.sandbox.to_s + logis(:botanics).to_s,
- :replace_tag_string => Tag.sandbox.to_s,
+ :replace_tag => Tag.sandbox,
:force => true)
assert_equal 0, c.link.received_tags.size
assert c.link.to_logi
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|