app/commands/decidim/debates/create_debate.rb in decidim-debates-0.22.0 vs app/commands/decidim/debates/create_debate.rb in decidim-debates-0.23.0

- old
+ new

@@ -18,34 +18,32 @@ transaction do create_debate send_notification_to_author_followers send_notification_to_space_followers end + + follow_debate broadcast(:ok, debate) end private attr_reader :debate, :form - def organization - @organization = form.current_component.organization - end - - def i18n_field(field) - organization.available_locales.inject({}) do |i18n, locale| - i18n.update(locale => field) - end - end - def create_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 params = { author: form.current_user, decidim_user_group_id: form.user_group_id, category: form.category, - title: i18n_field(form.title), - description: i18n_field(form.description), + title: { + I18n.locale => parsed_title + }, + description: { + I18n.locale => parsed_description + }, component: form.current_component } @debate = Decidim.traceability.create!( Debate, @@ -75,9 +73,16 @@ followers: debate.participatory_space.followers, extra: { type: "participatory_space" } ) + end + + def follow_debate + follow_form = Decidim::FollowForm + .from_params(followable_gid: debate.to_signed_global_id.to_s) + .with_context(current_user: debate.author) + Decidim::CreateFollow.call(follow_form, debate.author) end end end end