Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- Power Decoder Ioncube-Zend 6.5
- Member: vv456
- Official site: http://www.waraxe.us/forum-userprofile-8669.html
- **/
- function dineromail_cl( $licensekey, $localkey = "" )
- {
- $whmcsurl = "http://clientes.bthost.com.ar/";
- $licensing_secret_key = "DMBASICO-MD5-VALIDATION-PHRASE";
- $check_token = time( ).md5( mt_rand( 1000000000, 1e+010 ).$licensekey );
- $checkdate = date( "Ymd" );
- $usersip = $Tmp_19 ? $_SERVER['SERVER_ADDR'] : $_SERVER['LOCAL_ADDR'];
- $localkeydays = 15;
- $allowcheckfaildays = 2;
- $localkeyvalid = false;
- if ( $localkey )
- {
- $localkey = str_replace( "\n", "", $localkey );
- $localdata = substr( $localkey, 0, strlen( $localkey ) - 32 );
- $md5hash = substr( $localkey, strlen( $localkey ) - 32 );
- if ( $md5hash == md5( $localdata.$licensing_secret_key ) )
- {
- $localdata = strrev( $localdata );
- $md5hash = substr( $localdata, 0, 32 );
- $localdata = substr( $localdata, 32 );
- $localdata = base64_decode( $localdata );
- $localkeyresults = unserialize( $localdata );
- $originalcheckdate = $localkeyresults['checkdate'];
- if ( $md5hash == md5( $originalcheckdate.$licensing_secret_key ) )
- {
- $localexpiry = date( "Ymd", mktime( 0, 0, 0, date( "m" ), date( "d" ) - $localkeydays, date( "Y" ) ) );
- if ( $localexpiry < $originalcheckdate )
- {
- $localkeyvalid = true;
- $results = $localkeyresults;
- $validdomains = explode( ",", $results['validdomain'] );
- if ( !in_array( $_SERVER['SERVER_NAME'], $validdomains ) )
- {
- $localkeyvalid = false;
- $localkeyresults['status'] = "Invalid";
- $results = array( );
- }
- $validips = explode( ",", $results['validip'] );
- if ( !in_array( $usersip, $validips ) )
- {
- $localkeyvalid = false;
- $localkeyresults['status'] = "Invalid";
- $results = array( );
- }
- if ( $results['validdirectory'] != dirname( __FILE__ ) )
- {
- $localkeyvalid = false;
- $localkeyresults['status'] = "Invalid";
- $results = array( );
- }
- }
- }
- }
- }
- if ( !$localkeyvalid )
- {
- $postfields['licensekey'] = $licensekey;
- $postfields['domain'] = $_SERVER['SERVER_NAME'];
- $postfields['ip'] = $usersip;
- $postfields['dir'] = dirname( __FILE__ );
- if ( $check_token )
- {
- $postfields['check_token'] = $check_token;
- }
- if ( function_exists( "curl_exec" ) )
- {
- $ch = curl_init( );
- curl_setopt( $ch, CURLOPT_URL, $whmcsurl."modules/servers/licensing/verify.php" );
- curl_setopt( $ch, CURLOPT_POST, 1 );
- curl_setopt( $ch, CURLOPT_POSTFIELDS, $postfields );
- curl_setopt( $ch, CURLOPT_TIMEOUT, 30 );
- curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
- $data = curl_exec( $ch );
- curl_close( $ch );
- }
- else
- {
- $fp = fsockopen( $whmcsurl, 80, $errno, $errstr, 5 );
- if ( $fp )
- {
- $querystring = "";
- foreach ( $postfields as $k => $v )
- {
- $querystring .= "{$k}=".urlencode( $v )."&";
- }
- $header = "POST ".$whmcsurl."modules/servers/licensing/verify.php HTTP/1.0\r\n";
- $header .= "Host: ".$whmcsurl."\r\n";
- $header .= "Content-type: application/x-www-form-urlencoded\r\n";
- $header .= "Content-length: ".@strlen( @$querystring )."\r\n";
- $header .= "Connection: close\r\n\r\n";
- $header .= $querystring;
- $data = "";
- @stream_set_timeout( @$fp, 20 );
- @fputs( @$fp, @$header );
- $status = @socket_get_status( @$fp );
- while ( !feof( @$fp ) && $status )
- {
- $data .= @fgets( @$fp, 1024 );
- $status = @socket_get_status( @$fp );
- }
- @fclose( @$fp );
- }
- }
- if ( !$data )
- {
- $localexpiry = date( "Ymd", mktime( 0, 0, 0, date( "m" ), date( "d" ) - ( $localkeydays + $allowcheckfaildays ), date( "Y" ) ) );
- if ( $localexpiry < $originalcheckdate )
- {
- $results = $localkeyresults;
- }
- else
- {
- $results['status'] = "Invalid";
- $results['description'] = "Remote Check Failed";
- return $results;
- }
- }
- preg_match_all( "/<(.*?)>([^<]+)<\\/\\1>/i", $data, $matches );
- $results = array( );
- foreach ( $matches[1] as $k => $v )
- {
- $results[$v] = $matches[2][$k];
- }
- if ( $results['md5hash'] && $results['md5hash'] != md5( $licensing_secret_key.$check_token ) )
- {
- $results['status'] = "Invalid";
- $results['description'] = "MD5 Checksum Verification Failed";
- return $results;
- }
- if ( $results['status'] == "Active" )
- {
- $results['checkdate'] = $checkdate;
- $data_encoded = serialize( $results );
- $data_encoded = base64_encode( $data_encoded );
- $data_encoded = md5( $checkdate.$licensing_secret_key ).$data_encoded;
- $data_encoded = strrev( $data_encoded );
- $data_encoded = $data_encoded.md5( $data_encoded.$licensing_secret_key );
- $data_encoded = wordwrap( $data_encoded, 80, "\n", true );
- $results['localkey'] = $data_encoded;
- }
- $results['remotecheck'] = true;
- }
- unset( $postfields );
- unset( $data );
- unset( $matches );
- unset( $whmcsurl );
- unset( $licensing_secret_key );
- unset( $checkdate );
- unset( $usersip );
- unset( $localkeydays );
- unset( $allowcheckfaildays );
- unset( $md5hash );
- return $results;
- }
- function dineromail_getCurrencies( )
- {
- $currencies = mysql_query( "SELECT id, code, rate FROM tblcurrencies ORDER BY id ASC" );
- $currenciesCount = mysql_num_rows( $currencies );
- $currenciesLegend = "";
- $currenciesOptions = "";
- $i = 1;
- while ( $i <= $currenciesCount )
- {
- $currRow = mysql_fetch_array( $currencies );
- $currenciesLegend .= $currRow['id'].": ".$currRow['code'];
- $currenciesLegend .= $i != $currenciesCount ? ", " : "";
- $currenciesOptions .= $currRow['id'].( $i != $currenciesCount ? "," : "" );
- ++$i;
- }
- return array( "currenciesLegend" => $currenciesLegend, "currenciesOptions" => $currenciesOptions );
- }
- function dineromail_config( )
- {
- $currencies = dineromail_getcurrencies( );
- $currenciesLegend = $currencies['currenciesLegend'];
- $currenciesOptions = $currencies['currenciesOptions'];
- $configarray = array( "FriendlyName" => array( "Type" => "System", "Value" => "DineroMail" ), "dm_name" => array( "FriendlyName" => "Vendedor", "Type" => "text", "Size" => "35", "Description" => "Nombre que deseas que aparezca en DineroMail como vendedor" ), "dm_nrocta" => array( "FriendlyName" => "Número de Cuenta", "Type" => "text", "Size" => "7", "Description" => "Ejemplo: <strong>1234567</strong>/8 (Lo que está en negrita)" ), "dm_ipn" => array( "FriendlyName" => "Contraseña IPN", "Type" => "text", "Size" => "20", "Description" => "Contraseña de la IPN de la cuenta" ), "dm_pais" => array( "FriendlyName" => "País", "Type" => "dropdown", "Options" => "1,2,3,4", "Description" => "1: Argentina, 2: Brasil, 3: Chile, 4: México" ), "dm_moneda" => array( "FriendlyName" => "Moneda", "Type" => "dropdown", "Options" => "ars,mxn,clp,usd,brl", "Description" => "Moneda que utilizará DineroMail" ), "dm_medios" => array( "FriendlyName" => "Medios de Pago", "Type" => "text", "Description" => "Ejemplo: ar_pagofacil;ar_visa;ar_dm; (dejalo en blanco para habilitar todos, o visita la tabla de medios de pagos)" ), "dm_nombre_item" => array( "FriendlyName" => "Nombre del Item", "Type" => "text", "Description" => "Ejemplo: Factura #" ), "dm_logo" => array( "FriendlyName" => "URL del Logo", "Type" => "text", "Size" => "50", "Description" => "Ej. https://www.dominio.com/logo.jpg" ), "dm_boton" => array( "FriendlyName" => "URL del Botón", "Type" => "text", "Size" => "50", "Description" => "Ej. https://www.dominio.com/botondepago.jpg" ), "dm_url_exito" => array( "FriendlyName" => "URL de Compra Exitosa", "Type" => "text", "Size" => "50", "Description" => "Ej. https://www.dominio.com/exito.html. Dejalo en blanco para que vuelva a la factura." ), "dm_url_fracaso" => array( "FriendlyName" => "URL de Compra Fracasada", "Type" => "text", "Size" => "50", "Description" => "Ej. https://www.dominio.com/fracaso.html. Dejalo en blanco para que vuelva a la factura." ), "dm_url_pendiente" => array( "FriendlyName" => "URL de Compra Pendiente", "Type" => "text", "Size" => "50", "Description" => "Ej. https://www.dominio.com/pendiente.html. Dejalo en blanco para que vuelva a la factura." ), "dm_mensaje" => array( "FriendlyName" => "Mensaje", "Type" => "yesno", "Description" => "¿Desea que el comprador pueda dejar un mensaje?" ), "dm_lang" => array( "FriendlyName" => "Idioma", "Type" => "dropdown", "Options" => "es,pt,en", "Description" => "Idioma de la página de DineroMail. es: Español, pt: Portugués, en: English" ), "dm_license" => array( "FriendlyName" => "Licencia", "Type" => "text", "Size" => "20", "Description" => "Licencia otorgada por BTHost.com.ar - Internet Solutions" ), "dm_cbmoneda" => array( "FriendlyName" => "!Callback currency", "Type" => "dropdown", "Options" => $currencies['currenciesOptions'], "Description" => "<b>CAMPO REQUERIDO!</b> Elija la moneda de su sistema que coincida con la moneda local de tu cuenta de Dineromail.<br>Monedas configuradas en su sistema: (".$currencies['currenciesLegend'].").<br>Monedas locales de Dineromail: (Argentina: ARS, Brasil: BRL, Chile: CLP, Mexico: MXN)." ) );
- return $configarray;
- }
- function dineromail_link( $params )
- {
- $gtwLicense = $params['dm_license'];
- $gtwName = $params['dm_name'];
- $gtwCta = $params['dm_nrocta'];
- $gtwIPN = $params['dm_ipn'];
- $gtwPais = $params['dm_pais'];
- $gtwCurr = $params['dm_moneda'];
- $gtwMedios = empty( $params['dm_medios'] ) ? "all" : $params['dm_medios'];
- $gtwLogo = $params['dm_logo'];
- $gtwBoton = $params['dm_boton'];
- $gtwLang = $params['dm_lang'];
- $gtwUrlOk = empty( $params['dm_url_exito'] ) ? $params['returnurl'] : $params['dm_url_exito'];
- $gtwUrlFail = empty( $params['dm_url_fracaso'] ) ? $params['returnurl'] : $params['dm_url_fracaso'];
- $gtwUrlPending = empty( $params['dm_url_pendiente'] ) ? $params['returnurl'] : $params['dm_url_pendiente'];
- $gtwItemName = $params['dm_nombre_item'];
- $gtwMsg = $params['dm_mensaje'] == "on" ? 1 : 0;
- $gtwEnv = $params['dm_envio'] == "on" ? 1 : 0;
- $invoiceid = $params['invoiceid'];
- $description = $params['description'];
- $amount = $params['amount'];
- $currency = $params['currency'];
- $city = $params['clientdetails']['city'];
- $state = $params['clientdetails']['state'];
- $email = $params['clientdetails']['email'];
- $phone = $params['clientdetails']['phonenumber'];
- $b = array( "á", "é", "í", "ó", "ú", "ä", "ë", "ï", "ö", "ü", "à", "è", "ì", "ò", "ù", "ñ", " ", ",", ".", ";", ":", "¡", "!", "¿", "?", "\"" );
- $c = array( "a", "e", "i", "o", "u", "a", "e", "i", "o", "u", "a", "e", "i", "o", "u", "n", "", "", "", "", "", "", "", "", "", "" );
- $lastname = utf8_decode( $params['clientdetails']['lastname'] );
- $lastname = strtolower( $lastname );
- $lastname = ucfirst( str_replace( $b, $c, $lastname ) );
- $address1 = $params['clientdetails']['address1'];
- $postcode = $params['clientdetails']['postcode'];
- $firstname = $params['clientdetails']['firstname'];
- $companyname = $params['companyname'];
- $systemurl = $params['systemurl'];
- $currency = $params['currency'];
- $results = dineromail_cl( $gtwLicense );
- if ( $results['status'] != "Active" )
- {
- $code = "Licencia Invalida";
- }
- else
- {
- $code = "<form method=\"post\" action=\"https://checkout.dineromail.com/CheckOut\" target=\"_blank\">\r\n\t<p><input type=\"image\" border=\"0\" name=\"submit\" src=\"".$Var_4392."\" /></p>\r\n\t<input type=\"hidden\" name=\"tool\" value=\"button\" />\r\n\t<input type=\"hidden\" name=\"country_id\" value=\"".$gtwPais."\" />\r\n\t<input type=\"hidden\" name=\"currency\" value=\"".$gtwCurr."\" />\r\n\t<input type=\"hidden\" name=\"merchant\" value=\"".$gtwCta."\" />\r\n\t<input type=\"hidden\" name=\"seller_name\" value=\"".$gtwName."\" />\r\n\t<input type=\"hidden\" name=\"ok_url\" value=\"".$gtwUrlOk."\" />\r\n\t<input type=\"hidden\" name=\"error_url\" value=\"".$gtwUrlFail."\" />\r\n\t<input type=\"hidden\" name=\"pending_url\" value=\"".$gtwUrlPending."\" />\r\n\t<input type=\"hidden\" name=\"display_shipping\" value=\"0\" />\r\n <input type=\"hidden\" name=\"change_quantity\" value=\"0\" />\r\n <input type=\"hidden\" name=\"buyer_message\" value=\"".$gtwMsg."\" />\r\n <input type=\"hidden\" name=\"language\" value=\"".$gtwLang."\" />\r\n \r\n\t<input type=\"hidden\" name=\"transaction_id\" value=\"".$invoiceid."\" />\r\n \r\n\t<input type=\"hidden\" name=\"payment_method_available\" value=\"".$gtwMedios."\" />\r\n \r\n <input type=\"hidden\" name=\"item_name_1\" value=\"".$gtwItemName.$invoiceid."\" />\r\n <input type=\"hidden\" name=\"item_code_1\" value=\"".$invoiceid."\" />\r\n <input type=\"hidden\" name=\"item_quantity_1\" value=\"1\" />\r\n <input type=\"hidden\" name=\"item_ammount_1\" value=\"".$amount."\" />\r\n <input type=\"hidden\" name=\"item_currency_1\" value=\"".$gtwCurr."\" />\r\n \r\n <input type=\"hidden\" name=\"buyer_name\" value=\"".$firstname."\" />\r\n <input type=\"hidden\" name=\"buyer_lastname\" value=\"".$lastname."\" />\r\n <input type=\"hidden\" name=\"buyer_email\" value=\"".$email."\" />\r\n <input type=\"hidden\" name=\"buyer_phone\" value=\"".$phone."\" />\r\n <input type=\"hidden\" name=\"buyer_zip_code\" value=\"".$postcode."\" />\r\n <input type=\"hidden\" name=\"buyer_street\" value=\"".$address1."\" />\r\n <input type=\"hidden\" name=\"buyer_city\" value=\"".$city."\" />\r\n <input type=\"hidden\" name=\"buyer_state\" value=\"".$state."\" />\r\n \r\n\t<input type=\"hidden\" name=\"header_image\" value=\"".$gtwLogo."\" />\r\n <input type=\"hidden\" name=\"header_width\" value=\"1\" />\r\n\t</form>";
- }
- return $code;
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement