Peer-to-peer editors can only edit goal amount

This commit is contained in:
Kasia Jarmołkowicz 2018-05-30 19:45:51 +02:00 committed by Eric Schultz
parent 74ba1cf069
commit 539d8f472a
4 changed files with 204 additions and 139 deletions

View file

@ -36,7 +36,7 @@ class CampaignsController < ApplicationController
@nonprofit = current_nonprofit
@url = Format::Url.concat(root_url, @campaign.url)
if @campaign.parent_campaign
if @campaign.child_campaign?
@parent_campaign = @campaign.parent_campaign
@peer_to_peer_campaign_param = @parent_campaign.id
else

View file

@ -179,6 +179,10 @@ class Campaign < ActiveRecord::Base
attributes.except(*excluded_for_peer_to_peer)
end
def child_campaign?
true if parent_campaign.present?
end
def user_reason_for_supporting
if reason_for_supporting.present?
reason_for_supporting

View file

@ -4,6 +4,19 @@
<%= render 'common/modal_header', title: 'Campaign Settings' %>
<form class='form--flatFields' autosubmit action='/nonprofits/<%=@nonprofit.id%>/campaigns/<%=@campaign.id%>' method='put' data-reload parsley-validate>
<% if @campaign.child_campaign? %>
<div class='modal-body'>
<section class='layout--three'>
<fieldset>
<label>Goal</label>
<div class='prepend--dollar u-inlineBlock'>
<input type='number' parsley-type='number' class='input--150' name='campaign[goal_amount_dollars]' value='<%= sprintf("%.2f", @campaign.goal_amount / 100.0) %>'>
</div>
</fieldset>
</section>
</div>
<% else %>
<div class='modal-body'>
<section class='layout--two'>
<fieldset>
@ -37,6 +50,51 @@
</fieldset>
</section>
<hr>
<div class='modal-body'>
<section class='layout--three'>
<fieldset>
<label>Goal</label>
<div class='prepend--dollar u-inlineBlock'>
<input type='number' parsley-type='number' class='input--150' name='campaign[goal_amount_dollars]' value='<%= sprintf("%.2f", @campaign.goal_amount / 100.0) %>'>
</div>
</fieldset>
</section>
</div>
<div class='modal-body'>
<section class='layout--two'>
<fieldset>
<label>Title </label>
<input type='text' class='u-marginBottom--0' name='campaign[name]' value='<%= @campaign.name %>'>
</fieldset>
<fieldset>
<label class='u-block'>Tagline</label>
<input type='text' name='campaign[tagline]' value='<%= @campaign.tagline %>'>
</fieldset>
</section>
<hr>
<section class='layout--three'>
<fieldset>
<label>Goal</label>
<div class='prepend--dollar u-inlineBlock'>
<input type='number' parsley-type='number' class='input--150' name='campaign[goal_amount_dollars]' value='<%= sprintf("%.2f", @campaign.goal_amount / 100.0) %>'>
</div>
</fieldset>
<fieldset>
<label>End Date & Time</label>
<div pikaday-timepicker='MM/DD/YYYY hh:mm a'>
<input class='u-width--200 u-bold u-inlineBlock' type='text' name='campaign[end_datetime]' required parsley-trigger='change' placeholder='MM/DD/YYYY HH:MM' value='<%= Format::Date.full(@campaign.end_datetime, @nonprofit.timezone) %>'>
<a class='button edit u-inlineBlock'>Set</a>
</div>
</fieldset>
</section>
<hr>
<%= render 'components/forms/slug_field', fundraiser: @campaign, url: @nonprofit.url + '/campaigns' %>
@ -111,7 +169,7 @@
</fieldset>
</section>
<% if @campaign.parent_campaign.blank? %>
<% if !@campaign.child_campaign? %>
<hr>
<section class='layout--two'>
<fieldset>
@ -188,6 +246,9 @@
<div><p class='error'></p></div>
</div>
</div>
<% end %>
<footer class='modal-footer u-padding--15 layout--two'>
<span>

View file

@ -77,7 +77,7 @@
<section class='box-r'>
<% if current_campaign_editor? %>
<% if current_campaign_editor? && !@campaign.child_campaign? %>
<!-- Campaign editor gift option management modal -->
<button class='button edit u-width--full u-marginBottom--15'>
<!--= on 'click' (open_modal 'manageGiftOptionsModal') -->
@ -85,7 +85,7 @@
</button>
<% end %>
<% if !@campaign.parent_campaign %>
<% if !@campaign.child_campaign? %>
<aside class='u-marginBottom--15 pastelBox--grey'>
<a class='button u-width--full' target='_blank' if-branded='background-color, dark' href='/peer-to-peer?campaign_id=<%= @peer_to_peer_campaign_param %>'>
Start Your Own Campaign for <%= @nonprofit.name %>
@ -113,7 +113,7 @@
</section>
<% if @campaign.parent_campaign %>
<% if @campaign.child_campaign? %>
<%= render 'components/fundraising_pages/campaigner_profile',
profile: @campaign.profile,
campaign_name: @campaign.name,