User:Ultimate Dark Carnage/wikia.js

importArticles({   type: 'style',    articles: [        'User:Ultimate_Dark_Carnage/advancedui.css',        'User:Ultimate_Dark_Carnage/toolbar.css'    ] }/*, {    type: 'script',    articles: [        'u:dev:DoTheHarlemShake/code.js'    ] }*/);

// Add custom module function createModal($title, $modal_html, $config){ if (!$('#' + config.id).length) $('.WikiaSiteWrapper').append(           $(' ')            .addClass('modal-blackout modal-wrapper')            .on('click', function(event){ if (!$(event.target).is('.modal-body, .modal-body *')){ $close_modal($('.modal-wrapper').attr('id'), function(modal){                       return this;                    }); }           })            .html( $(' ')               .addClass('modal-body _modal') .attr({ 'id': $config.id || 'custom-modal-body', 'data-title': $title }) .html(function{                   var $header =                         $(' ')                        .addClass('modal-header')                        .html([ $(' ').text($title), $('') .attr('href', '#') .attr('id', 'close-modal') .addClass('close-modal') .text('✕') .on('click', function(event){                               $close_modal($('.modal-wrapper').attr('id'), function(modal){ return this; });                           })                        ]),                        $content =                        $(' ')                        .addClass('modal-content')                        .html($modal_html || 'Test'),                        $footer =                        $(' ')                        .addClass('modal-footer right')                        .html(function{ var $buttons = $config.buttons, buttons = [], def_func = function(modal){ return this; };                           for (var btn in $buttons){ var $b = $('') .addClass('modal-button' + (($buttons[btn].classNames.length) ? ' ' + $buttons[btn].classNames.join(' ') : '')) .attr('id', $buttons[btn].id) .text(btn) .on('click', $close_modal($('.modal-wrapper').attr('id'), $buttons[btn].action || def_func)); buttons[buttons.length] = $b; }                           return buttons; });                   return [$header, $content, $footer];                }) )       );    var $close_modal = $close_modal || function(id, action){ var $modal = null; if (!jQuery) $modal = document.getElementById(id); else $modal = $('#' + id); if (!jQuery){ if ($modal.className.indexOf('modal-wrapper') > -1){ var parent = $modal.parentElement || $modal.parentNode; parent.removeChild($modal); } else return false; } else { if ($modal.hasClass('modal-wrapper')){ $modal.remove; }       }        if (action instanceof Function) Function.prototype.apply.call(action, window, [$modal]); }; }

Carnage.extendObj = function(obj1, obj2){ if (typeof obj1 == "object"){ for (var prop in obj2){ if (obj2.hasOwnProperty(prop)){ obj1[prop] = obj2[prop]; }       }        if (typeof obj2 == "object") delete obj2; } else if (typeof obj1 == "undefined"){ obj1 = obj2; if (typeof obj2 == "object") delete obj2; return obj1; } };

Carnage.circular = function(elem, parent){ var e = (elem) ? elem : ((parent) ? parent.getElementsByTagName('li') : ''); if (e && e.length > 5){ var deg_val = 360/e.length; if (Array.forEach) Array.prototype.forEach.call(e, function(el, i){           var deg = Math.round(deg_val * i),                s = document.querySelector(el);            s.style.webkitTransform = 'rotate(' + deg + 'deg)';            s.style.mozTransform = 'rotate(' + deg + 'deg)';            s.style.msTransform = 'rotate(' + deg + 'deg)';            s.style.oTransform = 'rotate(' + deg + 'deg)';            s.style.transform = 'rotate(' + deg + 'deg)';            if (deg > 90 && deg < 270){                var l = el.getElementsByTagName('a')[0] || el.children[0];                if (l){                    l.style.webkitTransform = 'rotate(' + 180 + 'deg)';                    l.style.mozTransform = 'rotate(' + 180 + 'deg)';                    l.style.msTransform = 'rotate(' + 180 + 'deg)';                    l.style.oTransform = 'rotate(' + 180 + 'deg)';                    l.style.transform = 'rotate(' + 180 + 'deg)'; }           }        });        else {            for (var i = 0; i < e.length; i++){                var el = e[i];                var deg = Math.round(deg_val * i),                s = document.querySelector(el);                s.style.webkitTransform = 'rotate(' + deg + 'deg)';                s.style.mozTransform = 'rotate(' + deg + 'deg)';                s.style.msTransform = 'rotate(' + deg + 'deg)';                s.style.oTransform = 'rotate(' + deg + 'deg)';                s.style.transform = 'rotate(' + deg + 'deg)';                if (deg > 90 && deg < 270){                    var l = e.getElementsByTagName('a')[0];                    if (l){                        l.style.webkitTransform = 'rotate(' + 180 + 'deg)';                        l.style.mozTransform = 'rotate(' + 180 + 'deg)';                        l.style.msTransform = 'rotate(' + 180 + 'deg)';                        l.style.oTransform = 'rotate(' + 180 + 'deg)'; l.style.transform = 'rotate(' + 180 + 'deg)'; }               }            }        }    } };

