PageSourceSearch

https://radio-portal.su/media/com_slogin/slogin.min.js?v=4

js radio-portal.su collected 2026-10-04 23:53:36 UTC 4,899 bytes, 92 lines download raw bytes

1var SLogin = SLogin || {
2    initialize: function () {
3        var elements, block, identifiers;
4        for (identifiers = ["slogin-buttons", "slogin-buttons-attach", "slogin-buttons-attach-component"], i = 0; i < identifiers.length; i++) null !== (block = document.getElementById(identifiers[i])) && (elements = block.getElementsByTagName("a"), SLogin.initializeButtons(elements))
5    }, initializeButtons: function (elements) {
6        for (var params = "resizable=yes,scrollbars=no,toolbar=no,menubar=no,location=no,directories=no,status=yes", id, onclick, i = 0; i < elements.length; i++) id = elements[i].getAttribute("id"), onclick = elements[i].getAttribute("onclick"), "uLogin" != id && null === onclick && (elements[i].onclick = function (e) {
7            "window" == typeof PopUpWindow && PopUpWindow.close();
8            localStorage.removeItem('sloginAuth');
9            var el = this.getElementsByTagName("span"), size = SLogin.getPopUpSize(el[0].className),
10                win_size = SLogin.WindowSize(), centerWidth = (win_size.width - size.width) / 2,
11                centerHeight = (win_size.height - size.height) / 2,
12                PopUpWindow = window.open(this.href, "LoginPopUp", "width=" + size.width + ",height=" + size.height + ",left=" + centerWidth + ",top=" + centerHeight + "," + params);
13                let interval = setInterval(function (){
14                    let url = localStorage.getItem('sloginAuth');
15                    if (url) {
16                        localStorage.removeItem('sloginAuth');
17                        clearInterval(interval);
18                        window.location = url;
19                        PopUpWindow.close();
20                    }
21                }, 1000);
22            return PopUpWindow.focus(), !1
23        })
24    }, WindowSize: function () {
25        var myWidth = 0, myHeight = 0, size = {width: 0, height: 0};
26        return "number" == typeof window.innerWidth ? (myWidth = window.innerWidth, myHeight = window.innerHeight) : document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight) ? (myWidth = document.documentElement.clientWidth, myHeight = document.documentElement.clientHeight) : document.body && (document.body.clientWidth || document.body.clientHeight) && (myWidth = document.body.clientWidth, myHeight = document.body.clientHeight), size.width = myWidth, size.height = myHeight, size
27    }, getPopUpSize: function (el) {
28        var size = {width: 0, height: 0};
29        switch (el) {
30            case"vkontakteslogin":
31                size = {width: 900, height: 550};
32                break;
33            case"googleslogin":
34                size = {width: 450, height: 450};
35                break;
36            case"facebookslogin":
37                size = {width: 1200, height: 600};
38                break;
39            case"twitterslogin":
40                size = {width: 450, height: 550};
41                break;
42            case"yandexslogin":
43                size = {width: 900, height: 550};
44                break;
45            case"linkedinslogin":
46                size = {width: 350, height: 550};
47                break;
48            case"odnoklassnikislogin":
49                size = {width: 550, height: 250};
50                break;
51            case"mailslogin":
52                size = {width: 450, height: 325};
53                break;
54            default:
55                size = {width: 900, height: 550}
56        }
57        return size
58    }, addListener: function (obj, type, listener) {
59        return obj.addEventListener ? (obj.addEventListener(type, listener, !1), !0) : !!obj.attachEvent && (obj.attachEvent("on" + type, listener), !0)
60    }, loadModuleAjax: function () {
61        SLogin.getUrl("/index.php?option=com_slogin&task=load_module_ajax")
62    }, printProviders: function (resp) {
63        document.getElementById("mod_slogin").innerHTML = resp, SLogin.initialize()
64    }, getXmlHttp: function () {
65        try {
66            return new ActiveXObject("Msxml2.XMLHTTP")
67        } catch (e) {
68            try {
69                return new ActiveXObject("Microsoft.XMLHTTP")
70            } catch (ee) {
71            }
72        }
73        if ("undefined" != typeof XMLHttpRequest) return new XMLHttpRequest
74    }, getUrl: function (url) {
75        var xmlhttp = SLogin.getXmlHttp();
76        xmlhttp.open("GET", url), xmlhttp.onreadystatechange = function () {
77            if (4 == xmlhttp.readyState) {
78                var resp = xmlhttp.responseText;
79                SLogin.printProviders(resp)
80            }
81        }, xmlhttp.send(null)
82    }, changeLocation: function (url) {
83        window.location = url;
84    }
85};
86SLogin.addListener(window, "load", (function () {
87    SLogin.initialize()
88}));
89
90window.changeLocation = function (url) {
91    window.location = url;
92}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.