| \n Login to $domain \n";
$cookie = array('4langcookie' => 'en');
if (!empty($_REQUEST['up_login']) && !empty($_REQUEST['up_pass'])) {
if (!empty($_REQUEST['A_encrypted'])) {
$_REQUEST['up_login'] = decrypt(urldecode($_REQUEST['up_login']));
$_REQUEST['up_pass'] = decrypt(urldecode($_REQUEST['up_pass']));
unset($_REQUEST['A_encrypted']);
}
$post = array();
$post['login'] = urlencode($_REQUEST['up_login']);
$post['password'] = urlencode($_REQUEST['up_pass']);
$post['returnto'] = urlencode($home_url);
$post['_remember'] = $post['remember'] = 'on';
$page = ul_GetPage($referer . 'web/login', $cookie, $post, $referer);
is_present($page, 'Invalid e-mail address or password', 'Login Failed: Email/Password incorrect.');
$cookie = GetCookiesArr($page, $cookie);
if (empty($cookie['Login']) || empty($cookie['Password'])) html_error('Login Error.');
$login = true;
} else {
html_error('Login Failed: Login/Password empty.');
}
// Retrive upload ID
echo "\nRetrieving upload ID \n";
$page = ul_GetPage($referer . 'account/home.jsp', $cookie, 0, $referer);
$cookie = GetCookiesArr($page, $cookie);
if (!preg_match('@dc_path\s*:\s*[\'\"](https?://dc\d+\.4shared\.com)[\'\"]@i', $page, $up_server)) html_error('Upload Server Not Found.');
$up_server = $up_server[1];
if (!preg_match('@(?:id="jsRootFolderIdForCurrentUser"|class="jsRootId") value="([\w\-\.]+)"@i', $page, $folder_id)) html_error('Root Folder ID Not Found.');
$folder_id = urlencode($folder_id[1]);
$up_url = "$up_server/main/upload.jsp?x-upload-dir=$folder_id";
// Uploading
echo "\n";
$url = parse_url($up_url);
$upfiles = upfile($url['host'], defport($url), $url['path'].(!empty($url['query']) ? '?'.$url['query'] : ''), $referer . 'account/home.jsp', $cookie, array(), $lfile, $lname, 'tfff0', '', $_GET['proxy'], $pauth, 0, $url['scheme']);
// Upload Finished
echo "\n";
is_page($upfiles);
if (!preg_match('@https?://(?:www\.)?4shared\.com/\w+/[\w\-\.]+/[^\r\n\"\'<>]+\.html?@i', $upfiles, $download_link)) {
if (preg_match('@id="alert"\s+value=\"([^\"\r\n<>]+)\"@i', $upfiles, $err)) html_error('Upload Error: ' . htmlspecialchars($err[1]));
is_notpresent($upfiles, 'Your upload has successfully completed!', 'Upload Failed.');
html_error('Download-Link not Found.');
}
$download_link = $download_link[0];
}
function ul_GetPage($link, $cookie = 0, $post = 0, $referer = 0, $auth = 0, $XMLRequest = 0) {
if (!$referer && !empty($GLOBALS['Referer'])) {
$referer = $GLOBALS['Referer'];
}
if ($GLOBALS['use_curl']) {
if ($XMLRequest) $referer .= "\r\nX-Requested-With: XMLHttpRequest";
$page = cURL($link, $cookie, $post, $referer, $auth);
} else {
global $pauth;
$Url = parse_url($link);
$page = geturl($Url['host'], defport($Url), $Url['path'] . (!empty($Url['query']) ? '?' . $Url['query'] : ''), $referer, $cookie, $post, 0, !empty($_GET['proxy']) ? $_GET['proxy'] : '', $pauth, $auth, $Url['scheme'], 0, $XMLRequest);
is_page($page);
}
return $page;
}
//[11-11-2015] ReWritten by Th3-822.
//[13-11-2015] Fixed Link Regexp. - Th3-822
?> |