summaryrefslogtreecommitdiff
path: root/app/helpers/layout_helper.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/helpers/layout_helper.rb')
-rw-r--r--app/helpers/layout_helper.rb70
1 files changed, 70 insertions, 0 deletions
diff --git a/app/helpers/layout_helper.rb b/app/helpers/layout_helper.rb
new file mode 100644
index 0000000..1dad619
--- /dev/null
+++ b/app/helpers/layout_helper.rb
@@ -0,0 +1,70 @@
+# These helper methods can be called in your template to set
+# variables to be used in the layout.
+# This module should be included in all views globally,
+# to do so you may need to add this line to your
+# ApplicationController
+# helper :layout
+#
+module LayoutHelper
+
+ def title( page_title, show_title = true )
+ content_for(:title) { strip_tags(page_title.to_s) }
+ @show_title = show_title
+ end
+
+ def show_title?
+ @show_title
+ end
+
+ def stylesheet( *args )
+ content_for(:head) { stylesheet_link_tag( *args ) }
+ end
+
+ def javascript( *args )
+ content_for(:head) { javascript_include_tag( *args ) }
+ end
+
+ def translation_missing?( output )
+ (output =~ /span/ or output.empty?)
+ end
+
+ def conditional_hint( translation_key )
+ output = t( translation_key )
+ return output unless translation_missing?( output )
+ false
+ end
+
+ def conditional_t( translation_key )
+ output = t( translation_key )
+ strip_tags( output )
+ end
+
+ def resolve_flash_sign( type )
+ return case type.to_s
+ when 'alert' ; '!'
+ when 'warning' ; '!'
+ else ; 'i'
+ end
+ end
+
+ # Returns navigation as an array.
+ #
+ def navigation_items
+ unless @io
+ @io = []
+
+ if can?( :index, PhoneBookEntry )
+ @io << { :url => phone_book_entries_path , :title => t('phone_book_entries.index.page_title' ) }
+ end
+
+ # This could be a link to VoiceMails.
+ #
+ # if can?( :index, Object )
+ # @io << { :url => "#" , :title => t('voice_mail') }
+ # end
+
+ end
+ @io
+ end
+
+end