houdini/lib/controllers/campaign_helper.rb
Bradley M. Kuhn 6772312ea7 Relicense all .rb files under new project license.
The primary license of the project is changing to:
  AGPL-3.0-or-later WITH Web-Template-Output-Additional-Permission-3.0-or-later

with some specific files to be licensed under the one of two licenses:
   CC0-1.0
   LGPL-3.0-or-later

This commit is one of the many steps to relicense the entire codebase.

Documentation granting permission for this relicensing (from all past
contributors who hold copyrights) is on file with Software Freedom
Conservancy, Inc.
2018-03-25 15:10:40 -04:00

23 lines
670 B
Ruby

# License: AGPL-3.0-or-later WITH Web-Template-Output-Additional-Permission-3.0-or-later
module CampaignHelper
include NonprofitHelper
private
def current_campaign
@campaign ||= FetchCampaign.with_params params, current_nonprofit
raise ActionController::RoutingError.new "Campaign not found" if @campaign.nil?
return @campaign
end
def current_campaign_editor?
!params[:preview] && (current_nonprofit_user? || current_role?(:campaign_editor, current_campaign.id) || current_role?(:super_admin))
end
def authenticate_campaign_editor!
unless current_campaign_editor?
block_with_sign_in 'You need to be a campaign editor to do that.'
end
end
end