// ==UserScript==
// @name Mirkohelper
// @namespace https://www.wykop.pl/ludzie/osael/
// @description Niezbędnik każdego Mirka!
// @author osael
// @version 2.3.13
// @grant none
// @include *wykop.pl*
// @run-at document-end
// ==/UserScript==
//Bazowane na kilku innych dodatkach.
//To jest mój pierwszy skrypt. Powiedz jeżeli coś jest nie tak jak powinno lub mogłobyć zrobione lepiej.
//Podziekowania dla @Ginden oraz @kasper93.
//WERSJA TESTOWA POD NOWY WYPOK
//Reupload & zmiany by @Acrivec
//Pisac smialo o dodanie nowych fajnych
function main() {
//------------ TU SIE DEFINIUJEMY ---------------------
//( ͡° ͜ʖ ͡°)
var MirkoEmotki = [
'( ͡° ͜ʖ ͡°)',
'( ͡~ ͜ʖ ͡°)',
'( ͡° ʖ̯ ͡°)',
'( ͡º ͜ʖ͡º)',
'( ͡°( ͡° ͜ʖ( ͡° ͜ʖ ͡°)ʖ ͡°) ͡°)',
'(⌐ ͡■ ͜ʖ ͡■)',
'(・へ・)',
'ლ(ಠ_ಠ ლ)',
'(╥﹏╥)',
'(╥‿╥)',
'(╯︵╰,)',
'( ͡; ʖ̯ ͡;)',
'( ‾ʖ̫‾)',
'(ღ˘⌣˘ღ)',
'(ʘ‿ʘ)',
'(。◕‿‿◕。)',
'o( ❛ᴗ❛ )o',
'(っ˘ω˘ς )',
'ᕙ(⇀‸↼‶)ᕗ',
'ᕦ(ò_óˇ)ᕤ',
'(✌ ゚ ∀ ゚)☞',
'(╭☞σ ͜ʖσ)╭☞',
'¯\\\\\\_(ツ)\\_/¯ ',
'◕‿◕',
'(゚ー゚)',
'(>ლ)',
'(-‸ლ)',
'﴾͡๏̯͡๏﴿',
'ಠ_ಠ',
'(ಠ‸ಠ)',
'ب_ب',
'ヽ( ͝° ͜ʖ͡°)ノ',
'( ͡°╭╮͡ °)',
'ʕ•ᴥ•ʔ',
'ᶘᵒᴥᵒᶅ',
'ʕ ͡° ᴥ ͡° ʔ ',
'( ˙꒳˙ )',
'ʚ♥̈́ɞ(ू•ᴗ•ू❁) ',
'٩(。•́‿•̀。)۶♥',
'(⌒(oo)⌒)',
'ᄽὁȍ ̪ őὀᄿ',
'( ̄෴ ̄)',
'ヽ( ͠°෴ °)ノ',
'(づ•﹏•)づ',
'(づ•‿•)づ',
'(ง ͠° ͟ل͜ ͡°)ง',
'ᕕ(ᐛ)ᕗ ',
''
];
//Emotki proponowne przez mirki na #mirkohelper
var MirkoEmotkiUsr = [
'( ͡€ ͜ʖ ͡€)',
'ლ(́◉◞౪◟◉‵ლ)',
'(。ヘ°)',
'(︶︹︺)',
'(⌐ ͡■ ͟ʖ ͡■)',
'(ᵔᴥᵔ)',
'( ̄ᴥ ̄)',
'(∪_∪)。。。zzz',
'( ͡~ ͜ʖ ͡~) ',
'ヽ༼ຈل͜ຈ༽ノ',
'(¬‿¬)',
'(ノ´ヮ´)ノ*:・゚✧',
'ヾ(⌐■_■)ノ♪',
'( ˘ ³˘)♥',
'( ง ͡°╭͜ʖ╮͡° ) ง',
'(ง •̀_•́)ง ',
'( ˘▽˘)っ♨',
'(ง ͠° ͟ʖ ͡°)ง',
'(╯°□°)╯︵ ┻━┻',
'┬──┬◡ノ(° -°ノ)',
'(╯°□°)╯ /(.□. \\)',
'ノ┬─┬ノ ︵ ( \\o°o)\\',
'(〃^▽^〃)',
'꧁',
'꧂'
];
var MirkoEmotkiBig = [
'( ͡° ͜ʖ ͡°)\n( ͡° ͜ʖ ͡°)ノ⌐■-■\n(⌐ ͡■ ͜ʖ ͡■)',
'┬┴┬┴┤ ( ͡° ͜ʖ├┬┴┬┴',
'╚═( ͡° ͜ʖ ͡°)═╝\n╚═(███)═╝\n╚═(███)═╝\n.╚═(███)═╝\n..╚═(███)═╝\n…╚═(███)═╝\n…╚═(███)═╝\n..╚═(███)═╝\n.╚═(███)═╝\n╚═(███)═╝\n.╚═(███)═╝\n..╚═(███)═╝\n…╚═(███)═╝\n…╚═(███)═╝\n…..╚(███)╝\n……╚(██)╝\n………(█)\n……….*',
' ∧__∧\n ( ͡° ͜ʖ ͡°)\n ⊂ つ\n (つ ノ\n (ノ\n \ ☆\n | ☆\n (⌒ ⌒ヽ /\n \ (´⌒ ⌒ ⌒ヾ /\n (’⌒ ; ⌒ ::⌒ )\n (´ ) ::: ) /\n ☆─ (´⌒;: ::⌒`) :; )\n (⌒:: :: ::⌒ )\n / ( ゝ ヾ 丶 ソ ─',
'█■█ █ ▀█▀'
];
var MirkoEmotkiBigDesc = [
'(⌐ ͡■ ͜ʖ ͡■)',
'( ͡° ͜ʖ├┬',
'╚═( ͡° ͜ʖ ͡°)═╝',
'( ͡° ͜ʖ ͡°)',
'HIT'
];
var MirkoSmieszki = '';
var MirkoSmieszkiusr = '';
var MirkoSmieszkiBig = [
];
//A tu kolor linkow. Potrzebne pod nocny/dzienny
var classColor = $('a.editlenny').css('color');
//CSSki
$('<style type=\'text/css\'> .color\t\t\t{ color:' + classColor + ' !important;\t\t} </style>').appendTo('head');
$('<style type=\'text/css\'> .mirkosmieszek\t{ min-width: 30px; float: left; padding: 0 5px 0px 0px;} </style>').appendTo('head');
$('<style type=\'text/css\'> #mirkohelper\t\t{ position: absolute; width: 500px; height: 140px !important; line-height: 21px !important; padding: 0px !important; min-height: 0px !important;\t\t} </style>').appendTo('head');
$('<style type=\'text/css\'> #mirki\t\t\t{ text-align: justify; border: 0px !important; padding: 0px !important; margin: 4px; } </style>').appendTo('head');
$('<style type=\'text/css\'> #mirkiusr\t\t{ text-align: justify; border: 0px !important; padding: 0px !important; margin: 4px; display: none;\t\t} </style>').appendTo('head');
$('<style type=\'text/css\'> div#halp\t\t\t{ border: 0px !important; padding: 0px !important; margin: 4px; display: none; \t\t} </style>').appendTo('head');
$('<style type=\'text/css\'> .mirkoButtons \t{ position: absolute; float: left; z-index: 101; bottom: -4px; left: 3px; font-size: 9px;\t\t} </style>').appendTo('head');
$('<style type=\'text/css\'> .mirkoFooter\t\t{ position: absolute; font-size: 9px; right: 3px; bottom: -3px; \t} </style>').appendTo('head');
//Mielenie emotek
MirkoEmotki.forEach(function (el) {
MirkoSmieszki += '<a href="#" class="mirkosmieszek color" data-smieszek="' + el + '">' + el + '</a>';
});
MirkoEmotkiUsr.forEach(function (el) {
MirkoSmieszkiusr += '<a href="#" class="mirkosmieszek color" data-smieszek="' + el + '">' + el + '</a>';
});
$.map(MirkoEmotkiBig, function (el, idx) {
var desc = MirkoEmotkiBigDesc[idx];
MirkoSmieszkiBig += '<a href="#" class="mirkosmieszek color" data-smieszek="' + el + '" title="' + el + '">' + desc + '</a>';
});
/*MirkoEmotkiBig.forEach(function(el){
MirkoSmieszkiBig += '<a href="#" class="mirkosmieszek color" data-smieszek="'+el+'">'+el+'</a>';
});
*/
//DA JOB
if (window.location.href.indexOf('ulubione') < 0) {
//Usuwamy Maciejowego helpera / Sorry Kaciej
$('div.grid-main div.ddC div.dropdown table').remove();
//I dodajemy prawilny MirkoHelper
$('div.grid-main div.ddC div.dropdown').prepend('<div id="mirkohelper" class="summary"></div>');
$('div#mirkohelper').append('<div id="mirki">' + MirkoSmieszki + '</div>');
$('div#mirkohelper').append('<div id="mirkiusr" class="bgfff rel">' + MirkoSmieszkiusr + '</div>');
$('div#mirkohelper').append('<div id="moar" class="bgfff rel"><div id="halp">' + MirkoSmieszkiBig + '</div></div>');
$('div#mirkohelper').prepend('<span class="mirkoButtons" style=""><a href"#" class="color" id="halp">BIG</a> <a href="#" class="color" id="moar">WINCYJ!</a></span>');
$('div#mirkohelper').append('<span class="mirkoFooter"><a class="color" href="http://www.wykop.pl/dodatki/pokaz/291/" title="Strona MirkoHelpera" target="_blank">MirkoHelper</a> by <a class="color" href="http://www.wykop.pl/ludzie/Osael/" target="_blank" title="( ͡° ͜ʖ ͡°) usuń konto">@osael</a></span>');
} //A teraz obsluga tego towarzystwa
//Wstawianie wybranej emotki tam gdzie jest kursor
$(document).on('click', 'a.mirkosmieszek', function () {
var smieszko = ($(this).attr('data-smieszek'));
jQuery(this).closest('form').find('textarea').insertAtCaret(smieszko + ' ');
return false;
});
//chowanie MOAR! pokazywanie WINCYJ! i w ogóle dziwki, koks i lasery
$(document).on('click', 'a#halp', function () {
if ($('div#mirki').is(':visible')) {
$('div#mirki').hide();
$('div#mirkiusr').hide();
$('div#halp').show();
} else if ($('div#mirkiusr').is(':visible')) {
$('div#mirkiusr').hide();
$('div#mirki').hide();
$('div#halp').show();
} else {
$('div#halp').hide();
$('div#mirki').show();
}
return false;
});
//niezle pojebane, nie? ale dziala! :D
$(document).on('click', 'a#moar', function () {
if ($('div#mirki').is(':visible')) {
$('div#mirki').hide();
$('div#mirkiusr').show();
} else if ($('div#mirkiusr').is(':visible')) {
$('div#mirkiusr').hide();
$('div#mirki').show();
} else {
$('div#mirkiusr').show();
}
$('div#halp').hide();
return false;
});
//Skrypcik na wstawianie MirkoEmotki gdzie jest kursor
jQuery.fn.extend({
insertAtCaret: function (myValue) {
return this.each(function (i) {
if (document.selection) {
//For browsers like Internet Explorer
this.focus();
var sel = document.selection.createRange();
sel.text = myValue;
this.focus();
}
else if (this.selectionStart || this.selectionStart == '0') {
//For browsers like Firefox and Webkit based
var startPos = this.selectionStart;
var endPos = this.selectionEnd;
var scrollTop = this.scrollTop;
this.value = this.value.substring(0, startPos) + myValue + this.value.substring(endPos, this.value.length);
this.focus();
this.selectionStart = startPos + myValue.length;
this.selectionEnd = startPos + myValue.length;
this.scrollTop = scrollTop;
} else {
this.value += myValue;
this.focus();
}
});
}
});
}
if (typeof $ == 'undefined') {
if (typeof unsafeWindow !== 'undefined' && unsafeWindow.jQuery) {
// Firefox
var $ = unsafeWindow.jQuery;
main();
} else {
// Chrome
addJQuery(main);
}
} else {
// Opera >.>
main();
}//what is this i dont even
function addJQuery(callback) {
var script = document.createElement('script');
script.textContent = '(' + callback.toString() + ')();';
document.body.appendChild(script);
}