Sha256: 7af639e3b3591d82ae44aab01c504e6871368a736b507f7972a0a3164a38e2b5

Contents?: true

Size: 1.34 KB

Versions: 2

Compression:

Stored size: 1.34 KB

Contents

module Vidibus
  module Helpers
    module Extensions
      module View

        # Renders flash message.
        # TODO: Make it more flexible!
        def render_flash
          return unless flash.any?
          level = flash.keys.last
          %(<div id="flash" class="#{level}"><div>#{flash[level]}</div></div>).html_safe
        end

        # Returns next number for tab order.
        def autotab
          @autotab ||= 0
          @autotab += 1
        end

        # Formats a number or float as human duration.
        #
        # Examples:
        #
        #   number_to_duration(24.5)                  # => "00:25"
        #   number_to_duration(24.5, :hours => true)  # => "00:00:25"
        #   number_to_duration(3654)                  # => "01:00:54"
        #   number_to_duration(3654, :hours => false) # => "60:54"
        #
        def number_to_duration(seconds, options = {})
          hours = options[:hours]
          seconds = seconds.round
          hour = (seconds / 3600).floor unless hours == false
          min  = (seconds / 60).floor
          sec  = (seconds % 60).round
          if hours != false and (hours == true or hour > 0)
            min -= hour * 60
            output = "%02d:" % hour
          else
            output = ''
          end
          output + "%02d:%02d" % [ min, sec ]
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
vidibus-helpers-0.0.2 lib/vidibus/helpers/extensions/view.rb
vidibus-helpers-0.0.1 lib/vidibus/helpers/extensions/view.rb