thread.js
56 lines
| 1.7 KiB
| application/javascript
|
JavascriptLexer
rt@lightning
|
r253 | function addGalleryPanel() { | ||
var gallery = $('a[class="thumb"]').clone(true), | ||||
normal = $('.post').clone(true); | ||||
neko259
|
r66 | |||
rt@lightning
|
r253 | $('.navigation_panel').filter(':first').after( | ||
'<div class="image-mode-tab" role="radiogroup" aria-label="Image mode2">' + | ||||
'<label><input type="radio" class="image-mode-normal" name="image-mode" value="0" checked="checked"/>'+ gettext('Normal') +'</label>' + | ||||
'<label><input type="radio" class="image-mode-table" name="image-mode" value="1"/>'+ gettext('Gallery') +'</label>' + | ||||
'</div>' | ||||
); | ||||
rt@lightning
|
r252 | |||
rt@lightning
|
r253 | $('input[name="image-mode"]').change(function() { | ||
//gallery mode | ||||
if($(this).val() === '1') { | ||||
rt@lightning
|
r256 | $('.thread').replaceWith( | ||
rt@lightning
|
r253 | $('<div id="posts-table"></div>').append(gallery) | ||
neko259
|
r66 | ); | ||
} | ||||
rt@lightning
|
r253 | //normal mode | ||
else { | ||||
$('#posts-table').replaceWith( | ||||
rt@lightning
|
r256 | $('<div class="thread"></div>').append(normal) | ||
rt@lightning
|
r253 | ); | ||
} | ||||
}); | ||||
neko259
|
r66 | } | ||
Pavel Ryapolov
|
r106 | function moveCaretToEnd(el) { | ||
if (typeof el.selectionStart == "number") { | ||||
el.selectionStart = el.selectionEnd = el.value.length; | ||||
} else if (typeof el.createTextRange != "undefined") { | ||||
el.focus(); | ||||
var range = el.createTextRange(); | ||||
range.collapse(false); | ||||
range.select(); | ||||
} | ||||
} | ||||
neko259
|
r97 | function addQuickReply(postId) { | ||
var textToAdd = '>>' + postId + '\n\n'; | ||||
Pavel Ryapolov
|
r107 | var textAreaId = '#id_text'; | ||
$(textAreaId).val($(textAreaId).val()+ textToAdd); | ||||
neko259
|
r97 | |||
Pavel Ryapolov
|
r106 | var textarea = document.getElementById('id_text'); | ||
Pavel Ryapolov
|
r107 | $(textAreaId).focus(); | ||
Pavel Ryapolov
|
r106 | moveCaretToEnd(textarea); | ||
Pavel Ryapolov
|
r107 | $("html, body").animate({ scrollTop: $(textAreaId).offset().top }, "slow"); | ||
neko259
|
r97 | } | ||
ritsufag
|
r118 | |||
neko259
|
r66 | $(document).ready(function(){ | ||
rt@lightning
|
r253 | addGalleryPanel(); | ||
ritsufag
|
r118 | addRefLinkMap(); | ||
Pavel Ryapolov
|
r106 | }); | ||