diff --git a/plugins/site_tour/lib/site_tour_plugin/site_tour_helper.rb b/plugins/site_tour/lib/site_tour_plugin/site_tour_helper.rb new file mode 100644 index 0000000..f18e900 --- /dev/null +++ b/plugins/site_tour/lib/site_tour_plugin/site_tour_helper.rb @@ -0,0 +1,14 @@ +module SiteTourPlugin::SiteTourHelper + + def parse_tour_description(description) + p = profile rescue nil + if !p.nil? && description.present? + description.gsub('{profile.identifier}', p.identifier). + gsub('{profile.name}', p.name). + gsub('{profile.url}', url_for(p.url)) + else + description + end + end + +end diff --git a/plugins/site_tour/lib/site_tour_plugin/tour_block.rb b/plugins/site_tour/lib/site_tour_plugin/tour_block.rb index a4a6207..65db701 100644 --- a/plugins/site_tour/lib/site_tour_plugin/tour_block.rb +++ b/plugins/site_tour/lib/site_tour_plugin/tour_block.rb @@ -8,7 +8,7 @@ class SiteTourPlugin::TourBlock < Block before_save do |block| block.actions.reject! {|i| i[:group_name].blank? && i[:selector].blank? && i[:description].blank?} - block.group_triggers.reject! {|i| i[:group_name].blank? && i[:selector].blank? && i[:event].blank?} + block.group_triggers.reject! {|i| i[:group_name].blank? && i[:selector].blank?} end def self.description diff --git a/plugins/site_tour/public/edit_tour_block.css b/plugins/site_tour/public/edit_tour_block.css index 42bd538..1b42fb7 100644 --- a/plugins/site_tour/public/edit_tour_block.css +++ b/plugins/site_tour/public/edit_tour_block.css @@ -1,3 +1,11 @@ +#edit-tour-block #tooltip-actions h3 { + margin-bottom: 5px; +} + +#edit-tour-block .special-attributes { + color: rgb(157, 157, 157); +} + #edit-tour-block .list-items { margin-bottom: 25px; } diff --git a/plugins/site_tour/test/unit/site_tour_helper_test.rb b/plugins/site_tour/test/unit/site_tour_helper_test.rb new file mode 100644 index 0000000..fcca9d7 --- /dev/null +++ b/plugins/site_tour/test/unit/site_tour_helper_test.rb @@ -0,0 +1,17 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class SiteTourHelperTest < ActionView::TestCase + + include SiteTourPlugin::SiteTourHelper + + should 'parse tooltip description' do + assert_equal 'test', parse_tour_description("test") + end + + should 'replace profile attributes in tooltip description' do + profile = fast_create(Profile) + expects(:profile).returns(profile).at_least_once + assert_equal "name #{profile.name}, identifier #{profile.identifier}, url #{url_for profile.url}", parse_tour_description("name {profile.name}, identifier {profile.identifier}, url {profile.url}") + end + +end diff --git a/plugins/site_tour/views/box_organizer/site_tour_plugin/_tour_block.html.erb b/plugins/site_tour/views/box_organizer/site_tour_plugin/_tour_block.html.erb index 752def8..36b2090 100644 --- a/plugins/site_tour/views/box_organizer/site_tour_plugin/_tour_block.html.erb +++ b/plugins/site_tour/views/box_organizer/site_tour_plugin/_tour_block.html.erb @@ -6,6 +6,7 @@