/**************************************/
/******** Függvények *************/
/**************************************/
/* JQuery kurzor pozicionálás */
$.fn.setCursorPosition = function(pos) {
this.each(function(index, elem) {
if (elem.setSelectionRange) {
elem.setSelectionRange(pos, pos);
} else if (elem.createTextRange) {
var range = elem.createTextRange();
range.collapse(true);
range.moveEnd('character', pos);
range.moveStart('character', pos);
range.select();
}
});
return this;
};
/* BBCode beszúrás */
function insertBB(elementID, _array) {
var openTag = _array[0];
var closeTag = _array[1];
var textArea = $('#' + elementID);
var len = textArea.val().length;
var start = textArea[0].selectionStart;
var end = textArea[0].selectionEnd;
var selectedText = textArea.val().substring(start, end);
var replacement = openTag + selectedText + closeTag;
textArea.val(textArea.val().substring(0, start) + replacement + textArea.val().substring(end, len));
textArea.setCursorPosition(5);
}
/* String beszúrás */
function insertText(elementID, _string) {
var textArea = $('#' + elementID);
textArea.val(textArea.val() + _string);
textArea.setCursorPosition(textArea.val().length);
}
/* Új gomb beillesztés */
function newButton(_btnName, _btnPosAfter, _method, _msgString) {
$('#form-post textarea').attr('id', 'message');
$('#forum-codes button[data-codes*="' + _btnPosAfter + '"]').after('<button class="' + _btnName + ' btn btn-info btn-sg smallButton" data-codes="' + _btnName + '" type="button">' + _btnName + '</button>');
$('#forum-codes button.' + _btnName).click(function() {
if (_method == 'insert') insertText("message", _msgString);
else if (_method == 'bb') insertBB("message", _msgString);
});
}
/* Tiltólista */
function blockUsers(_userlist) {
var bl_users = _userlist;
bl_users = bl_users.split(',');
var u = $('#forum-posts-list').attr('data-info').replace(/\{"user_id":"|","topic_id".*/img, "");
if (bl_users.indexOf(u) != -1) {
$('#content').remove();
}
$('.header a.name').each(function() {
var a = $(this).attr('href').replace(/\/felhasznalo\//img, "");
if (bl_users.indexOf(a) != -1) {
$(this).parent().parent().remove();
}
});
}
/*********************************/
/******** Hívások *************/
/*********************************/
/*
@function newButton
@param _btnName str - a gomb neve
@param _btnPosAfter str - melyik gomb után jelenjen meg
@param _method str - 'insert' vagy 'bb' (BBcode)
@param _msgString mixed str/array - mit írjon a szövegmezőbe ( BBcode esetén pl: ['',''] )
*/
newButton('off', 'spoiler', 'bb', ['','']);
newButton('gomb_neve', 'spoiler', 'insert', 'beszurom ezt a szoveget');
newButton('maximus', 'spoiler', 'insert', 'aláírás: Maximus');
/* user id felsorolas: blockUsers('0123456789,0123456789,0123456789'); */
blockUsers('');