Module: Umlaut::Helper
- Includes:
- FooterHelper, HtmlHeadHelper, UrlGeneration
- Included in:
- EmailerHelper
- Defined in:
- app/helpers/umlaut/helper.rb
Overview
Rails view helpers needed accross Umlaut controllers are collected here. Generally UmlautController will call “helper Umlaut::Helper” to expose these to all umlaut controllers.
Instance Method Summary collapse
-
#date_format(date_string) ⇒ Object
formats dates sent in an OpenURL into a more human-friendly format.
-
#render_umlaut_permalink ⇒ Object
Button for showing permalink, dynamically loaded with js if neccesary.
-
#render_umlaut_permalink_content ⇒ Object
Proper content area to be shown by umlaut_permalink_toggle, and loaded with content AJAXy.
- #render_umlaut_permalink_toggle ⇒ Object
-
#resolver_link(context_object, params = {}) ⇒ Object
pass in an OpenURL::ContextObject, outputs a link.
Methods included from HtmlHeadHelper
#render_meta_refresh, #render_opensearch_link, #render_umlaut_head_content, #umlaut_title_text
Methods included from FooterHelper
#link_to_direct_sfx, #link_to_test_resolve, #link_to_toggle_debug_info, #render_service_credits
Methods included from UrlGeneration
#path_to_image, #path_to_javascript, #path_to_stylesheet, #url_for
Instance Method Details
#date_format(date_string) ⇒ Object
formats dates sent in an OpenURL into a more human-friendly format. Input Dates look like ‘20000304’. Can be just year, or just year/month, or all. Not sure what this format is officially called. Not sure if they can have dashes sometimes?
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'app/helpers/umlaut/helper.rb', line 40 def date_format(date_string) date_string =~ /(\d\d\d\d)\-?(\d\d)?\-?(\d\d)?/ begin year, month, day_of_month = $1, $2, $3 if ( month ) date = Date.civil(year.to_i, month.to_i) formatted_month = date.strftime('%b') end output = year output += ' ' + formatted_month if formatted_month output += ' ' + day_of_month if day_of_month && day_of_month.to_i != 0 return output rescue return date_string end end |
#render_umlaut_permalink ⇒ Object
Button for showing permalink, dynamically loaded with js if neccesary. works with load_permalink.js
65 66 67 68 69 70 71 72 |
# File 'app/helpers/umlaut/helper.rb', line 65 def render_umlaut_permalink if @user_request content_tag("div", :class => "umlaut-permalink") do render_umlaut_permalink_toggle + render_umlaut_permalink_content end end end |
#render_umlaut_permalink_content ⇒ Object
Proper content area to be shown by umlaut_permalink_toggle, and loaded with content AJAXy.
85 86 87 88 89 90 91 92 93 94 95 |
# File 'app/helpers/umlaut/helper.rb', line 85 def render_umlaut_permalink_content content_tag("div", :id => "umlaut-permalink-container", :class=> "umlaut-permalink-container", :style => "display: none;", :'data-loaded' => current_permalink_url.present? ) do content_tag("span", :class => "umlaut-permalink-content") do link_to(current_permalink_url, current_permalink_url) if current_permalink_url end end end |
#render_umlaut_permalink_toggle ⇒ Object
74 75 76 77 78 79 80 81 |
# File 'app/helpers/umlaut/helper.rb', line 74 def render_umlaut_permalink_toggle link_to({:action => "get_permalink", :"umlaut.request_id" => @user_request.id}, :class => "umlaut-load-permalink btn btn-mini", :data => {"umlaut-toggle-permalink"=>"true"}) do content_tag("i") + " Short link" end end |
#resolver_link(context_object, params = {}) ⇒ Object
pass in an OpenURL::ContextObject, outputs a link.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/helpers/umlaut/helper.rb', line 13 def resolver_link(context_object, params={}) # Content of the link. if ( umlaut_config.link_img_url && params[:text].blank? ) link_content = image_tag(umlaut_config.link_img_url, :border=>0, :alt=>umlaut_config.app_name) elsif ! params[:text].blank? link_content = params[:text] else link_content = umlaut_config.app_name end # url of the link. if ( params[:params]) link_to_arg = params[:params] else link_params = {:controller=>'/resolve', :action => "index"} link_params.merge!( params[:extra_params] ) if params[:extra_params] link_to_arg = url_for_with_co( link_params, context_object ) end link_to(link_content, link_to_arg , :target=>params[:target]) end |