Carnage.animatedSubnav = function{ var el = $('.WikiHeader > nav .subnav-2 li, .wikia-menu-button .drop, .wikia-menu-button.combined, .WikiaBarWrapper .mytools'); el.each(function{       if ($(this).is('.mytools') === true){            $(this).hover(function slideUp{ if ($(this).children('ul.tools-menu').is(':hidden') === true){ $(this).children('ul.tools-menu').animate({                       'bottom': '22px'                    }).fadeIn; }           }, function slideDown{ if ($(this).children('ul.tools-menu').is(':hidden') === false){ $(this).children('ul.tools-menu').animate({                       'bottom': '0'                    }).fadeOut; }           });        } else if ($(this).is('.wikia-menu-button .drop') === true){            $(this).click(function toggleWikiaMenuElement{ var menu_button = $(this).parent; if (menu_button.children('.WikiaMenuElement').is(':hidden') === true){ menu_button.children('.WikiaMenuElement').animate({                       'top': '19px'                    }).fadeIn; } else { menu_button.children('.WikiaMenuElement').animate({                       'top': '0'                    }).fadeOut; }           });        } else {            $(this).hover(function slideDown{ if ($(this).children('.subnav.subnav-3').is(':hidden') === true){ $(this).children('.subnav.subnav-3').animate({                       'top': '28px',                        'opacity': '1'                    }).fadeIn; }           }, function slideUp{ if ($(this).children('.subnav.subnav-3').is(':hidden') === false){ $(this).children('.subnav.subnav-3').animate({                       'top': '0',                        'opacity': '0'                    }).fadeOut; }           });        }    }); };

$(document).ready(function{   Carnage.init; });

