[BETA] Notificari in browser

Vezi subiectul anterior Vezi subiectul urmator In jos

[BETA] Notificari in browser

Mesaj Scris de Zeus la data de Mar 16 Mai - 18:15

Salutare tuturor,

In aceasta dupa-amiaza am realizat un cod pentru afisarea notificarilor in browser.

Demonstratie



Instalare

Pentru instalarea acestei caracteristici intrati in:
Panou > Module > HTML & JAVASCRIPT > Gestiunea codurilor javascript > Creati un nou cod JavaScript

Completati rubricile cu:

  • Titlu: Notificari in browser
  • Amplasare: Toate paginile
  • Cod:

    Cod:

    function compareDate(from, to, check) {
        var fDate = Date.parse(from),
            lDate = Date.parse(to),
            cDate = Date.parse(check);

        if ((cDate <= lDate && cDate >= fDate)) {
            return true;
        }
        return false;
    }

    function addDays(theDate, days) {
        return new Date(theDate.getTime() + days * 24 * 60 * 60 * 1000);
    }

    function setCookie(cname, cvalue, exdays) {
        var d = new Date();
        d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
        var expires = "expires=" + d.toGMTString();
        document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
    }

    function getCookie(cname) {
        var name = cname + "=";
        var decodedCookie = decodeURIComponent(document.cookie);
        var ca = decodedCookie.split(';');
        for (var i = 0; i < ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0) == ' ') {
                c = c.substring(1);
            }
            if (c.indexOf(name) == 0) {
                return c.substring(name.length, c.length);
            }
        }
        return "";
    }

    document.addEventListener('DOMContentLoaded', function() {
        if (Notification.permission !== "granted")
            Notification.requestPermission();
    });

    function ChromeNotif() {
        if (!Notification) {
            return;
        }

        if (Notification.permission !== "granted") {
            Notification.requestPermission();
        } else if (navigator.cookieEnabled === true) {
            console.log("[CONSOLE] Google Notifications working");
            var notif_icon = "http://redcdn.net/frmste/images/sigle.png";
            var forums = [6, 4, 5, 16];
            var limit = 4;

            var text = function(cont, tag) {
                tag = cont.getElementsByTagName(tag)[0];
                return (tag && tag.firstChild && tag.firstChild.nodeValue) || '';
            };
            for (var j = 0, f;
                (f = forums[j++]);) {
                $.get('/feed/?f=' + f, function(xml) {
                    var topics = xml.getElementsByTagName('item'),
                        i = 0,
                        t = null;

                    for (;
                        (t = topics[i++]);) {

                        var topic_date = new Date(text(t, 'pubDate'));

                        if (compareDate(addDays(new Date(), -1), addDays(new Date(), +1), topic_date)) {
                            var topic_link = text(t, 'link'),
                                topic_title = text(t, 'title'),
                                topic_desc = text(t, 'description');
                            if (getCookie("notif_" + topic_title + "") != topic_link) {

                                var notification = new Notification(topic_title, {
                                    icon: notif_icon,
                                    body: topic_desc.replace(/\n/g, ' ')
                                });

                                notification.onclick = function() {
                                    window.open(topic_link);
                                };

                                setCookie("notif_" + topic_title + "", topic_link, 30);
                            }

                        }

                        if (i >= limit) break;
                    }
                });
            }

        }
    }

    jQuery(function($) {
        ChromeNotif();
    });

    window.setInterval(function() {
        ChromeNotif();
    }, 60000);





Personalizarea notificarilor din cod:

var forums = [6, 4, 5, 16];

Inlocuiti sirul de numere din acea linie cu ID-urile sectiuniilor dorite.


var limit = 4;

Inlocuiti acea valoare cu numarul de notificari de afisat in acelasi timp.


var notif_icon = "http://redcdn.net/frmste/images/sigle.png";

Inlocuiti acea imagine cu sigla dorita.


Dupa efectuarea modificarlor dorite validati formularul.


