Merge pull request #37 from jedmund/fix-party-creation
Minor support for wider party creation
This commit is contained in:
commit
2c9b15857c
2 changed files with 27 additions and 18 deletions
|
|
@ -115,15 +115,15 @@ module Api
|
|||
# Render the conflict view as a string
|
||||
def render_conflict_view(conflict_weapon, incoming_weapon, incoming_position)
|
||||
ConflictBlueprint.render(nil, view: :weapons,
|
||||
conflict_weapon: conflict_weapon,
|
||||
incoming_weapon: incoming_weapon,
|
||||
incoming_position: incoming_position)
|
||||
conflict_weapon: conflict_weapon,
|
||||
incoming_weapon: incoming_weapon,
|
||||
incoming_position: incoming_position)
|
||||
end
|
||||
|
||||
def render_grid_weapon_view(grid_weapon, conflict_position)
|
||||
GridWeaponBlueprint.render(grid_weapon, view: :full,
|
||||
root: :grid_weapon,
|
||||
meta: { replaced: conflict_position })
|
||||
root: :grid_weapon,
|
||||
meta: { replaced: conflict_position })
|
||||
end
|
||||
|
||||
def save_weapon(weapon)
|
||||
|
|
@ -140,6 +140,9 @@ module Api
|
|||
if weapon.position == -1
|
||||
party.element = weapon.weapon.element
|
||||
party.save!
|
||||
elsif [9, 10, 11].include?(weapon.position)
|
||||
party.extra = true
|
||||
party.save!
|
||||
end
|
||||
|
||||
# Render the weapon if it can be saved
|
||||
|
|
|
|||
|
|
@ -8,22 +8,28 @@ module Api
|
|||
before_action :set, only: %w[update destroy]
|
||||
|
||||
def create
|
||||
@party = Party.new(shortcode: random_string)
|
||||
@party.extra = party_params['extra']
|
||||
party = Party.new(shortcode: random_string)
|
||||
party.user = current_user if current_user
|
||||
|
||||
# TODO: Extract this into a different method
|
||||
job = Job.find(party_params['job_id']) if party_params['job_id'].present?
|
||||
if job
|
||||
job_skills = JobSkill.where(job: job.id, main: true)
|
||||
job_skills.each_with_index do |skill, index|
|
||||
@party["skill#{index}_id"] = skill.id
|
||||
end
|
||||
if party_params
|
||||
party.attributes = party_params
|
||||
end
|
||||
|
||||
@party.user = current_user if current_user
|
||||
# unless party_params.empty?
|
||||
# party.attributes = party_params
|
||||
#
|
||||
# # TODO: Extract this into a different method
|
||||
# job = Job.find(party_params['job_id']) if party_params['job_id'].present?
|
||||
# if job
|
||||
# job_skills = JobSkill.where(job: job.id, main: true)
|
||||
# job_skills.each_with_index do |skill, index|
|
||||
# party["skill#{index}_id"] = skill.id
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
|
||||
if @party.save!
|
||||
return render json: PartyBlueprint.render(@party, view: :full, root: :party),
|
||||
if party.save!
|
||||
return render json: PartyBlueprint.render(party, view: :full, root: :party),
|
||||
status: :created
|
||||
end
|
||||
|
||||
|
|
@ -150,7 +156,7 @@ module Api
|
|||
:button_count,
|
||||
:turn_count,
|
||||
:chain_count
|
||||
)
|
||||
) if params[:party].present?
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Reference in a new issue