Forum gratuit: forum de suport al utilizatorilor
Doriți să reacționați la acest mesaj? Creați un cont în câteva clickuri sau conectați-vă pentru a continua.

Creaza widget cu ultimele actualizari de stare

Vezi subiectul anterior Vezi subiectul urmator In jos

Creaza widget cu ultimele actualizari de stare Empty Creaza widget cu ultimele actualizari de stare

Mesaj Scris de SSYT Mar Aug 02, 2016 11:53 am

Buna ziua, am vazut ca din ce in ce mai multi utilizatori ai platformei ForumGratuit vor sa isi personalizeze forumurile cu cat mai multe chestii noi, de exemplu `Status Update`, `Recent Status Update` si multe alte hook de pe platforma IP.Board, am incercat sa reproduc cat mai mult acele hook.


Pasul 1:
Trebuie sa instalam un hook oferit de @LGforum, acest hook poate fii gasit pe forumul lui personal.
Status Update Field (OST)

Pasul 2:
Mergem in panoul de administare:
Panou de administrare => General => Categorii si forumuri => Adauga
Apasam pe Adauga si adaugam un nou forum !


  • Alegeti tipul de forum dorit : Forum
  • Numele forumului : Database
  • Atasat la : Implicit
  • Pozitioneaza acest forum dupa : Implicit
  • Copiaza permisiunile forumului : Implicit
  • Statutul forumului : Implicit
  • Claseaza subiectele dupa : Implicit
  • Claseaza mesajele unui subiect dupa : Implicit


Si salvam.

Acuma mergem la forumul creat, apasam pe: Modificare selectam Permisiuni

  • Vizualizeaza forumul: Admin
  • Citeste subiectele: Membri
  • Raspunde la un mesaj: Membri
  • Editeaza mesajele: Membri
  • Sterge mesajele: Admin
  • Deschide un subiect: Admin


Salvam.

Pasul 3:
Panou de administrare => Module => Portal & Widget-uri => Gestiunea widget-urilor forumului => Creati un widget personalizat


  • Nume widget : RSU
  • Utilizati un tablou tip : Da
  • Titlul widget : Recent  Status Updates
  • Sursa widget * :
    Cod:
    <div id="status_list">
    </div>



Salvam, dupa care selectam din Adaugare/stergere de widget-uri personale alegem RSU si apasam pe Adauga Widget

Pasul 4:
Mergem in forumul `Database` si creem un nou topic:

  • Titlul subiectului: Status Update
  • Mesaj:
    Cod:
    <br />

  • Posteaza subiectul ca:  Normal


Pasul 5:
Panou de administrare => Module => HTML & JAVASCRIPT => Gestiunea codurilor JavaScript => Creati un nou cod JavaScript

  • Titlu * : Status Form @LGforum
  • Amplasare : Toate paginile
  • Cod JavaScript * :
    Cod:
    /********************************************************/
    /* Cod creat si dezolvat de SSYT            *************************/
    /* www.forumcodes.com                      *************************/
    /*******************************************************/


    var settings = {
       topic : {
          url: "/t199-",
          database: "/t199-",
          urlID: "925"
       }
    };

    function setSQL(b, c, a) {
      var d = c;
      $.get(b, function() {
        return !0;
      }).done(function(c) {
        var b = $(".post .postbody .content div:eq(0)", c).html();
        "" == b || "<br>" == b ? $.post("/post?p=" + d + "&mode=editpost", {subject:"Status Update", message:a, mode:"editpost", lt:d, p:d, post:"Submit"}).done(function(b) {
          console.log("New content: " + a);
        }).fail(function() {
          alert("Failed update DB");
        }) : $.post("/post?p=" + d + "&mode=editpost", {subject:"Status Update", message:a + "<br />" + b, mode:"editpost", lt:d, p:d, post:"Submit"}).done(function(c) {
          console.log("New content: " + b + "<br />" + a);
        }).fail(function() {
          alert("Failed update DB");
        });
      });
      return !1;
    }

    function getSQL(b, c) {
      $.get(b, function(a) {
        return 1;
      }).done(function(a) {
        var b = $(".post .postbody .content div:eq(0)", a).html();
        $("status:lt(" + c + ")", $(".post .postbody .content div:eq(0)", a).html());
        "" != $(".post .postbody .content div:eq(0)", a).html() ? $("#status_list").html(b) : $("#status_list").html("No status update !");
      });
      return !1;
    }

    $(function() {
      getSQL(settings.topic.database, 5);
      $(".status-button").click(function(b) {
        b = $("#LGstatus_input").val();
        if ("" != b) {
          var c = new Date, a = Array(12);
          a[0] = "Jan";
          a[1] = "Feb";
          a[2] = "Mar";
          a[3] = "Apr";
          a[4] = "May";
          a[5] = "Jun";
          a[6] = "Jul";
          a[7] = "Aug";
          a[8] = "Sep";
          a[9] = "Oct";
          a[10] = "Nov";
          a[11] = "Dec";
          a = a[c.getUTCMonth()];
          c = c.getDate() + ", " + a;
          setSQL(settings.topic.url, settings.topic.urlID, '<status updateID="' + _userdata.user_id + '"><img src="' + jQuery(_userdata.avatar).attr("src") + '" class="status_photo" /><content><a href="/u' + _userdata.user_id + '">' + _userdata.username + "</a><br/>" + b + "</content><update>" + c + "</update></status>");
        }
      });
    });



