投稿の削除を確認 – 投稿を削除する前に確認ダイアログを追加

:information_source: 概要 投稿を削除する前に確認を求める軽量なテーマコンポーネント
:hammer_and_wrench: リポジトリ GitHub - scavin/discourse-confirm-delete · GitHub
:question: インストールガイド テーマまたはテーマコンポーネントのインストール方法
:open_book: Discourseテーマは初めてですか? Discourseテーマ使用の初心者向けガイド

このテーマコンポーネントをインストール

投稿が削除される前に確認ステップを追加する小さなテーマコンポーネントを共有します。

デフォルトでは、削除ボタンをクリックするとDiscourseの標準的な削除アクションが即座に実行されます。このコンポーネントは、まずDiscourseネイティブの危険確認ダイアログを表示し、誤って削除されるのを防ぎます。

何をするものですか?

ユーザーが投稿の削除ボタンをクリックすると、コンポーネントは確認ダイアログを表示します:

投稿を削除
この投稿を削除してもよろしいですか?

利用可能なアクションは以下の通りです:

  • キャンセル — 何も行わずダイアログを閉じます
  • 削除 — Discourseの元の削除アクションを続行します

主な特徴

:white_check_mark: DiscourseネイティブのダイアログUIを使用
:white_check_mark: 赤い危険スタイルの削除ボタンを使用
:white_check_mark: Discourseの元の削除動作を保持
:white_check_mark: 権限チェックを変更しない
:white_check_mark: Discourseコアを修正しない
:white_check_mark: プラグインは不要
:white_check_mark: jQueryやwindow.confirm()は使用しない
:white_check_mark: DOMクリックのシミュレーションは行わない
:white_check_mark: デスクトップとモバイルの両方で動作
:white_check_mark: 英語と簡体字中国語の翻訳あり
:white_check_mark: 他の言語は英語にフォールバック
:white_check_mark: 管理者はテーマ翻訳を通じてテキストを上書き可能

動作原理

このコンポーネントは公式のDiscourseフロントエンドAPIを使用します:

  • apiInitializer
  • post-menu-buttons値変換器
  • 組み込みのdialog.deleteConfirm()サービス

投稿メニューの削除ボタンコンポーネントを小さなラッパーに置き換えます。確認後、ラッパーは元のdeletePostアクションを呼び出します。

つまり、このコンポーネントは削除を再実装したり、独自のAPIリクエストを行ったり、Discourseの既存の認可ロジックを回避したりしません。

インストール後:

  1. 管理者 → カスタマイズ → テーマでコンポーネントを開きます
  2. 有効にしたいテーマに追加します
  3. トピックページを更新します
  4. 投稿の削除ボタンをクリックして確認ダイアログをテストします

翻訳

このコンポーネントには現在、以下の翻訳が含まれています:

  • 英語 (en)
  • 簡体字中国語 (zh_CN)

ダイアログのタイトル、メッセージ、キャンセルボタン、削除ボタンはすべてテーマ翻訳キーを使用しています。追加の翻訳を歓迎します。

互換性

最新のGlimmer投稿メニューとプラグインAPIを使用する現在のDiscourseリリース用に設計されています。

この小さなコンポーネントが、誤った投稿削除の防止に役立つことを願っています。フィードバック、バグ報告、翻訳、提案を歓迎します! :slight_smile:

「いいね!」 6