Ejemplo n.º 1
0
 /**
  * @param SubscriptionPlan $plan
  */
 static function getItemListItem($plan)
 {
     if (empty($plan->params['processor_selectmode'])) {
         $select_mode = '0';
     } else {
         $select_mode = $plan->params['processor_selectmode'];
     }
     $details = array('type' => 'item', 'id' => $plan->id, 'plan' => $plan, 'name' => $plan->getProperty('name'), 'desc' => $plan->getProperty('desc'), 'ordering' => $plan->ordering, 'lifetime' => $plan->params['lifetime'], 'select_mode' => $select_mode, 'meta' => array());
     if (!empty($plan->params['meta'])) {
         $details['meta'] = parameterHandler::decode($plan->params['meta']);
     }
     return $details;
 }
Ejemplo n.º 2
0
    $db->setQuery("SELECT * FROM #__acctexp_log_history WHERE `id` = {$hid}");
    $history = $db->loadObject();
    if (!is_object($history)) {
        continue;
    }
    if ($history->id != $hid || empty($history->response)) {
        continue;
    }
    // Fix broken newlines
    $history->response = str_replace('\\n', "\n", $history->response);
    // Fix faulty parameters in old PayPal entries
    $history->response = str_replace('Validation: ', "paypal_verification=", $history->response);
    // Fix faulty parameters in extremely old PayPal entries
    $history->response = str_replace('VERIFIED ', "paypal_verification=VERIFIED\n", $history->response);
    // Resolve into Array
    $temp = parameterHandler::decode($history->response);
    // Fix faulty parameters in old locaweb_pgcerto entries
    if (count($temp) <= 1 && isset($temp[0])) {
        $temp2 = array('response' => $temp[0]);
        $temp = $temp2;
    } elseif (!is_array($temp)) {
        $temp2 = array('response' => $temp);
        $temp = $temp2;
    }
    foreach ($temp as $k => $v) {
        $temp[$k] = urldecode($v);
    }
    $query = 'UPDATE #__acctexp_log_history' . ' SET `response` = \'' . base64_encode(serialize($temp)) . '\'' . ' WHERE `id` = \'' . $hid . '\'';
    $db->setQuery($query);
    $db->query();
}
Ejemplo n.º 3
0
     }
     // No need to update what is empty
     if (empty($object->{$fieldname}) || strpos($object->{$fieldname}, '{') === 0 || strpos($object->{$fieldname}, '[') === 0) {
         unset($dec[array_search($fieldname, $dec)]);
     }
 }
 if ($dbtable == 'subscr' && empty($object->params)) {
     $dec[] = 'params';
 }
 if (count($dec) < 1) {
     continue;
 }
 $sets = array();
 foreach ($dec as $fieldname) {
     // Decode from newline separated variables
     $temp = parameterHandler::decode(stripslashes($object->{$fieldname}));
     if (!empty($ucontent[2])) {
         if (isset($ucontent[2][$fieldname])) {
             if (in_array('_self', $ucontent[2][$fieldname])) {
                 $temp = explode(';', $object->{$fieldname});
                 array_walk($temp, 'trim');
             } else {
                 foreach ($temp as $key => $value) {
                     if (in_array($key, $ucontent[2][$fieldname])) {
                         $temp[$key] = explode(';', $value);
                         array_walk($temp[$key], 'trim');
                     }
                 }
             }
         }
     }
Ejemplo n.º 4
0
// Dont allow direct linking
defined('_JEXEC') or die('Direct Access to this location is not allowed.');
$serialupdate = false;
$jsonconversion = false;
// Check whether the config is on 0.12.6 status
$query = 'SELECT `settings` FROM #__acctexp_config' . ' WHERE `id` = \'1\'';
$db->setQuery($query);
$res = $db->loadResult();
if ((strpos($res, '{') === 0 || strpos($res, "\n") !== false) && !empty($res)) {
    if (strpos($res, '{') === 0) {
        $res = stripslashes(str_replace(array('\\n', '\\t', '\\r'), array("\n", "\t", "\r"), trim($res)));
        $restings = jsoonHandler::decode($res);
        $jsonconversion = true;
    } else {
        // Has stripslashes stuff built in
        $restings = parameterHandler::decode($res);
        $serialupdate = true;
        if (isset($restings['milist'])) {
            $temp = explode(';', $restings['milist']);
            $restings['milist'] = $temp;
        }
        if (isset($restings['gwlist'])) {
            $temp = explode(';', $restings['gwlist']);
            $restings['gwlist'] = $temp;
        }
    }
    $entry = base64_encode(serialize($restings));
    $query = 'UPDATE #__acctexp_config' . ' SET `settings` = \'' . $entry . '\'' . ' WHERE `id` = \'1\'';
    $db->setQuery($query);
    $db->query();
}
Ejemplo n.º 5
0
$db->query();
// Fixing secondary invoice numbers for CCBill
$query = 'SELECT id FROM #__acctexp_config_processors WHERE name = \'ccbill\'';
$db->setQuery($query);
$ccid = $db->loadResult();
// Checking whether CCBill is installed at all
if ($ccid) {
    // Get all history entries for CCBill
    $query = 'SELECT id FROM #__acctexp_log_history WHERE proc_id = \'' . $ccid . '\'';
    $db->setQuery($query);
    $list = xJ::getDBArray($db);
    if (!empty($list)) {
        foreach ($list as $hid) {
            $history = new logHistory();
            $history->load($hid);
            $params = parameterHandler::decode(stripslashes($history->response));
            // Check for the parameters we need
            if (isset($params['subscription_id']) && isset($params['invoice'])) {
                $query = 'UPDATE #__acctexp_invoices SET `secondary_ident` = \'' . $params['subscription_id'] . '\' WHERE invoice_number = \'' . $params['invoice'] . '\'';
                $db->setQuery($query);
                $db->query();
            }
        }
    }
}
// Haunted by ghosts of xmas past
$query = 'SELECT `id` FROM #__acctexp_subscr WHERE `params` LIKE \'%_jsoon%\'';
$db->setQuery($query);
$list = xJ::getDBArray($db);
if (!empty($list)) {
    foreach ($list as $sid) {
Ejemplo n.º 6
0
 * @license GNU/GPL v.3 http://www.gnu.org/licenses/gpl.html or, at your option, any later version
 */
// Dont allow direct linking
defined('_JEXEC') or die('Direct Access to this location is not allowed.');
// load settings (creates settings parameters that got added in this version)
$db->setQuery("SHOW COLUMNS FROM #__acctexp_config LIKE 'settings'");
$result = $db->loadObject();
if (strcmp($result->Field, 'settings') !== 0) {
    $columns = array("transferinfo", "initialexp", "alertlevel1", "alertlevel2", "alertlevel3", "gwlist", "customintro", "customthanks", "customcancel", "bypassintegration", "simpleurls", "expiration_cushion", "currency_code", "heartbeat_cycle", "tos", "require_subscription", "entry_plan", "plans_first", "transfer", "checkusername", "activate_paid");
    $settings = array();
    foreach ($columns as $column) {
        $db->setQuery("SHOW COLUMNS FROM #__acctexp_config LIKE '" . $column . "'");
        $result = $db->loadObject();
        if (strcmp($result->Field, $column) === 0) {
            $db->setQuery("SELECT " . $column . " FROM #__acctexp_config WHERE id='1'");
            $settings[$column] = $db->loadResult();
            $db->setQuery("ALTER TABLE #__acctexp_config DROP COLUMN " . $column);
            if (!$db->query()) {
                $errors[] = array($db->getErrorMsg(), $query);
            }
        }
    }
    $db->setQuery("ALTER TABLE #__acctexp_config ADD `settings` text");
    if (!$db->query()) {
        $errors[] = array($db->getErrorMsg(), $query);
    }
    $db->setQuery("UPDATE #__acctexp_config SET `settings` = '" . parameterHandler::encode($settings) . "' WHERE id = '1'");
    if (!$db->query()) {
        $errors[] = array($db->getErrorMsg(), $query);
    }
}