From 8d5ed19c6deded7b82a0023d078681e8203951a5 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 14 Jun 2024 05:49:10 -0400 Subject: [PATCH] Migrate `form_tag` to `form_with` in admin and auth views (#30692) --- app/views/admin/accounts/index.html.haml | 29 +++++++------ app/views/admin/action_logs/index.html.haml | 10 +++-- app/views/admin/custom_emojis/index.html.haml | 9 ++-- .../follow_recommendations/show.html.haml | 8 ++-- app/views/admin/instances/index.html.haml | 9 ++-- app/views/admin/reports/_actions.html.haml | 22 +++++++--- .../admin/reports/actions/preview.html.haml | 13 ++++-- app/views/admin/reports/index.html.haml | 9 ++-- app/views/admin/trends/links/index.html.haml | 10 ++--- .../admin/trends/statuses/index.html.haml | 8 ++-- .../auth/confirmations/captcha.html.haml | 12 ++++-- app/views/mail_subscriptions/show.html.haml | 11 +++-- app/views/oauth/authorizations/new.html.haml | 41 ++++++++++++------- 13 files changed, 122 insertions(+), 69 deletions(-) diff --git a/app/views/admin/accounts/index.html.haml b/app/views/admin/accounts/index.html.haml index 01b072938d1..f32a4ac813d 100644 --- a/app/views/admin/accounts/index.html.haml +++ b/app/views/admin/accounts/index.html.haml @@ -1,38 +1,41 @@ - content_for :page_title do = t('admin.accounts.title') -= form_tag admin_accounts_url, method: 'GET', class: 'simple_form' do += form_with url: admin_accounts_url, method: :get, class: :simple_form do |form| .filters .filter-subset.filter-subset--with-select %strong= t('admin.accounts.location.title') .input.select.optional - = select_tag :origin, - options_for_select([[t('admin.accounts.location.local'), 'local'], [t('admin.accounts.location.remote'), 'remote']], params[:origin]), - prompt: I18n.t('generic.all') + = form.select :origin, + options_for_select([[t('admin.accounts.location.local'), 'local'], [t('admin.accounts.location.remote'), 'remote']], params[:origin]), + prompt: I18n.t('generic.all') .filter-subset.filter-subset--with-select %strong= t('admin.accounts.moderation.title') .input.select.optional - = select_tag :status, - options_for_select(admin_accounts_moderation_options, params[:status]), - prompt: I18n.t('generic.all') + = form.select :status, + options_for_select(admin_accounts_moderation_options, params[:status]), + prompt: I18n.t('generic.all') .filter-subset.filter-subset--with-select %strong= t('admin.accounts.role') .input.select.optional - = select_tag :role_ids, - options_from_collection_for_select(UserRole.assignable, :id, :name, params[:role_ids]), - prompt: I18n.t('admin.accounts.moderation.all') + = form.select :role_ids, + options_from_collection_for_select(UserRole.assignable, :id, :name, params[:role_ids]), + prompt: I18n.t('admin.accounts.moderation.all') .filter-subset.filter-subset--with-select %strong= t 'generic.order_by' .input.select - = select_tag :order, - options_for_select([[t('relationships.most_recent'), 'recent'], [t('relationships.last_active'), 'active']], params[:order]) + = form.select :order, + options_for_select([[t('relationships.most_recent'), 'recent'], [t('relationships.last_active'), 'active']], params[:order]) .fields-group - %i(username by_domain display_name email ip).each do |key| - next if key == :by_domain && params[:origin] != 'remote' .input.string.optional - = text_field_tag key, params[key], class: 'string optional', placeholder: I18n.t("admin.accounts.#{key}") + = form.text_field key, + value: params[key], + class: 'string optional', + placeholder: I18n.t("admin.accounts.#{key}") .actions %button.button= t('admin.accounts.search') diff --git a/app/views/admin/action_logs/index.html.haml b/app/views/admin/action_logs/index.html.haml index c4929cc422d..c02c8f0ad41 100644 --- a/app/views/admin/action_logs/index.html.haml +++ b/app/views/admin/action_logs/index.html.haml @@ -1,19 +1,23 @@ - content_for :page_title do = t('admin.action_logs.title') -= form_tag admin_action_logs_url, method: 'GET', class: 'simple_form' do += form_with url: admin_action_logs_url, method: :get, class: :simple_form do |form| = hidden_field_tag :target_account_id, params[:target_account_id] if params[:target_account_id].present? .filters .filter-subset.filter-subset--with-select %strong= t('admin.action_logs.filter_by_user') .input.select.optional - = select_tag :account_id, options_from_collection_for_select(@auditable_accounts, :id, :username, params[:account_id]), prompt: I18n.t('admin.accounts.moderation.all') + = form.select :account_id, + options_from_collection_for_select(@auditable_accounts, :id, :username, params[:account_id]), + prompt: I18n.t('admin.accounts.moderation.all') .filter-subset.filter-subset--with-select %strong= t('admin.action_logs.filter_by_action') .input.select.optional - = select_tag :action_type, options_for_select(Admin::ActionLogFilter::ACTION_TYPE_MAP.keys.map { |key| [I18n.t("admin.action_logs.action_types.#{key}"), key] }, params[:action_type]), prompt: I18n.t('admin.accounts.moderation.all') + = form.select :action_type, + options_for_select(Admin::ActionLogFilter::ACTION_TYPE_MAP.keys.map { |key| [I18n.t("admin.action_logs.action_types.#{key}"), key] }, params[:action_type]), + prompt: I18n.t('admin.accounts.moderation.all') - if @action_logs.empty? .muted-hint.center-text diff --git a/app/views/admin/custom_emojis/index.html.haml b/app/views/admin/custom_emojis/index.html.haml index e87dd412829..d76726a7356 100644 --- a/app/views/admin/custom_emojis/index.html.haml +++ b/app/views/admin/custom_emojis/index.html.haml @@ -21,14 +21,17 @@ - else = filter_link_to t('admin.accounts.location.remote'), remote: '1', local: nil -= form_tag admin_custom_emojis_url, method: 'GET', class: 'simple_form' do += form_with url: admin_custom_emojis_url, method: :get, class: :simple_form do |form| .fields-group - CustomEmojiFilter::KEYS.each do |key| - = hidden_field_tag key, params[key] if params[key].present? + = form.hidden_field key, value: params[key] if params[key].present? - %i(shortcode by_domain).each do |key| .input.string.optional - = text_field_tag key, params[key], class: 'string optional', placeholder: I18n.t("admin.custom_emojis.#{key}") + = form.text_field key, + value: params[key], + class: 'string optional', + placeholder: I18n.t("admin.custom_emojis.#{key}") .actions %button.button= t('admin.accounts.search') diff --git a/app/views/admin/follow_recommendations/show.html.haml b/app/views/admin/follow_recommendations/show.html.haml index c8ad653a88a..7d787152b39 100644 --- a/app/views/admin/follow_recommendations/show.html.haml +++ b/app/views/admin/follow_recommendations/show.html.haml @@ -5,16 +5,16 @@ %hr.spacer/ -= form_tag admin_follow_recommendations_path, method: 'GET', class: 'simple_form' do += form_with url: admin_follow_recommendations_path, method: :get, class: :simple_form do |form| - RelationshipFilter::KEYS.each do |key| - = hidden_field_tag key, params[key] if params[key].present? + = form.hidden_field key, value: params[key] if params[key].present? .filters .filter-subset.filter-subset--with-select %strong= t('admin.follow_recommendations.language') .input.select.optional - = select_tag :language, - options_for_select(Trends.available_locales.map { |key| [standard_locale_name(key), key] }, @language) + = form.select :language, + options_for_select(Trends.available_locales.map { |key| [standard_locale_name(key), key] }, @language) .filter-subset %strong= t('admin.follow_recommendations.status') %ul diff --git a/app/views/admin/instances/index.html.haml b/app/views/admin/instances/index.html.haml index 7e43b4c5386..b5f084f8809 100644 --- a/app/views/admin/instances/index.html.haml +++ b/app/views/admin/instances/index.html.haml @@ -28,14 +28,17 @@ %li= filter_link_to t('admin.instances.delivery.unavailable'), availability: 'unavailable' - unless limited_federation_mode? - = form_tag admin_instances_url, method: 'GET', class: 'simple_form' do + = form_with url: admin_instances_url, method: :get, class: :simple_form do |form| .fields-group - InstanceFilter::KEYS.each do |key| - = hidden_field_tag key, params[key] if params[key].present? + = form.hidden_field key, value: params[key] if params[key].present? - %i(by_domain).each do |key| .input.string.optional - = text_field_tag key, params[key], class: 'string optional', placeholder: I18n.t("admin.instances.#{key}") + = form.text_field key, + value: params[key], + class: 'string optional', + placeholder: I18n.t("admin.instances.#{key}") .actions %button.button= t('admin.accounts.search') diff --git a/app/views/admin/reports/_actions.html.haml b/app/views/admin/reports/_actions.html.haml index da9ac893157..5fb540931b1 100644 --- a/app/views/admin/reports/_actions.html.haml +++ b/app/views/admin/reports/_actions.html.haml @@ -1,4 +1,4 @@ -= form_tag preview_admin_report_actions_path(report), method: :post do += form_with url: preview_admin_report_actions_path(report) do |form| .report-actions .report-actions__item .report-actions__item__button @@ -8,26 +8,36 @@ - if statuses.any? { |status| (status.with_media? || status.with_preview_card?) && !status.discarded? } .report-actions__item .report-actions__item__button - = button_tag t('admin.reports.mark_as_sensitive'), name: :mark_as_sensitive, class: 'button' + = form.button t('admin.reports.mark_as_sensitive'), + name: :mark_as_sensitive, + class: 'button' .report-actions__item__description = t('admin.reports.actions.mark_as_sensitive_description_html') .report-actions__item .report-actions__item__button - = button_tag t('admin.reports.delete_and_resolve'), name: :delete, class: 'button button--destructive' + = form.button t('admin.reports.delete_and_resolve'), + name: :delete, + class: 'button button--destructive' .report-actions__item__description = t('admin.reports.actions.delete_description_html') .report-actions__item .report-actions__item__button - = button_tag t('admin.accounts.silence'), name: :silence, class: 'button button--destructive' + = form.button t('admin.accounts.silence'), + name: :silence, + class: 'button button--destructive' .report-actions__item__description = t('admin.reports.actions.silence_description_html') .report-actions__item .report-actions__item__button - = button_tag t('admin.accounts.suspend'), name: :suspend, class: 'button button--destructive' + = form.button t('admin.accounts.suspend'), + name: :suspend, + class: 'button button--destructive' .report-actions__item__description = t('admin.reports.actions.suspend_description_html') .report-actions__item .report-actions__item__button - = link_to t('admin.accounts.custom'), new_admin_account_action_path(report.target_account_id, report_id: report.id), class: 'button' + = link_to t('admin.accounts.custom'), + new_admin_account_action_path(report.target_account_id, report_id: report.id), + class: 'button' .report-actions__item__description = t('admin.reports.actions.other_description_html') diff --git a/app/views/admin/reports/actions/preview.html.haml b/app/views/admin/reports/actions/preview.html.haml index 7a737d4f727..79c444453fb 100644 --- a/app/views/admin/reports/actions/preview.html.haml +++ b/app/views/admin/reports/actions/preview.html.haml @@ -4,8 +4,8 @@ - content_for :page_title do = t('admin.reports.confirm_action', acct: target_acct) -= form_tag admin_report_actions_path(@report), class: 'simple_form', method: :post do - = hidden_field_tag :moderation_action, @moderation_action += form_with url: admin_report_actions_path(@report), class: :simple_form do |form| + = form.hidden_field :moderation_action, value: @moderation_action %p.hint= t("admin.reports.summary.action_preambles.#{@moderation_action}_html", acct: target_acct) %ul.hint @@ -30,7 +30,9 @@ %p= t "user_mailer.warning.explanation.#{warning_action}", instance: Rails.configuration.x.local_domain .fields-group - = text_area_tag :text, nil, placeholder: t('admin.reports.summary.warning_placeholder') + = form.text_area :text, + value: nil, + placeholder: t('admin.reports.summary.warning_placeholder') - unless @report.other? %p @@ -75,4 +77,7 @@ .actions = link_to t('admin.reports.cancel'), admin_report_path(@report), class: 'button button-tertiary' - = button_tag t('admin.reports.confirm'), name: :confirm, class: 'button', type: :submit + = form.button t('admin.reports.confirm'), + name: :confirm, + class: 'button', + type: :submit diff --git a/app/views/admin/reports/index.html.haml b/app/views/admin/reports/index.html.haml index e2a9868aa54..dae2c1aa5bb 100644 --- a/app/views/admin/reports/index.html.haml +++ b/app/views/admin/reports/index.html.haml @@ -14,14 +14,17 @@ %li= filter_link_to t('admin.accounts.location.local'), target_origin: 'local' %li= filter_link_to t('admin.accounts.location.remote'), target_origin: 'remote' -= form_tag admin_reports_url, method: 'GET', class: 'simple_form' do += form_with url: admin_reports_url, method: :get, class: :simple_form do |form| .fields-group - ReportFilter::KEYS.each do |key| - = hidden_field_tag key, params[key] if params[key].present? + = form.hidden_field key, value: params[key] if params[key].present? - %i(by_target_domain).each do |key| .input.string.optional - = text_field_tag key, params[key], class: 'string optional', placeholder: I18n.t("admin.reports.#{key}") + = form.text_field key, + value: params[key], + class: 'string optional', + placeholder: I18n.t("admin.reports.#{key}") .actions %button.button= t('admin.accounts.search') diff --git a/app/views/admin/trends/links/index.html.haml b/app/views/admin/trends/links/index.html.haml index c503b2d3967..20d8ecf8516 100644 --- a/app/views/admin/trends/links/index.html.haml +++ b/app/views/admin/trends/links/index.html.haml @@ -5,17 +5,17 @@ %hr.spacer/ -= form_tag admin_trends_links_path, method: 'GET', class: 'simple_form' do += form_with url: admin_trends_links_path, method: :get, class: :simple_form do |form| - Trends::PreviewCardFilter::KEYS.each do |key| - = hidden_field_tag key, params[key] if params[key].present? + = form.hidden_field key, value: params[key] if params[key].present? .filters .filter-subset.filter-subset--with-select %strong= t('admin.follow_recommendations.language') .input.select.optional - = select_tag :locale, - options_for_select(@locales.map { |key| [standard_locale_name(key), key] }, params[:locale]), - include_blank: true + = form.select :locale, + options_for_select(@locales.map { |key| [standard_locale_name(key), key] }, params[:locale]), + include_blank: true .filter-subset %strong= t('admin.trends.trending') %ul diff --git a/app/views/admin/trends/statuses/index.html.haml b/app/views/admin/trends/statuses/index.html.haml index 66151ad31e0..8fbc0ba5b54 100644 --- a/app/views/admin/trends/statuses/index.html.haml +++ b/app/views/admin/trends/statuses/index.html.haml @@ -5,15 +5,17 @@ %hr.spacer/ -= form_tag admin_trends_statuses_path, method: 'GET', class: 'simple_form' do += form_with url: admin_trends_statuses_path, method: :get, class: :simple_form do |form| - Trends::StatusFilter::KEYS.each do |key| - = hidden_field_tag key, params[key] if params[key].present? + = form.hidden_field key, value: params[key] if params[key].present? .filters .filter-subset.filter-subset--with-select %strong= t('admin.follow_recommendations.language') .input.select.optional - = select_tag :locale, options_for_select(@locales.map { |key| [standard_locale_name(key), key] }, params[:locale]), include_blank: true + = form.select :locale, + options_for_select(@locales.map { |key| [standard_locale_name(key), key] }, params[:locale]), + include_blank: true .filter-subset %strong= t('admin.trends.trending') %ul diff --git a/app/views/auth/confirmations/captcha.html.haml b/app/views/auth/confirmations/captcha.html.haml index 964d0e63e7d..035ac3a86a8 100644 --- a/app/views/auth/confirmations/captcha.html.haml +++ b/app/views/auth/confirmations/captcha.html.haml @@ -1,11 +1,13 @@ - content_for :page_title do = t('auth.captcha_confirmation.title') -= form_tag auth_captcha_confirmation_url, method: 'POST', class: 'simple_form' do += form_with url: auth_captcha_confirmation_url, class: :simple_form do |form| = render 'auth/shared/progress', stage: 'confirm' - = hidden_field_tag :confirmation_token, params[:confirmation_token] - = hidden_field_tag :redirect_to_app, params[:redirect_to_app] + = form.hidden_field :confirmation_token, + value: params[:confirmation_token] + = form.hidden_field :redirect_to_app, + value: params[:redirect_to_app] %h1.title= t('auth.captcha_confirmation.title') %p.lead= t('auth.captcha_confirmation.hint_html') @@ -15,4 +17,6 @@ %p.lead= t('auth.captcha_confirmation.help_html', email: mail_to(Setting.site_contact_email, nil)) .actions - = button_tag t('challenge.confirm'), class: 'button', type: :submit + = form.button t('challenge.confirm'), + class: 'button', + type: :submit diff --git a/app/views/mail_subscriptions/show.html.haml b/app/views/mail_subscriptions/show.html.haml index 776d561d709..a09dacc4d3e 100644 --- a/app/views/mail_subscriptions/show.html.haml +++ b/app/views/mail_subscriptions/show.html.haml @@ -10,7 +10,10 @@ email: content_tag(:strong, @user.email), settings_path: settings_preferences_notifications_path - = form_tag unsubscribe_path, method: :post do - = hidden_field_tag :token, params[:token] - = hidden_field_tag :type, params[:type] - = button_tag t('mail_subscriptions.unsubscribe.action'), type: :submit + = form_with url: unsubscribe_path do |form| + = form.hidden_field :token, + value: params[:token] + = form.hidden_field :type, + value: params[:type] + = form.button t('mail_subscriptions.unsubscribe.action'), + type: :submit diff --git a/app/views/oauth/authorizations/new.html.haml b/app/views/oauth/authorizations/new.html.haml index 50f671b26f7..c50c224cce6 100644 --- a/app/views/oauth/authorizations/new.html.haml +++ b/app/views/oauth/authorizations/new.html.haml @@ -21,18 +21,31 @@ = t(scope.access, scope: [:doorkeeper, :grouped_scopes, :access]) .actions - = form_tag oauth_authorization_path, method: :post do - = hidden_field_tag :client_id, @pre_auth.client.uid - = hidden_field_tag :redirect_uri, @pre_auth.redirect_uri - = hidden_field_tag :state, @pre_auth.state - = hidden_field_tag :response_type, @pre_auth.response_type - = hidden_field_tag :scope, @pre_auth.scope - = button_tag t('doorkeeper.authorizations.buttons.authorize'), type: :submit + = form_with url: oauth_authorization_path do |form| + = form.hidden_field :client_id, + value: @pre_auth.client.uid + = form.hidden_field :redirect_uri, + value: @pre_auth.redirect_uri + = form.hidden_field :state, + value: @pre_auth.state + = form.hidden_field :response_type, + value: @pre_auth.response_type + = form.hidden_field :scope, + value: @pre_auth.scope + = form.button t('doorkeeper.authorizations.buttons.authorize'), + type: :submit - = form_tag oauth_authorization_path, method: :delete do - = hidden_field_tag :client_id, @pre_auth.client.uid - = hidden_field_tag :redirect_uri, @pre_auth.redirect_uri - = hidden_field_tag :state, @pre_auth.state - = hidden_field_tag :response_type, @pre_auth.response_type - = hidden_field_tag :scope, @pre_auth.scope - = button_tag t('doorkeeper.authorizations.buttons.deny'), type: :submit, class: 'negative' + = form_with url: oauth_authorization_path, method: :delete do |form| + = form.hidden_field :client_id, + value: @pre_auth.client.uid + = form.hidden_field :redirect_uri, + value: @pre_auth.redirect_uri + = form.hidden_field :state, + value: @pre_auth.state + = form.hidden_field :response_type, + value: @pre_auth.response_type + = form.hidden_field :scope, + value: @pre_auth.scope + = form.button t('doorkeeper.authorizations.buttons.deny'), + type: :submit, + class: 'negative'