Source code of Leftypol imageboard
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
1.4 KiB

/*
* flag-preview.js - Add preview of user flag.
*
* Usage:
* $config['additional_javascript'][] = 'js/jquery.min.js';
* $config['additional_javascript'][] = 'js/flag-preview.js';
*
*/
function getFlagUrl(value){
// No flag or None flag
if(!value || value == "") {
return "/static/blank.gif"
} else {
return "/static/flags/"+value+".png"
}
}
// Attempt to load flag (see js/save-user_flag.js)
function loadFlag () {
var flagStorage = "flag_" + board_name;
return window.localStorage.getItem(flagStorage);
}
function updatePreviewWithSelected(img, select) {
img.attr("src", getFlagUrl(select.find(":selected").val()));
}
$(document).ready(function(){
var flagImg = $('#flag_preview');
var flagSelect = $('#user_flag');
var loaded = loadFlag();
flagImg.attr("src", getFlagUrl(loaded));
flagSelect.change(function() {
flagImg.attr("src", getFlagUrl($(this).find(":selected").val()));
});
});
$(window).on('quick-reply', function() {
var flagImg = $('#flag_preview');
var quickReplyFlagImg = $('form#quick-reply img[name="flag_preview"]')
var loaded = loadFlag();
quickReplyFlagImg.attr("src", getFlagUrl(loaded));
$('form#quick-reply select[name="user_flag"]').change(function() {
updatePreviewWithSelected(quickReplyFlagImg,$(this));
updatePreviewWithSelected(flagImg,$(this));
});
$('#user_flag').change(function() {
updatePreviewWithSelected(quickReplyFlagImg,$(this));
updatePreviewWithSelected(flagImg,$(this));
});
});