Alte informatii si zona editabila:
Pentru editat:
"Database Link topic"
"/post?p=ID TOPIC&mode=editpost"
"ID TOPIC" with id of edit mode topic !

CSS:
Cod:
div#status_list status {
    display: block;
    clear: both;
    padding: 5px 4px;
    background: #fff;
    border: 1px solid #ddd;
 overflow: hidden;
    line-height: 5px;
}
img.status_photo {
    float: left;
    width: 30px;
    height: 30px;
    clear: both;
    padding: 1px;
    margin-top: 2px;
    border: 1px solid #ddd;
}
div#status_list status content {
    float: left;
    padding-left: 10px;
    font-size: 12px;
    width: 60%;
    display: inline-block;
    min-height: 30px;
    line-height: 17px;
    word-wrap: break-word;
    margin-top: 0px;
}
div#status_list status content a[href*="/u"] {
    clear: both;
    margin-bottom: 5px;
}
div#status_list status update {
    width: 20%;
    float: right;
    color: #0dbd0d;
}
div#status_list status br {
    display: block;
}
div#status_list br {
    display: none;
}
div#status_list status {
    margin-bottom: 5px;
}


Ultima editare efectuata de catre SSYT in Joi Sept 01, 2016 4:10 pm, editata de 1 ori (Motiv : Update cod JavaScript)
SSYT

SSYT
Membru onorific
Membru onorific

Mesaje : 1424
Varsta : 29
Localizare : Romania, localhost:80
Data înscrierii : 10/08/2015
Mulțumiri : 199
Opera phpBB3

https://help.forumgratuit.ro
SSYT a fost mulțumit de autorul acestui subiect.

Creaza widget cu ultimele actualizari de stare Empty Re: Creaza widget cu ultimele actualizari de stare

Mesaj Scris de Petronel Vin Aug 19, 2016 11:40 am

Folositor Tutorialul , chiar folositor pentru incepatori si pentru cei care nu stiu sa isi faca un forum ipb A face cu ochiul Platforma asta o sa se extinda foarte mult Fericit
Petronel

Petronel
Membru onorific
Membru onorific

Mesaje : 1045
Varsta : 21
Localizare : Constanţa & Calarasi
Data înscrierii : 21/05/2016
Mulțumiri : 113
Google Chrome AwesomeBB

https://www.fgdesign.biz/
Petronel a fost mulțumit de autorul acestui subiect.

Creaza widget cu ultimele actualizari de stare Empty Re: Creaza widget cu ultimele actualizari de stare

Mesaj Scris de Ionut_FG Dum Aug 21, 2016 2:54 pm

Ceva nu e bine în cod adică acest cod
Cod:

function updateDB(b, c, a) {
  var d = c.match(/\d+/g)[0];
  $.get(b, function() {
    return !0;
  }).done(function(c) {
    var b = $(".post .postbody .content div:eq(0)", c).html();
    "" == b || "<br>" == b ? $.post("/post?p=" + d + "&mode=editpost", {subject:"Status Update", message:a, mode:"editpost", lt:d, p:d, post:"Submit"}).done(function(b) {
      console.log("New content: " + a);
    }).fail(function() {
      alert("Failed update DB");
    }) : $.post("/post?p=" + d + "&mode=editpost", {subject:"Status Update", message:a + "<br />" + b, mode:"editpost", lt:d, p:d, post:"Submit"}).done(function(c) {
      console.log("New content: " + b + "<br />" + a);
    }).fail(function() {
      alert("Failed update DB");
    });
  });
  return !1;
}
function getDBStatus(b, c) {
  $.get(b, function(a) {
    return 1;
  }).done(function(a) {
    var b = $(".post .postbody .content div:eq(0)", a).html();
    $("status:lt(" + c + ")", $(".post .postbody .content div:eq(0)", a).html());
    "" != $(".post .postbody .content div:eq(0)", a).html() ? $("#status_list").html(b) : $("#status_list").html("No status update !");
  });
  return !1;
}
$(function() {
  getDBStatus("Database Link topic", 5);
  $(".status-button").click(function(b) {
    b = $("#LGstatus_input").val();
    if ("" != b) {
      var c = new Date, a = Array(12);
      a[0] = "Jan";
      a[1] = "Feb";
      a[2] = "Mar";
      a[3] = "Apr";
      a[4] = "May";
      a[5] = "Jun";
      a[6] = "Jul";
      a[7] = "Aug";
      a[8] = "Sep";
      a[9] = "Oct";
      a[10] = "Nov";
      a[11] = "Dec";
      a = a[c.getUTCMonth()];
      c = c.getDate() + ", " + a;
      updateDB("Database Link topic", "/post?p=ID&mode=editpost", '<status updateID="' + _userdata.user_id + '"><img src="' + jQuery(_userdata.avatar).attr("src") + '" class="status_photo" /><content><a href="/u' + _userdata.user_id + '">' + _userdata.username + "</a><br/>" + b + "</content><update>" + c + "</update></status>");
    }
  });
});

