class Decidim::Debates::Admin::UpdateDebate

panel.
This command is executed when the user changes a Debate from the admin

def call

Broadcasts :ok if successful, :invalid otherwise.

Updates the debate if valid.
def call
  return broadcast(:invalid) if form.invalid?
  update_debate
  broadcast(:ok)
end

def initialize(form, debate)

debate - The current instance of the page to be updated.
form - The form from which to get the data.

Initializes a UpdateDebate Command.
def initialize(form, debate)
  @form = form
  @debate = debate
end

def update_debate

def update_debate
  parsed_title = Decidim::ContentProcessor.parse_with_processor(:hashtag, form.title, current_organization: form.current_organization).rewrite
  parsed_description = Decidim::ContentProcessor.parse_with_processor(:hashtag, form.description, current_organization: form.current_organization).rewrite
  Decidim.traceability.update!(
    debate,
    form.current_user,
    category: form.category,
    title: parsed_title,
    description: parsed_description,
    information_updates: form.information_updates,
    instructions: form.instructions,
    end_time: form.end_time,
    start_time: form.start_time,
    scope: form.scope,
    comments_enabled: form.comments_enabled
  )
end