On admin enterprises listing page, do not show links to pages without perms

This commit is contained in:
Rohan Mitchell
2014-08-19 16:15:17 +10:00
parent 2706c0e47e
commit 79387d3d82
2 changed files with 37 additions and 15 deletions

View File

@@ -1,23 +1,31 @@
= link_to_with_icon('icon-edit', 'Edit Profile', main_app.edit_admin_enterprise_path(enterprise), class: 'edit')
%br/
= link_to_delete_enterprise enterprise
%br/
- if enterprise.is_primary_producer
= link_to_with_icon 'icon-dashboard', 'Properties', main_app.admin_enterprise_producer_properties_path(enterprise_id: enterprise.id)
(#{enterprise.producer_properties.count})
%br/
- if enterprise.is_distributor
= link_to_with_icon 'icon-chevron-right', 'Payment Methods', spree.admin_payment_methods_path(enterprise_id: enterprise.id)
(#{enterprise.payment_methods.count})
- if enterprise.payment_methods.count == 0
%span.icon-exclamation-sign.with-tip{"data-powertip" => "This enterprise has no payment methods", style: "font-size: 16px;color: #DA5354"}
%br/
= link_to_with_icon 'icon-plane', 'Shipping Methods', spree.admin_shipping_methods_path(enterprise_id: enterprise.id)
(#{enterprise.shipping_methods.count})
- if enterprise.shipping_methods.count == 0
%span.icon-exclamation-sign.with-tip{"data-powertip" => "This enterprise has shipping methods", style: "font-size: 16px;color: #DA5354"}
%br/
= link_to_with_icon 'icon-money', 'Enterprise Fees', main_app.admin_enterprise_fees_path(enterprise_id: enterprise.id)
(#{enterprise.enterprise_fees.count})
- if enterprise.enterprise_fees.count == 0
%span.icon-warning-sign.with-tip{"data-powertip" => "This enterprise has no fees", style: "font-size: 16px;color: orange"}
- if can? :admin, Spree::PaymentMethod
= link_to_with_icon 'icon-chevron-right', 'Payment Methods', spree.admin_payment_methods_path(enterprise_id: enterprise.id)
(#{enterprise.payment_methods.count})
- if enterprise.payment_methods.count == 0
%span.icon-exclamation-sign.with-tip{"data-powertip" => "This enterprise has no payment methods", style: "font-size: 16px;color: #DA5354"}
%br/
- if can? :admin, Spree::ShippingMethod
= link_to_with_icon 'icon-plane', 'Shipping Methods', spree.admin_shipping_methods_path(enterprise_id: enterprise.id)
(#{enterprise.shipping_methods.count})
- if enterprise.shipping_methods.count == 0
%span.icon-exclamation-sign.with-tip{"data-powertip" => "This enterprise has shipping methods", style: "font-size: 16px;color: #DA5354"}
%br/
- if can? :admin, EnterpriseFee
= link_to_with_icon 'icon-money', 'Enterprise Fees', main_app.admin_enterprise_fees_path(enterprise_id: enterprise.id)
(#{enterprise.enterprise_fees.count})
- if enterprise.enterprise_fees.count == 0
%span.icon-warning-sign.with-tip{"data-powertip" => "This enterprise has no fees", style: "font-size: 16px;color: orange"}

View File

@@ -121,7 +121,21 @@ feature %q{
end
end
it "shows me only profile options on the enterprises page"
it "shows me only profile options on the enterprise listing page" do
click_link 'Enterprises'
within "tr.enterprise-#{supplier_profile.id}" do
page.should_not have_link 'Enterprise Fees'
end
within "tr.enterprise-#{distributor_profile.id}" do
page.should_not have_link 'Payment Methods'
page.should_not have_link 'Shipping Methods'
page.should_not have_link 'Enterprise Fees'
end
end
it "shows me only profile fields on the enterprise edit page"
end
describe "system management lockdown" do