Th3-822 icon

[rapidleech][d] ultramegabit_com.php

Th3-822 | PRO | 09/06/12 11:50:28 PM UTC | 0 ⭐ | 1142 👁️ | Never ⏰ | []
PHP |

3.74 KB

|

None

|

0 👍

/

0 👎

<?php
 
if (!defined('RAPIDLEECH')) {
    require_once ('index.html');
    exit();
}
 
class ultramegabit_com extends DownloadClass {
    private $page, $cookie;
    public function Download($link) {
        global $premium_acc;
 
        $this->page = $this->GetPage($link, $this->cookie);
        is_present($this->page, "\r\nContent-Length: 0\r\n", 'Invalid link?');
        $this->cookie = GetCookiesArr($this->page);
 
        if ($_REQUEST['premium_acc'] == 'on' && ((!empty($_REQUEST['premium_user']) && !empty($_REQUEST['premium_pass'])) || (!empty($premium_acc['ultramegabit_com']['user']) && !empty($premium_acc['ultramegabit_com']['pass'])))) $this->Login($link);
        else $this->FreeDL($link);
    }
 
    private function FreeDL($link, $acc=false) {
        $post = array();
        $post['csrf_token'] = cut_str($this->page, 'name="csrf_token" value="', '"');
        $post['encode'] = cut_str($this->page, 'name="encode" value="', '"');
 
        $page = $this->GetPage('http://ultramegabit.com/file/download', $this->cookie, $post);
        is_present('/user/confirm', 'Your account isn\'t validated.');
        if (preg_match('@/alert/delay/(\d+)@i', $page, $time)) {
            $wtime = $acc ? 20 : 30;
            $msg = $acc ? 'Free users' : 'Guests';
            $wait = ($time[1] - time()) + ($wtime * 60);
 
            $this->JSCountdown($wait, 0, "$msg are only able to download 1 file every $wtime minutes");
            return;
        }
        if (!preg_match('@https?://[^/\r\n]+/files/[^\'\"\s\t<>\r\n]+@i', $page, $dlink)) html_error('Error: Download link not found.');
 
        $FileName = urldecode(basename(parse_url($dlink[0], PHP_URL_PATH)));
        $this->RedirectDownload($dlink[0], $FileName);
    }
 
    private function PremiumDL($link) {
        if (!preg_match('@https?://[^/\r\n]+/files/[^\'\"\s\t<>\r\n]+@i', $this->page, $dlink)) {
            $post = array();
            $post['csrf_token'] = cut_str($this->page, 'name="csrf_token" value="', '"');
            $post['encode'] = cut_str($this->page, 'name="encode" value="', '"');
 
            $page = $this->GetPage('http://ultramegabit.com/file/download', $this->cookie, $post);
 
            if (!preg_match('@https?://[^/\r\n]+/files/[^\'\"\s\t<>\r\n]+@i', $page, $dlink)) html_error('Error: Download-link not found.');
        }
 
        $FileName = urldecode(basename(parse_url($dlink[0], PHP_URL_PATH)));
        $this->RedirectDownload($dlink[0], $FileName);
    }
 
    private function Login($link) {
        global $premium_acc;
        $pA = (!empty($_REQUEST['premium_user']) && !empty($_REQUEST['premium_pass']) ? true : false);
        $user = ($pA ? $_REQUEST['premium_user'] : $premium_acc['ultramegabit_com']['user']);
        $pass = ($pA ? $_REQUEST['premium_pass'] : $premium_acc['ultramegabit_com']['pass']);
        if (empty($user) || empty($pass)) html_error('Login Failed: User or Password is empty. Please check login data.');
 
        $purl = 'http://ultramegabit.com/';
        $post = array();
        $post['csrf_token'] = cut_str($this->page, 'name="csrf_token" value="', '"');
        $post['submit'] = 'Login';
        $post['return_url'] = urlencode($purl.'user/details');
        $post['username'] = urlencode($user);
        $post['password'] = urlencode($pass);
 
        $page = $this->GetPage($purl.'login', $this->cookie, $post, $purl);
        is_present($page, 'Invalid username or password', 'Login failed: User/Password incorrect.');
        is_notpresent($page, "\r\nContent-Length: 0\r\n", 'Login failed.');
        $this->cookie = GetCookiesArr($page);
 
        $page = $this->GetPage($purl.'user/details', $this->cookie, 0, $purl.'login');
 
        $this->page = $this->GetPage($link, $this->cookie);
 
        if (stripos($page, '"Premium Member"') === false) {
            $this->changeMesg(lang(300).'<br /><b>Account isn\'t premium</b><br />Using it as member.');
            return $this->FreeDL($link, true);
        } else return $this->PremiumDL($link);
    }
}
 
// [06-9-2012]  Written by Th3-822.
// Pastebin, please don't delete this paste, isn't "higher spam".
 
?>

Comments