acplo/acplocart

Cart in ZF2

Installs: 47

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 3

Forks: 0

Open Issues: 0

Type:zf2-module

0.0.1 2015-04-29 12:52 UTC

This package is not auto-updated.

Last update: 2024-04-17 06:42:48 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

Version 1.0

This model allows you to manage a shopping cart for e-commerce in an easy, simple and fast.

Installation

For the installation uses composer composer.

php composer.phar require  acplocart/acplocart:dev-master

Add this project in your composer.json:

"require": {
"acplo/acplocart": "0.0.1"
}

Post Installation

Configuration:

  • Add the module of config/application.config.php under the array modules, insert AcploCart
  • Create a file named acplocart.global.php under config/autoload/.
  • Add the following lines to the file you just created:
<?php
return array(
    'acplocart' => array(
        'vat'  => 21
    ),
);

Example

Insert

$product = array(
    'id'      => 'cod_123abc',
    'qty'     => 1,
    'price'   => 39.95,
    'name'    => 'T-Shirt',
    'options' => array('Size' => 'M', 'Color' => 'Black')
);
$this->AcploCart()->insert($product);

Update

$product = array(
    'token' => '4b848870240fd2e976ee59831b34314f7cfbb05b',
    'qty'   => 2
);
$this->AcploCart()->update($product);

Remove

$product = array(
    'token' => '4b848870240fd2e976ee59831b34314f7cfbb05b',
);
$this->AcploCart()->remove($product);

Destroy

$this->AcploCart()->destroy();

Cart

$this->AcploCart()->cart();

Total

$this->AcploCart()->total();

Total Items

$this->AcploCart()->total_items();

Items Options

$this->AcploCart()->item_options('4b848870240fd2e976ee59831b34314f7cfbb05b');

Example in view

Controller

return new ViewModel(array(
    'items' => $this->AcploCart()->cart(),
    'total_items' => $this->AcploCart()->total_items(),
    'total' => $this->AcploCart()->total(),
));

View

<?php if($total_items > 0): ?>
<h3>Products in cart (<?php echo $total_items; ?>):</h3>
<table style="width: 900px;" border="1">
<tr>
  <th>Qty</th>
  <th>Name</th>
  <th>Item Price</th>
  <th>Sub-Total</th>
</tr>
<?php foreach($items as $key):?>
<tr>
    <td style="text-align: center;"><?php echo $key['qty']; ?></td>
	<td style="text-align: center;">
	<?php echo $key['name']; ?>
		<?php if($key['options'] != 0):?>
			Options:
			<?php foreach($key['options'] as $options => $value):?>
				<?php echo $options.' '.$value;?>
			<?php endforeach;?>
		<?php endif;?>
	</td>
	<td style="text-align: center;"><?php echo $key['price']; ?></td>
	<td style="text-align: center;"><?php echo $key['sub_total']; ?></td>
</tr>
<?php endforeach;?>
<tr>
  <td colspan="2"></td>
  <td style="text-align: center;"><strong>Sub Total</strong></td>
  <td style="text-align: center;"> <?php echo $total['sub-total'];?></td>
</tr>
<tr>
  <td colspan="2"></td>
  <td style="text-align: center;"><strong>Vat</strong></td>
  <td style="text-align: center;"> <?php echo $total['vat'];?></td>
</tr>
<tr>
  <td colspan="2"></td>
  <td style="text-align: center;"><strong>Total</strong></td>
  <td style="text-align: center;"> <?php echo $total['total'];?></td>
</tr>

<?php else: ?>
<h4>The Shopping Cart Empty</h4>
<?php endif;?>

Function Reference

Function Description
$this->AcploCart()->insert();Add a product to cart.
$this->AcploCart()->update();Update the quantity of a product.
$this->AcploCart()->remove();Delete the item from the cart.
$this->AcploCart()->destroy();Delete all items from the cart.
$this->AcploCart()->cart();Extracts all items from the cart.
$this->AcploCart()->total();Counts the total number of items in cart
$this->AcploCart()->total_items();Counts the total number of items in cart
$this->AcploCart()->item_options();Returns the an array of options, for a particular product token.
Config VatSet your vat in acplocart.global.php

Contributors