De retinut faptul ca aceste notificari nu vor fi vizibile tuturor. Fiecare utilizator va fi intrebat in momentul in care acceseaza forumul daca doreste sau nu afisarea notificarilor.



Codul este inca in faza de dezvoltare, in caz de functionare necorespunzatoare postati aici. A face cu ochiul
avatar
Zeus
Administrator
Administrator

masculin

Mesaje : 4044
Localizare : Bucuresti, Romania
Data de inscriere : 19/02/2012
Multumiri : 619
Niciun avertisment

http://help.forumgratuit.ro

Sus In jos

Re: [BETA] Notificari in browser

Mesaj Scris de Ionut la data de Mar 16 Mai - 18:43

Foarte frumos, am crezut că s-a actualizat brownser-ul de îmi apărea acea notificare. clap
avatar
Ionut
Asistent Debutant
Asistent Debutant

masculin

Mesaje : 528
Varsta : 18
Data de inscriere : 01/11/2015
Multumiri : 59
1 avertisment

http://helptutorial.rpgwars.net/

Sus In jos

Re: [BETA] Notificari in browser

Mesaj Scris de mihai la data de Mar 16 Mai - 20:32

am mai văzut site-uri, în care eu am probleme cu pc-ul (uneori), și când dau să caut, îmi apar și notificările, uneorii și informații din IT, apar și notificările acolo... good job!
avatar
mihai
Membru Forumgratuit

masculin

Mesaje : 304
Varsta : 19
Localizare : Forumgratuit
Data de inscriere : 25/09/2014
Multumiri : 22
2 avertismente

http://help.forumgratuit.ro

Sus In jos

Re: [BETA] Notificari in browser

Mesaj Scris de Nocti la data de Mar 16 Mai - 20:55

Thanks. Da
avatar
Nocti
Membru Forumgratuit

masculin

Mesaje : 239
Varsta : 17
Data de inscriere : 04/06/2014
Multumiri : 3
Niciun avertisment

http://www.infinigame.biz/

Sus In jos

Re: [BETA] Notificari in browser

Mesaj Scris de mr.franta la data de Mar 16 Mai - 20:59

Foarte reusit,este un topbar pe invizibil sa spun asa.Imi place mult!


Daca v-am fost de ajutor apasati butonul  
avatar
mr.franta
Moderator
Moderator

masculin

Mesaje : 1142
Varsta : 29
Localizare : giurgiu
Data de inscriere : 18/02/2012
Multumiri : 75
Niciun avertisment

http://www.frannnta-design.com/

Sus In jos

Re: [BETA] Notificari in browser

Mesaj Scris de Petronel YT la data de Mar 16 Mai - 21:41

O sa implemented ai eu codul asta ! Multumim mult!
avatar
Petronel YT
Membru Forumgratuit

masculin

Mesaje : 168
Varsta : 14
Data de inscriere : 21/05/2016
Multumiri : 7
Niciun avertisment

http://craft.forumhi.net/

Sus In jos

Re: [BETA] Notificari in browser

Mesaj Scris de Atracción la data de Mier 17 Mai - 11:07

Arata super bine ! L-am testat pe forumul personal si functioneaza perfect.


avatar
Atracción
Graphic Designer
Graphic Designer

masculin

Mesaje : 1848
Varsta : 18
Data de inscriere : 19/11/2012
Multumiri : 11
Niciun avertisment

http://help.forumgratuit.ro/forum

Sus In jos

Re: [BETA] Notificari in browser

Mesaj Scris de Apollo la data de Dum 21 Mai - 22:22

Un cod superb, foarte frumos @Zeus. Un astfel de cod ofera puțină culoare unui forum.
avatar
Apollo
Membru onorific
Membru onorific

masculin

Mesaje : 906
Varsta : 22
Localizare : C:\system32
Data de inscriere : 10/08/2015
Multumiri : 113
Niciun avertisment

https://www.forumcodes.com

Sus In jos

Vezi subiectul anterior Vezi subiectul urmator Sus

- Subiecte similare

Permisiunile acestui forum:
Nu puteti raspunde la subiectele acestui forum