public static function paypalSubscriptionsTable()
 {
     $columns = array('id', 'item_number', 'name', 'feature_level', 'setup_fee', 'price', 'billing_cycles', 'offer_trial', 'start_recurring_number', 'start_recurring_unit');
     $indexColumn = "id";
     $tableName = Cart66Common::getTableName('products');
     $where = self::dataTablesWhere($columns);
     $limit = self::dataTablesLimit() == '' ? null : self::dataTablesLimit();
     $order = self::dataTablesOrder($columns);
     if ($where == null) {
         $where = "WHERE is_paypal_subscription>0";
     } else {
         $where .= " AND is_paypal_subscription>0";
     }
     $iTotal = self::totalRows($indexColumn, $tableName, $where);
     $iFilteredTotal = self::filteredRows($indexColumn, $tableName, $where);
     $data = array();
     $subscription = new Cart66PayPalSubscription();
     $subscriptions = $subscription->getModels($where, $order, $limit);
     foreach ($subscriptions as $s) {
         $gfTitles = self::gfData();
         if ($s->gravityFormId > 0 && isset($gfTitles) && isset($gfTitles[$s->gravityFormId])) {
             $gfTitles = '<br/><em>Linked To Gravity Form: ' . $gfTitles[$s->gravityFormId] . '</em>';
         } else {
             $gfTitles = '';
         }
         $data[] = array($s->id, $s->item_number, $s->name . $gfTitles, $s->featureLevel, Cart66Common::currency($s->setupFee), $s->getPriceDescription(false), $s->getBillingCycleDescription(), $s->getTrialPriceDescription(), $s->getStartRecurringDescription());
     }
     Cart66Common::log('[' . basename(__FILE__) . ' - line ' . __LINE__ . "] " . json_encode($data));
     $array = array('sEcho' => $_GET['sEcho'], 'iTotalRecords' => $iTotal[0], 'iTotalDisplayRecords' => $iFilteredTotal[0], 'aaData' => $data);
     echo json_encode($array);
     die;
 }
예제 #2
0
 public static function paypalSubscriptions()
 {
     $data = array();
     if (CART66_PRO) {
         $sub = new Cart66PayPalSubscription();
         $data['subscription'] = $sub;
         if ($_SERVER['REQUEST_METHOD'] == 'POST' && Cart66Common::postVal('cart66-action') == 'save paypal subscription') {
             $subData = Cart66Common::postVal('subscription');
             $subData['setup_fee'] = isset($subData['setup_fee']) ? Cart66Common::convert_currency_to_number($subData['setup_fee']) : '';
             $subData['price'] = isset($subData['price']) ? Cart66Common::convert_currency_to_number($subData['price']) : '';
             $sub->setData($subData);
             $errors = $sub->validate();
             if (count($errors) == 0) {
                 $sub->save();
                 $sub->clear();
                 $data['subscription'] = $sub;
             } else {
                 $data['errors'] = $sub->getErrors();
                 $data['jqErrors'] = $sub->getJqErrors();
             }
         } else {
             if (Cart66Common::getVal('task') == 'edit' && isset($_GET['id'])) {
                 $sub->load(Cart66Common::getVal('id'));
                 $data['subscription'] = $sub;
             } elseif (Cart66Common::getVal('task') == 'delete' && isset($_GET['id'])) {
                 $sub->load(Cart66Common::getVal('id'));
                 $sub->deleteMe();
                 $sub->clear();
                 $data['subscription'] = $sub;
             }
         }
         $data['plans'] = $sub->getModels('where is_paypal_subscription>0', 'order by name', '1');
         $view = Cart66Common::getView('pro/admin/paypal-subscriptions.php', $data);
         echo $view;
     } else {
         echo '<h2>PayPal Subscriptions</h2><p class="description">This feature is only available in <a href="http://cart66.com">Cart66 Professional</a>.</p>';
     }
 }