X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Flibs%2Fyoomedia_functions.php;h=5c5d437460674a32b571a3276559a3ce886ddd8f;hb=62d8f6d89c35bebe15b8f716a5629f14d95f3078;hp=75a0362ebc9b8350c9342ea5cd2b754d57bff618;hpb=3a8ec8c585e2c83ad14d9a4dd9741cb58b7d9241;p=mailer.git diff --git a/inc/libs/yoomedia_functions.php b/inc/libs/yoomedia_functions.php index 75a0362ebc..5c5d437460 100644 --- a/inc/libs/yoomedia_functions.php +++ b/inc/libs/yoomedia_functions.php @@ -14,10 +14,9 @@ * $Date:: $ * * $Tag:: 0.2.1-FINAL $ * * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * + * Copyright (c) 2009, 2010 by Mailer Developer Team * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -39,6 +38,57 @@ // Some security stuff... if (!defined('__SECURITY')) { die(); +} // END - if + +// Queries the given Yoo!Media API 2.0 script +function YOOMEDIA_QUERY_API ($script, $countQuery = true) { + // Init response array + $response = array(); + + // Enougth queries left? + if ((getConfig('yoomedia_requests_remain') > 0) || ($countQuery === false)) { + // Prepare the low-level request + $requestString = sprintf("http://www.yoomedia.de/interface_2.0/%s?id=%s&sid=%s&pw=%s&reload=%s&ma=%s&uebrig=%s&verguetung=%s&erotik=%s", + $script, + getConfig('yoomedia_id'), + getConfig('yoomedia_sid'), + getConfig('yoomedia_passwd'), + getConfig('yoomedia_tm_max_reload'), + getConfig('yoomedia_tm_min_wait'), + getConfig('yoomedia_tm_clicks_remain'), + getConfig('yoomedia_tm_min_pay'), + getConfig('yoomedia_erotic_allowed') + ); + + // Run the query + $response = sendGetRequest($requestString); + + // Convert from ISO to UTF-8 only if count is > 3 because <= 3 means timeout + if (count($response) > 3) { + // Convert all lines to UTF-8 + foreach ($response as $k => $v) { + // Convert the line + $response[$k] = iconv('windows-1252', 'UTF-8//TRANSLIT', $v); + /* + // iconv()-less ISO-8859-1 -> UTF-8 + $response[$k] = preg_replace( + "/([\x80-\xFF])/e", + "chr(0xC0|ord('\\1')>>6).chr(0x80|ord('\\1')&0x3F)", + $v + ); + */ + } // END - foreach + } // END - if + + // Shall we count the query as used? + if ($countQuery === true) { + // Then update the config! + updateConfiguration('yoomedia_requests_remain', 1, '-'); + } // END - if + } // END - if + + // Return the data + return $response; } // Test if the extension settings did work @@ -67,7 +117,7 @@ function YOOMEDIA_TEST_CONFIG ($data) { $errorCode = YOOMEDIA_GET_ERRORCODE_FROM_RESULT($response); // Log the response if failed - if (count($response) == '0') { + if (count($response) == 0) { // Queries depleted (as we count here!) logDebugMessage(__FUNCTION__, __LINE__, 'Requested depleted. Maxmimum was: ' . getConfig('yoomedia_requests_total')); $errorCode = -1; @@ -91,53 +141,6 @@ function YOOMEDIA_TEST_CONFIG ($data) { return ($errorCode == '0'); } -// Queries the given Yoo!Media API 2.0 script -function YOOMEDIA_QUERY_API ($script, $countQuery = true) { - // Init response array - $response = array(); - - // Enougth queries left? - if ((getConfig('yoomedia_requests_remain') > 0) || ($countQuery === false)) { - // Prepare the low-level request - $requestString = sprintf("http://www.yoomedia.de/interface_2.0/%s?id=%s&sid=%s&pw=%s&reload=%s&ma=%s&uebrig=%s&verguetung=%s&erotik=%s", - $script, - getConfig('yoomedia_id'), - getConfig('yoomedia_sid'), - getConfig('yoomedia_passwd'), - getConfig('yoomedia_tm_max_reload'), - getConfig('yoomedia_tm_min_wait'), - getConfig('yoomedia_tm_clicks_remain'), - getConfig('yoomedia_tm_min_pay'), - getConfig('yoomedia_erotic_allowed') - ); - - // Run the query - $response = sendGetRequest($requestString); - - // Convert from ISO to UTF-8 - foreach ($response as $k => $v) { - $response[$k] = iconv('windows-1252', 'UTF-8//TRANSLIT', $v); - /* - // iconv()-less ISO-8859-1 -> UTF-8 - $response[$k] = preg_replace( - "/([\x80-\xFF])/e", - "chr(0xC0|ord('\\1')>>6).chr(0x80|ord('\\1')&0x3F)", - $v - ); - */ - } // END - if - - // Shall we count the query as used? - if ($countQuery === true) { - // Then update the config! - updateConfiguration('yoomedia_requests_remain', 1, '-'); - } // END - if - } // END - if - - // Return the data - return $response; -} - // "Getter" for a parsed result for all text mails. This means an array without // the header lines will be returned function YOOMEDIA_GET_PARSED_RESULT_TEXTMAILS () { @@ -226,18 +229,6 @@ function YOOMEDIA_PREPARE_MAIL_DELIVERY ($data) { // Is the reward below one? if ($data['reward'] < 1) $data['reward'] = 1; - // Add website id - $data['sid'] = getConfig('yoomedia_sid'); - - // Add total receivers - $data['all'] = translateComma(getTotalReceivers()); - - // Add categories - $data['categories'] = generateCategoryOptionsList('normal'); - - // Decode entities - $data['text'] = decodeEntities($data['text']); - // Load template loadTemplate('admin_send_yoomedia', false, $data); } @@ -330,7 +321,7 @@ function translateYooMediaError ($errorCode) { $return = $GLOBALS['translation_tables']['yoomedia']['error_codes'][$errorCode]; } else { // Log missing entries - debug_report_bug(sprintf("Unknown error code %s detected.", $errorCode)); + debug_report_bug(__FUNCTION__, __LINE__, sprintf("Unknown error code %s[%s] detected.", $errorCode, gettype($errorCode))); } // Return value @@ -355,7 +346,7 @@ function YOOMEDIA_CHECK_RELOAD ($id, $reload, $type) { if (((time() - $time) >= ($reload * 60*60)) && ($time > 0)) { // Remove entry SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_yoomedia_reload` WHERE `id`=%s LIMIT 1", - array($id), __FUNCTION__, __LINE__); + array($id), __FUNCTION__, __LINE__); } else { // Dont' sent again this mail $reloaded = $time; @@ -426,11 +417,17 @@ function YOOMEDIA_GET_ERRORCODE_FROM_RESULT ($response) { // Remove carrige-return $code = str_replace("\n", '', $code); - } else { + + } elseif (count($response) < 9) { // Should not happen! - logDebugMessage(__FUNCTION__, __LINE__, 'Cannot parse response. Raw response=' . base64_encode(serialize($response))); + debug_report_bug(__FUNCTION__, __LINE__, 'Cannot parse response. Raw response:
' . print_r($response, true) . ''); } + // Fix empty code to bad + if (empty($code)) { + $code = -999; + } // END - if + // Return error code return $code; }