Version Notes
test community release
Download this release
Release Info
Developer | Magento Core Team |
Extension | Magazento_Productivity |
Version | 1.0.0 |
Comparing to | |
See all releases |
Version 1.0.0
- app/code/community/Ip/Productactivity/Block/Developer.php +61 -0
- app/code/community/Ip/Productactivity/Block/New.php +61 -0
- app/code/community/Ip/Productactivity/Block/Popular.php +58 -0
- app/code/community/Ip/Productactivity/Block/Review.php +152 -0
- app/code/community/Ip/Productactivity/Block/Toprated.php +59 -0
- app/code/community/Ip/Productactivity/Block/Topsell.php +62 -0
- app/code/community/Ip/Productactivity/Helper/Data.php +50 -0
- app/code/community/Ip/Productactivity/Model/Data.php +77 -0
- app/code/community/Ip/Productactivity/etc/config.xml +154 -0
- app/code/community/Ip/Productactivity/etc/system.xml +274 -0
- package.xml +18 -0
app/code/community/Ip/Productactivity/Block/Developer.php
ADDED
@@ -0,0 +1,61 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Ip_Productactivity_Block_Developer extends Mage_Adminhtml_Block_System_Config_Form_Fieldset {
|
4 |
+
|
5 |
+
|
6 |
+
public function render(Varien_Data_Form_Element_Abstract $element) {
|
7 |
+
$content = '<p></p>';
|
8 |
+
$content.= '<style>';
|
9 |
+
$content.= '.developer {
|
10 |
+
background:#FAFAFA;
|
11 |
+
border: 1px solid #CCCCCC;
|
12 |
+
margin-bottom: 10px;
|
13 |
+
padding: 10px;
|
14 |
+
height:auto;
|
15 |
+
|
16 |
+
}
|
17 |
+
.developer h3 {
|
18 |
+
color: #EA7601;
|
19 |
+
}
|
20 |
+
.contact-type {
|
21 |
+
color: #EA7601;
|
22 |
+
font-weight:bold;
|
23 |
+
}
|
24 |
+
.developer img {
|
25 |
+
|
26 |
+
float:left;
|
27 |
+
height:255px;
|
28 |
+
width:220px;
|
29 |
+
}
|
30 |
+
.developer .info {
|
31 |
+
border: 1px solid #CCCCCC;
|
32 |
+
background:#E7EFEF;
|
33 |
+
padding: 5px 10px 0 5px;
|
34 |
+
margin-left:230px;
|
35 |
+
height:250px;
|
36 |
+
}
|
37 |
+
';
|
38 |
+
$content.= '</style>';
|
39 |
+
|
40 |
+
|
41 |
+
$content.= '<div class="developer">';
|
42 |
+
$content.= '<a href="http://www.ecommerceoffice.com/" target="_blank"><img src="'.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN).'frontend/base/default/ip_productactivity/promo.jpg" alt="www.ecommerceoffice.com" /></a>';
|
43 |
+
$content.= '<div class="info">';
|
44 |
+
$content.= '<h3>PROFESSIONAL MAGENTO DEVELOPMENT</h3>';
|
45 |
+
$content.= '<p>We provide premium services for Business, Corporate built with the latest innovations in web-development and SEO niche. <br/> You will pay less to go live with our wide range of solutions and services.<br/>';
|
46 |
+
$content.= 'If you need Magento development , please contact us.</p>';
|
47 |
+
$content.= '<span class="contact-type">Website:</span> <br/><a href="http://www.magazento.com/" target="_blank">www.magazento.com</a> <br/>';
|
48 |
+
$content.= '<span class="contact-type">E-mail:</span> <br/>service@magazento.com <br/>';
|
49 |
+
$content.= '<span class="contact-type">LinkedIn:</span> <br/><a href="http://www.linkedin.com/pub/ivan-proskuryakov/31/200/316" target="_blank">http://www.linkedin.com/pub/ivan-proskuryakov/31/200/316</a> <br/>';
|
50 |
+
|
51 |
+
$content.= '</div>';
|
52 |
+
|
53 |
+
$content.= '</div>';
|
54 |
+
|
55 |
+
return $content;
|
56 |
+
|
57 |
+
|
58 |
+
}
|
59 |
+
|
60 |
+
|
61 |
+
}
|
app/code/community/Ip/Productactivity/Block/New.php
ADDED
@@ -0,0 +1,61 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/*
|
4 |
+
* Created on May 3, 2011
|
5 |
+
* Author Ivan Proskuryakov - volgodark@gmail.com - Magazento.com
|
6 |
+
* Copyright Proskuryakov Ivan. Magazento.com © 2011. All Rights Reserved.
|
7 |
+
* Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
|
8 |
+
*/
|
9 |
+
?>
|
10 |
+
<?php
|
11 |
+
|
12 |
+
class Ip_Productactivity_Block_New extends Mage_Catalog_Block_Product_Abstract {
|
13 |
+
|
14 |
+
|
15 |
+
|
16 |
+
|
17 |
+
protected function _construct() {
|
18 |
+
|
19 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
20 |
+
$this->addData(array(
|
21 |
+
'cache_lifetime' => 86400,
|
22 |
+
'cache_tags' => array("ip_productactivity_home_new" ."_".$data['category'].'_'.Mage::app()->getStore()->getId()),
|
23 |
+
'cache_key' => "ip_productactivity_home_new".'_'.$data['route'].'_'.$data['category'].'_'.Mage::app()->getStore()->getId(),
|
24 |
+
));
|
25 |
+
}
|
26 |
+
|
27 |
+
|
28 |
+
|
29 |
+
|
30 |
+
|
31 |
+
protected function _beforeToHtml() {
|
32 |
+
|
33 |
+
$collection = Mage::getResourceModel('catalog/product_collection');
|
34 |
+
$from = Mage::getStoreConfig('productactivity/new/from');
|
35 |
+
Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($collection);
|
36 |
+
Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection);
|
37 |
+
$newDate = $this->getModel()->getSellDate($this->getModel()->getProductactivityDaysLimit());
|
38 |
+
$collection = $this->_addProductAttributesAndPrices($collection)
|
39 |
+
->addStoreFilter()
|
40 |
+
->addAttributeToFilter(array(
|
41 |
+
array('attribute' => 'created_at', 'from' => $from, 'to' => $newDate['todaydate'])
|
42 |
+
))
|
43 |
+
->setPageSize($this->getModel()->getNewCount())
|
44 |
+
->setCurPage(1)
|
45 |
+
;
|
46 |
+
|
47 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
48 |
+
|
49 |
+
if ($data['category'] > 0) {
|
50 |
+
$category = $this->getModel()->getCategory($data['category']);
|
51 |
+
$collection->addCategoryFilter($category);
|
52 |
+
}
|
53 |
+
|
54 |
+
$this->setProductCollection($collection);
|
55 |
+
}
|
56 |
+
|
57 |
+
public function getModel() {
|
58 |
+
return Mage::getModel('productactivity/Data');
|
59 |
+
}
|
60 |
+
|
61 |
+
}
|
app/code/community/Ip/Productactivity/Block/Popular.php
ADDED
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Created on May 3, 2011
|
4 |
+
* Author Ivan Proskuryakov - volgodark@gmail.com - Magazento.com
|
5 |
+
* Copyright Proskuryakov Ivan. Magazento.com © 2011. All Rights Reserved.
|
6 |
+
* Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
|
7 |
+
*/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
|
11 |
+
class Ip_Productactivity_Block_Popular extends Mage_Catalog_Block_Product_Abstract {
|
12 |
+
|
13 |
+
|
14 |
+
protected function _construct() {
|
15 |
+
|
16 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
17 |
+
$this->addData(array(
|
18 |
+
'cache_lifetime' => 86400,
|
19 |
+
'cache_tags' => array("ip_productactivity_home_popular" ."_".$data['category'].'_'.Mage::app()->getStore()->getId()),
|
20 |
+
'cache_key' => "ip_productactivity_home_popular".'_'.$data['route'].'_'.$data['category'].'_'.Mage::app()->getStore()->getId(),
|
21 |
+
));
|
22 |
+
}
|
23 |
+
|
24 |
+
|
25 |
+
|
26 |
+
|
27 |
+
protected function _beforeToHtml() {
|
28 |
+
$storeId = Mage::app()->getStore()->getId();
|
29 |
+
$collection = Mage::getResourceModel('reports/product_collection')
|
30 |
+
->addOrderedQty()
|
31 |
+
->addAttributeToSelect('*')
|
32 |
+
->addAttributeToSelect(array('name', 'price', 'small_image')) //edit to suit tastes
|
33 |
+
->setStoreId($storeId)
|
34 |
+
->addStoreFilter($storeId)
|
35 |
+
->addViewsCount();
|
36 |
+
Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($collection);
|
37 |
+
Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection);
|
38 |
+
$collection->setPageSize($this->getModel()->getPopularCount())->setCurPage(1);
|
39 |
+
|
40 |
+
|
41 |
+
|
42 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
43 |
+
if ($data['category'] > 0) {
|
44 |
+
$category = $this->getModel()->getCategory($data['category']);
|
45 |
+
$collection->addCategoryFilter($category);
|
46 |
+
}
|
47 |
+
|
48 |
+
|
49 |
+
$this->setProductCollection($collection);
|
50 |
+
return parent::_beforeToHtml();
|
51 |
+
}
|
52 |
+
|
53 |
+
public function getModel() {
|
54 |
+
return Mage::getModel('productactivity/Data');
|
55 |
+
}
|
56 |
+
|
57 |
+
}
|
58 |
+
|
app/code/community/Ip/Productactivity/Block/Review.php
ADDED
@@ -0,0 +1,152 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Created on May 3, 2011
|
4 |
+
* Author Ivan Proskuryakov - volgodark@gmail.com - Magazento.com
|
5 |
+
* Copyright Proskuryakov Ivan. Magazento.com © 2011. All Rights Reserved.
|
6 |
+
* Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
|
7 |
+
*/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
|
11 |
+
class Ip_Productactivity_Block_Review extends Mage_Catalog_Block_Product_Abstract {
|
12 |
+
|
13 |
+
protected function _construct() {
|
14 |
+
|
15 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
16 |
+
|
17 |
+
$this->addData(array(
|
18 |
+
'cache_lifetime' => 86400,
|
19 |
+
'cache_tags' => array("ip_productactivity_home_review" ."_".$data['category'].'_'.Mage::app()->getStore()->getId()),
|
20 |
+
'cache_key' => "ip_productactivity_home_review".'_'.$data['route'].'_'.$data['category'].'_'.Mage::app()->getStore()->getId(),
|
21 |
+
));
|
22 |
+
}
|
23 |
+
|
24 |
+
|
25 |
+
|
26 |
+
function getReviewsData(){
|
27 |
+
$pending = 2;
|
28 |
+
$declined = 3;
|
29 |
+
$reviews = $this->getReviews();
|
30 |
+
$count = 0;
|
31 |
+
foreach ($reviews as $review){
|
32 |
+
if($review['status_id'] != $pending || $review['status_id'] != $declined){
|
33 |
+
|
34 |
+
$_product = Mage::getModel('catalog/product')->load($review->getData('entity_pk_value'));
|
35 |
+
|
36 |
+
$vals = $this->getRatingValues($review);
|
37 |
+
$allReviews[$count]['review_url'] = $review->getReviewUrl($review->getId());
|
38 |
+
$allReviews[$count]['product_id'] = $review->getData('entity_pk_value');
|
39 |
+
$allReviews[$count]['product'] = $_product;
|
40 |
+
|
41 |
+
$num = $count +1;
|
42 |
+
$allReviews[$count]['title'] = $num.'. '.$review['title'];
|
43 |
+
$allReviews[$count]['detail'] = $review['detail'];
|
44 |
+
$allReviews[$count]['nickname'] = $review['nickname'];
|
45 |
+
$allReviews[$count]['ratings'] = $vals;
|
46 |
+
$count++;
|
47 |
+
}
|
48 |
+
}
|
49 |
+
|
50 |
+
return $allReviews;
|
51 |
+
}
|
52 |
+
function getRatingValues(Mage_Review_Model_Review $review){
|
53 |
+
$avg = 0;
|
54 |
+
if( count($review->getRatingVotes()) ) {
|
55 |
+
$ratings = array();
|
56 |
+
$c = 0;
|
57 |
+
foreach( $review->getRatingVotes() as $rating ) {
|
58 |
+
$type = $rating->getRatingCode();
|
59 |
+
$pcnt = $rating->getPercent();
|
60 |
+
if($type){
|
61 |
+
$val[$c][$type] = $pcnt;
|
62 |
+
|
63 |
+
}
|
64 |
+
$ratings[] = $rating->getPercent();
|
65 |
+
}
|
66 |
+
$c++;
|
67 |
+
$avg = array_sum($ratings)/count($ratings);
|
68 |
+
}
|
69 |
+
return $val;
|
70 |
+
}
|
71 |
+
|
72 |
+
function getReviews() {
|
73 |
+
$reviews = Mage::getModel('review/review')->getResourceCollection();
|
74 |
+
$reviews->addStoreFilter( Mage::app()->getStore()->getId() )
|
75 |
+
->addStatusFilter( Mage_Review_Model_Review::STATUS_APPROVED )
|
76 |
+
->setDateOrder()
|
77 |
+
->addRateVotes()
|
78 |
+
->load();
|
79 |
+
|
80 |
+
|
81 |
+
|
82 |
+
|
83 |
+
|
84 |
+
|
85 |
+
// -------------------------------
|
86 |
+
//
|
87 |
+
//products
|
88 |
+
|
89 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
90 |
+
$catId = $data['category'];
|
91 |
+
|
92 |
+
if ($catId > 0) {
|
93 |
+
$category = $this -> getModel() -> getCategory($catId);
|
94 |
+
$collection = Mage::getModel('catalog/product')
|
95 |
+
-> getCollection()
|
96 |
+
-> addStoreFilter()
|
97 |
+
-> setOrder($order, 'ASC')
|
98 |
+
-> addAttributeToSelect('entity_id')
|
99 |
+
-> addCategoryFilter($category)
|
100 |
+
-> addAttributeToFilter('status', array('eq' => '1'));
|
101 |
+
|
102 |
+
//category filter
|
103 |
+
|
104 |
+
|
105 |
+
$product_array = array();
|
106 |
+
foreach ($collection as $_product) {
|
107 |
+
$product_array[] = $_product -> getId();
|
108 |
+
}
|
109 |
+
$return = array();
|
110 |
+
$i = 0;
|
111 |
+
foreach ($reviews as $review) {
|
112 |
+
if (in_array($review->getData('entity_pk_value'), $product_array)) {
|
113 |
+
$return[] = $review;
|
114 |
+
$i++;
|
115 |
+
}
|
116 |
+
if ($i == $this -> getModel() -> getReviewsCount()) break;
|
117 |
+
}
|
118 |
+
|
119 |
+
|
120 |
+
} else {
|
121 |
+
|
122 |
+
// -------------------------------
|
123 |
+
$return = array();
|
124 |
+
$i=0;
|
125 |
+
foreach ( $reviews as $review) {
|
126 |
+
$return[] = $review;
|
127 |
+
$i++; if ($i == $this->getModel()->getReviewsCount()) break;
|
128 |
+
|
129 |
+
}
|
130 |
+
}
|
131 |
+
|
132 |
+
|
133 |
+
|
134 |
+
|
135 |
+
|
136 |
+
|
137 |
+
|
138 |
+
|
139 |
+
|
140 |
+
|
141 |
+
|
142 |
+
return $return;
|
143 |
+
}
|
144 |
+
|
145 |
+
|
146 |
+
|
147 |
+
public function getModel() {
|
148 |
+
return Mage::getModel('productactivity/Data');
|
149 |
+
}
|
150 |
+
|
151 |
+
}
|
152 |
+
|
app/code/community/Ip/Productactivity/Block/Toprated.php
ADDED
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Created on May 3, 2011
|
4 |
+
* Author Ivan Proskuryakov - volgodark@gmail.com - Magazento.com
|
5 |
+
* Copyright Proskuryakov Ivan. Magazento.com © 2011. All Rights Reserved.
|
6 |
+
* Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
|
7 |
+
*/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
class Ip_Productactivity_Block_Toprated extends Mage_Catalog_Block_Product_Abstract {
|
11 |
+
|
12 |
+
protected function _construct() {
|
13 |
+
|
14 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
15 |
+
|
16 |
+
$this->addData(array(
|
17 |
+
'cache_lifetime' => 86400,
|
18 |
+
'cache_tags' => array("ip_productactivity_home_toprated" ."_".$data['category'].'_'.Mage::app()->getStore()->getId()),
|
19 |
+
'cache_key' => "ip_productactivity_home_toprated".'_'.$data['route'].'_'.$data['category'].'_'.Mage::app()->getStore()->getId(),
|
20 |
+
));
|
21 |
+
|
22 |
+
|
23 |
+
}
|
24 |
+
|
25 |
+
|
26 |
+
public function getTopRatedProduct() {
|
27 |
+
$limit = $this->getModel()->getTopratedCount();
|
28 |
+
$collection = Mage::getModel('catalog/product')->getCollection();
|
29 |
+
$collection->setVisibility(Mage::getSingleton('catalog/product_visibility')->getVisibleInCatalogIds());
|
30 |
+
$collection->addAttributeToSelect('*')->addStoreFilter();
|
31 |
+
|
32 |
+
|
33 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
34 |
+
if ($data['category'] > 0) {
|
35 |
+
$category = $this->getModel()->getCategory($data['category']);
|
36 |
+
$collection->addCategoryFilter($category);
|
37 |
+
}
|
38 |
+
|
39 |
+
|
40 |
+
$_rating = array();
|
41 |
+
foreach($collection as $_product) {
|
42 |
+
$storeId = Mage::app()->getStore()->getId();
|
43 |
+
$_productRating = Mage::getModel('review/review_summary')
|
44 |
+
->setStoreId($storeId)
|
45 |
+
->load($_product->getId());
|
46 |
+
$_rating[] = array(
|
47 |
+
'rating' => $_productRating['rating_summary'],
|
48 |
+
'product' => $_product
|
49 |
+
);
|
50 |
+
}
|
51 |
+
arsort($_rating);
|
52 |
+
return array_slice($_rating, 0, $limit);
|
53 |
+
}
|
54 |
+
|
55 |
+
public function getModel() {
|
56 |
+
return Mage::getModel('productactivity/Data');
|
57 |
+
}
|
58 |
+
|
59 |
+
}
|
app/code/community/Ip/Productactivity/Block/Topsell.php
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Created on May 3, 2011
|
4 |
+
* Author Ivan Proskuryakov - volgodark@gmail.com - Magazento.com
|
5 |
+
* Copyright Proskuryakov Ivan. Magazento.com © 2011. All Rights Reserved.
|
6 |
+
* Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
|
7 |
+
*/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
|
11 |
+
class Ip_Productactivity_Block_Topsell extends Mage_Catalog_Block_Product_Abstract {
|
12 |
+
|
13 |
+
protected function _construct() {
|
14 |
+
|
15 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
16 |
+
$this->addData(array(
|
17 |
+
'cache_lifetime' => 86400,
|
18 |
+
'cache_tags' => array("ip_productactivity_home_topsell" ."_".$data['category'].'_'.Mage::app()->getStore()->getId()),
|
19 |
+
'cache_key' => "ip_productactivity_home_topsell".'_'.$data['route'].'_'.$data['category'].'_'.Mage::app()->getStore()->getId(),
|
20 |
+
));
|
21 |
+
|
22 |
+
}
|
23 |
+
|
24 |
+
|
25 |
+
protected function _beforeToHtml() {
|
26 |
+
|
27 |
+
$storeId = Mage::app()->getStore()->getId();
|
28 |
+
$sellDate=$this->getModel()->getSellDate($this->getModel()->getProductactivityDaysLimit());
|
29 |
+
$collection = Mage::getResourceModel('reports/product_sold_collection')
|
30 |
+
->addOrderedQty()
|
31 |
+
->setStoreId($storeId)
|
32 |
+
->addStoreFilter($storeId)
|
33 |
+
->setDateRange($sellDate['startdate'], $sellDate['todaydate']) //
|
34 |
+
->addUrlRewrite()
|
35 |
+
// ->addAttributeToFilter('visibility', array('in' => array(Mage_Catalog_Model_Product_Visibility::VISIBILITY_IN_CATALOG, Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH)))
|
36 |
+
->addAttributeToFilter('status', Mage_Catalog_Model_Product_Status::STATUS_ENABLED)
|
37 |
+
->setOrder('ordered_qty', 'desc')
|
38 |
+
->setPageSize($this->getModel()->getTopsellCount())
|
39 |
+
->setCurPage(1)
|
40 |
+
->setOrder('ordered_qty', 'desc');
|
41 |
+
|
42 |
+
|
43 |
+
|
44 |
+
$data = Mage::helper('productactivity')->getCurrentCategory();
|
45 |
+
if ($data['category'] > 0) {
|
46 |
+
$category = $this->getModel()->getCategory($data['category']);
|
47 |
+
$collection->addCategoryFilter($category);
|
48 |
+
}
|
49 |
+
|
50 |
+
|
51 |
+
$this->setProductCollection($collection);
|
52 |
+
return parent::_beforeToHtml();
|
53 |
+
}
|
54 |
+
|
55 |
+
|
56 |
+
public function getModel() {
|
57 |
+
return Mage::getModel('productactivity/Data');
|
58 |
+
}
|
59 |
+
|
60 |
+
}
|
61 |
+
|
62 |
+
|
app/code/community/Ip/Productactivity/Helper/Data.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/*
|
4 |
+
* Created on May 3, 2011
|
5 |
+
* Author Ivan Proskuryakov - volgodark@gmail.com - Magazento.com
|
6 |
+
* Copyright Proskuryakov Ivan. Magazento.com © 2011. All Rights Reserved.
|
7 |
+
* Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
|
8 |
+
*/
|
9 |
+
?>
|
10 |
+
<?php
|
11 |
+
|
12 |
+
class Ip_Productactivity_Helper_Data extends Mage_Core_Helper_Abstract {
|
13 |
+
|
14 |
+
public function getTitleNew() {
|
15 |
+
return Mage::getStoreConfig('productactivity/new/title');
|
16 |
+
}
|
17 |
+
|
18 |
+
public function getTitlePopular() {
|
19 |
+
return Mage::getStoreConfig('productactivity/popular/title');
|
20 |
+
}
|
21 |
+
|
22 |
+
public function getTitleReview() {
|
23 |
+
return Mage::getStoreConfig('productactivity/review/title');
|
24 |
+
}
|
25 |
+
|
26 |
+
public function getTitleToprated() {
|
27 |
+
return Mage::getStoreConfig('productactivity/toprated/title');
|
28 |
+
}
|
29 |
+
|
30 |
+
public function getTitleTopSell() {
|
31 |
+
return Mage::getStoreConfig('productactivity/topsell/title');
|
32 |
+
}
|
33 |
+
|
34 |
+
public function getCurrentCategory() {
|
35 |
+
|
36 |
+
if (Mage::app()->getFrontController()->getRequest()->getRouteName() == 'cms') {
|
37 |
+
return array('route' => 'page', 'category' => 0);
|
38 |
+
}
|
39 |
+
|
40 |
+
if (Mage::registry('current_product') != null) {
|
41 |
+
$_category = Mage::registry('current_product')->getCategoryIds();
|
42 |
+
return array('route' => 'product', 'category' => $_category[0]);
|
43 |
+
}
|
44 |
+
//
|
45 |
+
if (Mage::registry('current_category') != null) {
|
46 |
+
return array('route' => 'catalog', 'category' => Mage::registry('current_category')->getId());
|
47 |
+
}
|
48 |
+
}
|
49 |
+
|
50 |
+
}
|
app/code/community/Ip/Productactivity/Model/Data.php
ADDED
@@ -0,0 +1,77 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Created on May 3, 2011
|
4 |
+
* Author Ivan Proskuryakov - volgodark@gmail.com - Magazento.com
|
5 |
+
* Copyright Proskuryakov Ivan. Magazento.com © 2011. All Rights Reserved.
|
6 |
+
* Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
|
7 |
+
*/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
Class Ip_Productactivity_Model_Data {
|
11 |
+
|
12 |
+
|
13 |
+
public function getSellDate($days) {
|
14 |
+
$product = Mage::getModel('catalog/product');
|
15 |
+
$product=array();
|
16 |
+
$outputFormat='Y-m-d H:i:s';
|
17 |
+
// $outputFormat = Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_SHORT);
|
18 |
+
// var_dump($outputFormat);
|
19 |
+
// $dateFormatIso = Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM);
|
20 |
+
// $dateformat=Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_SHORT);
|
21 |
+
$product['todaydate'] = date($outputFormat, time());
|
22 |
+
$product['startdate'] = date($outputFormat, time() - 60 * 60 * 24 * $days);
|
23 |
+
return $product;
|
24 |
+
|
25 |
+
}
|
26 |
+
|
27 |
+
public function getCategory ($id){
|
28 |
+
$categoryId = $id;
|
29 |
+
if (!$categoryId || !is_numeric($categoryId))
|
30 |
+
$category = Mage::registry("current_category");
|
31 |
+
else {
|
32 |
+
$category = Mage::getModel("catalog/category")->load($categoryId);
|
33 |
+
if (!$category->getId())
|
34 |
+
$category = Mage::registry("current_category");
|
35 |
+
}
|
36 |
+
return $category;
|
37 |
+
}
|
38 |
+
|
39 |
+
|
40 |
+
public function getReviewsCount() {
|
41 |
+
$count = (int) Mage::getStoreConfig('productactivity/review/count');
|
42 |
+
if ($count <=0) $count=5;
|
43 |
+
return $count;
|
44 |
+
}
|
45 |
+
public function getTopsellCount() {
|
46 |
+
$count = (int) Mage::getStoreConfig('productactivity/topsell/count');
|
47 |
+
if ($count <=0) $count=5;
|
48 |
+
return $count;
|
49 |
+
}
|
50 |
+
|
51 |
+
public function getNewCount() {
|
52 |
+
$count = (int) Mage::getStoreConfig('productactivity/new/count');
|
53 |
+
if ($count <=0) $count=5;
|
54 |
+
return $count;
|
55 |
+
}
|
56 |
+
|
57 |
+
public function getPopularCount() {
|
58 |
+
$count = (int) Mage::getStoreConfig('productactivity/popular/count');
|
59 |
+
if ($count <=0) $count=5;
|
60 |
+
return $count;
|
61 |
+
}
|
62 |
+
public function getTopratedCount() {
|
63 |
+
$count = (int) Mage::getStoreConfig('productactivity/toprated/count');
|
64 |
+
if ($count <=0) $count=5;
|
65 |
+
return $count;
|
66 |
+
}
|
67 |
+
|
68 |
+
public function getProductactivityDaysLimit() {
|
69 |
+
$count = (int) Mage::getStoreConfig('productactivity/topsell/days');
|
70 |
+
if ($count <=0) $count=5;
|
71 |
+
return $count;
|
72 |
+
}
|
73 |
+
|
74 |
+
|
75 |
+
|
76 |
+
|
77 |
+
}
|
app/code/community/Ip/Productactivity/etc/config.xml
ADDED
@@ -0,0 +1,154 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="utf-8"?>
|
2 |
+
<config>
|
3 |
+
<modules>
|
4 |
+
<Ip_Productactivity>
|
5 |
+
<version>1.0.1</version>
|
6 |
+
</Ip_Productactivity>
|
7 |
+
</modules>
|
8 |
+
<frontend>
|
9 |
+
<layout>
|
10 |
+
<updates>
|
11 |
+
<productactivity>
|
12 |
+
<file>ip_productactivity.xml</file>
|
13 |
+
</productactivity>
|
14 |
+
</updates>
|
15 |
+
</layout>
|
16 |
+
<!-- <translate>
|
17 |
+
<modules>
|
18 |
+
<Ip_Productactivity>
|
19 |
+
<files>
|
20 |
+
<default>Ip_Productactivity.csv</default>
|
21 |
+
</files>
|
22 |
+
</Ip_Productactivity>
|
23 |
+
</modules>
|
24 |
+
</translate>-->
|
25 |
+
</frontend>
|
26 |
+
|
27 |
+
<global>
|
28 |
+
<models>
|
29 |
+
<productactivity>
|
30 |
+
<class>Ip_Productactivity_Model</class>
|
31 |
+
<resourceModel>productactivity_mysql4</resourceModel>
|
32 |
+
</productactivity>
|
33 |
+
</models>
|
34 |
+
<resources>
|
35 |
+
<productactivity_setup>
|
36 |
+
<setup>
|
37 |
+
<module>Ip_Productactivity</module>
|
38 |
+
</setup>
|
39 |
+
<connection>
|
40 |
+
<use>core_setup</use>
|
41 |
+
</connection>
|
42 |
+
</productactivity_setup>
|
43 |
+
<productactivity_write>
|
44 |
+
<connection>
|
45 |
+
<use>core_write</use>
|
46 |
+
</connection>
|
47 |
+
</productactivity_write>
|
48 |
+
<productactivity_read>
|
49 |
+
<connection>
|
50 |
+
<use>core_read</use>
|
51 |
+
</connection>
|
52 |
+
</productactivity_read>
|
53 |
+
</resources>
|
54 |
+
<blocks>
|
55 |
+
<productactivity>
|
56 |
+
<class>Ip_Productactivity_Block</class>
|
57 |
+
</productactivity>
|
58 |
+
</blocks>
|
59 |
+
<helpers>
|
60 |
+
<productactivity>
|
61 |
+
<class>Ip_Productactivity_Helper</class>
|
62 |
+
</productactivity>
|
63 |
+
</helpers>
|
64 |
+
</global>
|
65 |
+
<admin>
|
66 |
+
<routers>
|
67 |
+
<ip_productactivity>
|
68 |
+
<use>admin</use>
|
69 |
+
<args>
|
70 |
+
<module>Ip_Productactivity</module>
|
71 |
+
<frontName>productactivity</frontName>
|
72 |
+
</args>
|
73 |
+
</ip_productactivity>
|
74 |
+
</routers>
|
75 |
+
</admin>
|
76 |
+
<adminhtml>
|
77 |
+
<acl>
|
78 |
+
<resources>
|
79 |
+
<admin>
|
80 |
+
<children>
|
81 |
+
<system>
|
82 |
+
<children>
|
83 |
+
<config>
|
84 |
+
<children>
|
85 |
+
<productactivity translate="title" module="productactivity">
|
86 |
+
<title>Productactivity</title>
|
87 |
+
</productactivity>
|
88 |
+
</children>
|
89 |
+
</config>
|
90 |
+
</children>
|
91 |
+
</system>
|
92 |
+
</children>
|
93 |
+
</admin>
|
94 |
+
</resources>
|
95 |
+
</acl>
|
96 |
+
<!-- <menu>
|
97 |
+
<ip translate="title" module="productactivity">
|
98 |
+
<title>Ip</title>
|
99 |
+
<sort_order>65</sort_order>
|
100 |
+
<children>
|
101 |
+
<productactivity translate="title" module="productactivity">
|
102 |
+
<title>Productactivity</title>
|
103 |
+
<sort_order>65</sort_order>
|
104 |
+
<children>
|
105 |
+
<settings translate="title" module="productactivity">
|
106 |
+
<title>Settings</title>
|
107 |
+
<action>adminhtml/system_config/edit/section/productactivity</action>
|
108 |
+
<sort_order>40</sort_order>
|
109 |
+
</settings>
|
110 |
+
</children>
|
111 |
+
</productactivity>
|
112 |
+
</children>
|
113 |
+
</ip>
|
114 |
+
</menu>-->
|
115 |
+
</adminhtml>
|
116 |
+
<default>
|
117 |
+
<productactivity>
|
118 |
+
<options>
|
119 |
+
<actions>1</actions>
|
120 |
+
<price>1</price>
|
121 |
+
<salable>1</salable>
|
122 |
+
<noproduct>There are no products that match your criteria. Please try again with different options.</noproduct>
|
123 |
+
<count>5</count>
|
124 |
+
</options>
|
125 |
+
<topsell>
|
126 |
+
<enable>1</enable>
|
127 |
+
<title>TOPSELLERS</title>
|
128 |
+
<count>5</count>
|
129 |
+
<days>365</days>
|
130 |
+
</topsell>
|
131 |
+
<new>
|
132 |
+
<enable>1</enable>
|
133 |
+
<title>NEW PRODUCTS</title>
|
134 |
+
<count>5</count>
|
135 |
+
<from>2007-08-23</from>
|
136 |
+
</new>
|
137 |
+
<popular>
|
138 |
+
<enable>1</enable>
|
139 |
+
<title>POPULAR PRODUCTS</title>
|
140 |
+
<count>5</count>
|
141 |
+
</popular>
|
142 |
+
<toprated>
|
143 |
+
<enable>1</enable>
|
144 |
+
<title>TOPRATED PRODUCTS</title>
|
145 |
+
<count>5</count>
|
146 |
+
</toprated>
|
147 |
+
<review>
|
148 |
+
<enable>1</enable>
|
149 |
+
<title>OUR LAST 5 REVIEWS</title>
|
150 |
+
<count>5</count>
|
151 |
+
</review>
|
152 |
+
</productactivity>
|
153 |
+
</default>
|
154 |
+
</config>
|
app/code/community/Ip/Productactivity/etc/system.xml
ADDED
@@ -0,0 +1,274 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<tabs>
|
4 |
+
<ip translate="label">
|
5 |
+
<label>Magazento.com</label>
|
6 |
+
<sort_order>250</sort_order>
|
7 |
+
</ip>
|
8 |
+
</tabs>
|
9 |
+
<sections>
|
10 |
+
<productactivity translate="label" module="productactivity">
|
11 |
+
<label>Bestsellers - All In One</label>
|
12 |
+
<tab>magazento</tab>
|
13 |
+
<frontend_type>text</frontend_type>
|
14 |
+
<sort_order>100</sort_order>
|
15 |
+
<show_in_default>1</show_in_default>
|
16 |
+
<show_in_website>1</show_in_website>
|
17 |
+
<show_in_store>1</show_in_store>
|
18 |
+
<groups>
|
19 |
+
<developer>
|
20 |
+
<frontend_model>productactivity/developer</frontend_model>
|
21 |
+
<sort_order>999</sort_order>
|
22 |
+
<show_in_default>1</show_in_default>
|
23 |
+
<show_in_website>1</show_in_website>
|
24 |
+
<show_in_store>1</show_in_store>
|
25 |
+
</developer>
|
26 |
+
<options translate="label">
|
27 |
+
<label>General</label>
|
28 |
+
<frontend_type>text</frontend_type>
|
29 |
+
<sort_order>2</sort_order>
|
30 |
+
<show_in_default>1</show_in_default>
|
31 |
+
<show_in_website>1</show_in_website>
|
32 |
+
<show_in_store>1</show_in_store>
|
33 |
+
<fields>
|
34 |
+
<price translate="label">
|
35 |
+
<label>Display price</label>
|
36 |
+
<frontend_type>select</frontend_type>
|
37 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
38 |
+
<sort_order>53</sort_order>
|
39 |
+
<show_in_default>1</show_in_default>
|
40 |
+
<show_in_website>1</show_in_website>
|
41 |
+
<show_in_store>1</show_in_store>
|
42 |
+
</price>
|
43 |
+
<actions translate="label">
|
44 |
+
<label>Display actions</label>
|
45 |
+
<frontend_type>select</frontend_type>
|
46 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
47 |
+
<sort_order>54</sort_order>
|
48 |
+
<show_in_default>1</show_in_default>
|
49 |
+
<show_in_website>1</show_in_website>
|
50 |
+
<show_in_store>1</show_in_store>
|
51 |
+
</actions>
|
52 |
+
<salable translate="label">
|
53 |
+
<label>Salable products</label>
|
54 |
+
<frontend_type>select</frontend_type>
|
55 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
56 |
+
<sort_order>55</sort_order>
|
57 |
+
<show_in_default>1</show_in_default>
|
58 |
+
<show_in_website>1</show_in_website>
|
59 |
+
<show_in_store>1</show_in_store>
|
60 |
+
</salable>
|
61 |
+
<noproduct translate="label">
|
62 |
+
<label>No product text</label>
|
63 |
+
<frontend_type>text</frontend_type>
|
64 |
+
<sort_order>66</sort_order>
|
65 |
+
<show_in_default>1</show_in_default>
|
66 |
+
<show_in_website>1</show_in_website>
|
67 |
+
<show_in_store>1</show_in_store>
|
68 |
+
</noproduct>
|
69 |
+
<count translate="label">
|
70 |
+
<label>Row count</label>
|
71 |
+
<frontend_type>text</frontend_type>
|
72 |
+
<sort_order>68</sort_order>
|
73 |
+
<show_in_default>1</show_in_default>
|
74 |
+
<show_in_website>1</show_in_website>
|
75 |
+
<show_in_store>1</show_in_store>
|
76 |
+
</count>
|
77 |
+
</fields>
|
78 |
+
</options>
|
79 |
+
<topsell translate="label">
|
80 |
+
<label>Topsellers</label>
|
81 |
+
<frontend_type>text</frontend_type>
|
82 |
+
<sort_order>2</sort_order>
|
83 |
+
<show_in_default>1</show_in_default>
|
84 |
+
<show_in_website>1</show_in_website>
|
85 |
+
<show_in_store>1</show_in_store>
|
86 |
+
<fields>
|
87 |
+
<enable translate="label">
|
88 |
+
<label>Enable</label>
|
89 |
+
<frontend_type>select</frontend_type>
|
90 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
91 |
+
<sort_order>51</sort_order>
|
92 |
+
<show_in_default>1</show_in_default>
|
93 |
+
<show_in_website>1</show_in_website>
|
94 |
+
<show_in_store>1</show_in_store>
|
95 |
+
</enable>
|
96 |
+
<title translate="label">
|
97 |
+
<label>Title</label>
|
98 |
+
<frontend_type>text</frontend_type>
|
99 |
+
<sort_order>56</sort_order>
|
100 |
+
<show_in_default>1</show_in_default>
|
101 |
+
<show_in_website>1</show_in_website>
|
102 |
+
<show_in_store>1</show_in_store>
|
103 |
+
</title>
|
104 |
+
<count translate="label">
|
105 |
+
<label>Count</label>
|
106 |
+
<frontend_type>text</frontend_type>
|
107 |
+
<sort_order>62</sort_order>
|
108 |
+
<show_in_default>1</show_in_default>
|
109 |
+
<show_in_website>1</show_in_website>
|
110 |
+
<show_in_store>1</show_in_store>
|
111 |
+
</count>
|
112 |
+
<days translate="label">
|
113 |
+
<label>Topseller for * days</label>
|
114 |
+
<frontend_type>text</frontend_type>
|
115 |
+
<sort_order>63</sort_order>
|
116 |
+
<show_in_default>1</show_in_default>
|
117 |
+
<show_in_website>1</show_in_website>
|
118 |
+
<show_in_store>1</show_in_store>
|
119 |
+
</days>
|
120 |
+
</fields>
|
121 |
+
</topsell>
|
122 |
+
<new translate="label">
|
123 |
+
<label>New Products</label>
|
124 |
+
<frontend_type>text</frontend_type>
|
125 |
+
<sort_order>3</sort_order>
|
126 |
+
<show_in_default>1</show_in_default>
|
127 |
+
<show_in_website>1</show_in_website>
|
128 |
+
<show_in_store>1</show_in_store>
|
129 |
+
<fields>
|
130 |
+
<enable translate="label">
|
131 |
+
<label>Enable</label>
|
132 |
+
<frontend_type>select</frontend_type>
|
133 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
134 |
+
<sort_order>51</sort_order>
|
135 |
+
<show_in_default>1</show_in_default>
|
136 |
+
<show_in_website>1</show_in_website>
|
137 |
+
<show_in_store>1</show_in_store>
|
138 |
+
</enable>
|
139 |
+
<title translate="label">
|
140 |
+
<label>Title</label>
|
141 |
+
<frontend_type>text</frontend_type>
|
142 |
+
<sort_order>56</sort_order>
|
143 |
+
<show_in_default>1</show_in_default>
|
144 |
+
<show_in_website>1</show_in_website>
|
145 |
+
<show_in_store>1</show_in_store>
|
146 |
+
</title>
|
147 |
+
<count translate="label">
|
148 |
+
<label>Count</label>
|
149 |
+
<frontend_type>text</frontend_type>
|
150 |
+
<sort_order>62</sort_order>
|
151 |
+
<show_in_default>1</show_in_default>
|
152 |
+
<show_in_website>1</show_in_website>
|
153 |
+
<show_in_store>1</show_in_store>
|
154 |
+
</count>
|
155 |
+
<from translate="label">
|
156 |
+
<label>New from</label>
|
157 |
+
<frontend_type>text</frontend_type>
|
158 |
+
<sort_order>63</sort_order>
|
159 |
+
<show_in_default>1</show_in_default>
|
160 |
+
<show_in_website>1</show_in_website>
|
161 |
+
<show_in_store>1</show_in_store>
|
162 |
+
</from>
|
163 |
+
</fields>
|
164 |
+
</new>
|
165 |
+
<popular translate="label">
|
166 |
+
<label>Popular Products</label>
|
167 |
+
<frontend_type>text</frontend_type>
|
168 |
+
<sort_order>4</sort_order>
|
169 |
+
<show_in_default>1</show_in_default>
|
170 |
+
<show_in_website>1</show_in_website>
|
171 |
+
<show_in_store>1</show_in_store>
|
172 |
+
<fields>
|
173 |
+
<enable translate="label">
|
174 |
+
<label>Enable</label>
|
175 |
+
<frontend_type>select</frontend_type>
|
176 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
177 |
+
<sort_order>51</sort_order>
|
178 |
+
<show_in_default>1</show_in_default>
|
179 |
+
<show_in_website>1</show_in_website>
|
180 |
+
<show_in_store>1</show_in_store>
|
181 |
+
</enable>
|
182 |
+
<title translate="label">
|
183 |
+
<label>Title</label>
|
184 |
+
<frontend_type>text</frontend_type>
|
185 |
+
<sort_order>56</sort_order>
|
186 |
+
<show_in_default>1</show_in_default>
|
187 |
+
<show_in_website>1</show_in_website>
|
188 |
+
<show_in_store>1</show_in_store>
|
189 |
+
</title>
|
190 |
+
<count translate="label">
|
191 |
+
<label>Count</label>
|
192 |
+
<frontend_type>text</frontend_type>
|
193 |
+
<sort_order>62</sort_order>
|
194 |
+
<show_in_default>1</show_in_default>
|
195 |
+
<show_in_website>1</show_in_website>
|
196 |
+
<show_in_store>1</show_in_store>
|
197 |
+
</count>
|
198 |
+
</fields>
|
199 |
+
</popular>
|
200 |
+
|
201 |
+
<toprated translate="label">
|
202 |
+
<label>Toprated Products</label>
|
203 |
+
<frontend_type>text</frontend_type>
|
204 |
+
<sort_order>4</sort_order>
|
205 |
+
<show_in_default>1</show_in_default>
|
206 |
+
<show_in_website>1</show_in_website>
|
207 |
+
<show_in_store>1</show_in_store>
|
208 |
+
<fields>
|
209 |
+
<enable translate="label">
|
210 |
+
<label>Enable</label>
|
211 |
+
<frontend_type>select</frontend_type>
|
212 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
213 |
+
<sort_order>51</sort_order>
|
214 |
+
<show_in_default>1</show_in_default>
|
215 |
+
<show_in_website>1</show_in_website>
|
216 |
+
<show_in_store>1</show_in_store>
|
217 |
+
</enable>
|
218 |
+
<title translate="label">
|
219 |
+
<label>Title</label>
|
220 |
+
<frontend_type>text</frontend_type>
|
221 |
+
<sort_order>56</sort_order>
|
222 |
+
<show_in_default>1</show_in_default>
|
223 |
+
<show_in_website>1</show_in_website>
|
224 |
+
<show_in_store>1</show_in_store>
|
225 |
+
</title>
|
226 |
+
<count translate="label">
|
227 |
+
<label>Count</label>
|
228 |
+
<frontend_type>text</frontend_type>
|
229 |
+
<sort_order>62</sort_order>
|
230 |
+
<show_in_default>1</show_in_default>
|
231 |
+
<show_in_website>1</show_in_website>
|
232 |
+
<show_in_store>1</show_in_store>
|
233 |
+
</count>
|
234 |
+
</fields>
|
235 |
+
</toprated>
|
236 |
+
<review translate="label">
|
237 |
+
<label>Reviews</label>
|
238 |
+
<frontend_type>text</frontend_type>
|
239 |
+
<sort_order>7</sort_order>
|
240 |
+
<show_in_default>1</show_in_default>
|
241 |
+
<show_in_website>1</show_in_website>
|
242 |
+
<show_in_store>1</show_in_store>
|
243 |
+
<fields>
|
244 |
+
<enable translate="label">
|
245 |
+
<label>Enable</label>
|
246 |
+
<frontend_type>select</frontend_type>
|
247 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
248 |
+
<sort_order>51</sort_order>
|
249 |
+
<show_in_default>1</show_in_default>
|
250 |
+
<show_in_website>1</show_in_website>
|
251 |
+
<show_in_store>1</show_in_store>
|
252 |
+
</enable>
|
253 |
+
<title translate="label">
|
254 |
+
<label>Title</label>
|
255 |
+
<frontend_type>text</frontend_type>
|
256 |
+
<sort_order>56</sort_order>
|
257 |
+
<show_in_default>1</show_in_default>
|
258 |
+
<show_in_website>1</show_in_website>
|
259 |
+
<show_in_store>1</show_in_store>
|
260 |
+
</title>
|
261 |
+
<count translate="label">
|
262 |
+
<label>Count</label>
|
263 |
+
<frontend_type>text</frontend_type>
|
264 |
+
<sort_order>62</sort_order>
|
265 |
+
<show_in_default>1</show_in_default>
|
266 |
+
<show_in_website>1</show_in_website>
|
267 |
+
<show_in_store>1</show_in_store>
|
268 |
+
</count>
|
269 |
+
</fields>
|
270 |
+
</review>
|
271 |
+
</groups>
|
272 |
+
</productactivity>
|
273 |
+
</sections>
|
274 |
+
</config>
|
package.xml
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<package>
|
3 |
+
<name>Magazento_Productivity</name>
|
4 |
+
<version>1.0.0</version>
|
5 |
+
<stability>stable</stability>
|
6 |
+
<license>GPL</license>
|
7 |
+
<channel>community</channel>
|
8 |
+
<extends/>
|
9 |
+
<summary>Show best, popular, new reviews and new products and reviews to your customers</summary>
|
10 |
+
<description>Show best, popular, new reviews and new products and reviews to your customers</description>
|
11 |
+
<notes>test community release</notes>
|
12 |
+
<authors><author><name>volgodark</name><user>auto-converted</user><email>volgodark@gmail.com</email></author></authors>
|
13 |
+
<date>2012-12-03</date>
|
14 |
+
<time>22:17:50</time>
|
15 |
+
<contents><target name="magecommunity"><dir name="Ip"><dir name="Productactivity"><dir name="Block"><file name="Developer.php" hash="e779bd431338e7f703148338ef02fdc4"/><file name="New.php" hash="c05d663f09f242ef8bbdf04dbf5925a9"/><file name="Popular.php" hash="d296c325bbc3fcd51d839e559e0baa6b"/><file name="Review.php" hash="d79ceddd7d74c6cf77c94e7d04b808bc"/><file name="Toprated.php" hash="413c113f5849eb5b055fc071d3df33c2"/><file name="Topsell.php" hash="a3172ab702d3e7ef2c5844407098cfd9"/></dir><dir name="Helper"><file name="Data.php" hash="ca7d799b81f41b7098e04ce0daefaa8d"/></dir><dir name="Model"><file name="Data.php" hash="0f41804ab583e2fef0eae3e98e7810b4"/></dir><dir name="etc"><file name="config.xml" hash="c1974d781b7e2eae921b158c249cd929"/><file name="system.xml" hash="aacdce560d44c6c8b2bb29176168924d"/></dir></dir></dir></target></contents>
|
16 |
+
<compatible/>
|
17 |
+
<dependencies/>
|
18 |
+
</package>
|