setDangerousToolsOff(); $this->display(); } public function keepalive(){ //echo 'alive'; jExit(); } public function getMemberStatus() { vRequest::vmCheckToken(); $data = new stdClass(); if(!vmAccess::manager()){ $data->msg = 'No rights'; echo vmJsApi::safe_json_encode($data); jExit(); } $request = 0; $ackey = VmConfig::get('member_access_number',''); $host = JUri::getInstance()->getHost(); if(!empty($host) AND !empty($ackey)) { $link = '//extensions.virtuemart.net/index.php?option=com_virtuemart&view=plugin&name=istraxx_download_byhost&ackey='.base64_encode( $ackey ).'&host='.$host.'&vmlang='.VmConfig::$vmlangTag.'&sku=VMMS&vmver='.vmVersion::$RELEASE; $opts = array( 'https'=>array( 'method'=>"GET" /*'header'=>"Accept-language: en\r\n" . "Cookie: foo=bar\r\n"*/ ) ); $context = stream_context_create($opts); $request = file_get_contents('https:'.$link, false, $context); if(!empty($request)) { if(preg_match('@(error|access denied)@i', $request)) { //return false; } else { $data = json_decode($request); if(empty($data->res) or empty($data->html)){ vmdebug('Data is empty',$data); $data = new stdClass(); $data->msg = 'Error getting validation file'; } else { $data = $this->nag($data); } } } } echo vmJsApi::safe_json_encode($data); jExit(); } private function nag($data){ if(!empty($data->res)){ if(!empty($data->html)){ if(!class_exists('vmCrypt')) require(VMPATH_ADMIN.DS.'helpers'.DS.'vmcrypt.php'); $safePath = vmCrypt::getEncryptSafepath(); $safePath .= DS.'vmm.ini'; $date = JFactory::getDate(); $today = $date->toUnix(); $content = ';res,FILTER_SANITIZE_STRING,FILTER_FLAG_STRIP_LOW).'" html = "'.htmlspecialchars($data->html).'" ; */ ?>'; $result = JFile::write($safePath, $content); } } return $data; } }