// User Data Script $(function{   if (!$('link[href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css"]').length){ // Check to see that Font Awesome exists. If Font Awesome does not exist...        var fa = $(' ', { "rel": "stylesheet", "href": "https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css", "type": "text/css" }); // ...create the element.       $(document.head).append(fa); // Insert the element to the element    }    if ($('.WikiaBarWrapper').length){ // If the .WikiaBarWrapper element exists...        // ...create the element....        var list = $(' ', { "class": "user-data-container", // ..., then insert the 'user-data-container' class name into the element. "id": "user-data-container", // After that, insert the 'user-data-container' id to the element html: function{ // Append the HTML to the element. var html = // Create the HTML '' + '' + '' + '' + '' + ' User Data ' + ' ' +                   '' + '' + ' ' +                   '' + ' ' +                           '' + 'Enter' + ' ' +                   ' ' +                    ' ';                return html; }       });        $('.WikiaBarWrapper').append(list); // Inserting the aside.user-data-container element to the .WikiaBarWrapper element        var user_data = {}; // Create the user_data object        user_data.add = function(username){ // Create the user_data.add function            var user; // Creating a variable            if (username){ // If the username argument is available...                user = username; // ...define the variable            } else { // else...                user = wgUserName; // ...insert the wgUserName variable            }            var url = '/User:' + encodeURIComponent(user); // Create the URL of the page            $.get(url, function(data){ // ..., then get the page. if (data){ var masthead = $(data).find('#UserProfileMasthead')[0], edits = $(masthead).find('.tally em').text, rights = $(masthead).find('.tag'), avatar = $(masthead).find('.avatar'), list = $(' ', {                           "class": "user-data-section",                            "data-user": user,                            html: function{                                var section =                                    ' ' +                                        '' +                                    ' ' +                                    ' ' +                                        ' ' + user + ' ';                                if (rights){                                    /*rights.each(function{ var t = $(this).text; section += '<var class="user-data-rights">' + t + ' '; }); // TBD                                   */                                }                                section +=                                     ' ' +                                    ' ' +                                        '<em class="numberofedits edits">' + edits + ' ' +                                        ' Edits ' +                                    ' ';                                return section;                            }                        }); $('.user-data .user-data-list').append(list); }           });        };        user_data.toggle = function{            var state = state || 0,                container = $('.user-data-container'),                wrapper = container.find('.user-data-wrapper'),                width = wrapper.width;            container.css('position', 'relative');            if (state === 0){                if (width){                    container.animate({ 'left': '-=' + width }, 1000, function{ state = 1; });               }            } else {                if (width){                    container.animate({ 'left': '+=' + width }, 1000, function{ state = 0; });               }            }        };        $('#toggle-user-data').on('click', function{ user_data.toggle; });       $('#user-data-button').on('click', function{ var user_val = $('#user-data-txt').val; if (user_val){ user_data.add(user_val); }       });    } });

function getNumberOfEdits(user){ var edits; user = user || wgUserName; $('#edits-list').get('/User:' + encodeURIComponent(user), function(data){       var el = $(data).find('#UserProfileMasthead')[0],            editcount = el.find('.tally em');        var count = Number(editcount);        if (isNaN(count) === false){            edits = count;        }    }); var el = $(' ', {       "class": "edits-item",        "data-user": user,        html: ' ' + user + ' ' + edits + ' edits '    }); $('#edits-list').append(el); }

var editList = editList || {}; editList.create = function{ var list; if (!$('#edits-list').length){ list = '<aside class="edits-list-wrapper" id="edits-list-wrapper">' + '<a href="javascript:void(0);" class="edit-list-toggle" id="edit-list-toggle">' + '<svg width="30" height="30" xmlns="http://www.w3.org/2000/svg" class="svg-chevron">' + ' ' +                           '<linearGradient x1="0%" x2="0%" y1="100%" y2="0%" id="linearGrad1">' + '<stop offset="0%" style="stop-color:#dff8f8; stop-opacity:1;" />' + '<stop offset="50%" style="stop-color:#ffffff; stop-opacity:1;" />' + '<stop offset="100%" style="stop-color:#edffff; stop-opacity:1;" />' + '</linearGradient>' + ' ' +                       '<path d="M 15,6 L 0,15 24,30 30,24 15,15 30,6 24,0 15,6" fill="url(#linearGrad1)"/>' + ' ' +                   ' Toggle ' + '</a>' + '<nav class="edits-list-container" id="edits-list-container">' + '<header class="edits-list-header" id="edits-list-header">' + ' Editcount ' + ' ' +                   '<ul class="edits-list" id="edits-list"></ul>' + '<form class="edits-list-form" id="edits-list-form" onsubmit="return false;">' + '<label for="edits-list-input" class="placeholder-overlay">Type Username ' + '' + '<a href="javascript:void(0);" class="edits-list-submit" id="edits-list-submit">' + '<svg width="30" height="30" xmlns="http://www.w3.org/2000/svg" class="svg-plus">' + '<path d="M 10,0 L 10,0 20,0 20,10 30,10 30,20 20,20 20,30 10,30 10,20 0,20 0,10 10,10" fill="white" />' + ' ' +                       '</a>' + ' ' +               ' ' +            ' ';        $('.WikiaSiteWrapper').append(list); } };

editList.create; getNumberOfEdits;

