Home arrow Programmazione arrow Tutorial arrow ModAAO per PhpNuke e phpBB v2.x.x

ModAAO per PhpNuke e phpBB v2.x.x

PDF Stampa E-mail
Scritto da BaXaras   
venerd́ 14 settembre 2007

ModAAO

 

 

Nasce tutto in una notte, il mio capoclan mi chiede di aggiungere al nostro forum il mod che aveva creato Marco P. vado a vedere la guida e subito partono le prime bestemmie in aramaico dato che il mod era per Invision ecco qua la guida LINK

Ebè mi metto li a vedere come potevo applicare il mod al nostro portale fatto in PhpNuke con il forum in phpBB, subito non ci sono arrivato a capire che giro facesse la Mod poi facendo 1+1 analizzando il tutto ho iniziato a provarla in locale.

Be per 3 giorni il forum usciva con un bordello si scritte prove e prove poi alla fine una sera incazzato a bestia mi ci metto di punta ed ecco qua il risultato.

 

Iniziamo subito per chi non vuole sorbirsi la guida ecco qua il mod da seguire passo passo: Download ModAAO

 

Requisiti minimi:

Server linux

PhpNuke o PhpBB

 

File da modificare:

     viewtopic.php
     themes/<vostro tema>/viewtopic_body.tpl
     themes/<vostro tema>/profile_view_body.tpl
     themes/<vostro tema>/profile_add_body.tpl

 

 Primo Step:

 

creare una cartella nella root di nome cache e dentro di essa creiamo un altra cartella di nome profiles e dare il Chmod 777

 

Secondo step:

 

Apriamo il file  viewtopic.php per phpBB lo trovate nella root del sito per il phpnuke andate in /modules/Forum

 

 cercate il segente codice:

 

<?php

 

Dopo aggiungete:

 

 function get_external($tmp,$trackerid) {
   
   // set a variable
   $contents = "";
   $filename = "./cache/profiles/profile_".$trackerid.".bk";
   $status = "";

   //Cache per evitare l'accesso al tracker in continuazione
   if (file_exists($filename)) {
     if(date("Y-m-d", filemtime($filename)) != date("Y-m-d")) {
            //Aggiorno
           // echo "Update!";
           $status = "Stat cache Updated!";
           $handle = fopen("http://aaotracker.com/usertracker.php?userid=".$trackerid, "rb");
           $handle2 = fopen($filename,"wb");
           // Get the info into array.
           while (!feof($handle)) {
               $sout = fread($handle, round(8*1024));
               $contents.=$sout;
               fwrite($handle2, $sout, round(8*1024));
           }
           fclose($handle);
           fclose($handle2);
        } else {
            // echo "Non serviva update!";
            $handle = fopen($filename,"rb");
            while (!feof($handle)) {
                 $contents.= fread($handle, round(8*1024));
            }
            fclose($handle);
        }
   } else {
        // echo "Creo il file!";
        $status = "Stat cache Created!";
        $handle = fopen("http://aaotracker.com/usertracker.php?userid=".$trackerid, "rb");
        $handle2 = fopen($filename,"w+b");
        while (!feof($handle)) {
             $sout = fread($handle, round(8*1024));
             $contents.= $sout;
             fwrite($handle2, $sout, round(8*1024));
         }
      fclose($handle);
      fclose($handle2);
    }

   $tmp = str_replace( '{status}',  $status      , $tmp );
   $tmp = str_replace('{updated}', date("d/m g:i a", filemtime($filename)), $tmp);
   
   preg_match_all("|size=\"2\"><a title=\"PBGUID:(.*)</a>|U", $contents, $out_nick, PREG_PATTERN_ORDER);
   preg_match_all("|size=\"2\">(.*)</font></td>|U", $contents, $out, PREG_PATTERN_ORDER);

   list($guid,$nick) = split("\">",$out_nick[1][0]);

   if($nick == "") {
     $tmp = "<br><br>Informazioni del tracker non disponibili!<br>L'utente potrebbe avere il profilo privato o il tracker non è momentaneamente disponibile!";
        return $tmp;
    }
   $tmp = str_replace( '{content}', $trackerid   , $tmp );
   $tmp = str_replace( '{nick}', $nick   , $tmp );
   $tmp = str_replace( '{guid}', $guid   , $tmp );
   $tmp = str_replace( '{rank}', $out[1][3]   , $tmp );
   $tmp = str_replace( '{fragrate}',  $out[1][17]      , $tmp );
   $tmp = str_replace( '{longestsession}',  $out[1][11]      , $tmp );
   $tmp = str_replace( '{kills}',  $out[1][13]      , $tmp );
   $tmp = str_replace( '{kia}',  $out[1][15]      , $tmp );
   $tmp = str_replace( '{honor}',  $out[1][5]      , $tmp );
    preg_match_all("|size=\"2\"><b>(.*)</b></font></td>|U", $contents, $out, PREG_PATTERN_ORDER);

    $map = $out[1];
    $bestmap = 5;
   
    for($i = 5; $i <sizeof($map); $i=$i+2)
       if(str_replace(" Hours","",$map[$bestmap]) <str_replace(" Hours","",$map[$i]))
           $bestmap = $i;
           
    $tmp = str_replace( '{bestmap}',  $map[$bestmap-1], $tmp);
       
       
   preg_match_all("|: (.+)%|U", $contents, $out, PREG_PATTERN_ORDER);
   
   $tmp = str_replace( '{activity}',  $out[1][0]      , $tmp );
   $tmp = str_replace( '{popularity}',  $out[1][1]      , $tmp );
   $tmp = str_replace( '{experience}',  $out[1][2]      , $tmp );
   $tmp = str_replace( '{nexthonor}',  $out[1][3]      , $tmp );
           
   preg_match_all("|Images/stars/(.*)\.gif|U", $contents, $out, PREG_PATTERN_ORDER);
   
   $tmp = str_replace( '{stars}',  $out[1][0]      , $tmp );
   
    return $tmp;
  }

 Cercate:

 

 $post_date = create_date($board_config['default_dateformat'], $postrow[$i]['post_time'], $board_config['board_timezone']);

