forum-test-onyx4

forumtest
Le Deal du moment :
Cdiscount : -30€ dès 300€ ...
Voir le deal

 

 Pour les badges

Aller en bas 
AuteurMessage
Admin
Team Fighter I
Team Fighter I
Admin

Messages : 26
Date d'inscription : 01/10/2014
Age : 30
Métier : plombier

Feuille de personnage
Champ X RPG: Bla bla bla

Pour les badges Empty
MessageSujet: Pour les badges   Pour les badges EmptyVen 15 Oct - 13:01

Voilà
Revenir en haut Aller en bas
https://forum-test-onyx4.forum-canada.com
Fayrix
Invité



Pour les badges Empty
MessageSujet: Re: Pour les badges   Pour les badges EmptySam 16 Oct - 1:27

Bonjour, je vous envoie les codes comme vous l'avez demandé ! Smile

Template du Profile:

Code:
<div class="fondprof"><div class="tritri"></div>
<div class="bloblo">
<div class="avataru"><div class="hovvava">{AVATAR_IMG}</div></div>
</div>

<div class="bloblo">
  <div class="blokin">
  <!-- BEGIN profile_field -->
  <div id="field_id{profile_field.ID}">
    <span>{profile_field.LABEL}</span>{profile_field.CONTENT}
   </div> <!-- END profile_field -->
  </div>
</div>

<div class="bloblo2">
  <br>  
 <div class="mess"> <a rel="nofollow" href="/spa/{PUSERNAME}">Posztok</a></div>
    <br>
 <div class="suj"> <a rel="nofollow" href="/sta/{PUSERNAME}">{L_TOPICS}</a></div>
      <div class="takt"><!-- BEGIN contact_field -->
{contact_field.CONTENT}    
    <!-- END contact_field --></div>
 
 <div class="fieldu">
  <span>{ADMINISTRATE_USER}{BAN_USER}</span>
 </div>

</div>
  
</div>
  <div class="js-badges-profil"></div>
<div class="fondinfo">
  <div class="imggauche"><img src="https://imgur.com/MCf8k34.png"/></div>
  <div class="nameuh">Invité</div>
  </div>
</div>
<br />
<script src="{JQUERY_ROOT}json/jquery.json-1.3.min.js" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
   $(document).ready(function(){
      $('[id^=field_id]').each(function(){
         if ( $(this).find('.field_editable').is('span, div') )
         {
            $(this).hover(function()
            {
               if( $(this).find('.field_editable.invisible').is('span, div') )
               {
                  $(this).find('.field_editable').prev().addClass('ajax-profil_hover').parent().addClass('ajax-profil_parent').append('<div class="ajax-profil_edit"><img src="{AJAX_EDIT_IMG}" /></div>');
                  $(this).find('.ajax-profil_edit').attr({
                        alt: "{L_FIELD_EDIT_VALUE}",
                        title: "{L_FIELD_EDIT_VALUE}"
                     }).click(function(){
                     $(this).prev().prev().removeClass('ajax-profil_hover').addClass('invisible').next().removeClass('invisible').append('<img src="{AJAX_VALID_IMG}" class="ajax-profil_valid" />').find('input,select');
                     $(this).prev().find('.ajax-profil_valid').attr({
                        alt: "{L_VALIDATE}",
                        title: "{L_VALIDATE}"
                     }).click(function(){
                        var content = new Array();
                        $(this).parent().find('[name]').each(function(){
                           var type_special = $(this).is('input[type=radio],input[type=checkbox]');
                           if ( (type_special && $(this).is(':checked')) || !type_special )
                           {
                              content.push(new Array($(this).attr('name'), $(this).attr('value')));
                           }
                        });
                        var id_name = $(this).parents('[id^=field_id]').attr('id');
                        var id = id_name.substring(8, id_name.length);
                        $.post(
                           "{U_AJAX_PROFILE}",
                           {id:id,user:"{CUR_USER_ID}",active:"{CUR_USER_ACTIVE}",content:$.toJSON(content),tid:"{TID}"},
                           function(data){
                              $.each(data, function(i, item){
                                 $('[id=field_id' + i + ']').find('.field_uneditable').html(item).end().find('.ajax-profil_valid').remove().end().find('.field_editable').addClass('invisible').end().find('.field_uneditable').removeClass('invisible');
                              });
                           },
                           "json"
                        );
                     });
                     $(this).remove();
                  });
               }
            },function()
            {
               if( $(this).find('.field_editable.invisible').is('span, div') )
               {
                  $(this).find('.field_editable').prev().removeClass('ajax-profil_hover');
                  $(this).find('.ajax-profil_edit').remove();
               }
            });
         }
      });
   });
//]]>
</script>

Javascript:

Code:
/*
 * SYSTEME DE BADGE
 * LIBRE SERVICE NEVER UTOPIA
 */

/* on vérifie si on est bien sur la page de profil */
if (/^\/u\d+$/.test(document.location.pathname)) {
 
  var idPage = "11"; /* numéro de la page HTML */
 
  $.get("/h" + idPage + "-", function (data) {
    /* on récupère le bloc des badges */
    var $badges = $(data).filter("#badges-profil");
 
    /* on attend que notre page soit prête */
    $(function () {
      /* on récupère le champ des badges obtenus */
      var $profilBadges = $("span:contains('Megszerz')").closest("tr");
  
      if ($profilBadges.length > 0) {
        /* selection des badges obtenus du membre */
        var badgesUser = $profilBadges.find(".field_uneditable").text().split(";");
    
        if (badgesUser.length > 0) {
          /* pour chaque badge, on ajoute la classe si besoin */
          for (var i = 0, l = badgesUser.length; i < l; i++) {
            if (badgesUser[i].length > 0) {
              try {
                $badges.find("." + badgesUser[i].trim()).addClass("obtenu");
              } catch (e){
                console.log("Système de badge erreur => " + e);
              }
            }
          }
    
          /* si la personne ne peut pas éditer le champ,
          * on le retire la zone */
          if ($profilBadges.find(".field_editable").length < 1) {
            $profilBadges.remove();
          }
        }
      }
  
      /* on ajoute le bloc en fin de page */
      $(".js-badges-profil").html($badges);
 
    });
  })
}
Revenir en haut Aller en bas
 
Pour les badges
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Pour le Recueil
» Pour la boutique

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
forum-test-onyx4 :: Nom :: Texte ici-
Sauter vers: