Sha256: 811102718d99e092b312b5f31c7ece389682deb4081d8a2165aa854f0ab51990

Contents?: true

Size: 1.63 KB

Versions: 6

Compression:

Stored size: 1.63 KB

Contents

module ErpApp
  module Widgets
    module Railties
      module ActionView
        module Helpers
          module WidgetHelper
            
            def render_widget(name, opts={})
              action = opts[:action] || :index
              params = opts[:params].nil? ? '{}' : opts[:params].to_json

              uuid = Digest::SHA1.hexdigest(Time.now.to_s + rand(10000).to_s)

              raw "<div id=\"#{uuid}\">Loading ...<script type=\"text/javascript\">Compass.ErpApp.Widgets.setup('#{uuid}', '#{name}', '#{action}', #{params}, true);</script></div>"
            end

            def build_widget_url(action,id=nil,params={})
              url = if id
                "/erp_app/widgets/#{@name}/#{action}/#{@uuid}/#{id}"
              else
                "/erp_app/widgets/#{@name}/#{action}/#{@uuid}"
              end

              if params
                url = "#{url}?"
                params.each do |k,v|
                  url += "#{k.to_s}=#{v.to_s}&"
                end
                url = url[0...url.length - 1]
              end

              url
            end
  
            def widget_result_id
              "#{@uuid}_result"
            end

            def include_widgets
              raw ErpApp::Widgets::JavascriptLoader.glob_javascript
            end

            def get_widget_action
              params[:widget_action] || 'index'
            end

            def set_widget_params(widget_params={})
              widget_params.merge!(params.symbolize_keys)
              widget_params
            end

          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
erp_app-3.0.6 lib/erp_app/widgets/railties/action_view/helpers/widget_helper.rb
erp_app-3.0.5 lib/erp_app/widgets/railties/action_view/helpers/widget_helper.rb
erp_app-3.0.4 lib/erp_app/widgets/railties/action_view/helpers/widget_helper.rb
erp_app-3.0.3 lib/erp_app/widgets/railties/action_view/helpers/widget_helper.rb
erp_app-3.0.2 lib/erp_app/widgets/railties/action_view/helpers/widget_helper.rb
erp_app-3.0.1 lib/erp_app/widgets/railties/action_view/helpers/widget_helper.rb