Am făcut fix ca în tutorial, pe vro 5 forumuri dar degeaba aceaş fază, dacă adaug codul de mai sus nu mai merge nici un cod js, şi forumurile sunt luate de la 0 adică de la tema default albă versiunea punbb şi doar cu un cod js funcţionabil să văd dacă mai merge după ce adaug codul oferit de tine şi nu a mai mers, apoi am şters codul meu unul simplu care funcţiona să văd dacă o fii din cauza acelui cod şi nu este ... an încercat să editez codul de sus, l-am editat după ce l-am editat codul meu mergea dar RSU tot nu mergea
Codul care l-am editat
Cod:

$(function updateDB(b, c, a) {
    var d = c.match(/\d+/g)[0];
  $.get(b, function() {
    return !0;
  }).done(function(c) {
var b = $(".post .postbody .content div:eq(0)", c).html();
  $.post("/post?p=" + d + "&mode=editpost", {subject:"Status Update", message:a, mode:"editpost", lt:d, p:d, post:"Submit"}).done(function(b) {
  console.log("New content: " + a);
    }).fail(function() {
 alert("Failed update DB");
});
 $.post("/post?p=" + d + "&mode=editpost", {subject:"Status Update", message:a + "<br />" + b, mode:"editpost", lt:d, p:d, post:"Submit"}).done(function(c) {
      console.log("New content: " + b + "<br />" + a);
    }).fail(function() {
      alert("Failed update DB");
    });
  return !1;
});
$(function getDBStatus(b, c) {
    $.get(b, function(a) {
    return 1;
 }).done(function(a) {
 var b = $(".post .postbody .content div:eq(0)", a).html();
    $("status:lt(" + c + ")", $(".post .postbody .content div:eq(0)", a).html());
    "" != $(".post .postbody .content div:eq(0)", a).html() ? $("#status_list").html(b) : $("#status_list").html("No status update !");
}) ;
return !1;
});
$(function() {
    getDBStatus("/t11-status-update", 5);
      $(".status-button").click(function(b) {
    b = $("#LGstatus_input").val();
  if ("" != b) {
    var c = new Date, a = Array(12);
      a[0] = "Jan";
      a[1] = "Feb";
      a[2] = "Mar";
      a[3] = "Apr";
      a[4] = "May";
      a[5] = "Jun";
      a[6] = "Jul";
      a[7] = "Aug";
      a[8] = "Sep";
      a[9] = "Oct";
      a[10] = "Nov";
      a[11] = "Dec";
      a = a[c.getUTCMonth()];
      c = c.getDate() + ", " + a;
    updateDB("/t11-status-update", "35", '<status updateID="' + _userdata.user_id + '"><img src="' + jQuery(_userdata.avatar).attr("src") + '" class="status_photo" /><content><a href="/u' + _userdata.user_id + '">' + _userdata.username + "</a><br/>" + b + "</content><update>" + c + "</update></status>");
      }
    });
 });
});
am încercat mai multe site-uri cu edit js şi la unu mia dat 30 de erori la codul de sus ne editat de mine, poţi să îl refaci ? Te rog ?
avatar

Ionut_FG
Membru activ

Mesaje : 777
Varsta : 25
Data înscrierii : 01/11/2015
Mulțumiri : 123
Google Chrome Invision

http://invisionpower.rpgwars.net/
Ionut_FG a fost mulțumit de autorul acestui subiect.

Vezi subiectul anterior Vezi subiectul urmator Sus

- Subiecte similare

Permisiunile acestui forum:
Nu puteti raspunde la subiectele acestui forum