Sha256: 31be8bd6a9b9b5f246f1bb3d86eda9675833ac54b76d04696fe5ad39cabae13f
Contents?: true
Size: 776 Bytes
Versions: 2
Compression:
Stored size: 776 Bytes
Contents
module Trestle module UrlHelper def admin_link_to(content, instance=nil, options={}, &block) if block_given? instance, options = content, instance || {} content = capture(&block) end if admin = (options.key?(:admin) ? Trestle.lookup(options.delete(:admin)) : admin_for(instance)) link_to(content, admin_url_for(instance, admin: admin), options) else content end end def admin_url_for(instance, options={}) admin = options.key?(:admin) ? Trestle.lookup(options[:admin]) : admin_for(instance) admin.path(options[:action] || :show, id: admin.to_param(instance)) if admin end def admin_for(instance) Trestle.admins[instance.class.name.underscore.pluralize] end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
trestle-0.8.5 | app/helpers/trestle/url_helper.rb |
trestle-0.8.4 | app/helpers/trestle/url_helper.rb |