Sonic_ActualPrice - Version 1.0.0

Version Notes

First stable release.

Download this release

Release Info

Developer Tanuj Pandey
Extension Sonic_ActualPrice
Version 1.0.0
Comparing to
See all releases


Version 1.0.0

app/code/community/Sonic/ActualPrice/Block/Adminhtml/Order/Grid.php ADDED
@@ -0,0 +1 @@
 
0
  {
1
  $this->addColumn('real_order_id', array(
2
  'header'=> Mage::helper('sales')->__('Order #'),
3
  'width' => '80px',
4
  'type' => 'text',
5
  'index' => 'increment_id',
6
  ));
7
  if (!Mage::app()->isSingleStoreMode()) {
8
  $this->addColumn('store_id', array(
9
  'header' => Mage::helper('sales')->__('Purchased From (Store)'),
10
  'index' => 'store_id',
11
  'type' => 'store',
12
  'store_view'=> true,
13
  'display_deleted' => true,
14
  ));
15
  }
16
  $this->addColumn('created_at', array(
17
  'header' => Mage::helper('sales')->__('Purchased On'),
18
  'index' => 'created_at',
19
  'type' => 'datetime',
20
  'width' => '100px',
21
  ));
22
  $this->addColumn('billing_name', array(
23
  'header' => Mage::helper('sales')->__('Bill to Name'),
24
  'index' => 'billing_name',
25
  ));
26
  $this->addColumn('shipping_name', array(
27
  'header' => Mage::helper('sales')->__('Ship to Name'),
28
  'index' => 'shipping_name',
29
  ));
30
  $this->addColumn('base_grand_total', array(
31
  'header' => Mage::helper('sales')->__('G.T. (Base)'),
32
  'index' => 'base_grand_total',
33
  'type' => 'currency',
34
  'currency' => 'base_currency_code',
35
  ));
36
  $this->addColumn('grand_total', array(
37
  'header' => Mage::helper('sales')->__('G.T. (Purchased)'),
38
  'index' => 'grand_total',
39
  'type' => 'currency',
40
  'currency' => 'order_currency_code',
41
  ));
42
  'header' => Mage::helper('sales')->__('Total Actual Price'),
43
  'index' => 'total_actual_price',
44
  'type' => 'text',
45
  ));
46
  $this->addColumn('status', array(
47
  'header' => Mage::helper('sales')->__('Status'),
48
  'index' => 'status',
49
  'type' => 'options',
50
  'width' => '70px',
51
  'options' => Mage::getSingleton('sales/order_config')->getStatuses(),
52
  ));
53
  if (Mage::getSingleton('admin/session')->isAllowed('sales/order/actions/view')) {
54
  $this->addColumn('action',
55
  array(
56
  'header' => Mage::helper('sales')->__('Action'),
57
  'width' => '50px',
58
  'type' => 'action',
59
  'getter' => 'getId',
60
  'actions' => array(
61
  array(
62
  'caption' => Mage::helper('sales')->__('View'),
63
  'url' => array('base'=>'*/sales_order/view'),
64
  'field' => 'order_id',
65
  'data-column' => 'action',
66
  )
67
  ),
68
  'filter' => false,
69
  'sortable' => false,
70
  'index' => 'stores',
71
  'is_system' => true,
72
  ));
73
  }
74
  $this->addRssList('rss/order/new', Mage::helper('sales')->__('New Order RSS'));
75
  $this->addExportType('*/*/exportCsv', Mage::helper('sales')->__('CSV'));
76
  $this->addExportType('*/*/exportExcel', Mage::helper('sales')->__('Excel XML'));
77
  return parent::_prepareColumns();
78
  }
