Commit 534d7f705eed236fcfd71614942ab3075d0237c4
1 parent
38d54884
Exists in
master
and in
3 other branches
Adding subject mural filters
Showing
12 changed files
with
336 additions
and
218 deletions
Show diff stats
amadeus/static/css/.sass-cache/a7f87b90919294b62ab4f8079e31dcda8f485534/green.sassc
No preview for this file type
amadeus/static/css/themes/green.css
... | ... | @@ -459,7 +459,7 @@ a.add-row { |
459 | 459 | .suggestions { |
460 | 460 | background: #FFFFFF; } |
461 | 461 | |
462 | -.mural-category, .mural-subject { | |
462 | +.mural-ungeneral { | |
463 | 463 | background: #EEE; } |
464 | 464 | |
465 | 465 | .btn:not(.btn-raised):not(.btn-link):focus, .btn:not(.btn-raised):not(.btn-link):hover, .input-group-btn .btn:not(.btn-raised):not(.btn-link):focus, .input-group-btn .btn:not(.btn-raised):not(.btn-link):hover { | ... | ... |
amadeus/static/css/themes/green.css.map
1 | 1 | { |
2 | 2 | "version": 3, |
3 | -"mappings": "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", | |
3 | +"mappings": "AAOA,gJAAgJ;EAC5I,gBAAgB,EAAE,KAAK;;AAG3B,mBAAmB;EACf,KAAK,EAXO,OAAO;;AAcvB,gGAA4F;EACxF,gBAAgB,EAfJ,OAAO;;AAkBvB,kGAA8F;EAC1F,YAAY,EAnBA,OAAO;;AAsBvB,iMAAiM;EAC7L,KAAK,EAAE,IAAI;EACX,gBAAgB,EAxBJ,OAAO;EAyBnB,YAAY,EAzBA,OAAO;;AA4BvB,+BAA+B;EAC3B,gBAAgB,EA7BJ,OAAO;EA8BnB,KAAK,EAAE,yBAAqB;;AAGhC,aAAa;EACT,gBAAgB,EAAE,kBAAkB;;AAGxC,YAAY;EACR,UAAU,EAtCE,OAAO;;AAyCvB,iBAAiB;EACb,UAAU,EAzCI,OAAO;;;AA+CzB,+CAA+C;EAC3C,UAAU,EAAE,OAAO;EACnB,KAAK,EAlDO,OAAO;;AAqDvB,qDAAqD;EACjD,KAAK,EAtDO,OAAO;;;AA2DvB,mBAAmB;EACf,gBAAgB,EA5DJ,OAAO;EA6DnB,KAAK,EAAE,KAAK;;AAGhB,qBAAqB;EACjB,KAAK,EAAE,KAAK;;AAGhB,qCAAqC;EACjC,gBAAgB,EApEF,OAAO;;AAuEzB,2BAA2B;EACvB,gBAAgB,EAxEF,OAAO;;;;AA+EzB,qBAAsB;EAClB,KAAK,EAAE,OAAO;;AAGlB,mBAAoB;EAChB,KAAK,EAAE,OAAO;;AAGlB,sBAAsB;EAClB,KAAK,EAAG,OAAO;;AAGnB,oBAAqB;EACjB,KAAK,EAAE,OAAO;;AAIlB,kBAAkB;EACd,KAAK,EAAE,OAAO;;AAIlB,gBAAgB;EACZ,gBAAgB,EAAE,kBAAkB;EACpC,KAAK,EAtGO,OAAO;;AAyGvB,gCAAgC;EAC5B,gBAAgB,EAAE,kBAAkB;;AAGxC,uDAAuD;EACnD,KAAK,EAAE,OAAO;;AAGlB,6DAA6D;EACzD,KAAK,EAjHD,OAAO;;AAoHf,+BAA+B;EAC3B,gBAAgB,EAAE,kBAAkB;;AAGxC,sDAAsD;EAClD,KAAK,EAAE,OAAO;;AAGlB,4DAA4D;EACxD,KAAK,EA7HD,OAAO;;AAgIf,cAAc;EACV,KAAK,EAAE,kBAAkB;;;AAK7B,aAAa;EACT,aAAa,EAAE,4BAA8B;;AAGjD,aAAa;EACT,UAAU,EAAE,4BAA8B;;;AAM9C,eAAe;EACX,gBAAgB,EAAE,kBAAkB;EACpC,KAAK,EAAE,KAAK;;;AAKhB,6BAA6B;EACzB,gBAAgB,EAAE,kBAAiB;;AAGvC,8FAA8F;EAC1F,KAAK,EAAE,kBAAkB;;AAG7B,iBAAiB;EACb,UAAU,EAAE,kBAAiB;EAC7B,UAAU,EAAE,iBAAiB;;;AAKjC,6BAA6B;EACzB,gBAAgB,EAAE,kBAAkB;;AAGxC,oHAAoH;EAChH,KAAK,EAAE,OAAO;;AAGlB,gIAAgI;EAC5H,KAAK,EAhLD,OAAO;;AAmLf,wFAAwF;EACpF,UAAU,EApLN,OAAO;;AAuLf,uCAAuC;EACnC,gBAAgB,EAAE,kBAAkB;EACpC,KAAK,EA1LO,OAAO;;AA6LvB,mBAAmB;EACf,UAAU,EA7LN,OAAO;;AAgMf,6CAA6C;EACzC,UAAU,EAlME,OAAO;;AAqMvB,kBAAkB;EACd,KAAK,EAAE,KAAK;;AAGhB,wBAAwB;EACpB,KAAK,EAAE,OAAO;;AAGlB,iCAAiC;EAC7B,KAAK,EAAE,kBAAkB;;AAG7B,gBAAgB;EACZ,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAlND,OAAO;;AAqNf,uBAAuB;EACnB,UAAU,EAvNE,OAAO;;AA0NvB,yBAA0B;EACtB,gBAAgB,EA1NZ,OAAO;EA2NX,mBAAmB,EAAE,OAAO;EAC5B,KAAK,EAAE,OAAO;;AAGlB,gCAAiC;EAC7B,KAAK,EAAE,OAAO;EACd,mBAAmB,EAnOL,OAAO;;AAsOzB,mBAAmB;EACf,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAAE,KAAK;;AAGhB,4EAA4E;EACxE,UAAU,EA1ON,OAAO;;;AAkPf,mBAAmB;EACf,UAAU,EAAE,kBAA2B;;AAG3C,qBAAqB;EACjB,KAAK,EAAE,KAAK;;AAGhB,mBAAmB;EACf,UAAU,EA7PI,OAAO;;AAgQzB,wBAAwB;EACpB,UAAU,EAAE,kBAA2B;;AAG3C,mCAAmC;EAC/B,UAAU,EArQI,OAAO;;AAwQzB,WAAW;EACP,KAAK,EAxQO,OAAO;;AA4QvB,cAAc;EACV,UAAU,EA7QE,OAAO;;AAgRvB,qBAAqB;EACjB,UAAU,EAjRE,OAAO;EAkRnB,KAAK,EAAE,OAAO;;AAGlB,2BAA2B;EACvB,UAAU,EAAE,kBAAkB;;AAGlC,2CAA2C;EACvC,UAAU,EA1RE,OAAO;;AA6RvB,iDAAiD;EAC7C,UAAU,EAAE,OAAO;;AAGvB,8DAA8D;EAC1D,KAAK,EAAE,OAAO;;AAGlB,oEAAoE;EAChE,KAAK,EAxSO,OAAO;;AA2SvB,qDAAqD;EACjD,KAAK,EA5SO,OAAO;;AA+SvB,YAAY;EACR,UAAU,EA9SE,OAAO;;AAkTvB,gBAAgB;EACZ,gBAAgB,EAAE,KAAK;;AAG3B,+BAA+B;EAC3B,KAAK,EAAE,OAAO;;AAGlB,oBAAoB;EAChB,KAAK,EAAE,OAAO;;AAGlB,gBAAgB;EACZ,KAAK,EAAE,OAAO;;;AAGlB,YAAY;EACR,KAAK,EAAE,yBAAqB;;AAGhC,sCAAsC;EAClC,KAAK,EAtUD,OAAO;;AAyUf,UAAU;EACN,UAAU,EAAE,KAAK;;AAGrB,eAAe;EACX,UAAU,EA/UE,OAAO;;AAkVvB,cAAc;EACV,KAAK,EAAE,OAAO;;AAGlB,gCAAgC;EAC5B,KAAK,EAAE,KAAK;;AAGhB,kBAAkB;EACd,KAAK,EAAE,KAAK;;AAGhB,sCAAsC;EAClC,KAAK,EAAE,KAAK;;AAEhB,uBAAuB;EACnB,KAAK,EAAE,IAAI;;AAGf,qBAAqB;EACjB,KAAK,EAAE,kBAAiB;;AAG5B,iBAAiB;EACb,aAAa,EAAE,iBAAiB;;AAIpC,kBAAkB;EACd,KAAK,EA9WD,OAAO;EA+WX,UAAU,EAlXE,OAAO;;AAqXvB,oBAAoB;EAChB,KAAK,EAAE,KAAK;;AAGhB,oCAAoC;EAChC,gBAAgB,EAzXF,OAAO;;AA4XzB,0BAA0B;EACtB,gBAAgB,EA7XF,OAAO;;AAiYzB,iBAAiB;EACb,aAAa,EAAE,iBAAiB;;AAGpC,kBAAkB;EACd,gBAAgB,EAAE,kBAAkB;EACpC,KAAK,EAAE,KAAK;;AAGhB,SAAS;EACL,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,eAAe;;AAG3B,OAAO;EACH,KAAK,EA9YD,OAAO;EA+YX,UAAU,EAAE,OAAO;;AAGvB,YAAY;EACR,KAAK,EAAE,OAAO;;AAGlB,0CAA0C;EACtC,UAAU,EAAE,eAAe;EAC3B,KAAK,EAAE,eAAe;;AAG1B,wCAAwC;EACpC,UAAU,EAAE,IAAI;;AAGpB,uBAAuB;EACnB,MAAM,EAAE,cAAc;EACtB,KAAK,EAAE,OAAO;;AAGlB,eAAe;EACX,KAAK,EAAE,OAAO;EACd,gBAAgB,EAAE,IAAI;EACtB,YAAY,EAAE,IAAI;;AAGtB,wCAAwC;EACpC,UAAU,EAAE,OAAO;EACnB,KAAK,EA5aD,OAAO;EA6aX,YAAY,EAAE,OAAO;;;AAMzB,SAAS;EACL,MAAM,EAAE,iBAAiB;;AAG7B,gCAAgC;EAC5B,gBAAgB,EAAE,IAAI;;AAG1B,sBAAsB;EAClB,kBAAkB,EAAE,mGAAqF;EACzG,UAAU,EAAE,mGAAqF;EACjG,gBAAgB,EAAE,IAAI;EACtB,KAAK,EAAE,mBAAe;;AAG1B,SAAS;EACL,kBAAkB,EAAE,mGAAqF;EACzG,UAAU,EAAE,mGAAqF;EACjG,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAAE,yBAAqB;;;AAKhC,iCAAiC;EAC7B,gBAAgB,EAAE,IAAI;EACtB,MAAM,EAAE,cAAc;;AAG1B,0BAA0B;EACtB,gBAAgB,EAAE,IAAI;;AAG1B,gCAAgC;EAC5B,gBAAgB,EAAE,eAAe;;AAGrC,0CAA0C;EACtC,KAAK,EAAE,OAAO;;AAGlB,uCAAuC;EACnC,UAAU,EA9dE,OAAO;;AAievB,4CAA4C;EACxC,aAAa,EAAE,yBAAyB;;AAG5C,qCAAqC;EACjC,KAAK,EAAE,OAAO;;AAGlB,2CAA2C;EACvC,KAAK,EAAE,OAAO;;AAGlB,oDAAoD;EAChD,KAAK,EAAE,IAAI;;AAGf,gBAAgB;EACZ,KAAK,EAAE,OAAO;;AAGlB,uHAAuH;EACnH,gBAAgB,EAAE,kBAAkB;;AAKxC,qBAAqB;EACjB,KAAK,EAAE,OAAO;;AAIlB,iBAAiB;EACb,gBAAgB,EAAE,kBAAkB;EACpC,KAAK,EAAE,kBAAyB;;AAGpC,SAAS;EACL,YAAY,EAAE,OAAO;;AAGzB,qBAAqB;EACjB,gBAAgB,EAzgBZ,OAAO;;AA4gBf,eAAe;EACX,KAAK,EAAE,OAAO;;AAGlB,yBAAyB;EACrB,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAlhBD,OAAO;;AAqhBf,qDAAqD;EACjD,gBAAgB,EAAE,kBAAkB;;AAGxC,QAAQ;EACJ,UAAU,EAAE,IAAI;EAChB,KAAK,EAAE,IAAI;;AAGf,iBAAiB;EACb,UAAU,EA/hBN,OAAO;;AAkiBf,0GAA0G;EACtG,UAAU,EAAE,OAAO;;AAGvB,iCAAiC;EAC7B,YAAY,EAAE,OAAO;;AAGzB,gCAAgC;EAC5B,KAAK,EAAE,OAAO;;AAGlB,sFAAsF;EAClF,KAAK,EAAE,OAAO;;AAGlB,sEAAsE;EAClE,KAAK,EAAE,OAAO;;AAGlB,6BAA6B;EACzB,KAAK,EAAE,OAAO;;AAGlB,WAAW;EACP,KAAK,EAAE,OAAO;;AAGlB,mBAAmB;EACf,gBAAgB,EAAE,OAAO;EACzB,UAAU,EAAE,OAAO;;AAGvB,sCAAsC;EAClC,YAAY,EAAE,OAAO;EACrB,UAAU,EArkBN,OAAO;;AAwkBf,gBAAgB;EACZ,UAAU,EA1kBE,OAAO;EA2kBnB,gBAAgB,EAAE,OAAO;;AAG7B,mCAAmC;EAC/B,KAAK,EAAE,OAAO;;AAGlB,aAAa;EACT,KAAK,EAAE,OAAO;;AAGlB,UAAU;EACN,KAAK,EAAE,kBAAkB;;AAG7B,QAAQ;EACJ,KAAK,EAAE,kBAAkB;;AAG7B,YAAY;EACR,UAAU,EA/lBE,OAAO;;AAkmBvB,eAAe;EACX,KAAK,EAAE,OAAO;;AAId,kBAAK;EACD,KAAK,EAAE,OAAO;;AAIlB,cAAC;EACG,KAAK,EAAE,OAAO;;AAGtB,YAAY;EACR,UAAU,EAhnBN,OAAO;;AAmnBf,gBAAgB;EACZ,UAAU,EAAE,IAAI;;AAGpB,gNAAgN;EAC5M,gBAAgB,EAAE,OAAO;;;EAKzB,mDAAmD;IAC/C,KAAK,EAAE,kBAAkB;;EAE7B,yDAAyD;IACrD,KAAK,EAAE,kBAAyB", | |
4 | 4 | "sources": ["green.sass"], |
5 | 5 | "names": [], |
6 | 6 | "file": "green.css" | ... | ... |
amadeus/static/css/themes/green.sass
amadeus/static/js/mural_category.js
... | ... | @@ -1,188 +0,0 @@ |
1 | -$('.mural-category').on('shown.bs.collapse', function(e) { | |
2 | - if($(this).is(e.target)){ | |
3 | - var li = $(".breadcrumb").find('li:last-child'); | |
4 | - var li_text = $(li).html(); | |
5 | - var url = $(".mural_url").val(); | |
6 | - var new_li = $(li).clone(); | |
7 | - | |
8 | - new_li.html($(this).parent().find('.panel-title span').text()); | |
9 | - | |
10 | - $(li).html("<a href='" + url + "'>" + li_text + "</a>"); | |
11 | - $(li).append("<span class='divider'>/</span>"); | |
12 | - | |
13 | - new_li.appendTo('.breadcrumb'); | |
14 | - | |
15 | - var post_section = $(this).find('.posts'), | |
16 | - without = $(this).find('.no-subjects'), | |
17 | - loading = $(this).find('.loading-posts'), | |
18 | - more = $(this).find('.more-posts'), | |
19 | - filters = $(this).find('.post-filters'), | |
20 | - clear_filters = $(this).find('.clear_filter'), | |
21 | - mural = post_section.parent().parent(); | |
22 | - | |
23 | - if (post_section.children().length == 0) { | |
24 | - var url = $(this).find('.mural').data('url'); | |
25 | - | |
26 | - $.ajax({ | |
27 | - url: url, | |
28 | - dataType: 'json', | |
29 | - success: function (data) { | |
30 | - loading.hide(); | |
31 | - | |
32 | - if (data.count > 0) { | |
33 | - post_section.append(data.posts); | |
34 | - | |
35 | - mural.data('pages', data.num_pages); | |
36 | - mural.data('page', data.num_page); | |
37 | - | |
38 | - setTimeout(function () { postHeightLimits() }, 100); | |
39 | - | |
40 | - if (data.num_page < data.num_pages) { | |
41 | - more.show(); | |
42 | - } else { | |
43 | - more.hide(); | |
44 | - } | |
45 | - | |
46 | - $('.mural_badge').each(function () { | |
47 | - var actual = $(this).text(); | |
48 | - | |
49 | - if (actual != "+99") { | |
50 | - actual = parseInt(actual, 10) - data.unviewed; | |
51 | - | |
52 | - if (actual <= 0) { | |
53 | - $(this).hide(); | |
54 | - } else { | |
55 | - $(this).text(actual); | |
56 | - } | |
57 | - } | |
58 | - }); | |
59 | - | |
60 | - $('.cat_badge').each(function () { | |
61 | - var actual = $(this).text(); | |
62 | - | |
63 | - if (actual != "+99") { | |
64 | - actual = parseInt(actual, 10) - data.unviewed; | |
65 | - | |
66 | - if (actual < 0) { | |
67 | - actual = 0; | |
68 | - } | |
69 | - | |
70 | - $(this).text(actual); | |
71 | - } | |
72 | - }); | |
73 | - | |
74 | - without.hide(); | |
75 | - } else { | |
76 | - more.hide(); | |
77 | - | |
78 | - without.show(); | |
79 | - } | |
80 | - } | |
81 | - }); | |
82 | - } | |
83 | - | |
84 | - more.click(function () { | |
85 | - var url = mural.data('url'), | |
86 | - pageNum = mural.data('page'), | |
87 | - numberPages = mural.data('pages'), | |
88 | - favorites = mural.data('fav'), | |
89 | - mine = mural.data('mine'), | |
90 | - showing = new_posts.join(','); | |
91 | - | |
92 | - if (pageNum == numberPages) { | |
93 | - return false | |
94 | - } | |
95 | - | |
96 | - pageNum = pageNum + 1; | |
97 | - | |
98 | - more.hide(); | |
99 | - | |
100 | - loading.show(); | |
101 | - | |
102 | - $.ajax({ | |
103 | - url: url, | |
104 | - data: {'page': pageNum, 'favorite': favorites, 'mine': mine, 'showing': showing}, | |
105 | - dataType: 'json', | |
106 | - success: function (data) { | |
107 | - loading.hide(); | |
108 | - | |
109 | - post_section.append(data.posts); | |
110 | - | |
111 | - mural.data('pages', data.num_pages); | |
112 | - mural.data('page', data.num_page); | |
113 | - | |
114 | - setTimeout(function () { postHeightLimits() }, 100); | |
115 | - | |
116 | - if (data.num_page < data.num_pages) { | |
117 | - more.show(); | |
118 | - } else { | |
119 | - more.hide(); | |
120 | - } | |
121 | - } | |
122 | - }); | |
123 | - }); | |
124 | - | |
125 | - filters.submit(function () { | |
126 | - var favorite = $(this).find("input[name='favorite']").is(':checked') ? "True" : "", | |
127 | - mine = $(this).find("input[name='mine']").is(':checked') ? "True" : "", | |
128 | - url = mural.data('url'); | |
129 | - | |
130 | - post_section.html(''); | |
131 | - | |
132 | - more.hide(); | |
133 | - loading.show(); | |
134 | - | |
135 | - $.ajax({ | |
136 | - url: url, | |
137 | - data: {'favorite': favorite, 'mine': mine}, | |
138 | - dataType: 'json', | |
139 | - success: function (data) { | |
140 | - loading.hide(); | |
141 | - | |
142 | - if (data.count > 0) { | |
143 | - post_section.append(data.posts); | |
144 | - | |
145 | - mural.data('pages', data.num_pages); | |
146 | - mural.data('page', data.num_page); | |
147 | - | |
148 | - if (data.num_page < data.num_pages) { | |
149 | - more.show(); | |
150 | - } else { | |
151 | - more.hide(); | |
152 | - } | |
153 | - | |
154 | - setTimeout(function () { postHeightLimits() }, 100); | |
155 | - | |
156 | - without.hide(); | |
157 | - } else { | |
158 | - without.show(); | |
159 | - } | |
160 | - | |
161 | - mural.data('fav', favorite); | |
162 | - mural.data('mine', mine); | |
163 | - } | |
164 | - }); | |
165 | - | |
166 | - return false; | |
167 | - }); | |
168 | - | |
169 | - clear_filters.click(function () { | |
170 | - var frm = $(this).parent(); | |
171 | - | |
172 | - frm.find("input[type='checkbox']").prop('checked', false); | |
173 | - | |
174 | - frm.submit(); | |
175 | - }); | |
176 | - } | |
177 | -}); | |
178 | - | |
179 | -$('.mural-category').on('hidden.bs.collapse', function(e) { | |
180 | - if($(this).is(e.target)){ | |
181 | - $(".breadcrumb").find('li:last-child').remove(); | |
182 | - | |
183 | - var li = $(".breadcrumb").find('li:last-child'); | |
184 | - var text = $(li).find('a').text(); | |
185 | - | |
186 | - $(li).html(text); | |
187 | - } | |
188 | -}); | |
189 | 0 | \ No newline at end of file |
amadeus/static/js/mural_subject.js
... | ... | @@ -80,6 +80,47 @@ $('.mural-subject').on('shown.bs.collapse', function(e) { |
80 | 80 | } |
81 | 81 | }); |
82 | 82 | } |
83 | + | |
84 | + more.click(function () { | |
85 | + var url = mural.data('url'), | |
86 | + pageNum = mural.data('page'), | |
87 | + numberPages = mural.data('pages'), | |
88 | + favorites = mural.data('fav'), | |
89 | + mine = mural.data('mine'), | |
90 | + showing = new_posts.join(','); | |
91 | + | |
92 | + if (pageNum == numberPages) { | |
93 | + return false | |
94 | + } | |
95 | + | |
96 | + pageNum = pageNum + 1; | |
97 | + | |
98 | + more.hide(); | |
99 | + | |
100 | + loading.show(); | |
101 | + | |
102 | + $.ajax({ | |
103 | + url: url, | |
104 | + data: {'page': pageNum, 'favorite': favorites, 'mine': mine, 'showing': showing}, | |
105 | + dataType: 'json', | |
106 | + success: function (data) { | |
107 | + loading.hide(); | |
108 | + | |
109 | + post_section.append(data.posts); | |
110 | + | |
111 | + mural.data('pages', data.num_pages); | |
112 | + mural.data('page', data.num_page); | |
113 | + | |
114 | + setTimeout(function () { postHeightLimits() }, 100); | |
115 | + | |
116 | + if (data.num_page < data.num_pages) { | |
117 | + more.show(); | |
118 | + } else { | |
119 | + more.hide(); | |
120 | + } | |
121 | + } | |
122 | + }); | |
123 | + }); | |
83 | 124 | } |
84 | 125 | }); |
85 | 126 | ... | ... |
... | ... | @@ -0,0 +1,188 @@ |
1 | +$('.mural-ungeneral').on('shown.bs.collapse', function(e) { | |
2 | + if($(this).is(e.target)){ | |
3 | + var li = $(".breadcrumb").find('li:last-child'); | |
4 | + var li_text = $(li).html(); | |
5 | + var url = $(".mural_url").val(); | |
6 | + var new_li = $(li).clone(); | |
7 | + | |
8 | + new_li.html($(this).parent().find('.panel-title span').text()); | |
9 | + | |
10 | + $(li).html("<a href='" + url + "'>" + li_text + "</a>"); | |
11 | + $(li).append("<span class='divider'>/</span>"); | |
12 | + | |
13 | + new_li.appendTo('.breadcrumb'); | |
14 | + | |
15 | + var post_section = $(this).find('.posts'), | |
16 | + without = $(this).find('.no-subjects'), | |
17 | + loading = $(this).find('.loading-posts'), | |
18 | + more = $(this).find('.more-posts'), | |
19 | + filters = $(this).find('.post-filters'), | |
20 | + clear_filters = $(this).find('.clear_filter'), | |
21 | + mural = post_section.parent().parent(); | |
22 | + | |
23 | + if (post_section.children().length == 0) { | |
24 | + var url = $(this).find('.mural').data('url'); | |
25 | + | |
26 | + $.ajax({ | |
27 | + url: url, | |
28 | + dataType: 'json', | |
29 | + success: function (data) { | |
30 | + loading.hide(); | |
31 | + | |
32 | + if (data.count > 0) { | |
33 | + post_section.append(data.posts); | |
34 | + | |
35 | + mural.data('pages', data.num_pages); | |
36 | + mural.data('page', data.num_page); | |
37 | + | |
38 | + setTimeout(function () { postHeightLimits() }, 100); | |
39 | + | |
40 | + if (data.num_page < data.num_pages) { | |
41 | + more.show(); | |
42 | + } else { | |
43 | + more.hide(); | |
44 | + } | |
45 | + | |
46 | + $('.mural_badge').each(function () { | |
47 | + var actual = $(this).text(); | |
48 | + | |
49 | + if (actual != "+99") { | |
50 | + actual = parseInt(actual, 10) - data.unviewed; | |
51 | + | |
52 | + if (actual <= 0) { | |
53 | + $(this).hide(); | |
54 | + } else { | |
55 | + $(this).text(actual); | |
56 | + } | |
57 | + } | |
58 | + }); | |
59 | + | |
60 | + $('.ung_badge').each(function () { | |
61 | + var actual = $(this).text(); | |
62 | + | |
63 | + if (actual != "+99") { | |
64 | + actual = parseInt(actual, 10) - data.unviewed; | |
65 | + | |
66 | + if (actual < 0) { | |
67 | + actual = 0; | |
68 | + } | |
69 | + | |
70 | + $(this).text(actual); | |
71 | + } | |
72 | + }); | |
73 | + | |
74 | + without.hide(); | |
75 | + } else { | |
76 | + more.hide(); | |
77 | + | |
78 | + without.show(); | |
79 | + } | |
80 | + } | |
81 | + }); | |
82 | + } | |
83 | + | |
84 | + more.click(function () { | |
85 | + var url = mural.data('url'), | |
86 | + pageNum = mural.data('page'), | |
87 | + numberPages = mural.data('pages'), | |
88 | + favorites = mural.data('fav'), | |
89 | + mine = mural.data('mine'), | |
90 | + showing = new_posts.join(','); | |
91 | + | |
92 | + if (pageNum == numberPages) { | |
93 | + return false | |
94 | + } | |
95 | + | |
96 | + pageNum = pageNum + 1; | |
97 | + | |
98 | + more.hide(); | |
99 | + | |
100 | + loading.show(); | |
101 | + | |
102 | + $.ajax({ | |
103 | + url: url, | |
104 | + data: {'page': pageNum, 'favorite': favorites, 'mine': mine, 'showing': showing}, | |
105 | + dataType: 'json', | |
106 | + success: function (data) { | |
107 | + loading.hide(); | |
108 | + | |
109 | + post_section.append(data.posts); | |
110 | + | |
111 | + mural.data('pages', data.num_pages); | |
112 | + mural.data('page', data.num_page); | |
113 | + | |
114 | + setTimeout(function () { postHeightLimits() }, 100); | |
115 | + | |
116 | + if (data.num_page < data.num_pages) { | |
117 | + more.show(); | |
118 | + } else { | |
119 | + more.hide(); | |
120 | + } | |
121 | + } | |
122 | + }); | |
123 | + }); | |
124 | + | |
125 | + filters.submit(function () { | |
126 | + var favorite = $(this).find("input[name='favorite']").is(':checked') ? "True" : "", | |
127 | + mine = $(this).find("input[name='mine']").is(':checked') ? "True" : "", | |
128 | + url = mural.data('url'); | |
129 | + | |
130 | + post_section.html(''); | |
131 | + | |
132 | + more.hide(); | |
133 | + loading.show(); | |
134 | + | |
135 | + $.ajax({ | |
136 | + url: url, | |
137 | + data: {'favorite': favorite, 'mine': mine}, | |
138 | + dataType: 'json', | |
139 | + success: function (data) { | |
140 | + loading.hide(); | |
141 | + | |
142 | + if (data.count > 0) { | |
143 | + post_section.append(data.posts); | |
144 | + | |
145 | + mural.data('pages', data.num_pages); | |
146 | + mural.data('page', data.num_page); | |
147 | + | |
148 | + if (data.num_page < data.num_pages) { | |
149 | + more.show(); | |
150 | + } else { | |
151 | + more.hide(); | |
152 | + } | |
153 | + | |
154 | + setTimeout(function () { postHeightLimits() }, 100); | |
155 | + | |
156 | + without.hide(); | |
157 | + } else { | |
158 | + without.show(); | |
159 | + } | |
160 | + | |
161 | + mural.data('fav', favorite); | |
162 | + mural.data('mine', mine); | |
163 | + } | |
164 | + }); | |
165 | + | |
166 | + return false; | |
167 | + }); | |
168 | + | |
169 | + clear_filters.click(function () { | |
170 | + var frm = $(this).parent(); | |
171 | + | |
172 | + frm.find("input[type='checkbox']").prop('checked', false); | |
173 | + | |
174 | + frm.submit(); | |
175 | + }); | |
176 | + } | |
177 | +}); | |
178 | + | |
179 | +$('.mural-ungeneral').on('hidden.bs.collapse', function(e) { | |
180 | + if($(this).is(e.target)){ | |
181 | + $(".breadcrumb").find('li:last-child').remove(); | |
182 | + | |
183 | + var li = $(".breadcrumb").find('li:last-child'); | |
184 | + var text = $(li).find('a').text(); | |
185 | + | |
186 | + $(li).html(text); | |
187 | + } | |
188 | +}); | |
0 | 189 | \ No newline at end of file | ... | ... |
amadeus/static/js/socket.js
... | ... | @@ -28,6 +28,12 @@ socket.onmessage = function(e) { |
28 | 28 | muralNotificationCategoryUpdate(content); |
29 | 29 | } else if (content.subtype == "delete_cat") { |
30 | 30 | muralNotificationCategoryDelete(content); |
31 | + } else if (content.subtype == "create_sub") { | |
32 | + muralNotificationSubject(content); | |
33 | + } else if (content.subtype == "update_sub") { | |
34 | + muralNotificationSubjectUpdate(content); | |
35 | + } else if (content.subtype == "delete_sub") { | |
36 | + muralNotificationSubjectDelete(content); | |
31 | 37 | } |
32 | 38 | } |
33 | 39 | } |
... | ... | @@ -214,4 +220,66 @@ function muralNotificationCategoryDelete(content) { |
214 | 220 | post.remove(); |
215 | 221 | } |
216 | 222 | } |
223 | +} | |
224 | + | |
225 | +function muralNotificationSubject(content) { | |
226 | + var sub_section = $("#" + content.sub); | |
227 | + | |
228 | + if (window.location.pathname == content.pathname && sub_section.is(':visible')) { | |
229 | + | |
230 | + sub_section.find('.posts').prepend(content.complete); | |
231 | + | |
232 | + sub_section.find('.no-subjects').hide(); | |
233 | + } else { | |
234 | + $('.mural_badge').each(function () { | |
235 | + var actual = $(this).text(); | |
236 | + | |
237 | + if (actual != "+99") { | |
238 | + actual = parseInt(actual, 10) + 1; | |
239 | + | |
240 | + if (actual > 99) { | |
241 | + actual = "+99"; | |
242 | + } | |
243 | + | |
244 | + $(this).text(actual); | |
245 | + } | |
246 | + | |
247 | + $(this).show(); | |
248 | + }); | |
249 | + } | |
250 | + | |
251 | + if (("Notification" in window)) { | |
252 | + var options = { | |
253 | + icon: content.user_icon, | |
254 | + body: content.simple | |
255 | + } | |
256 | + | |
257 | + if (Notification.permission === "granted") { | |
258 | + var notification = new Notification("", options); | |
259 | + | |
260 | + setTimeout(notification.close.bind(notification), 3000); | |
261 | + } | |
262 | + } | |
263 | +} | |
264 | + | |
265 | +function muralNotificationSubjectUpdate(content) { | |
266 | + if (window.location.pathname == content.pathname) { | |
267 | + var post = $("#post-" + content.post_id); | |
268 | + | |
269 | + if (post.is(":visible") || post.is(":hidden")) { | |
270 | + post.before(content.complete); | |
271 | + | |
272 | + post.remove(); | |
273 | + } | |
274 | + } | |
275 | +} | |
276 | + | |
277 | +function muralNotificationSubjectDelete(content) { | |
278 | + if (window.location.pathname == content.pathname) { | |
279 | + var post = $("#post-" + content.post_id); | |
280 | + | |
281 | + if (post.is(":visible") || post.is(":hidden")) { | |
282 | + post.remove(); | |
283 | + } | |
284 | + } | |
217 | 285 | } |
218 | 286 | \ No newline at end of file | ... | ... |
mural/templates/mural/list_category.html
... | ... | @@ -17,7 +17,7 @@ |
17 | 17 | <div id="core-subjects-options-div"> |
18 | 18 | <ul class="core-subjects-options"> |
19 | 19 | <a href="{% url 'mural:manage_general' %}"><li>{% trans "General" %} ({{ totals.general }})</li></a> |
20 | - <a href="{% url 'mural:manage_category' %}"><li class="active">{% trans "Per Category" %} (<span class="cat_badge">{{ totals.category }}</span>)</li></a> | |
20 | + <a href="{% url 'mural:manage_category' %}"><li class="active">{% trans "Per Category" %} (<span class="ung_badge">{{ totals.category }}</span>)</li></a> | |
21 | 21 | <a href="{% url 'mural:manage_subject' %}"><li>{% trans "Per Subject" %} ({{ totals.subject }})</li></a> |
22 | 22 | </ul> |
23 | 23 | </div> |
... | ... | @@ -65,7 +65,7 @@ |
65 | 65 | </div> |
66 | 66 | </div> |
67 | 67 | </div> |
68 | - <div id="{{category.slug}}" class="panel-collapse panel-body collapse mural-category"> | |
68 | + <div id="{{category.slug}}" class="panel-collapse panel-body collapse mural-ungeneral"> | |
69 | 69 | <div class="col-md-12 cards-content mural" data-url="{% url 'mural:load_category' category.id %}"> |
70 | 70 | <div class="col-md-9 col-sm-9 col-xs-9 mural-list"> |
71 | 71 | <div class="post_make panel panel-default"> |
... | ... | @@ -134,5 +134,5 @@ |
134 | 134 | |
135 | 135 | <script type="text/javascript" src="{% static 'js/category.js' %}"></script> |
136 | 136 | <script type="text/javascript" src="{% static 'js/mural.js' %}"></script> |
137 | - <script type="text/javascript" src="{% static 'js/mural_category.js' %}"></script> | |
137 | + <script type="text/javascript" src="{% static 'js/mural_ungeneral.js' %}"></script> | |
138 | 138 | {% endblock %} |
139 | 139 | \ No newline at end of file | ... | ... |
mural/templates/mural/list_subject.html
... | ... | @@ -18,7 +18,7 @@ |
18 | 18 | <ul class="core-subjects-options"> |
19 | 19 | <a href="{% url 'mural:manage_general' %}"><li>{% trans "General" %} ({{ totals.general }})</li></a> |
20 | 20 | <a href="{% url 'mural:manage_category' %}"><li>{% trans "Per Category" %} ({{ totals.category }})</li></a> |
21 | - <a href="{% url 'mural:manage_subject' %}"><li class="active">{% trans "Per Subject" %} (<span class="sub_badge">{{ totals.subject }}</span>)</li></a> | |
21 | + <a href="{% url 'mural:manage_subject' %}"><li class="active">{% trans "Per Subject" %} (<span class="ung_badge">{{ totals.subject }}</span>)</li></a> | |
22 | 22 | </ul> |
23 | 23 | </div> |
24 | 24 | |
... | ... | @@ -64,7 +64,7 @@ |
64 | 64 | </div> |
65 | 65 | </div> |
66 | 66 | </div> |
67 | - <div id="{{subject.slug}}" class="panel-collapse panel-body collapse mural-subject"> | |
67 | + <div id="{{subject.slug}}" class="panel-collapse panel-body collapse mural-ungeneral"> | |
68 | 68 | <div class="col-md-12 cards-content mural" data-url="{% url 'mural:load_subject' subject.id %}"> |
69 | 69 | <div class="col-md-9 col-sm-9 col-xs-9 mural-list"> |
70 | 70 | <div class="post_make panel panel-default"> |
... | ... | @@ -133,5 +133,5 @@ |
133 | 133 | |
134 | 134 | <script type="text/javascript" src="{% static 'js/category.js' %}"></script> |
135 | 135 | <script type="text/javascript" src="{% static 'js/mural.js' %}"></script> |
136 | - <script type="text/javascript" src="{% static 'js/mural_subject.js' %}"></script> | |
136 | + <script type="text/javascript" src="{% static 'js/mural_ungeneral.js' %}"></script> | |
137 | 137 | {% endblock %} |
138 | 138 | \ No newline at end of file | ... | ... |
mural/utils.py
... | ... | @@ -9,5 +9,14 @@ def getSpaceUsers(user, post): |
9 | 9 | space = post.get_space() |
10 | 10 | |
11 | 11 | return User.objects.filter(Q(is_staff = True) | Q(coordinators__id = space) | Q(professors__category__id = space) | Q(subject_student__category__id = space)).exclude(id = user) |
12 | + elif post._my_subclass == "subjectpost": | |
13 | + space = post.get_space() | |
14 | + | |
15 | + if post.subjectpost.resource: | |
16 | + resource = post.subjectpost.resource | |
17 | + | |
18 | + return User.objects.filter(Q(is_staff = True) | Q(professors__id = space) | Q(coordinators__subject_category__id = space) | Q(resource_students = resource) | Q(group_participants__resource_groups = resource) | (Q(subject_student__id = space) & Q(subject_student__topic_subject__resource_topic = resource) & Q(subject_student__topic_subject__resource_topic__all_students = True))).exclude(id = user) | |
19 | + else: | |
20 | + return User.objects.filter(Q(is_staff = True) | Q(professors__id = space) | Q(coordinators__subject_category__id = space) | Q(subject_student__id = space)).exclude(id = user) | |
12 | 21 | |
13 | 22 | return None |
14 | 23 | \ No newline at end of file | ... | ... |
mural/views.py
... | ... | @@ -61,9 +61,9 @@ class GeneralIndex(LoginRequiredMixin, generic.ListView): |
61 | 61 | general_visualizations = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(post__generalpost__isnull = False) | Q(comment__post__generalpost__isnull = False))).distinct() |
62 | 62 | |
63 | 63 | self.totals['general'] = general_visualizations.count() |
64 | - self.totals['category'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(user__is_staff = True) | Q(post__categorypost__space__coordinators = user) | Q(comment__post__categorypost__space__coordinators = user) | Q(post__categorypost__space__subject_category__students = user) | Q(comment__post__categorypost__space__subject_category__students = user) | Q(post__categorypost__space__subject_category__professor = user) | Q(comment__post__categorypost__space__subject_category__professor = user))).distinct().count() | |
65 | - self.totals['subject'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(post__subjectpost__space__professor = user) | Q(comment__post__subjectpost__space__professor = user) | Q(post__subjectpost__space__students = user) | Q(comment__post__subjectpost__space__students = user))).distinct().count() | |
66 | - | |
64 | + self.totals['category'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & ((Q(user__is_staff = True) & (Q(post__categorypost__isnull = False) | Q(comment__post__categorypost__isnull = False))) | Q(post__categorypost__space__coordinators = user) | Q(comment__post__categorypost__space__coordinators = user) | Q(post__categorypost__space__subject_category__students = user) | Q(comment__post__categorypost__space__subject_category__students = user) | Q(post__categorypost__space__subject_category__professor = user) | Q(comment__post__categorypost__space__subject_category__professor = user))).distinct().count() | |
65 | + self.totals['subject'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & ((Q(user__is_staff = True) & (Q(post__subjectpost__isnull = False) | Q(comment__post__subjectpost__isnull = False))) | Q(post__subjectpost__space__professor = user) | Q(comment__post__subjectpost__space__professor = user) | Q(post__subjectpost__space__students = user) | Q(comment__post__subjectpost__space__students = user))).distinct().count() | |
66 | + | |
67 | 67 | general_visualizations.update(viewed = True) |
68 | 68 | |
69 | 69 | MuralVisualizations.objects.filter(user = user, viewed = False, comment__post__generalpost__isnull = False).update(viewed = True) |
... | ... | @@ -284,8 +284,8 @@ class CategoryIndex(LoginRequiredMixin, generic.ListView): |
284 | 284 | categories = Category.objects.filter(Q(coordinators__pk = user.pk) | Q(subject_category__professor__pk = user.pk) | Q(subject_category__students__pk = user.pk, visible = True)).distinct() |
285 | 285 | |
286 | 286 | self.totals['general'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(post__generalpost__isnull = False) | Q(comment__post__generalpost__isnull = False))).distinct().count() |
287 | - self.totals['category'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(user__is_staff = True) | Q(post__categorypost__space__coordinators = user) | Q(comment__post__categorypost__space__coordinators = user) | Q(post__categorypost__space__subject_category__students = user) | Q(comment__post__categorypost__space__subject_category__students = user) | Q(post__categorypost__space__subject_category__professor = user) | Q(comment__post__categorypost__space__subject_category__professor = user))).distinct().count() | |
288 | - self.totals['subject'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(post__subjectpost__space__professor = user) | Q(comment__post__subjectpost__space__professor = user) | Q(post__subjectpost__space__students = user) | Q(comment__post__subjectpost__space__students = user))).distinct().count() | |
287 | + self.totals['category'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & ((Q(user__is_staff = True) & (Q(post__categorypost__isnull = False) | Q(comment__post__categorypost__isnull = False))) | Q(post__categorypost__space__coordinators = user) | Q(comment__post__categorypost__space__coordinators = user) | Q(post__categorypost__space__subject_category__students = user) | Q(comment__post__categorypost__space__subject_category__students = user) | Q(post__categorypost__space__subject_category__professor = user) | Q(comment__post__categorypost__space__subject_category__professor = user))).distinct().count() | |
288 | + self.totals['subject'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & ((Q(user__is_staff = True) & (Q(post__subjectpost__isnull = False) | Q(comment__post__subjectpost__isnull = False))) | Q(post__subjectpost__space__professor = user) | Q(comment__post__subjectpost__space__professor = user) | Q(post__subjectpost__space__students = user) | Q(comment__post__subjectpost__space__students = user))).distinct().count() | |
289 | 289 | |
290 | 290 | return categories |
291 | 291 | |
... | ... | @@ -490,8 +490,8 @@ class SubjectIndex(LoginRequiredMixin, generic.ListView): |
490 | 490 | subjects = Subject.objects.filter(Q(category__coordinators__pk = user.pk) | Q(professor__pk = user.pk) | Q(students__pk = user.pk, visible = True)).distinct() |
491 | 491 | |
492 | 492 | self.totals['general'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(post__generalpost__isnull = False) | Q(comment__post__generalpost__isnull = False))).distinct().count() |
493 | - self.totals['category'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(user__is_staff = True) | Q(post__categorypost__space__coordinators = user) | Q(comment__post__categorypost__space__coordinators = user) | Q(post__categorypost__space__subject_category__students = user) | Q(comment__post__categorypost__space__subject_category__students = user) | Q(post__categorypost__space__subject_category__professor = user) | Q(comment__post__categorypost__space__subject_category__professor = user))).distinct().count() | |
494 | - self.totals['subject'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & (Q(post__subjectpost__space__professor = user) | Q(comment__post__subjectpost__space__professor = user) | Q(post__subjectpost__space__students = user) | Q(comment__post__subjectpost__space__students = user))).distinct().count() | |
493 | + self.totals['category'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & ((Q(user__is_staff = True) & (Q(post__categorypost__isnull = False) | Q(comment__post__categorypost__isnull = False))) | Q(post__categorypost__space__coordinators = user) | Q(comment__post__categorypost__space__coordinators = user) | Q(post__categorypost__space__subject_category__students = user) | Q(comment__post__categorypost__space__subject_category__students = user) | Q(post__categorypost__space__subject_category__professor = user) | Q(comment__post__categorypost__space__subject_category__professor = user))).distinct().count() | |
494 | + self.totals['subject'] = MuralVisualizations.objects.filter(Q(user = user) & Q(viewed = False) & ((Q(user__is_staff = True) & (Q(post__subjectpost__isnull = False) | Q(comment__post__subjectpost__isnull = False))) | Q(post__subjectpost__space__professor = user) | Q(comment__post__subjectpost__space__professor = user) | Q(post__subjectpost__space__students = user) | Q(comment__post__subjectpost__space__students = user))).distinct().count() | |
495 | 495 | |
496 | 496 | return subjects |
497 | 497 | |
... | ... | @@ -539,20 +539,20 @@ class SubjectCreate(LoginRequiredMixin, generic.edit.CreateView): |
539 | 539 | |
540 | 540 | self.object.save() |
541 | 541 | |
542 | - #users = User.objects.filter(Q(is_staff = True) | Q(coordinators = cat) | Q(professors__category = cat) | Q(subject_student__category = cat)).exclude(id = self.request.user.id) | |
542 | + users = getSpaceUsers(self.request.user.id, self.object) | |
543 | 543 | entries = [] |
544 | 544 | |
545 | 545 | notify_type = "mural" |
546 | 546 | user_icon = self.object.user.image_url |
547 | - #_view = render_to_string("mural/_view.html", {"post": self.object}, self.request) | |
547 | + _view = render_to_string("mural/_view.html", {"post": self.object}, self.request) | |
548 | 548 | simple_notify = _("%s has made a post in %s")%(str(self.object.user), str(self.object.space)) |
549 | - pathname = reverse("mural:manage_category") | |
549 | + pathname = reverse("mural:manage_subject") | |
550 | 550 | |
551 | - #for user in users: | |
552 | - # entries.append(MuralVisualizations(viewed = False, user = user, post = self.object)) | |
553 | - # Group("user-%s" % user.id).send({'text': json.dumps({"type": notify_type, "subtype": "create_cat", "user_icon": user_icon, "pathname": pathname, "simple": simple_notify, "complete": _view, "cat": slug})}) | |
551 | + for user in users: | |
552 | + entries.append(MuralVisualizations(viewed = False, user = user, post = self.object)) | |
553 | + Group("user-%s" % user.id).send({'text': json.dumps({"type": notify_type, "subtype": "create_sub", "user_icon": user_icon, "pathname": pathname, "simple": simple_notify, "complete": _view, "sub": slug})}) | |
554 | 554 | |
555 | - #MuralVisualizations.objects.bulk_create(entries) | |
555 | + MuralVisualizations.objects.bulk_create(entries) | |
556 | 556 | |
557 | 557 | return super(SubjectCreate, self).form_valid(form) |
558 | 558 | |
... | ... | @@ -594,14 +594,14 @@ class SubjectUpdate(LoginRequiredMixin, generic.UpdateView): |
594 | 594 | |
595 | 595 | self.object.save() |
596 | 596 | |
597 | - #users = User.objects.all().exclude(id = self.request.user.id) | |
597 | + users = getSpaceUsers(self.request.user.id, self.object) | |
598 | 598 | |
599 | 599 | notify_type = "mural" |
600 | 600 | _view = render_to_string("mural/_view.html", {"post": self.object}, self.request) |
601 | - pathname = reverse("mural:manage_category") | |
601 | + pathname = reverse("mural:manage_subject") | |
602 | 602 | |
603 | - #for user in users: | |
604 | - # Group("user-%s" % user.id).send({'text': json.dumps({"type": notify_type, "subtype": "update_cat", "pathname": pathname, "complete": _view, "post_id": self.object.id})}) | |
603 | + for user in users: | |
604 | + Group("user-%s" % user.id).send({'text': json.dumps({"type": notify_type, "subtype": "update_sub", "pathname": pathname, "complete": _view, "post_id": self.object.id})}) | |
605 | 605 | |
606 | 606 | return super(SubjectUpdate, self).form_valid(form) |
607 | 607 | |
... | ... | @@ -631,13 +631,13 @@ class SubjectDelete(LoginRequiredMixin, generic.DeleteView): |
631 | 631 | return context |
632 | 632 | |
633 | 633 | def get_success_url(self): |
634 | - #users = User.objects.all().exclude(id = self.request.user.id) | |
634 | + users = getSpaceUsers(self.request.user.id, self.object) | |
635 | 635 | |
636 | 636 | notify_type = "mural" |
637 | 637 | pathname = reverse("mural:manage_subject") |
638 | 638 | |
639 | - #for user in users: | |
640 | - # Group("user-%s" % user.id).send({'text': json.dumps({"type": notify_type, "subtype": "delete_cat", "pathname": pathname, "post_id": self.object.id})}) | |
639 | + for user in users: | |
640 | + Group("user-%s" % user.id).send({'text': json.dumps({"type": notify_type, "subtype": "delete_sub", "pathname": pathname, "post_id": self.object.id})}) | |
641 | 641 | |
642 | 642 | return reverse_lazy('mural:deleted_post') |
643 | 643 | ... | ... |