zeg1jeux/lib/Fred.class.php

160 lines
4.4 KiB
PHP

<?php
class Fred {
private $gatewayProtocol = 'https';
private $gatewayDomain = 'astroport.copylaradio.com';
private $gatewayPort = ''; // :1234
private $gatewayDelay = 6;
public function __construct () {
}
public function donneMoiLaPutainDeClefIPNS ($prenomNom, $nomDuChienSuivieDeLaDateDeNaissanceDeJohnnyHallyday) {
$salt = $prenomNom;
$pepper = $nomDuChienSuivieDeLaDateDeNaissanceDeJohnnyHallyday;
$query = 'salt='. urlencode($salt) .'&pepper='. urlencode($pepper) .'&getipns=yes';
$page1 = file_get_contents($this->gatewayProtocol . '://'. $this->gatewayDomain . $this->gatewayPort . '/?' . $query);
if (empty($page1)) {
throw new Exception("J'ai pas pû récupérer la putain de première page.");
}
preg_match("`url='([^']+)'`isU", $page1, $matches);
$urlipns = $matches[1];
$page2 = '';
$rounds = 0;
while (empty($page2) and $rounds < 10) {
sleep($this->gatewayDelay);
$page2 = file_get_contents($urlipns);
}
if (empty($page2)) {
throw new Exception("J'ai pas pû récupérer la putain de deuxième page.");
}
$ClearText = preg_replace( "/\n\s+/", "\n", rtrim(html_entity_decode(strip_tags($page2))) );
preg_match("`url='([^']+)'`isU", $ClearText, $matches);
$ipnsKey = $matches[1];
return $ipnsKey;
}
public function donneMoiSesPutainDeMessagesGchange ($prenomNom, $nomDuChienSuivieDeLaDateDeNaissanceDeJohnnyHallyday, $gchangeName) {
$salt = $prenomNom;
$pepper = $nomDuChienSuivieDeLaDateDeNaissanceDeJohnnyHallyday;
$query = 'salt='. $salt .'&pepper='. $pepper . '&messaging=' . $gchangeName;
$page1 = file_get_contents($this->gatewayProtocol . '://'. $this->gatewayDomain .':' . $this->gatewayPort . '/?' . $query);
if (empty($page1)) {
throw new Exception("J'ai pas pû récupérer la putain de première page.");
}
// echo '<pre>'; var_dump(htmlspecialchars($page1)); echo '</pre>';
preg_match("`url='([^']+)'`isU", $page1, $matches);
$urlmessages = $matches[1];
// echo '<pre>'; var_dump($urli); echo '</pre>';
$page2 = '';
$rounds = 0;
while (empty($page2) and $rounds < 10) {
sleep($this->gatewayDelay);
$page2 = file_get_contents($urlmessages);
}
if (empty($page2)) {
throw new Exception("J'ai pas pû récupérer la putain de deuxième page.");
}
// echo '<pre>'; var_dump(htmlspecialchars($page2)); echo '</pre>';
$json = $page2;
return json_decode($json);
}
public function donneMoiSaPutaindeG1Pub ($prenomNom, $nomDuChienSuivieDeLaDateDeNaissanceDeJohnnyHallyday) {
$salt = $prenomNom;
$pepper = $nomDuChienSuivieDeLaDateDeNaissanceDeJohnnyHallyday;
$query = 'salt='. urlencode($salt) .'&pepper='. urlencode($pepper) . '&getg1pub=yes';
$urlj = $this->gatewayProtocol . '://'. $this->gatewayDomain .':' . $this->gatewayPort . '/?' . $query;
// echo '<pre>'; var_dump(htmlspecialchars($urlj)); echo '</pre>';
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: fr\r\n",
'follow_location' => 0
)
);
$context = stream_context_create($opts);
$page1 = file_get_contents($urlj, false, $context);
if (empty($page1)) {
throw new Exception("J'ai pas pû récupérer la putain de première page.");
}
// die('<pre>' . htmlspecialchars($page1) . '</pre>');
preg_match("`url='([^']+)'`isU", $page1, $matches);
// die(
// '<pre>' . htmlspecialchars($page1) . '</pre>' .
// '<pre>' . print_r($matches, true) . '</pre>'
// );
$urlg1pub = $matches[1];
$page2 = '';
sleep($this->gatewayDelay);
$page2 = file_get_contents($urlg1pub);
if (empty($page2)) {
throw new Exception("J'ai pas pû récupérer la putain de deuxième page.");
}
$ClearText = preg_replace( "/\n\s+/", "\n", rtrim(html_entity_decode(strip_tags($page2))) );
preg_match("`url='([^']+)'`isU", $ClearText, $matches);
$gchangeId = $matches[1];
return $gchangeId;
}
}