1
+ <?php
2
  {
3
  $this->addColumn('real_order_id', array(
4
  'header'=> Mage::helper('sales')->__('Order #'),
5
  'width' => '80px',
6
  'type' => 'text',
7
  'index' => 'increment_id',
8
  ));
9
  if (!Mage::app()->isSingleStoreMode()) {
10
  $this->addColumn('store_id', array(
11
  'header' => Mage::helper('sales')->__('Purchased From (Store)'),
12
  'index' => 'store_id',
13
  'type' => 'store',
14
  'store_view'=> true,
15
  'display_deleted' => true,
16
  ));
17
  }
18
  $this->addColumn('created_at', array(
19
  'header' => Mage::helper('sales')->__('Purchased On'),
20
  'index' => 'created_at',
21
  'type' => 'datetime',
22
  'width' => '100px',
23
  ));
24
  $this->addColumn('billing_name', array(
25
  'header' => Mage::helper('sales')->__('Bill to Name'),
26
  'index' => 'billing_name',
27
  ));
28
  $this->addColumn('shipping_name', array(
29
  'header' => Mage::helper('sales')->__('Ship to Name'),
30
  'index' => 'shipping_name',
31
  ));
32
  $this->addColumn('base_grand_total', array(
33
  'header' => Mage::helper('sales')->__('G.T. (Base)'),
34
  'index' => 'base_grand_total',
35
  'type' => 'currency',
36
  'currency' => 'base_currency_code',
37
  ));
38
  $this->addColumn('grand_total', array(
39
  'header' => Mage::helper('sales')->__('G.T. (Purchased)'),
40
  'index' => 'grand_total',
41
  'type' => 'currency',
42
  'currency' => 'order_currency_code',
43
  ));
44
  'header' => Mage::helper('sales')->__('Total Actual Price'),
45
  'index' => 'total_actual_price',
46
  'type' => 'text',
47
  ));
48
  $this->addColumn('status', array(
49
  'header' => Mage::helper('sales')->__('Status'),
50
  'index' => 'status',
51
  'type' => 'options',
52
  'width' => '70px',
53
  'options' => Mage::getSingleton('sales/order_config')->getStatuses(),
54
  ));
55
  if (Mage::getSingleton('admin/session')->isAllowed('sales/order/actions/view')) {
56
  $this->addColumn('action',
57
  array(
58
  'header' => Mage::helper('sales')->__('Action'),
59
  'width' => '50px',
60
  'type' => 'action',
61
  'getter' => 'getId',
62
  'actions' => array(
63
  array(
64
  'caption' => Mage::helper('sales')->__('View'),
65
  'url' => array('base'=>'*/sales_order/view'),
66
  'field' => 'order_id',
67
  'data-column' => 'action',
68
  )
69
  ),
70
  'filter' => false,
71
  'sortable' => false,
72
  'index' => 'stores',
73
  'is_system' => true,
74
  ));
75
  }
76
  $this->addRssList('rss/order/new', Mage::helper('sales')->__('New Order RSS'));
77
  $this->addExportType('*/*/exportCsv', Mage::helper('sales')->__('CSV'));
78
  $this->addExportType('*/*/exportExcel', Mage::helper('sales')->__('Excel XML'));
79
  return parent::_prepareColumns();
80
  }
app/code/community/Sonic/ActualPrice/Block/Adminhtml/Order/Renderer/ActualPrice.php ADDED
@@ -0,0 +1 @@
 
0
  {
1
  unset($order);
2
  return $Formatted_Price;
3
  }
1
+ <?php
2
  {
3
  unset($order);
4
  return $Formatted_Price;
5
  }
app/code/community/Sonic/ActualPrice/Block/Adminhtml/Sales/Order/Totals.php ADDED
@@ -0,0 +1 @@
 
