]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/wernis_functions.php
- Major change in LOAD_EMAIL_TEMPLATE(). The deprecated switch() block has
[mailer.git] / inc / libs / wernis_functions.php
index ae8ed57e564828690e966d5b168488d99e497471..6a3725ac021a8ffcffd921aa32fdbe6de882be9a 100644 (file)
@@ -65,9 +65,6 @@ function GET_WERNIS_ERROR_CODE () {
        if (isset($WERNIS['status'])) {
                // Use raw message
                return $WERNIS['status'];
-       } elseif (isset($WERNIS['status'])) {
-               // Fall-back to status
-               return sprintf(WERNIS_ERROR_STATUS, $WERNIS['status']);
        } else {
                // Something bad happend
                return WERNIS_UNKNOWN_ERROR;
@@ -85,7 +82,7 @@ function WERNIS_SEND_REQUEST ($scriptName, $requestData =  array()) {
                        'status'  => "failed_general",
                        'message' => WERNIS_API_REQUEST_DATA_INVALID
                );
-       }
+       } // END - if
 
        // Is the API id and MD5 hash there?
        if ((empty($_CONFIG['wernis_api_id'])) || (empty($_CONFIG['wernis_api_md5']))) {
@@ -94,25 +91,26 @@ function WERNIS_SEND_REQUEST ($scriptName, $requestData =  array()) {
                        'status'  => "failed_general",
                        'message' => WERNIS_API_REQUEST_DATA_MISSING
                );
-       }
+       } // END - if
+
+       // Add more request data
+       $requestData['api_id']  = bigintval($_CONFIG['wernis_api_id']);
+       $requestData['api_key'] = $_CONFIG['wernis_api_key'];
 
        // Construct the request string
-       $requestString = $_CONFIG['wernis_api_url'] . $scriptName."?api_id=".$_CONFIG['wernis_api_id']."&api_key=".$_CONFIG['wernis_api_md5'];
-       foreach ($requestData as $key=>$value) {
-               $requestString .= "&".$key."=".$value;
-       }
+       $requestString = $_CONFIG['wernis_api_url'] . $scriptName;
 
        // Get the raw response from the lower function
-       $response = MXCHANGE_OPEN($requestString);
+       $response = POST_URL($requestString, $requestData);
 
        // Check the response header if all is fine
        if (strpos($response[0], "200") === false) {
                // Something bad happend... :(
                return array(
-                       'status'  => "request_eror",
+                       'status'  => "request_error",
                        'message' => sprintf(WERNIS_API_REQUEST_ERROR, $response[0])
                );
-       }
+       } // END - if
 
        // All (maybe) fine so remove the response header from server
        $response = $response[(count($response) - 1)];
@@ -121,7 +119,7 @@ function WERNIS_SEND_REQUEST ($scriptName, $requestData =  array()) {
        if (substr($response, 0, 1) == "&") {
                // Remove the leading & (which can be used in Flash)
                $response = substr($response, 1);
-       }
+       } // END - if
 
        // Bring back the response
        $data = explode("=", $response);
@@ -130,9 +128,10 @@ function WERNIS_SEND_REQUEST ($scriptName, $requestData =  array()) {
        $return = array();
 
        // We use only the first two entries (which shall be fine)
-       if ($data[0] == "error") {
+       if ($data[0] === "error") {
                // The request has failed... :(
                switch ($data[1]) {
+                       case "404": // Invalid API ID
                        case "AUTH": // Authorization has failed
                                $return = array(
                                        'status'  => "auth_failed",
@@ -140,6 +139,8 @@ function WERNIS_SEND_REQUEST ($scriptName, $requestData =  array()) {
                                );
                                break;
 
+                       case "LOCKED": // User account is locked!
+                       case "PASS": // Bad passphrase entered
                        case "USER": // Missing account or invalid password
                                $return = array(
                                        'status'  => "user_failed",
@@ -211,10 +212,21 @@ function WERNIS_TEST_API () {
 // Widthdraw this amount
 function WERNIS_EXECUTE_WITHDRAW ($wdsId, $userMd5, $amount) {
        global $_CONFIG;
+
+       // Is the sponsor extension installed?
+       if (!EXT_IS_ACTIVE("sponsor")) {
+               // No, abort here
+               return false;
+       } elseif (!IS_SPONSOR()) {
+               // No sponsor, not allowed to withdraw!
+               return false;
+       }
+
+       // Default is failed attempt
        $result = false;
 
        // Prepare the purpose
-       $eval = "\$purpose = \"".COMPILE_CODE(WERNIS_API_PURPOSE_WITHDRAW)."\";";
+       $eval = "\$purpose = \"".COMPILE_CODE(sprintf(WERNIS_API_PURPOSE_WITHDRAW, $GLOBALS['userid']))."\";";
        eval($eval);
 
        // Prepare the request data
@@ -252,10 +264,12 @@ function WERNIS_EXECUTE_WITHDRAW ($wdsId, $userMd5, $amount) {
 // Payout this amount
 function WERNIS_EXECUTE_PAYOUT ($wdsId, $userMd5, $amount) {
        global $_CONFIG;
+
+       // Default is failed attempt
        $result = false;
 
        // Prepare the purpose
-       $eval = "\$purpose = \"".COMPILE_CODE(WERNIS_API_PURPOSE_PAYOUT)."\";";
+       $eval = "\$purpose = \"".COMPILE_CODE(sprintf(WERNIS_API_PURPOSE_PAYOUT, $GLOBALS['userid']))."\";";
        eval($eval);
 
        // Prepare the request data