]> Untitled Git - lemmy.git/blob - migrations/2019-04-11-144915_create_mod_views/up.sql
add enable_federated_downvotes site option
[lemmy.git] / migrations / 2019-04-11-144915_create_mod_views / up.sql
1 CREATE VIEW mod_remove_post_view AS
2 SELECT
3     mrp.*,
4     (
5         SELECT
6             name
7         FROM
8             user_ u
9         WHERE
10             mrp.mod_user_id = u.id) AS mod_user_name,
11     (
12         SELECT
13             name
14         FROM
15             post p
16         WHERE
17             mrp.post_id = p.id) AS post_name,
18     (
19         SELECT
20             c.id
21         FROM
22             post p,
23             community c
24         WHERE
25             mrp.post_id = p.id
26             AND p.community_id = c.id) AS community_id,
27     (
28         SELECT
29             c.name
30         FROM
31             post p,
32             community c
33         WHERE
34             mrp.post_id = p.id
35             AND p.community_id = c.id) AS community_name
36 FROM
37     mod_remove_post mrp;
38
39 CREATE VIEW mod_lock_post_view AS
40 SELECT
41     mlp.*,
42     (
43         SELECT
44             name
45         FROM
46             user_ u
47         WHERE
48             mlp.mod_user_id = u.id) AS mod_user_name,
49     (
50         SELECT
51             name
52         FROM
53             post p
54         WHERE
55             mlp.post_id = p.id) AS post_name,
56     (
57         SELECT
58             c.id
59         FROM
60             post p,
61             community c
62         WHERE
63             mlp.post_id = p.id
64             AND p.community_id = c.id) AS community_id,
65     (
66         SELECT
67             c.name
68         FROM
69             post p,
70             community c
71         WHERE
72             mlp.post_id = p.id
73             AND p.community_id = c.id) AS community_name
74 FROM
75     mod_lock_post mlp;
76
77 CREATE VIEW mod_remove_comment_view AS
78 SELECT
79     mrc.*,
80     (
81         SELECT
82             name
83         FROM
84             user_ u
85         WHERE
86             mrc.mod_user_id = u.id) AS mod_user_name,
87     (
88         SELECT
89             c.id
90         FROM
91             comment c
92         WHERE
93             mrc.comment_id = c.id) AS comment_user_id,
94     (
95         SELECT
96             name
97         FROM
98             user_ u,
99             comment c
100         WHERE
101             mrc.comment_id = c.id
102             AND u.id = c.creator_id) AS comment_user_name,
103     (
104         SELECT
105             content
106         FROM
107             comment c
108         WHERE
109             mrc.comment_id = c.id) AS comment_content,
110     (
111         SELECT
112             p.id
113         FROM
114             post p,
115             comment c
116         WHERE
117             mrc.comment_id = c.id
118             AND c.post_id = p.id) AS post_id,
119     (
120         SELECT
121             p.name
122         FROM
123             post p,
124             comment c
125         WHERE
126             mrc.comment_id = c.id
127             AND c.post_id = p.id) AS post_name,
128     (
129         SELECT
130             co.id
131         FROM
132             comment c,
133             post p,
134             community co
135         WHERE
136             mrc.comment_id = c.id
137             AND c.post_id = p.id
138             AND p.community_id = co.id) AS community_id,
139     (
140         SELECT
141             co.name
142         FROM
143             comment c,
144             post p,
145             community co
146         WHERE
147             mrc.comment_id = c.id
148             AND c.post_id = p.id
149             AND p.community_id = co.id) AS community_name
150 FROM
151     mod_remove_comment mrc;
152
153 CREATE VIEW mod_remove_community_view AS
154 SELECT
155     mrc.*,
156     (
157         SELECT
158             name
159         FROM
160             user_ u
161         WHERE
162             mrc.mod_user_id = u.id) AS mod_user_name,
163     (
164         SELECT
165             c.name
166         FROM
167             community c
168         WHERE
169             mrc.community_id = c.id) AS community_name
170 FROM
171     mod_remove_community mrc;
172
173 CREATE VIEW mod_ban_from_community_view AS
174 SELECT
175     mb.*,
176     (
177         SELECT
178             name
179         FROM
180             user_ u
181         WHERE
182             mb.mod_user_id = u.id) AS mod_user_name,
183     (
184         SELECT
185             name
186         FROM
187             user_ u
188         WHERE
189             mb.other_user_id = u.id) AS other_user_name,
190     (
191         SELECT
192             name
193         FROM
194             community c
195         WHERE
196             mb.community_id = c.id) AS community_name
197 FROM
198     mod_ban_from_community mb;
199
200 CREATE VIEW mod_ban_view AS
201 SELECT
202     mb.*,
203     (
204         SELECT
205             name
206         FROM
207             user_ u
208         WHERE
209             mb.mod_user_id = u.id) AS mod_user_name,
210     (
211         SELECT
212             name
213         FROM
214             user_ u
215         WHERE
216             mb.other_user_id = u.id) AS other_user_name
217 FROM
218     mod_ban mb;
219
220 CREATE VIEW mod_add_community_view AS
221 SELECT
222     ma.*,
223     (
224         SELECT
225             name
226         FROM
227             user_ u
228         WHERE
229             ma.mod_user_id = u.id) AS mod_user_name,
230     (
231         SELECT
232             name
233         FROM
234             user_ u
235         WHERE
236             ma.other_user_id = u.id) AS other_user_name,
237     (
238         SELECT
239             name
240         FROM
241             community c
242         WHERE
243             ma.community_id = c.id) AS community_name
244 FROM
245     mod_add_community ma;
246
247 CREATE VIEW mod_add_view AS
248 SELECT
249     ma.*,
250     (
251         SELECT
252             name
253         FROM
254             user_ u
255         WHERE
256             ma.mod_user_id = u.id) AS mod_user_name,
257     (
258         SELECT
259             name
260         FROM
261             user_ u
262         WHERE
263             ma.other_user_id = u.id) AS other_user_name
264 FROM
265     mod_add ma;
266