Esempio n. 1
0
 private static function fuukaFormat(Post $post) : array
 {
     $fuukaData = ['doc_id' => $post->getDocId(), 'num' => $post->getNo(), 'subnum' => 0, 'thread_num' => $post->getThreadId(), 'op' => $post->getNo() == $post->getThreadId() ? 1 : 0, 'fourchan_date' => $post->getChanTime(), 'timestamp' => $post->getTime(), 'name' => $post->name, 'name_processed' => $post->getName(), 'email' => $post->email, 'email_processed' => $post->getEmail(), 'trip' => $post->trip, 'trip_processed' => $post->getTripcode(), 'poster_hash_processed' => $post->getID(), 'poster_hash' => $post->id, 'comment_sanitized' => Yotsuba::toBBCode($post->getComment()), 'comment' => Yotsuba::toBBCode($post->getComment()), 'comment_processed' => $post->getComment(), 'title' => $post->sub, 'title_processed' => $post->getSubject()];
     if ($post->hasImage()) {
         $fuukaData['media'] = ['op' => $post->getThreadId() == $post->getNo() ? 1 : 0, 'preview_w' => $post->getThumbWidth(), 'preview_h' => $post->getThumbHeight(), 'media_filename' => $post->getFullFilename(), 'media_filename_processed' => $post->getFullFilename(), 'media_w' => $post->getWidth(), 'media_h' => $post->getHeight(), 'media_size' => $post->getFilesize(), 'media_hash' => base64_encode($post->getMD5Bin()), 'media_orig' => $post->getTim() . $post->getExtension(), 'media' => $post->getTim() . $post->getExtension(), 'preview_reply' => $post->getTim() . "s.jpg", 'remote_media_link' => $post->getImgUrl(), 'media_link' => $post->getImgUrl(), 'thumb_link' => $post->getThumbUrl()];
     } else {
         $fuukaData['media'] = null;
     }
     return $fuukaData;
 }
Esempio n. 2
0
 private static function makeNameBlock(Post $post)
 {
     /**
      * Capcode formatting, for mods and admins, etc. per the 4chan API spec.
      */
     switch ($post->capcode) {
         case "mod":
             $nameBlockExtra = " capcodeMod";
             $cap = " <strong class='capcode'>## Mod</strong>" . PHP_EOL;
             $cap .= '<img src="/image/modicon.gif" alt="This user is a 4chan Moderator." title="This user is a 4chan Moderator." class="identityIcon">';
             break;
         case "admin":
         case "admin_highlight":
             $nameBlockExtra = " capcodeAdmin";
             $cap = " <strong class='capcode'>## Admin</strong>" . PHP_EOL;
             $cap .= '<img src="/image/adminicon.gif" alt="This user is a 4chan Admin." title="This user is a 4chan Admin." class="identityIcon">';
             break;
         case "developer":
             $nameBlockExtra = " capcodeDeveloper";
             $cap = " <strong class='capcode'>## Developer</strong>" . PHP_EOL;
             $cap .= '<img src="/image/developericon.gif" alt="This user is a 4chan Developer." title="This user is a 4chan Developer." class="identityIcon">';
             break;
         case "manager":
             $nameBlockExtra = " capcodeManager";
             $cap = " <strong class='capcode'>## Manager</strong>" . PHP_EOL;
             $cap .= '<img src="/image/managericon.gif" alt="This user is a 4chan Manager." title="This user is a 4chan Manager." class="identityIcon">';
             break;
         default:
             $nameBlockExtra = "";
             $cap = "";
     }
     /**
      * Tripcode and email formatting.
      */
     /* @var HtmlElement $nameBlock */
     $nameBlock = span('', 'nameBlock' . $nameBlockExtra);
     $nameTrip = "";
     $name = span($post->getName(), 'name');
     if ($post->getTripcode() != '') {
         $nameTrip = $name . ' ' . span($post->getTripcode(), 'postertrip');
     } else {
         $nameTrip = (string) $name;
     }
     if ($post->getEmail() != '') {
         $nameBlock->append(a($nameTrip, 'mailto:' . $post->getEmail())->set('class', 'useremail'));
     } else {
         $nameBlock->append($nameTrip);
     }
     $nameBlock->append($cap);
     if ($post->getID() != "") {
         $idLink = a($post->getID(), "/{$post->getBoard()}/search/id/" . str_replace('/', '-', $post->getID()))->set('title', 'View posts by this ID')->set('class', 'hand posteruid postNum');
         $idSpan = span("(ID: {$idLink})", 'posteruid postNum id_' . $post->getID());
         $nameBlock->append(' ' . $idSpan);
     }
     return $nameBlock;
 }