forked from e621ng/e621ng
Merge branch 'master' into master2
This commit is contained in:
commit
7d2892da2c
@ -3,8 +3,7 @@
|
||||
class HelpController < ApplicationController
|
||||
respond_to :html, :json
|
||||
helper :wiki_pages
|
||||
before_action :admin_only, only: [:new, :create, :edit,
|
||||
:update, :destroy]
|
||||
before_action :admin_only, except: %i[index show]
|
||||
|
||||
def show
|
||||
if params[:id] =~ /\A\d+\Z/
|
||||
@ -18,16 +17,14 @@ class HelpController < ApplicationController
|
||||
redirect_to help_pages_path
|
||||
end
|
||||
end
|
||||
format.json do
|
||||
raise ActiveRecord::RecordNotFound if @help.blank?
|
||||
render json: @help
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def index
|
||||
@help_pages = HelpPage.help_index
|
||||
respond_with(@help_pages)
|
||||
respond_with(@help_pages) do |format|
|
||||
format.json { render json: @help_pages.to_json }
|
||||
end
|
||||
end
|
||||
|
||||
def new
|
||||
@ -42,27 +39,20 @@ class HelpController < ApplicationController
|
||||
|
||||
def create
|
||||
@help = HelpPage.create(help_params)
|
||||
if @help.valid?
|
||||
flash[:notice] = 'Help page created'
|
||||
ModAction.log(:help_create, {name: @help.name, wiki_page: @help.wiki_page})
|
||||
end
|
||||
flash[:notice] = "Help page created" if @help.valid?
|
||||
respond_with(@help)
|
||||
end
|
||||
|
||||
def update
|
||||
@help = HelpPage.find(params[:id])
|
||||
@help.update(help_params)
|
||||
if @help.valid?
|
||||
flash[:notice] = "Help entry updated"
|
||||
ModAction.log(:help_update,{name: @help.name, wiki_page: @help.wiki_page})
|
||||
end
|
||||
flash[:notice] = "Help entry updated" if @help.valid?
|
||||
respond_with(@help)
|
||||
end
|
||||
|
||||
def destroy
|
||||
@help = HelpPage.find(params[:id])
|
||||
@help.destroy
|
||||
ModAction.log(:help_delete, {name: @help.name, wiki_page: @help.wiki_page})
|
||||
respond_with(@help)
|
||||
end
|
||||
|
||||
|
@ -98,7 +98,7 @@ FilterUtils.normalizeData = (value, type) => {
|
||||
case "width":
|
||||
case "height":
|
||||
case "score":
|
||||
case "favcout":
|
||||
case "favcount":
|
||||
case "userid":
|
||||
return parseInt(value);
|
||||
case "rating":
|
||||
|
@ -160,10 +160,10 @@ div#c-users {
|
||||
grid-area: p-posts;
|
||||
display: flex;
|
||||
overflow: auto;
|
||||
justify-content: space-between;
|
||||
justify-content: flex-start;
|
||||
flex-wrap: wrap;
|
||||
|
||||
gap: 0.5em;
|
||||
gap: 1em;
|
||||
padding: 0.5em;
|
||||
|
||||
background: var(--color-section);
|
||||
@ -176,7 +176,7 @@ div#c-users {
|
||||
}
|
||||
|
||||
article.post-preview {
|
||||
flex: 0 0 150px;
|
||||
flex: 0 0 154px;
|
||||
margin: 0;
|
||||
img { max-width: unset !important; }
|
||||
}
|
||||
|
@ -5,7 +5,10 @@ class HelpPage < ApplicationRecord
|
||||
validates :wiki_page, :name, presence: true
|
||||
normalizes :name, with: ->(name) { name.downcase.strip.tr(" ", "_") }
|
||||
validate :wiki_page_exists
|
||||
after_create :log_create
|
||||
after_update :log_update
|
||||
after_destroy :invalidate_cache
|
||||
after_destroy :log_destroy
|
||||
after_save :invalidate_cache
|
||||
belongs_to :wiki, class_name: "WikiPage", foreign_key: "wiki_page", primary_key: "title"
|
||||
|
||||
@ -37,4 +40,20 @@ class HelpPage < ApplicationRecord
|
||||
def self.help_index
|
||||
Cache.fetch("help_index", expires_in: 12.hours) { HelpPage.all.sort_by(&:pretty_title) }
|
||||
end
|
||||
|
||||
module LogMethods
|
||||
def log_create
|
||||
ModAction.log(:help_create, { name: name, wiki_page: wiki_page })
|
||||
end
|
||||
|
||||
def log_update
|
||||
ModAction.log(:help_update, { name: name, wiki_page: wiki_page })
|
||||
end
|
||||
|
||||
def log_destroy
|
||||
ModAction.log(:help_delete, { name: name, wiki_page: wiki_page })
|
||||
end
|
||||
end
|
||||
|
||||
include LogMethods
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user