/* $('.WikiaRail').on('DOMNodeInserted', '*', function(e){ });

var ut = ut || {}; ut.skin = function(a, b){ var mw = mediaWiki; if (typeof a == 'object'){ if (mw.config.get('skin')){ var s = mw.config.get('skin'); a[s].call(s); }   } else if (typeof a == 'string') { if (mw.config.get('skin') == sk){ sk = mw.config.get('skin') || skin; b.call(sk); }   } };

ut.button = function(a, b, c){ var el, button; if (typeof a == 'object'){ for (var i in a){ el = $(a[i].elem); button = $('<a />', {               "class": "wikia-button",                "id": a[i].id,                text: i,                on: {                    'click': a[i].handler                }            }); if (a[i].type){ button.addClass(a[i].type); }           if (a[i].add == 'append'){ el.append(button); } else if (a[i].add == 'prepend'){ el.prepend(button); } else if (a[i].add == 'before'){ el.before(button); } else if (a[i].add == 'after'){ el.after(button); }       }    } else if (typeof a == 'string'){ el = $(b.elem); button = $('<a />', {           "class": "wikia-button",            "id": b.id,             text: a,            on: {                "click": c            }        }); if (b.type){ button.addClass(b.type); }       if (b.add == 'append'){ el.append(button); } else if (b.add == 'prepend'){ el.prepend(button); } else if (b.add == 'before'){ el.before(button); } else if (b.add == 'after'){ el.after(button); }   }    return button; };

ut.button('Click Here', {   elem: '.WikiaPageHeader .tally',    type: 'secondary',    add: 'after' }, function{    window.location = '/wiki/User:' + wgUserName.split(' ').join('_') + '/common.js'; });

(function($, mw){   if (mw.config.get('skin') == "oasis" || mw.config.get('skin') == "wikia" || mw.config.get('skin') == "venus"){        // Add clock to global navigation        var clock_style =             '.clock-container {' +                '\npadding-left: 10px;' +                 '\n}' +             '\n.clock-container .clock {' +                 '\ncolor: black;' +            '\n}';        function addZero(i){            if (i < 10) i = "0" + i;            return i;        }        if ($('.global-navigation').length && !$('.clock-container').length){            $('.global-navigation > .global-navigation-container').append($(' ', {                "class": "clock-container table-cell",                html: '<a href="?action=purge" class="clock"></a>'            }));            $('head').append('<style type="text/css" media="all" id="clock-container-style">' + clock_style + ' ');            setInterval(function{ var d;               if (new Date){ d = new Date; $('.clock-container .clock').html(addZero(d.getHours) + ':' + addZero(d.getMinutes) + ':' + addZero(d.getSeconds)); }           }, 1000);        }        // Add username to global navigation        if (mw.config.get('wgUserName')){            $('.global-navigation a[data-id="userpage"]').append(function{ if (!$('.global-navigation a[data-id="userpage"] > span.user-name').length){ return $(' ', {                       "class": "user-name",                        "data-user": mw.config.get('wgUserName'),                        text: mw.config.get('wgUserName')                    }); }           });        }    } })(jQuery, mediaWiki);

navigator.info = (function{   var N = navigator.appName,        ua = navigator.userAgent,         tem,        M = ua.match(/(opera|chrome|safari|firefox|msie)\/?\s*(\.?\d+(\.\d+)*)/i);    if (M && (tem = ua.match(/version\/([\.\d]+)/i))!== null) M[2] = tem[1];    M = M? [M[1], M[2]] : [N, navigator.appVersion, '-?'];    return M; }); function getBrowserName(name){ var browserName; if (name){ switch (name){ case 'MSIE': case 'Netscape': browserName = 'Internet Explorer'; break; case 'Firefox': browserName = 'Mozilla Firefox'; break; case 'Chrome': browserName = 'Google Chrome'; break; default: browserName = name; }       return browserName; } } function getBrowserVersion(value){ value = Number(value.split('.')[0]); if (!isNaN(value)){ return value; } else { return NaN; } } var browser = getBrowserName(navigator.info[0]), version = getBrowserVersion(navigator.info[1]); console.log('You are currently using ' + browser + ' ' + version + '!');