@@ -25,17 +25,16 @@ def create
2525
2626 @campaign = @repository . build_campaign ( campaign_params )
2727 @campaign . receiving_wallet = current_user . wallet
28-
28+
2929 if @campaign . save
3030 redirect_to user_repository_campaign_path ( current_user , @repository , @campaign ) , notice : 'Campaign was successfully created.'
3131 else
32- log_errors ( @campaign )
3332 flash . now [ :alert ] = @campaign . errors . full_messages . join ( '. ' )
3433 Rails . logger . debug "Campaign save failed. Errors: #{ @campaign . errors . full_messages } "
3534 render :new
3635 end
3736 end
38-
37+
3938 def edit
4039 @repo_name = @campaign . repository
4140 @accepted_currencies = @campaign . accepted_currencies
@@ -47,6 +46,7 @@ def update
4746 if @campaign . save
4847 redirect_to user_repository_campaign_path ( @repository . user , @repository , @campaign ) , notice : 'Campaign updated successfully!'
4948 else
49+ flash . now [ :alert ] = @campaign . errors . full_messages . join ( '. ' )
5050 render :edit
5151 end
5252 end
@@ -62,7 +62,7 @@ def set_repository
6262 @repository = current_user . repositories . find_by ( id : params [ :repository_id ] )
6363
6464 if @repository . nil?
65- redirect_to root_path , alert : " Repository not found or does not belong to you."
65+ redirect_to root_path , alert : ' Repository not found or does not belong to you.'
6666 return
6767 end
6868 else
@@ -91,7 +91,7 @@ def check_repository_ownership!
9191
9292 def process_accepted_currencies
9393 currencies_param = params [ :campaign ] [ :accepted_currencies ]
94- currencies_param = currencies_param . split ( "," ) . reject ( &:blank? )
94+ currencies_param = currencies_param . split ( ',' ) . reject ( &:blank? )
9595 params [ :campaign ] [ :accepted_currencies ] = currencies_param
9696 end
9797
@@ -100,6 +100,8 @@ def log_errors(campaign)
100100 end
101101
102102 def campaign_params
103- params . require ( :campaign ) . permit ( :title , :description , :tier_amount , :tier_name , :contribution_cadence , :repository_id , :receiving_wallet_id , accepted_currencies : [ ] )
103+ params . require ( :campaign ) . permit ( :repository_id , :receiving_wallet_id , :title , :description , :contribution_cadence ) . tap do |whitelisted |
104+ whitelisted [ :accepted_currencies ] = params [ :campaign ] [ :accepted_currencies ] . is_a? ( String ) ? params [ :campaign ] [ :accepted_currencies ] . split ( ',' ) : params [ :campaign ] [ :accepted_currencies ]
105+ end
104106 end
105107end
0 commit comments