Registriert seit: 04.01.2009
|
#1
04.01.2009, 19:43
Nach oben
|
|
Zitat:
// ==UserScript==
// @name DS Smilies-BB-Codes-List
// @include http://*.die-staemme.de/*
// @exclude http://forum.die-staemme.de/*
// ==/UserScript==
// {$ dsScript $}
// version = 1.5
// author = (c) C1B1SE
// clients = firefox , opera
// areas = .de
// worlds = all
// premium = works
// description[de] = F�gt eine Auswahlfeld im Internen Forum hinzu, damit man Smilies ausw�hlen kann.
// screenshot[0] = http://c1b1se.c1.funpic.de/newhp_use...bb-codes_0.png
// {$ /dsScript $}
var dropdown = false;
var smilies = new Array(
'http://forum.die-staemme.de/images/phpbb_smilies/icon_biggrin.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_smile.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_wink.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_cool.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_razz.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_eek.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_surprised.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_twisted.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_evil.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_confused.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_neutral.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_sad.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_cry.gif',
'http://forum.die-staemme.de/images/phpbb_smilies/icon_mrgreen.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em16.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em17.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em18.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em19.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em1500.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em2100.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em2200.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em2300.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em2400.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em2700.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em2700.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em2900.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em3000.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em3300.gif',
'http://twbbcodes.pytalhost.com/images/smileys/em3400.gif');
var div = document.createElement('div');
if(dropdown)
{
var select = document.createElement('select');
var option = document.createElement('option');
option.setAttribute('value','default');
option.appendChild(document.createTextNode(' Smilies'));
select.appendChild(option);
for(var i = 0; i < smilies.length; i++)
{
var img = new Image();
img.src = smilies[i];
var option = document.createElement('option');
option.setAttribute('value','[img]'+smilies[i]+'[/img]');
option.appendChild(img);
select.appendChild(option);
}
addEvent(select,'change',function() { insert(this.options[this.selectedIndex].value,''); } );
addEvent(select,'mouseout',function() { setSelect(this,'default'); } );
div.appendChild(select);
}
else
{
var a = document.createElement('a');
a.href = '#';
a.appendChild(document.createTextNode('Smilies '));
addEvent(a,'click',function() { if(document.getElementById('selectDiv').style.disp lay == 'none') document.getElementById('selectDiv').style.display = 'block'; else document.getElementById('selectDiv').style.display = 'none'; return false; } );
var img = new Image();
img.src = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAADAQMAAAB h+Fe7AAAABlBMVEX///8AAABVwtN+AAAAAXRS'+
'TlMAQObYZgAAABdJREFUeF4FwDERAAAAAcCPIqL4RmcqBwZOA Ykhss5lAAAAAElFTkSuQmCC';
img.alt = 'Ausklappen';
a.appendChild(img);
div.appendChild(a);
var div2 = document.createElement('div');
div2.id = 'selectDiv';
div2.style.display = 'none';
div2.style.maxHeight = '200px';
div2.style.minWidth = '50px';
div2.style.overflow = 'auto';
div2.style.position = 'absolute';
div2.style.background = 'white';
div2.style.border = '1px grey solid';
for(var i = 0; i < smilies.length; i++)
{
var img = new Image();
img.src = smilies[i];
var option = document.createElement('div');
option.setAttribute('title','[img]'+smilies[i]+'[img]');
addEvent(option,'click',function() { insert(this.title,''); document.getElementById('selectDiv').style.display = 'none'; });
option.appendChild(img);
div2.appendChild(option);
}
div.appendChild(div2);
}
var kasten = new getTextArea();
kasten.parentNode.insertBefore(div,kasten);
function setSelect(e,value)
{
var type = value;
for (i = 0; i < e[0].length; i++)
if(e.options[i].selected == true)
e.options[i].selected = false;
for (i = 0; i < e.length; i++)
if(e.options[i].value == type)
e.options[i].selected = true;
}
// Stolen Code:
// http://aktuell.de.selfhtml.org/artik...script/bbcode/
function insert(aTag, eTag) {
var input=getTextArea();
input.focus();
if(typeof input.selectionStart != 'undefined')
{
// Einfügen des Formatierungscodes //
var start = input.selectionStart;
var end = input.selectionEnd;
var insText = input.value.substring(start, end);
input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
// Anpassen der Cursorposition //
var pos;
if (insText.length == 0) {
pos = start + aTag.length;
}
else
{
pos = start + aTag.length + insText.length + eTag.length;
}
input.selectionStart = pos;
input.selectionEnd = pos;
}
}
// Stolen Code:
// http://userscripts.org/scripts/review/24251
function getTextArea(){
var kasten;
kasten = document.getElementsByName("message")[0];
if (!kasten){
kasten = document.getElementsByName("text")[0];
}
if (!kasten){
kasten = document.getElementsByName("intern")[0];
}
if (!kasten){
kasten = document.getElementsByName("personal_text")[0];
}
if (!kasten){
kasten = document.getElementsByName("desc_text")[0];
}
if (!kasten){
kasten = document.getElementsByName("memo")[0];
}
return kasten;
}
// Stolen Code:
// Flexible Javascript Events by John Resig (ejohn.org)
// http://ejohn.org/projects/flexible-javascript-events/
function addEvent( obj, type, fn ) {
if ( obj.attachEvent ) {
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
obj.attachEvent( 'on'+type, obj[type+fn] );
} else
obj.addEventListener( type, fn, false );
}
|
FRAGE: Ist das Skript erlaubt?
| |
|