forked from e621ng/e621ng
Add fix up post disapproval things after revert
This commit is contained in:
parent
4a46874a50
commit
86adf1eea4
@ -3,7 +3,6 @@ class PostApproval < ApplicationRecord
|
||||
belongs_to :post, inverse_of: :approvals
|
||||
|
||||
validate :validate_approval
|
||||
after_create :approve_post
|
||||
|
||||
def validate_approval
|
||||
post.lock!
|
||||
@ -19,18 +18,8 @@ class PostApproval < ApplicationRecord
|
||||
if post.uploader == user
|
||||
errors.add(:base, "You cannot approve a post you uploaded")
|
||||
end
|
||||
|
||||
if post.approved_by?(user)
|
||||
errors.add(:base, "You have previously approved this post and cannot approve it again")
|
||||
end
|
||||
end
|
||||
|
||||
def approve_post
|
||||
ModAction.log("undeleted post ##{post_id}",:post_undelete) if post.is_deleted
|
||||
|
||||
post.flags.each(&:resolve!)
|
||||
post.update(approver: user, is_flagged: false, is_pending: false, is_deleted: false)
|
||||
end
|
||||
|
||||
concerning :SearchMethods do
|
||||
class_methods do
|
||||
|
@ -37,10 +37,4 @@ class PostDisapproval < ApplicationRecord
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
def create_downvote
|
||||
if %w(breaks_rules poor_quality).include?(reason)
|
||||
PostVote.create(:score => -1, :post_id => post_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
18
db/migrate/20190410022203_readd_post_disapprovals.rb
Normal file
18
db/migrate/20190410022203_readd_post_disapprovals.rb
Normal file
@ -0,0 +1,18 @@
|
||||
class ReaddPostDisapprovals < ActiveRecord::Migration[5.2]
|
||||
def self.up
|
||||
create_table :post_disapprovals do |t|
|
||||
t.column :user_id, :integer, :null => false
|
||||
t.column :post_id, :integer, :null => false
|
||||
t.column :reason, :string, :default => "legacy"
|
||||
t.column :message, :text
|
||||
t.timestamps
|
||||
end
|
||||
|
||||
add_index :post_disapprovals, :user_id
|
||||
add_index :post_disapprovals, :post_id
|
||||
end
|
||||
|
||||
def self.down
|
||||
drop_table :post_disapprovals
|
||||
end
|
||||
end
|
@ -1448,6 +1448,40 @@ CREATE SEQUENCE public.post_approvals_id_seq
|
||||
ALTER SEQUENCE public.post_approvals_id_seq OWNED BY public.post_approvals.id;
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_disapprovals; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE TABLE public.post_disapprovals (
|
||||
id bigint NOT NULL,
|
||||
user_id integer NOT NULL,
|
||||
post_id integer NOT NULL,
|
||||
reason character varying DEFAULT 'legacy'::character varying,
|
||||
message text,
|
||||
created_at timestamp without time zone NOT NULL,
|
||||
updated_at timestamp without time zone NOT NULL
|
||||
);
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_disapprovals_id_seq; Type: SEQUENCE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE SEQUENCE public.post_disapprovals_id_seq
|
||||
START WITH 1
|
||||
INCREMENT BY 1
|
||||
NO MINVALUE
|
||||
NO MAXVALUE
|
||||
CACHE 1;
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_disapprovals_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
ALTER SEQUENCE public.post_disapprovals_id_seq OWNED BY public.post_disapprovals.id;
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_flags; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
@ -2713,6 +2747,13 @@ ALTER TABLE ONLY public.post_appeals ALTER COLUMN id SET DEFAULT nextval('public
|
||||
ALTER TABLE ONLY public.post_approvals ALTER COLUMN id SET DEFAULT nextval('public.post_approvals_id_seq'::regclass);
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_disapprovals id; Type: DEFAULT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
ALTER TABLE ONLY public.post_disapprovals ALTER COLUMN id SET DEFAULT nextval('public.post_disapprovals_id_seq'::regclass);
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_flags id; Type: DEFAULT; Schema: public; Owner: -
|
||||
--
|
||||
@ -3185,6 +3226,14 @@ ALTER TABLE ONLY public.post_approvals
|
||||
ADD CONSTRAINT post_approvals_pkey PRIMARY KEY (id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_disapprovals post_disapprovals_pkey; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
ALTER TABLE ONLY public.post_disapprovals
|
||||
ADD CONSTRAINT post_disapprovals_pkey PRIMARY KEY (id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: post_flags post_flags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
@ -3966,6 +4015,20 @@ CREATE INDEX index_post_approvals_on_post_id ON public.post_approvals USING btre
|
||||
CREATE INDEX index_post_approvals_on_user_id ON public.post_approvals USING btree (user_id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: index_post_disapprovals_on_post_id; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX index_post_disapprovals_on_post_id ON public.post_disapprovals USING btree (post_id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: index_post_disapprovals_on_user_id; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX index_post_disapprovals_on_user_id ON public.post_disapprovals USING btree (user_id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: index_post_flags_on_creator_id; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
@ -4694,6 +4757,7 @@ INSERT INTO "schema_migrations" (version) VALUES
|
||||
('20190324111703'),
|
||||
('20190331193644'),
|
||||
('20190403174011'),
|
||||
('20190409195837');
|
||||
('20190409195837'),
|
||||
('20190410022203');
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user