1
+ <?php
app/code/community/Sonic/ActualPrice/Helper/Data.php ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ <?php
2
+ class Sonic_ActualPrice_Helper_Data extends Mage_Core_Helper_Abstract
3
+ {
4
+ }
5
+
app/code/community/Sonic/ActualPrice/Model/Observer.php ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Sonic_ActualPrice_Model_Observer
3
+ {
4
+ public function setActualPrice(Varien_Event_Observer $observer) {
5
+ $item = $observer->getQuoteItem();
6
+ $product = $observer->getProduct();
7
+ $item->setActualPrice($product->getActualPrice());
8
+ return $this;
9
+ }
10
+ }
11
+
app/code/community/Sonic/ActualPrice/Model/Resource/Setup.php ADDED
@@ -0,0 +1,78 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Sonic_ActualPrice_Model_Resource_Setup extends Mage_Eav_Model_Entity_Setup
3
+ {
4
+ /**
5
+ * Add our actual price attributes
6
+ *
7
+ * @return Mage_Eav_Model_Entity_Setup
8
+ */
9
+ public function installActualPriceProductAttributes()
10
+ {
11
+ $attributes = $this->_getActualPriceProductAttributes();
12
+
13
+ foreach ($attributes as $code => $attr) {
14
+ $this->addAttribute('catalog_product', $code, $attr);
15
+ }
16
+
17
+ return $this;
18
+ }
19
+
20
+ public function installActualPriceSaleAttributes()
21
+ {
22
+ $this->addAttribute("order_item", "actual_price", array("type"=>"decimal"));
23
+ return $this;
24
+ }
25
+
26
+
27
+
28
+
29
+ /**
30
+ * Remove actual price attributes
31
+ *
32
+ * @return Mage_Eav_Model_Entity_Setup
33
+ */
34
+ public function removeActualPriceProductAttributes()
35
+ {
36
+ $attributes = $this->_getActualPriceProductAttributes();
37
+
38
+ foreach ($attributes as $code => $attr) {
39
+ $this->removeAttribute('catalog_product', $code);
40
+ }
41
+
42
+ return $this;
43
+ }
44
+
45
+ /**
46
+ * Returns entities array to be used by
47
+ * Mage_Eav_Model_Entity_Setup::installEntities()
48
+ *
49
+ * @return array ActualPrice entities
50
+ */
51
+ protected function _getActualPriceProductAttributes()
52
+ {
53
+ return array(
54
+ 'actual_price' => array(
55
+ 'group' => 'Prices',
56
+ 'label' => 'Actual Price',
57
+ 'type' => 'decimal',
58
+ 'input' => 'text',
59
+ 'default' => '',
60
+ 'frontend_class' => 'validate-number',
61
+ 'backend' => '',
62
+ 'frontend' => '',
63
+ 'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
64
+ 'visible' => true,
65
+ 'required' => true,
66
+ 'user_defined' => false,
67
+ 'searchable' => false,
68
+ 'filterable' => false,
69
+ 'comparable' => false,
70
+ 'visible_on_front' => false,
71
+ 'visible_in_advanced_search' => false,
72
+ 'unique' => false,
73
+ 'sort_order' => 1
74
+ )
75
+ );
76
+ }
77
+ }
78
+
app/code/community/Sonic/ActualPrice/etc/config.xml ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Sonic_ActualPrice>
5
+ <version>0.1.0</version>
6
+ </Sonic_ActualPrice>
7
+ </modules>
8
+ <global>
9
+ <helpers>
10
+ <actualprice>
11
+ <class>Sonic_ActualPrice_Helper</class>
12
+ </actualprice>
13
+ </helpers>
14
+ <models>
15
+ <actualprice>
16
+ <class>Sonic_ActualPrice_Model</class>
17
+ <resourceModel>actualprice_mysql4</resourceModel>
18
+ </actualprice>
19
+ </models>
20
+ <blocks>
21
+ <adminhtml>
22
+ <rewrite>
23
+ <sales_order_totals>Sonic_ActualPrice_Block_Adminhtml_Sales_Order_Totals</sales_order_totals>
24
+ <sales_order_grid>Sonic_ActualPrice_Block_Adminhtml_Order_Grid</sales_order_grid>
25
+ </rewrite>
26
+ </adminhtml>
27
+ </blocks>
28
+ <resources>
29
+ <actualpriceattribute_setup>
30
+ <setup>
31
+ <module>Sonic_ActualPrice</module>
32
+ <class>Sonic_ActualPrice_Model_Resource_Setup</class>
33
+ </setup>
34
+ <connection>
35
+ <use>core_setup</use>
36
+ </connection>
37
+ </actualpriceattribute_setup>
38
+ <actualpriceattribute_write>
39
+ <connection>
40
+ <use>core_write</use>
41
+ </connection>
42
+ </actualpriceattribute_write>
43
+ <actualpriceattribute_read>
44
+ <connection>
45
+ <use>core_read</use>
46
+ </connection>
47
+ </actualpriceattribute_read>
48
+ </resources>
49
+ <fieldsets>
50
+ <sales_convert_quote_item>
51
+ <actual_price>
52
+ <to_order_item>*</to_order_item>
53
+ </actual_price>
54
+ </sales_convert_quote_item>
55
+ </fieldsets>
56
+ <sales>
57
+ <quote>
58
+ <item>
59
+ <product_attributes>
60
+ <actual_price />
61
+ </product_attributes>
62
+ </item>
63
+ </quote>
64
+ </sales>
65
+ <events>
66
+ <sales_quote_item_set_product>
67
+ <observers>
68
+ <actualprice>
69
+ <class>Sonic_ActualPrice_Model_Observer</class>
70
+ <method>setActualPrice</method>
71
+ </actualprice>
72
+ </observers>
73
+ </sales_quote_item_set_product>
74
+ </events>
75
+ </global>
76
+ <adminhtml>
77
+ <layout>
78
+ <updates>
79
+ <actualprice>
80
+ <file>actualprice.xml</file>
81
+ </actualprice>
82
+ </updates>
83
+ </layout>
84
+ </adminhtml>
85
+ </config>
app/code/community/Sonic/ActualPrice/sql/actualpriceattribute_setup/mysql4-install-0.1.0.php ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $installer = $this;
3
+
4
+ // Install our custom attributes
5
+ $installer->installActualPriceProductAttributes();
6
+ $installer->installActualPriceSaleAttributes();
7
+
8
+
9
+ // Remove our custom attributes
10
+ //$installer->removeActualPriceProductAttributes();
11
+
app/design/adminhtml/default/default/layout/actualprice.xml ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout version="0.1.0">
3
+ <adminhtml_sales_order_view>
4
+ <reference name="left">
5
+ <reference name="sales_order_tabs">
6
+ <reference name="order_tab_info">
7
+ <block type="adminhtml/sales_order_view_items" name="order_items" template="sonic/actualprice/sales/order/view/items.phtml">
8
+ <action method="addItemRender"><type>default</type><block>adminhtml/sales_order_view_items_renderer_default</block><template>sonic/actualprice/sales/order/view/items/renderer/default.phtml</template></action>
9
+ <action method="addColumnRender"><column>qty</column><block>adminhtml/sales_items_column_qty</block><template>sales/items/column/qty.phtml</template></action>
10
+ <action method="addColumnRender"><column>name</column><block>adminhtml/sales_items_column_name</block><template>sales/items/column/name.phtml</template></action>
11
+ <action method="addColumnRender"><column>name</column><block>adminhtml/sales_items_column_name_grouped</block><template>sales/items/column/name.phtml</template><type>grouped</type></action>
12
+ <block type="core/text_list" name="order_item_extra_info" />
13
+ </block>
14
+ </reference>
15
+ </reference>
16
+
17
+ </reference>
18
+ </adminhtml_sales_order_view>
19
+ </layout>
app/design/adminhtml/default/default/template/sonic/actualprice/sales/order/view/items.phtml ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category design
22
+ * @package default_default
23
+ * @copyright Copyright (c) 2006-2016 X.commerce, Inc. and affiliates (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php $_order = $this->getOrder() ?>
28
+ <div class="grid np">
29
+ <div class="hor-scroll">
30
+ <table cellspacing="0" class="data order-tables">
31
+ <col />
32
+ <col width="1" />
33
+ <col width="1" />
34
+ <col width="1" />
35
+ <col width="1" />
36
+ <col width="1" />
37
+ <col width="1" />
38
+ <col width="1" />
39
+ <col width="1" />
40
+ <col width="1" />
41
+ <thead>
42
+ <tr class="headings">
43
+ <th><?php echo $this->helper('sales')->__('Product') ?></th>
44
+ <th><span class="nobr"><?php echo $this->helper('sales')->__('Item Status') ?></span></th>
45
+ <th><span class="nobr"><?php echo $this->helper('sales')->__('Actual Price') ?></span></th>
46
+ <th><span class="nobr"><?php echo $this->helper('sales')->__('Original Price') ?></span></th>
47
+ <th><?php echo $this->helper('sales')->__('Price') ?></th>
48
+ <th class="a-center"><?php echo $this->helper('sales')->__('Qty') ?></th>
49
+ <th><?php echo $this->helper('sales')->__('Subtotal') ?></th>
50
+ <th><span class="nobr"><?php echo $this->helper('sales')->__('Tax Amount') ?></span></th>
51
+ <th><span class="nobr"><?php echo $this->helper('sales')->__('Tax Percent') ?></span></th>
52
+ <th><span class="nobr"><?php echo $this->helper('sales')->__('Discount Amount') ?></span></th>
53
+ <th class="last"><span class="nobr"><?php echo $this->helper('sales')->__('Row Total') ?></span></th>
54
+ </tr>
55
+ </thead>
56
+ <?php $_items = $this->getItemsCollection() ?>
57
+ <?php $i=0;foreach ($_items as $_item):?>
58
+ <?php if ($_item->getParentItem()) continue; else $i++;?>
59
+ <tbody class="<?php echo $i%2?'even':'odd' ?>">
60
+ <?php echo $this->getItemHtml($_item) ?>
61
+ <?php echo $this->getItemExtraInfoHtml($_item) ?>
62
+ </tbody>
63
+ <?php endforeach; ?>
64
+ </table>
65
+ </div>
66
+ </div>
67
+ <br />
app/design/adminhtml/default/default/template/sonic/actualprice/sales/order/view/items/renderer/default.phtml ADDED
@@ -0,0 +1,247 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category design
22
+ * @package default_default
23
+ * @copyright Copyright (c) 2006-2016 X.commerce, Inc. and affiliates (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php $_item = $this->getItem() ?>
28
+ <?php $this->setPriceDataObject($_item) ?>
29
+ <tr<?php if (!$this->canDisplayGiftmessage()): ?> class="border"<?php endif; ?>>
30
+ <td>
31
+ <?php if ($this->canDisplayContainer()): ?>
32
+ <div id="<?php echo $this->getHtmlId() ?>" class="item-container">
33
+ <?php endif; ?>
34
+ <div class="item-text">
35
+ <?php echo $this->getColumnHtml($_item, 'name') ?>
36
+ </div>
37
+ <?php if ($this->canDisplayContainer()): ?>
38
+ </div>
39
+ <?php endif ?>
40
+ </td>
41
+ <td class="a-center"><?php echo $_item->getStatus() ?></td>
42
+ <td class="a-center"><?php echo $_item->getActualPrice() ?></td>
43
+ <td class="a-right"><?php echo $this->displayPriceAttribute('original_price') ?></td>
44
+ <td class="a-right">
45
+ <?php if ($this->helper('tax')->displaySalesBothPrices() || $this->helper('tax')->displaySalesPriceExclTax()): ?>
46
+ <span class="price-excl-tax">
47
+ <?php if ($this->helper('tax')->displaySalesBothPrices()): ?>
48
+ <span class="label"><?php echo $this->__('Excl. Tax'); ?>:</span>
49
+ <?php endif; ?>
50
+
51
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales', $_item->getStoreId())): ?>
52
+ <?php
53
+ echo $this->displayPrices(
54
+ $_item->getBasePrice()+$_item->getBaseWeeeTaxAppliedAmount()+$_item->getBaseWeeeTaxDisposition(),
55
+ $_item->getPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()
56
+ );
57
+ ?>
58
+ <?php else: ?>
59
+ <?php echo $this->displayPrices($_item->getBasePrice(), $_item->getPrice()) ?>
60
+ <?php endif; ?>
61
+
62
+
63
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
64
+ <br />
65
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales', $_item->getStoreId())): ?>
66
+ <small>
67
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
68
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_amount'], $tax['amount']); ?></span>
69
+ <?php endforeach; ?>
70
+ </small>
71
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
72
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
73
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_amount'], $tax['amount']); ?></small></span>
74
+ <?php endforeach; ?>
75
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales', $_item->getStoreId())): ?>
76
+ <small>
77
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
78
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_amount'], $tax['amount']); ?></span>
79
+ <?php endforeach; ?>
80
+ </small>
81
+ <?php endif; ?>
82
+
83
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
84
+ <br />
85
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br />
86
+ <?php
87
+ echo $this->displayPrices(
88
+ $_item->getBasePrice()+$_item->getBaseWeeeTaxAppliedAmount()+$_item->getBaseWeeeTaxDisposition(),
89
+ $_item->getPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()
90
+ );
91
+ ?>
92
+ </span>
93
+ <?php endif; ?>
94
+ <?php endif; ?>
95
+ </span>
96
+ <br />
97
+ <?php endif; ?>
98
+ <?php if ($this->helper('tax')->displaySalesBothPrices() || $this->helper('tax')->displaySalesPriceInclTax()): ?>
99
+ <span class="price-incl-tax">
100
+ <?php if ($this->helper('tax')->displaySalesBothPrices()): ?>
101
+ <span class="label"><?php echo $this->__('Incl. Tax'); ?>:</span>
102
+ <?php endif; ?>
103
+ <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
104
+ <?php $_baseIncl = $this->helper('checkout')->getBasePriceInclTax($_item); ?>
105
+
106
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales', $_item->getStoreId())): ?>
107
+ <?php echo $this->displayPrices($_baseIncl + Mage::helper('weee')->getBaseWeeeTaxInclTax($_item), $_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?>
108
+ <?php else: ?>
109
+ <?php echo $this->displayPrices($_baseIncl-$_item->getBaseWeeeTaxDisposition(), $_incl-$_item->getWeeeTaxDisposition()) ?>
110
+ <?php endif; ?>
111
+
112
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
113
+ <br />
114
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales', $_item->getStoreId())): ?>
115
+ <small>
116
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
117
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_amount_incl_tax'], $tax['amount_incl_tax']); ?></span>
118
+ <?php endforeach; ?>
119
+ </small>
120
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
121
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
122
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_amount_incl_tax'], $tax['amount_incl_tax']); ?></small></span>
123
+ <?php endforeach; ?>
124
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales', $_item->getStoreId())): ?>
125
+ <small>
126
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
127
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_amount_incl_tax'], $tax['amount_incl_tax']); ?></span>
128
+ <?php endforeach; ?>
129
+ </small>
130
+ <?php endif; ?>
131
+
132
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
133
+ <br />
134
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->displayPrices($_baseIncl + Mage::helper('weee')->getBaseWeeeTaxInclTax($_item) , $_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?></span>
135
+ <?php endif; ?>
136
+ <?php endif; ?>
137
+ </span>
138
+ <?php endif; ?>
139
+
140
+ </td>
141
+ <td><?php echo $this->getColumnHtml($_item, 'qty') ?></td>
142
+
143
+ <td class="a-right">
144
+ <?php if ($this->helper('tax')->displaySalesBothPrices() || $this->helper('tax')->displaySalesPriceExclTax()): ?>
145
+ <span class="price-excl-tax">
146
+ <?php if ($this->helper('tax')->displaySalesBothPrices()): ?>
147
+ <span class="label"><?php echo $this->__('Excl. Tax'); ?>:</span>
148
+ <?php endif; ?>
149
+
150
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales', $_item->getStoreId())): ?>
151
+ <?php
152
+ echo $this->displayPrices(
153
+ $_item->getBaseRowTotal()+$_item->getBaseWeeeTaxAppliedRowAmount()+$_item->getBaseWeeeTaxRowDisposition(),
154
+ $_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()
155
+ );
156
+ ?>
157
+ <?php else: ?>
158
+ <?php echo $this->displayPrices($_item->getBaseRowTotal(), $_item->getRowTotal()) ?>
159
+ <?php endif; ?>
160
+
161
+
162
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
163
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales', $_item->getStoreId())): ?>
164
+ <small>
165
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
166
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_row_amount'], $tax['row_amount']); ?></span>
167
+ <?php endforeach; ?>
168
+ </small>
169
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
170
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
171
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_row_amount'], $tax['row_amount']); ?></small></span>
172
+ <?php endforeach; ?>
173
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales', $_item->getStoreId())): ?>
174
+ <small>
175
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
176
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_row_amount'], $tax['row_amount']); ?></span>
177
+ <?php endforeach; ?>
178
+ </small>
179
+ <?php endif; ?>
180
+
181
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
182
+ <br />
183
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br />
184
+ <?php
185
+ echo $this->displayPrices(
186
+ $_item->getBaseRowTotal()+$_item->getBaseWeeeTaxAppliedRowAmount()+$_item->getBaseWeeeTaxRowDisposition(),
187
+ $_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()
188
+ );
189
+ ?>
190
+ </span>
191
+ <?php endif; ?>
192
+ <?php endif; ?>
193
+ </span>
194
+ <br />
195
+ <?php endif; ?>
196
+ <?php if ($this->helper('tax')->displaySalesBothPrices() || $this->helper('tax')->displaySalesPriceInclTax()): ?>
197
+ <span class="price-incl-tax">
198
+ <?php if ($this->helper('tax')->displaySalesBothPrices()): ?>
199
+ <span class="label"><?php echo $this->__('Incl. Tax'); ?>:</span>
200
+ <?php endif; ?>
201
+ <?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
202
+ <?php $_baseIncl = $this->helper('checkout')->getBaseSubtotalInclTax($_item); ?>
203
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales', $_item->getStoreId())): ?>
204
+ <?php echo $this->displayPrices($_baseIncl + Mage::helper('weee')->getBaseRowWeeeTaxInclTax($_item), $_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?>
205
+ <?php else: ?>
206
+ <?php echo $this->displayPrices($_baseIncl-$_item->getBaseWeeeTaxRowDisposition(), $_incl-$_item->getWeeeTaxRowDisposition()) ?>
207
+ <?php endif; ?>
208
+
209
+
210
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
211
+
212
+ <br />
213
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales', $_item->getStoreId())): ?>
214
+ <small>
215
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
216
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_row_amount_incl_tax'], $tax['row_amount_incl_tax']); ?></span>
217
+ <?php endforeach; ?>
218
+ </small>
219
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
220
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
221
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_row_amount_incl_tax'], $tax['row_amount_incl_tax']); ?></small></span>
222
+ <?php endforeach; ?>
223
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales', $_item->getStoreId())): ?>
224
+ <small>
225
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
226
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo $this->displayPrices($tax['base_row_amount_incl_tax'], $tax['row_amount_incl_tax']); ?></span>
227
+ <?php endforeach; ?>
228
+ </small>
229
+ <?php endif; ?>
230
+
231
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales', $_item->getStoreId())): ?>
232
+ <br /><span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->displayPrices($_baseIncl + Mage::helper('weee')->getBaseRowWeeeTaxInclTax($_item),$_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?></span>
233
+ <?php endif; ?>
234
+ <?php endif; ?>
235
+ </span>
236
+ <?php endif; ?>
237
+ </td>
238
+ <td class="a-right"><?php echo $this->displayPriceAttribute('tax_amount') ?></td>
239
+ <td class="a-right"><?php echo $this->displayTaxPercent($_item) ?></td>
240
+ <td class="a-right"><?php echo $this->displayPriceAttribute('discount_amount') ?></td>
241
+ <td class="a-right last">
242
+ <?php echo $this->displayPrices(
243
+ $_item->getBaseRowTotal() + $_item->getBaseTaxAmount() + $_item->getBaseHiddenTaxAmount() + Mage::helper('weee')->getBaseRowWeeeAmountAfterDiscount($_item) - $_item->getBaseDiscountAmount(),
244
+ $_item->getRowTotal() + $_item->getTaxAmount() + $_item->getHiddenTaxAmount() + Mage::helper('weee')->getRowWeeeAmountAfterDiscount($_item) - $_item->getDiscountAmount()
245
+ ); ?>
246
+ </td>
247
+ </tr>
app/etc/modules/Sonic_ActualPrice.xml ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Sonic_ActualPrice>
5
+ <active>true</active>
6
+ <codePool>community</codePool>
7
+ <version>0.1.0</version>
8
+ </Sonic_ActualPrice>
9
+ </modules>
10
+ </config>
package.xml ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>Sonic_ActualPrice</name>
4
+ <version>1.0.0</version>
5
+ <stability>stable</stability>
6
+ <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>Allows store owner or administrator to keep the track of sales order against selling price and actual price of items.</summary>
10
+ <description>The module allows store owner or administrator to set Actual Price attribute value&#xD;
11
+ from Prices Tab. Actual price is hidden for customers. Whenever customer places an order&#xD;
12
+ an actual price is displayed in sale ordered items table before orignial price column.&#xD;
13
+ Total actual price is calculated based on total number of items along with individual items ordered and their actual price.&#xD;
14
+ The calculated total actual price is displayed in Order Total tab above Grand total value.&#xD;
15
+ Total actual price is displayed in Orders Sale grid, adminstrator can export the grid to csv file which contains total actual price as well.</description>
16
+ <notes>First stable release.</notes>
17
+ <authors><author><name>Tanuj Pandey</name><user>TanujP</user><email>tanuj.d.pandey@gmail.com</email></author></authors>
18
+ <date>2016-10-01</date>
19
+ <time>07:05:48</time>
20
+ <contents><target name="magecommunity"><dir name="Sonic"><dir name="ActualPrice"><dir name="Block"><dir name="Adminhtml"><dir name="Order"><file name="Grid.php" hash="fd90c70121b88e4376cdf33dc36c24f5"/><dir name="Renderer"><file name="ActualPrice.php" hash="99d3d85f4af09b46b0c44a3ece38be9b"/></dir></dir><dir name="Sales"><dir name="Order"><file name="Totals.php" hash="44e2d19abe96b6207fa9bc312f9dca6a"/></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="8ec2b64996ff0efd00cc706e76e9615a"/></dir><dir name="Model"><file name="Observer.php" hash="296eb83ececfe2eecfbee3d3b2778324"/><dir name="Resource"><file name="Setup.php" hash="73f62c4288131f55286e7b12976c1cba"/></dir></dir><dir name="etc"><file name="config.xml" hash="c3aad4f4337cfddac43326324d8ccb9e"/></dir><dir name="sql"><dir name="actualpriceattribute_setup"><file name="mysql4-install-0.1.0.php" hash="90d4a3b0dacf43329cd143a1b0dc3efb"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="actualprice.xml" hash="8830f823fb5f421261e28b7a1977a6fd"/></dir><dir name="template"><dir name="sonic"><dir name="actualprice"><dir name="sales"><dir name="order"><dir name="view"><dir name="items"><dir name="renderer"><file name="default.phtml" hash="1d56c6eb6d6014dc8983e300e0f84068"/></dir></dir><file name="items.phtml" hash="9cbc0a68287cb85ba2bd5d4b78514f72"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Sonic_ActualPrice.xml" hash="9a321091df9b3303abf2341a748aefd0"/></dir></target></contents>
21
+ <compatible/>
22
+ <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
23
+ </package>