about summary refs log tree commit diff
path: root/app/controllers/admin/custom_emojis_controller.rb
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2017-09-19 03:52:38 +0200
committerGitHub <noreply@github.com>2017-09-19 03:52:38 +0200
commit09a94b575e90dc7f6e179a1ec717156e725f915a (patch)
treef7b3ccd6e4e7fe91ce9e86c649345ee0c83bfbfa /app/controllers/admin/custom_emojis_controller.rb
parentd43944143af079017c494f046aa171b797f5e680 (diff)
Admin interface for listing, adding and removing custom emojis (#5002)
* Admin interface for listing, adding and removing custom emojis

* Only display local ones in the list
Diffstat (limited to 'app/controllers/admin/custom_emojis_controller.rb')
-rw-r--r--app/controllers/admin/custom_emojis_controller.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/app/controllers/admin/custom_emojis_controller.rb b/app/controllers/admin/custom_emojis_controller.rb
new file mode 100644
index 000000000..616a279b3
--- /dev/null
+++ b/app/controllers/admin/custom_emojis_controller.rb
@@ -0,0 +1,34 @@
+# frozen_string_literal: true
+
+module Admin
+  class CustomEmojisController < BaseController
+    def index
+      @custom_emojis = CustomEmoji.where(uri: nil)
+    end
+
+    def new
+      @custom_emoji = CustomEmoji.new
+    end
+
+    def create
+      @custom_emoji = CustomEmoji.new(resource_params)
+
+      if @custom_emoji.save
+        redirect_to admin_custom_emojis_path, notice: I18n.t('admin.custom_emojis.created_msg')
+      else
+        render :new
+      end
+    end
+
+    def destroy
+      CustomEmoji.find(params[:id]).destroy
+      redirect_to admin_custom_emojis_path, notice: I18n.t('admin.custom_emojis.destroyed_msg')
+    end
+
+    private
+
+    def resource_params
+      params.require(:custom_emoji).permit(:shortcode, :image)
+    end
+  end
+end