public static function inventoryTable()
 {
     $columns = array('id', 'item_number', 'name', 'options_1', 'options_2');
     if (isset($_GET['iSortCol_0'])) {
         $sortingColumns = array(0 => 0, 1 => 1, 2 => 2, 3 => 3, 4 => 4);
         $_GET['iSortCol_0'] = $sortingColumns[$_GET['iSortCol_0']];
     }
     $indexColumn = "id";
     $tableName = Cart66Common::getTableName('products');
     $where = self::dataTablesWhere($columns);
     $limit = self::dataTablesLimit() == '' ? null : self::dataTablesLimit();
     $order = self::dataTablesOrder($columns);
     $iTotal = self::totalRows($indexColumn, $tableName);
     $iFilteredTotal = self::filteredRows($indexColumn, $tableName, $where);
     $data = array();
     $product = new Cart66Product();
     $products = $product->getModels($where, $order, $limit);
     $save = false;
     $ikeyList = array();
     foreach ($products as $p) {
         $p->insertInventoryData();
         $combos = $p->getAllOptionCombinations();
         if (count($combos)) {
             foreach ($combos as $c) {
                 $k = $p->getInventoryKey($c);
                 $ikeyList[] = $k;
                 if ($save) {
                     $p->updateInventoryFromPost($k);
                 }
                 $data[] = array($p->isInventoryTracked($k), $p->item_number, $p->name, $c, $p->getInventoryCount($k), $k);
             }
         } else {
             $k = $p->getInventoryKey();
             $ikeyList[] = $k;
             if ($save) {
                 $p->updateInventoryFromPost($k);
             }
             $data[] = array($p->isInventoryTracked($k), $p->item_number, $p->name, $c = '', $p->getInventoryCount($k), $k);
         }
     }
     if ($save) {
         $p->pruneInventory($ikeyList);
     }
     $array = array('sEcho' => $_GET['sEcho'], 'iTotalRecords' => $iTotal[0], 'iTotalDisplayRecords' => $iFilteredTotal[0], 'aaData' => $data);
     echo json_encode($array);
     die;
 }
Exemple #2
0
<h2><?php 
_e('Cart66 Inventory Tracking', 'cart66');
?>
</h2>

<?php 
// Get a list of all products
$product = new Cart66Product();
$products = $product->getModels('where id>0', 'order by name', '1');
$save = false;
if ($_SERVER['REQUEST_METHOD'] == "POST" && $_POST['cart66-task'] == 'save-inventory-form') {
    $save = true;
    $product->updateInventoryFromPost($_REQUEST);
    ?>
  <script type="text/javascript">
    (function($){
      $(document).ready(function(){
        $("#Cart66SuccessBox").show().delay(1000).fadeOut('slow'); 
      })
    })(jQuery);
  </script> 
  <div id='Cart66SuccessBox' style='width: 300px;'><p class='alert-message success'><?php 
    _e('Inventory updated', 'cart66');
    ?>
</p></div>
  <?php 
}
$setting = new Cart66Setting();
$track = Cart66Setting::getValue('track_inventory');
$wpurl = get_bloginfo('wpurl');
if (CART66_PRO) {
Exemple #3
0
<?php

$product = new Cart66Product();
$totalProductCount = count($product->getModelsNoClass());
if (Cart66Setting::getValue('page_product_report')) {
    $productPageInterval = $totalProductCount > 50 ? 25 : 50;
    $productPageInterval = Cart66Setting::getValue('page_product_report_size') ? Cart66Setting::getValue('page_product_report_size') : $productPageInterval;
} else {
    $productPageInterval = $totalProductCount;
}
$productPageInterval = isset($_GET['perpage']) ? $_GET['perpage'] : $productPageInterval;
$productPageStart = isset($_GET['start']) ? $_GET['start'] : 0;
$productPageEnd = isset($_GET['end']) ? $_GET['end'] : $productPageStart + $productPageInterval;
$products = $product->getModels('where id>0', 'order by name', $productPageStart . ',' . $productPageInterval);
if (Cart66Setting::getValue('page_product_report')) {
    echo "<h1>Reports are paged at ";
    echo Cart66Setting::getValue('page_product_report_size') ? Cart66Setting::getValue('page_product_report_size') : 25;
    echo " products per page.</h1>";
}
if (CART66_PRO) {
    if (count($products)) {
        $today = date('m/d/Y', Cart66Common::localTs());
        $salesGrandTotal = 0;
        $incomeGrandTotal = 0;
        ?>
      <table class="Cart66TableMed">
        <tr>
          <th colspan="2"><?php 
        _e('Product Name', 'cart66');
        ?>
</th>
 public static function shortcodeProductsTable()
 {
     global $wpdb;
     $prices = array();
     $types = array();
     //$options='';
     $postId = Cart66Common::postVal('id');
     $product = new Cart66Product();
     $products = $product->getModels("where id={$postId}", "order by name");
     $data = array();
     foreach ($products as $p) {
         if ($p->itemNumber == "") {
             $type = 'id';
         } else {
             $type = 'item';
         }
         $types[] = htmlspecialchars($type);
         if (CART66_PRO && $p->isPayPalSubscription()) {
             $sub = new Cart66PayPalSubscription($p->id);
             $subPrice = strip_tags($sub->getPriceDescription($sub->offerTrial > 0, '(trial)'));
             $prices[] = htmlspecialchars($subPrice);
             Cart66Common::log('[' . basename(__FILE__) . ' - line ' . __LINE__ . "] subscription price in dialog: {$subPrice}");
         } else {
             $prices[] = htmlspecialchars(strip_tags($p->getPriceDescription()));
         }
         //$options .= '<option value="'.$id.'">'.$p->name.' '.$description.'</option>';
         $data[] = array('type' => $types, 'price' => $prices, 'item' => $p->itemNumber);
     }
     echo json_encode($data);
     die;
 }
 public static function getMembershipProducts()
 {
     global $wpdb;
     $memberships = array();
     $product = new Cart66Product();
     $products = $product->getModels('where is_membership_product=1');
     foreach ($products as $p) {
         if ($p->isMembershipProduct()) {
             $memberships[] = $p;
         }
     }
     return $memberships;
 }
/utils/form_utils.js"></script>
	
  <script type="text/javascript" src="<?php 
echo get_bloginfo('wpurl');
?>
/wp-includes/js/jquery/jquery.js"></script>
	<script language="javascript" type="text/javascript">
	<!--
  var $jq = jQuery.noConflict();
	tinyMCEPopup.onInit.add( function(){window.setTimeout(function(){$jq('#productName').focus();},500);} );

	<?php 
$prices = array();
$types = array();
$options = '';
$products = $product->getModels("where id>0", "order by name");
if (count($products)) {
    $i = 0;
    foreach ($products as $p) {
        if ($p->itemNumber == "") {
            $id = $p->id;
            $type = 'id';
            $description = "";
        } else {
            $id = $p->itemNumber;
            $type = 'item';
            $description = '(# ' . $p->itemNumber . ')';
        }
        $types[] = htmlspecialchars($type);
        if (CART66_PRO && $p->isPayPalSubscription()) {
            $sub = new Cart66PayPalSubscription($p->id);