$poster_posts = ( $postrow[$i]['user_id'] != ANONYMOUS ) ? $lang['Posts'] . ': ' . $postrow[$i]['user_posts'] : '';

 

 Dopo di questa aggiungete:

 

 $tmp="<br><br>
<strong><a href=\"http://www.aaotracker.com/usertracker.php?userid={content}\"><span style=\"color:#039fe2\">{nick}</span></a> </strong><br><span style=\"color:#9b9b9b\">{rank}</span><br>
<img src=\"http://aaotracker.com/Images/stars/{stars}.gif\">
<br><br>
Honor: <strong>{honor}</strong><br>
Fragrate: <span style=\"color:#99FFFF\"><strong>{fragrate}</strong></span><br>
Activity: <span style=\"color:#FF3366\"><strong>{activity} %</strong></span><br>

Popularity: <span style='color:#00FF33'><strong>{popularity} %</strong></span><br>

Experience: <span style='color:#33CCFF'><strong>{experience} %</strong></span><br>
<br>

Next Honor: <span style='color:#FFCC99'><strong>{nexthonor} %</strong></span><br><br>
I pwnd  <span style='color:#99CC66'><strong>{kills}</strong></span> n00bz <br />
I rosik <span style='color:#FF99CC'><strong>{kia}</strong></span> times<br />
ROE: A lot...<br />
<br>
Actually i'm <a href=\"http://www.aaotracker.com/usertracker.php?userid={content}\"> <img border=\"0\" src=\"http://www.aaotracker.com/trackericon.php?userid={content}&style=6\"></a><br /><br></strong><span style=\"color:#9b9b9b\">Last update {updated}<br>{status}</span><br>";
        $poster_tracker = get_external($tmp,$postrow[$i]['user_occ']);

 

 cercate:

 

 'RANK_IMAGE' => $rank_image,
'POSTER_JOINED' => $poster_joined,

 

dopo aggiungete:

 

 'POSTER_TRACKER' => $poster_tracker,

 

cercate:

 

$sql = "SELECT u.username, u.user_id, u.user_posts, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate, u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_sig_bbcode_uid, u.user_avatar, u.user_avatar_type, 

 

aggiungete dopo  u.user_avatar_type,

 

u.user_occ

 

così:

 

 $sql = "SELECT u.username, u.user_id, u.user_posts, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate, u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_sig_bbcode_uid, u.user_avatar, u.user_avatar_type, u.user_occ

 

e sto file è bello che finito salvate.

Passiamo ora al file:

 

 profile_view_body.tpl

 

 cercate:

 

 {L_OCCUPATION}

 

 e sostituitelo con:

 

 IdTracker

 

e anche questo è fatto.

Aprite ora:

 

 profile_add_body.tpl

 

 cercate:

 

 {L_OCCUPATION}

 

 e sostituitelo con:

 

 IdTracker

 

e anche questo è fatto.

 

ed ultima cosa aprite:

 

viewtopic_body.tpl

 

 cercate:

 

 {postrow.POSTER_POSTS}<br />

 

dopo questo aggiungete:

 

{postrow.POSTER_TRACKER}<br />

 

Ora è finita salvate tutto e uppate sul vostro server, e buon diverimento.

Ricordo anche per coloro che usano Invision di recarsi al seguente sito http://www.mpwebstudio.com/wordpress/?p=10 

 

Per problemi fatemi spaere sono qui per aiutarvi. 

Ultimo aggiornamento ( luned́ 22 ottobre 2007 )
 
< Prec.