Advertisement
Tblogger

fshare_vn.php

May 5th, 2015
563
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.74 KB | None | 0 0
  1. <?php
  2. if (!defined('RAPIDLEECH')) {
  3.         require_once 'index.html';
  4.         exit;
  5. }
  6.  
  7. class fshare_vn extends DownloadClass {
  8.  
  9.         public function Download($link) {
  10.                 global $premium_acc;
  11.                
  12.                 // Link Verification
  13.                 $this->LinkRegExp = '/https?:\/\/(?:www\.)?fshare\.vn\/file\/\w+\/?/im';
  14.                 if(!preg_match($this->LinkRegExp, $link, $output)){
  15.                         html_error('Looks Like Your Link Is Invalid');
  16.                 }
  17.                  
  18.                 // Get English Cookies
  19.                 $page = $this->GetPage('https://www.fshare.vn/location/en');
  20.                 $engcookies = GetCookiesArr($page);
  21.  
  22.                 // Intialize
  23.  
  24.                 if (!$_REQUEST['step']) {
  25.                         $this->page = $this->GetPage($link,$engcookies);
  26.                         is_present($this->page, 'Your requested file does not existed.');
  27.                         $this->cookie = GetCookies($page);
  28.                 }
  29.                 $this->link = $link;
  30.                 if ($_REQUEST['premium_acc'] == 'on' && (($_REQUEST['premium_user'] && $_REQUEST['premium_pass']) || ($premium_acc['fshare_vn']['user'] && $premium_acc['fshare_vn']['pass']))) {
  31.                         return $this->Premium();
  32.                 } elseif ($_REQUEST['step'] == 1) {
  33.                         return $this->DownloadFree();
  34.                 } else {
  35.                         return $this->PrepareFree();
  36.                 }
  37.         }
  38.  
  39.         private function Premium() {
  40.  
  41.                 $cookie = $this->login();
  42.                 $page = $this->GetPage($this->link, $cookie);
  43.             if(!preg_match('/Location:\s([^\r\n]+)/im', $page,$dl)){
  44.                 $filename = cut_str($page, '<div class="file" title="','">');
  45.                 $csrf = cut_str($page,'fs_csrf: \'','\'');
  46.                 $post = array('speed'=>'speed','fs_csrf'=>$csrf);
  47.                 $page = $this->GetPage('https://www.fshare.vn/download/index',$cookie,$post);
  48.                 $page = $this->Get_Reply($page);
  49.                 $durl = $page['url'];
  50.  
  51.             }
  52.                 if(!$dl){
  53.                     $dlink = $durl;
  54.                 } else{
  55.                     $dlink = $dl[1];
  56.                 }
  57.                
  58.                 $this->RedirectDownload($dlink, $filename, $cookie, 0, $this->link, $filename);
  59.         }
  60.  
  61.         private function login() {
  62.                 global $premium_acc,$engcookies;
  63.              
  64.                 $user = ($_REQUEST["premium_user"] ? trim($_REQUEST["premium_user"]) : $premium_acc ["fshare_vn"] ["user"]);
  65.                 $pass = ($_REQUEST["premium_pass"] ? trim($_REQUEST["premium_pass"]) : $premium_acc ["fshare_vn"] ["pass"]);
  66.                 if (empty($user) || empty($pass)) html_error("Login failed, username or password is empty!");
  67.                
  68.                 $url = 'https://www.fshare.vn';
  69.                 $page = $this->GetPage($url.'/login',$engcookies);
  70.                 $cookies = GetCookiesArr($page);
  71.                 $csrf = cut_str($page,'<div style="display:none"><input type="hidden" value="','" name="fs_csrf" /></div>');
  72.                 $post = array();
  73.                 $post['fs_csrf'] = $csrf;
  74.                 $post['LoginForm[email]'] = $user;
  75.                 $post['LoginForm[password]'] = $pass;
  76.                 $post['LoginForm[rememberMe]'] = 0;
  77.                 $post['LoginForm[rememberMe]'] = 1;
  78.                 $post['yt0'] = 'login';
  79.                 $page = $this->GetPage($url.'/login', $cookies, $post, $url.'/login');
  80.                 $cookies = GetCookiesArr($page);
  81.                 is_present($page, 'Incorrect username or password');
  82.  
  83.                 //check account
  84.                 $page = $this->GetPage($url.'/account/infoaccount', $cookies, 0, $url.'/');
  85.                 is_notpresent($page, 'Expire Date', 'Account isn\'t Premium?');
  86.  
  87.                 return $cookies;
  88.         }
  89.  
  90.         private function DownloadFree() {
  91.                 html_error('Currently Not Supported');
  92.         }
  93.  
  94.         private function PrepareFree() {
  95.                 html_error('Currently Not Supported');
  96.         }
  97.  
  98.         private function Get_Reply($page) {
  99.                 if (!function_exists('json_decode')) html_error("Error: Please enable JSON in php.");
  100.                 $json = substr($page, strpos($page, "\r\n\r\n") + 4);
  101.                 $json = substr($json, strpos($json, "{"));
  102.                 $json = substr($json, 0, strrpos($json, "}") + 1);
  103.                 $rply = json_decode($json, true);
  104.                 if (!$rply || (is_array($rply) && count($rply) == 0)) html_error("Error getting json data.");
  105.                 return $rply;
  106.         }
  107.  
  108.  
  109. }
  110.  
  111. /* Written By Tblogger [Fshare.vn Premium Download Plugin 05-05-2015]
  112.  
  113. */
  114.  
  115.  
  116. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement