Show More
@@ -0,0 +1,58 b'' | |||
|
1 | {% extends "boards/base.html" %} | |
|
2 | ||
|
3 | {% load i18n %} | |
|
4 | {% load cache %} | |
|
5 | {% load static from staticfiles %} | |
|
6 | {% load board %} | |
|
7 | ||
|
8 | {% block head %} | |
|
9 | <title>Neboard - {{ thread.get_opening_post.get_title }}</title> | |
|
10 | {% endblock %} | |
|
11 | ||
|
12 | {% block content %} | |
|
13 | {% spaceless %} | |
|
14 | {% get_current_language as LANGUAGE_CODE %} | |
|
15 | ||
|
16 | <script src="{% static 'js/thread.js' %}"></script> | |
|
17 | ||
|
18 | {% cache 600 thread_gallery_view thread.id thread.last_edit_time LANGUAGE_CODE %} | |
|
19 | <div class="image-mode-tab"> | |
|
20 | <a href="{% url 'thread' thread.get_opening_post.id %}">{% trans 'Normal mode' %}</a>, | |
|
21 | <a class="current_page" href="{% url 'thread_mode' thread.get_opening_post.id 'gallery' %}">{% trans 'Gallery mode' %}</a> | |
|
22 | </div> | |
|
23 | ||
|
24 | <div id="posts-table"> | |
|
25 | {% for post in thread.get_replies %} | |
|
26 | {% if post.image %} | |
|
27 | <a | |
|
28 | class="thumb" | |
|
29 | href="{{ post.image.url }}"><img | |
|
30 | src="{{ post.image.url_200x150 }}" | |
|
31 | alt="{{ post.id }}" | |
|
32 | width="{{ post.image_pre_width }}" | |
|
33 | height="{{ post.image_pre_height }}" | |
|
34 | data-width="{{ post.image_width }}" | |
|
35 | data-height="{{ post.image_height }}"/> | |
|
36 | </a> | |
|
37 | {% endif %} | |
|
38 | {% endfor %} | |
|
39 | </div> | |
|
40 | {% endcache %} | |
|
41 | ||
|
42 | {% endspaceless %} | |
|
43 | {% endblock %} | |
|
44 | ||
|
45 | {% block metapanel %} | |
|
46 | ||
|
47 | {% get_current_language as LANGUAGE_CODE %} | |
|
48 | ||
|
49 | <span class="metapanel" data-last-update="{{ last_update }}"> | |
|
50 | {% cache 600 thread_meta thread.last_edit_time moderator LANGUAGE_CODE %} | |
|
51 | <span id="reply-count">{{ thread.get_reply_count }}</span> {% trans 'replies' %}, | |
|
52 | <span id="image-count">{{ thread.get_images_count }}</span> {% trans 'images' %}. | |
|
53 | {% trans 'Last update: ' %}{{ thread.last_edit_time }} | |
|
54 | [<a href="rss/">RSS</a>] | |
|
55 | {% endcache %} | |
|
56 | </span> | |
|
57 | ||
|
58 | {% endblock %} |
@@ -23,33 +23,6 b'' | |||
|
23 | 23 | for the JavaScript code in this page. |
|
24 | 24 | */ |
|
25 | 25 | |
|
26 | function addGalleryPanel() { | |
|
27 | var gallery = $('a[class="thumb"]').clone(true), | |
|
28 | normal = $('.post').clone(true); | |
|
29 | ||
|
30 | $('.navigation_panel').filter(':first').after( | |
|
31 | '<div class="image-mode-tab" role="radiogroup" aria-label="Image mode2">' + | |
|
32 | '<label><input type="radio" class="image-mode-normal" name="image-mode" value="0" checked="checked"/>'+ gettext('Normal') +'</label>' + | |
|
33 | '<label><input type="radio" class="image-mode-table" name="image-mode" value="1"/>'+ gettext('Gallery') +'</label>' + | |
|
34 | '</div>' | |
|
35 | ); | |
|
36 | ||
|
37 | $('input[name="image-mode"]').change(function() { | |
|
38 | //gallery mode | |
|
39 | if($(this).val() === '1') { | |
|
40 | $('.thread').replaceWith( | |
|
41 | $('<div id="posts-table"></div>').append(gallery) | |
|
42 | ); | |
|
43 | } | |
|
44 | //normal mode | |
|
45 | else { | |
|
46 | $('#posts-table').replaceWith( | |
|
47 | $('<div class="thread"></div>').append(normal) | |
|
48 | ); | |
|
49 | } | |
|
50 | }); | |
|
51 | } | |
|
52 | ||
|
53 | 26 | function moveCaretToEnd(el) { |
|
54 | 27 | if (typeof el.selectionStart == "number") { |
|
55 | 28 | el.selectionStart = el.selectionEnd = el.value.length; |
@@ -72,10 +45,3 b' function addQuickReply(postId) {' | |||
|
72 | 45 | |
|
73 | 46 | $("html, body").animate({ scrollTop: $(textAreaId).offset().top }, "slow"); |
|
74 | 47 | } |
|
75 | ||
|
76 | ||
|
77 | ||
|
78 | $(document).ready(function(){ | |
|
79 | addGalleryPanel(); | |
|
80 | initAutoupdate(); | |
|
81 | }); |
@@ -185,4 +185,8 b' function showNewPostsTitle() {' | |||
|
185 | 185 | document.removeEventListener('visibilitychange', null); |
|
186 | 186 | }); |
|
187 | 187 | } |
|
188 | } No newline at end of file | |
|
188 | } | |
|
189 | ||
|
190 | $(document).ready(function(){ | |
|
191 | initAutoupdate(); | |
|
192 | }); |
@@ -6,7 +6,7 b'' | |||
|
6 | 6 | {% load board %} |
|
7 | 7 | |
|
8 | 8 | {% block head %} |
|
9 |
<title>Neboard - {{ thread.get_ |
|
|
9 | <title>Neboard - {{ thread.get_opening_post.get_title }}</title> | |
|
10 | 10 | {% endblock %} |
|
11 | 11 | |
|
12 | 12 | {% block content %} |
@@ -17,6 +17,12 b'' | |||
|
17 | 17 | <script src="{% static 'js/thread.js' %}"></script> |
|
18 | 18 | |
|
19 | 19 | {% cache 600 thread_view thread.id thread.last_edit_time moderator LANGUAGE_CODE %} |
|
20 | ||
|
21 | <div class="image-mode-tab"> | |
|
22 | <a class="current_page" href="{% url 'thread' thread.get_opening_post.id %}">{% trans 'Normal mode' %}</a>, | |
|
23 | <a href="{% url 'thread_mode' thread.get_opening_post.id 'gallery' %}">{% trans 'Gallery mode' %}</a> | |
|
24 | </div> | |
|
25 | ||
|
20 | 26 | {% if bumpable %} |
|
21 | 27 | <div class="bar-bg"> |
|
22 | 28 | <div class="bar-value" style="width:{{ bumplimit_progress }}%" id="bumplimit_progress"> |
@@ -31,6 +31,7 b" urlpatterns = patterns(''," | |||
|
31 | 31 | |
|
32 | 32 | # /boards/thread/ |
|
33 | 33 | url(r'^thread/(?P<post_id>\w+)/$', views.thread, name='thread'), |
|
34 | url(r'^thread/(?P<post_id>\w+)/(?P<mode>\w+)/$', views.thread, name='thread_mode'), | |
|
34 | 35 | url(r'^settings/$', views.settings, name='settings'), |
|
35 | 36 | url(r'^tags/$', views.all_tags, name='tags'), |
|
36 | 37 | url(r'^captcha/', include('captcha.urls')), |
@@ -171,7 +171,7 b' def tag(request, tag_name, page=0):' | |||
|
171 | 171 | context) |
|
172 | 172 | |
|
173 | 173 | |
|
174 | def thread(request, post_id): | |
|
174 | def thread(request, post_id, mode='normal'): | |
|
175 | 175 | """Get all thread posts""" |
|
176 | 176 | |
|
177 | 177 | if utils.need_include_captcha(request): |
@@ -211,7 +211,15 b' def thread(request, post_id):' | |||
|
211 | 211 | context["last_update"] = _datetime_to_epoch(thread_to_show.last_edit_time) |
|
212 | 212 | context["thread"] = thread_to_show |
|
213 | 213 | |
|
214 | return render(request, 'boards/thread.html', context) | |
|
214 | if 'normal' == mode: | |
|
215 | document = 'boards/thread.html' | |
|
216 | elif 'gallery' == mode: | |
|
217 | document = 'boards/thread_gallery.html' | |
|
218 | else: | |
|
219 | pass | |
|
220 | # TODO raise 404 error | |
|
221 | ||
|
222 | return render(request, document, context) | |
|
215 | 223 | |
|
216 | 224 | |
|
217 | 225 | def login(request): |
General Comments 0
You need to be logged in to leave comments.
Login now