Version Notes
First release
Download this release
Release Info
Developer | SetuBridge |
Extension | Recent_Products_Review |
Version | 1.0.0 |
Comparing to | |
See all releases |
Version 1.0.0
- app/code/local/Sbridge/Recentreview/Adminhtml/Model/System/Config/Source/Mycustomoptions.php +26 -0
- app/code/local/Sbridge/Recentreview/Helper/Data.php +14 -0
- app/code/local/Sbridge/Recentreview/Model/Recentreview.php +39 -0
- app/code/local/Sbridge/Recentreview/etc/adminhtml.xml +23 -0
- app/code/local/Sbridge/Recentreview/etc/config.xml +88 -0
- app/code/local/Sbridge/Recentreview/etc/system.xml +65 -0
- app/design/adminhtml/default/default/layout/recentreview.xml +8 -0
- app/design/frontend/default/default/layout/recentreview.xml +21 -0
- app/design/frontend/default/default/template/recentreview/recent_review.phtml +89 -0
- app/etc/modules/Sbridge_Recentreview.xml +17 -0
- package.xml +39 -0
- skin/frontend/default/default/css/recentreview.css +41 -0
- skin/frontend/default/default/images/recentreview/review-icon.png +0 -0
- skin/frontend/default/default/js/recentreview/recentreview.js +23 -0
app/code/local/Sbridge/Recentreview/Adminhtml/Model/System/Config/Source/Mycustomoptions.php
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Setubridge Technolabs
|
4 |
+
* http://www.setubridge.com/
|
5 |
+
* @author SetuBridge
|
6 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
7 |
+
**/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
|
11 |
+
class Sbridge_Recentreview_Adminhtml_Model_System_Config_Source_Mycustomoptions
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Options getter
|
16 |
+
*
|
17 |
+
* @return array
|
18 |
+
*/
|
19 |
+
public function toOptionArray()
|
20 |
+
{
|
21 |
+
return array(
|
22 |
+
array('value' => "left", 'label'=>Mage::helper('adminhtml')->__('Left')),
|
23 |
+
array('value' => "right", 'label'=>Mage::helper('adminhtml')->__('Right')),
|
24 |
+
);
|
25 |
+
}
|
26 |
+
}
|
app/code/local/Sbridge/Recentreview/Helper/Data.php
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Setubridge Technolabs
|
4 |
+
* http://www.setubridge.com/
|
5 |
+
* @author SetuBridge
|
6 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
7 |
+
**/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
|
11 |
+
class Sbridge_Recentreview_Helper_Data extends Mage_Core_Helper_Abstract
|
12 |
+
{
|
13 |
+
|
14 |
+
}
|
app/code/local/Sbridge/Recentreview/Model/Recentreview.php
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Setubridge Technolabs
|
4 |
+
* http://www.setubridge.com/
|
5 |
+
* @author SetuBridge
|
6 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
7 |
+
**/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
|
11 |
+
class Sbridge_Recentreview_Model_Recentreview extends Mage_Core_Model_Abstract
|
12 |
+
{
|
13 |
+
public function _construct()
|
14 |
+
{
|
15 |
+
parent::_construct();
|
16 |
+
$this->_init('recentreview/recentreview');
|
17 |
+
}
|
18 |
+
public function getRecentreviews()
|
19 |
+
{
|
20 |
+
$eavAttribute = new Mage_Eav_Model_Mysql4_Entity_Attribute();
|
21 |
+
$pStatus = $eavAttribute->getIdByCode('catalog_product', 'status');
|
22 |
+
$pName = $eavAttribute->getIdByCode('catalog_product', 'name');
|
23 |
+
$pImage = $eavAttribute->getIdByCode('catalog_product', 'image');
|
24 |
+
$pUrlPath = $eavAttribute->getIdByCode('catalog_product', 'url_path');
|
25 |
+
$storeId = 0;
|
26 |
+
|
27 |
+
$recentReviewGroup = Mage::getStoreConfig('review_section/recentreview_group');
|
28 |
+
$limitReview = round($recentReviewGroup['homepage_reviewcount']);
|
29 |
+
|
30 |
+
$reviews_all = Mage::getModel('review/review')->getResourceCollection()->addStatusFilter(1)->setPagesize($limitReview)->addRateVotes();
|
31 |
+
$reviews_all->getSelect()
|
32 |
+
->join(array('cpei'=>Mage::getConfig()->getTablePrefix().'catalog_product_entity_int'),'cpei.entity_id=main_table.entity_pk_value and cpei.store_id='.$storeId.' and cpei.attribute_id='.$pStatus.' and cpei.value=1')
|
33 |
+
->join(array('cpev'=>Mage::getConfig()->getTablePrefix().'catalog_product_entity_varchar'),'cpev.entity_id=main_table.entity_pk_value and cpev.attribute_id='.$pUrlPath.' and cpev.store_id='.$storeId.'')
|
34 |
+
->join(array('cpev1'=>Mage::getConfig()->getTablePrefix().'catalog_product_entity_varchar'),'cpev1.entity_id=main_table.entity_pk_value and cpev1.attribute_id='.$pImage.' and cpev1.store_id='.$storeId.'',array('imageValue'=>'value'))
|
35 |
+
->join(array('cpev2'=>Mage::getConfig()->getTablePrefix().'catalog_product_entity_varchar'),'cpev2.entity_id=main_table.entity_pk_value and cpev2.attribute_id='.$pName.' and cpev2.store_id='.$storeId.'',array('productName'=>'value'));
|
36 |
+
$reviews_all=$reviews_all->getData();
|
37 |
+
return $reviews_all;
|
38 |
+
}
|
39 |
+
}
|
app/code/local/Sbridge/Recentreview/etc/adminhtml.xml
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="utf-8"?>
|
2 |
+
<config>
|
3 |
+
<acl>
|
4 |
+
<resources>
|
5 |
+
<admin>
|
6 |
+
<children>
|
7 |
+
<system>
|
8 |
+
<children>
|
9 |
+
<config>
|
10 |
+
<children>
|
11 |
+
<review_section translate="title" module="recentreview">
|
12 |
+
<!--<title>Manage Request</title>-->
|
13 |
+
<sort_order>100</sort_order>
|
14 |
+
</review_section>
|
15 |
+
</children>
|
16 |
+
</config>
|
17 |
+
</children>
|
18 |
+
</system>
|
19 |
+
</children>
|
20 |
+
</admin>
|
21 |
+
</resources>
|
22 |
+
</acl>
|
23 |
+
</config>
|
app/code/local/Sbridge/Recentreview/etc/config.xml
ADDED
@@ -0,0 +1,88 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<modules>
|
4 |
+
<Sbridge_Recentreview>
|
5 |
+
<version>0.1.0</version>
|
6 |
+
</Sbridge_Recentreview>
|
7 |
+
</modules>
|
8 |
+
<frontend>
|
9 |
+
<routers>
|
10 |
+
<recentreview>
|
11 |
+
<use>standard</use>
|
12 |
+
<args>
|
13 |
+
<module>Sbridge_Recentreview</module>
|
14 |
+
<frontName>recentreview</frontName>
|
15 |
+
</args>
|
16 |
+
</recentreview>
|
17 |
+
</routers>
|
18 |
+
<layout>
|
19 |
+
<updates>
|
20 |
+
<recentreview>
|
21 |
+
<file>recentreview.xml</file>
|
22 |
+
</recentreview>
|
23 |
+
</updates>
|
24 |
+
</layout>
|
25 |
+
</frontend>
|
26 |
+
<admin>
|
27 |
+
<routers>
|
28 |
+
<recentreview>
|
29 |
+
<use>admin</use>
|
30 |
+
<args>
|
31 |
+
<module>Sbridge_Recentreview</module>
|
32 |
+
<frontName>recentreview</frontName>
|
33 |
+
</args>
|
34 |
+
</recentreview>
|
35 |
+
</routers>
|
36 |
+
</admin>
|
37 |
+
<adminhtml>
|
38 |
+
<acl>
|
39 |
+
<resources>
|
40 |
+
<all>
|
41 |
+
<title>Allow Everything</title>
|
42 |
+
</all>
|
43 |
+
<admin>
|
44 |
+
<children>
|
45 |
+
<Sbridge_Recentreview>
|
46 |
+
<title>Recentreview Module</title>
|
47 |
+
<sort_order>10</sort_order>
|
48 |
+
</Sbridge_Recentreview>
|
49 |
+
</children>
|
50 |
+
</admin>
|
51 |
+
</resources>
|
52 |
+
</acl>
|
53 |
+
<layout>
|
54 |
+
<updates>
|
55 |
+
<recentreview>
|
56 |
+
<file>recentreview.xml</file>
|
57 |
+
</recentreview>
|
58 |
+
</updates>
|
59 |
+
</layout>
|
60 |
+
</adminhtml>
|
61 |
+
<global>
|
62 |
+
<models>
|
63 |
+
<recentreview>
|
64 |
+
<class>Sbridge_Recentreview_Model</class>
|
65 |
+
</recentreview>
|
66 |
+
<recentreview_adminhtml>
|
67 |
+
<class>Sbridge_Recentreview_Adminhtml_Model</class>
|
68 |
+
</recentreview_adminhtml>
|
69 |
+
</models>
|
70 |
+
<resources>
|
71 |
+
<recentreview_write>
|
72 |
+
<connection>
|
73 |
+
<use>core_write</use>
|
74 |
+
</connection>
|
75 |
+
</recentreview_write>
|
76 |
+
<recentreview_read>
|
77 |
+
<connection>
|
78 |
+
<use>core_read</use>
|
79 |
+
</connection>
|
80 |
+
</recentreview_read>
|
81 |
+
</resources>
|
82 |
+
<helpers>
|
83 |
+
<recentreview>
|
84 |
+
<class>Sbridge_Recentreview_Helper</class>
|
85 |
+
</recentreview>
|
86 |
+
</helpers>
|
87 |
+
</global>
|
88 |
+
</config>
|
app/code/local/Sbridge/Recentreview/etc/system.xml
ADDED
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="utf-8"?>
|
2 |
+
<config>
|
3 |
+
<tabs>
|
4 |
+
<sbridge_tab module="recentreview" translate="label">
|
5 |
+
<label>SetuBridge</label>
|
6 |
+
<sort_order>100</sort_order>
|
7 |
+
</sbridge_tab>
|
8 |
+
</tabs>
|
9 |
+
<sections>
|
10 |
+
<review_section module="recentreview" translate="label">
|
11 |
+
<label>Recent Review Sidebar</label>
|
12 |
+
<sort_order>100</sort_order>
|
13 |
+
<show_in_default>1</show_in_default>
|
14 |
+
<show_in_website>1</show_in_website>
|
15 |
+
<show_in_store>1</show_in_store>
|
16 |
+
<tab>sbridge_tab</tab>
|
17 |
+
<groups>
|
18 |
+
<recentreview_group translate="label">
|
19 |
+
<label>Recent Review</label>
|
20 |
+
<frontend_type>text</frontend_type>
|
21 |
+
<sort_order>10</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 |
+
<fields>
|
26 |
+
<homepage_enable translate="label">
|
27 |
+
<label>Enable Module?</label>
|
28 |
+
<frontend_type>select</frontend_type>
|
29 |
+
<sort_order>1</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 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
34 |
+
</homepage_enable>
|
35 |
+
<homepage_area>
|
36 |
+
<label>Show Recent Review in </label>
|
37 |
+
<frontend_type>select</frontend_type>
|
38 |
+
<sort_order>2</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 |
+
<source_model>recentreview_adminhtml/system_config_source_MyCustomOptions</source_model>
|
43 |
+
</homepage_area>
|
44 |
+
<homepage_character>
|
45 |
+
<label>Character limit </label>
|
46 |
+
<frontend_type>text</frontend_type>
|
47 |
+
<sort_order>3</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 |
+
</homepage_character>
|
52 |
+
<homepage_reviewcount>
|
53 |
+
<label>Reviews to Display </label>
|
54 |
+
<frontend_type>text</frontend_type>
|
55 |
+
<sort_order>4</sort_order>
|
56 |
+
<show_in_default>1</show_in_default>
|
57 |
+
<show_in_website>1</show_in_website>
|
58 |
+
<show_in_store>1</show_in_store>
|
59 |
+
</homepage_reviewcount>
|
60 |
+
</fields>
|
61 |
+
</recentreview_group>
|
62 |
+
</groups>
|
63 |
+
</review_section>
|
64 |
+
</sections>
|
65 |
+
</config>
|
app/design/adminhtml/default/default/layout/recentreview.xml
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<layout version="0.1.0">
|
3 |
+
<recentreview_adminhtml_recentreview_index>
|
4 |
+
<reference name="content">
|
5 |
+
<block type="recentreview/adminhtml_recentreview" name="recentreview" />
|
6 |
+
</reference>
|
7 |
+
</recentreview_adminhtml_recentreview_index>
|
8 |
+
</layout>
|
app/design/frontend/default/default/layout/recentreview.xml
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<layout version="0.1.0">
|
3 |
+
<default>
|
4 |
+
<reference name="head">
|
5 |
+
<action method="addCss" ifconfig="review_section/recentreview_group/homepage_enable"><stylesheet>css/recentreview.css</stylesheet></action>
|
6 |
+
<action method="addItem" ifconfig="review_section/recentreview_group/homepage_enable">
|
7 |
+
<type>skin_js</type>
|
8 |
+
<name>js/recentreview/recentreview.js</name>
|
9 |
+
<params/>
|
10 |
+
</action>
|
11 |
+
</reference>
|
12 |
+
|
13 |
+
<reference name="right">
|
14 |
+
<block type="core/template" name="right.review" template="recentreview/recent_review.phtml"/>
|
15 |
+
</reference>
|
16 |
+
|
17 |
+
<reference name="left">
|
18 |
+
<block type="core/template" name="left.review" template="recentreview/recent_review.phtml"/>
|
19 |
+
</reference>
|
20 |
+
</default>
|
21 |
+
</layout>
|
app/design/frontend/default/default/template/recentreview/recent_review.phtml
ADDED
@@ -0,0 +1,89 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Setubridge Technolabs
|
4 |
+
* http://www.setubridge.com/
|
5 |
+
* @author SetuBridge
|
6 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
7 |
+
**/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
$reviews_all = Mage::getModel('recentreview/recentreview')->getRecentreviews();
|
11 |
+
if($reviews_all):
|
12 |
+
$recentReviewGroup = Mage::getStoreConfig('review_section/recentreview_group');
|
13 |
+
if($recentReviewGroup['homepage_enable'] == 1):
|
14 |
+
if($this->getNameInLayout() == "left.review" && $recentReviewGroup['homepage_area'] == "left" || $this->getNameInLayout() == "right.review" && $recentReviewGroup['homepage_area'] == "right"):
|
15 |
+
$i=0;
|
16 |
+
?>
|
17 |
+
<div class="block block-recent-review">
|
18 |
+
<div class="block-title">
|
19 |
+
<strong>
|
20 |
+
<span><?php echo $this->__('Recent Reviews');?></span>
|
21 |
+
</strong>
|
22 |
+
</div>
|
23 |
+
<div class="content">
|
24 |
+
<?php
|
25 |
+
foreach($reviews_all as $review):
|
26 |
+
if($review['imageValue'] === "no_selection" || $review['imageValue'] == NULL):
|
27 |
+
$newPath = Mage::getModel('catalog/product')->getSmallImageUrl(75);
|
28 |
+
else:
|
29 |
+
$newPath= $this->helper('catalog/image')->init($review['imageValue'], 'small_image',$review['imageValue'])->resize(75);
|
30 |
+
endif;
|
31 |
+
$reviewUrlId = Mage::getUrl('review/product/list', array('id'=> $review['entity_pk_value']));
|
32 |
+
$rating = Mage::getModel('rating/rating')->load($review['entity_pk_value']);
|
33 |
+
?>
|
34 |
+
<div class="RecentReview-Items">
|
35 |
+
<div class="RecentReview-ProdDetails">
|
36 |
+
<div class="RecentReview-ProdInfo">
|
37 |
+
<div class="RecentReview-ProdImage">
|
38 |
+
<a href="<?php echo $review['value']; ?>">
|
39 |
+
<img src="<?php echo $newPath; ?>" title="<?php echo $review['productName'];?>">
|
40 |
+
</a>
|
41 |
+
</div>
|
42 |
+
<div class="product-name RecentReview-ProdName">
|
43 |
+
<a href="<?php echo $review['value']; ?>" title="<?php echo $review['productName'];?>">
|
44 |
+
<span><?php echo $review['productName'];?></span>
|
45 |
+
</a>
|
46 |
+
</div>
|
47 |
+
</div>
|
48 |
+
</div>
|
49 |
+
<div class="RecentReview-ProdReviews">
|
50 |
+
<div class="RecentReview-Title">
|
51 |
+
<a href="<?php echo $reviewUrlId;?>" title="Open Full Review of <?php echo $review['productName'];?>">
|
52 |
+
<span><?php echo $this->htmlEscape($review['title']);?></span>
|
53 |
+
</a>
|
54 |
+
</div>
|
55 |
+
<div class="RecentReview-ReviewDate">
|
56 |
+
<small class="date"><?php $this->__('(Posted on %s)', $this->formatDate($review['created_at']), 'long');
|
57 |
+
echo date('M d,Y', strtotime($review['created_at']));
|
58 |
+
?></small>
|
59 |
+
</div>
|
60 |
+
<?php $summaryData = Mage::getModel('review/review_summary')->load($review['entity_pk_value']);?>
|
61 |
+
<?php if($summaryData->getRatingSummary()):?>
|
62 |
+
<div class="rating-box">
|
63 |
+
<div class="rating" style="width:<?php echo $summaryData->getRatingSummary(); ?>%;"></div>
|
64 |
+
</div>
|
65 |
+
<?php endif; ?>
|
66 |
+
<div class="RecentReview-DetailReview">
|
67 |
+
<?php
|
68 |
+
if(round($recentReviewGroup['homepage_character']) == "" || round($recentReviewGroup['homepage_character']) == null || strlen($review['detail']) <= round($recentReviewGroup['homepage_character'])):
|
69 |
+
echo nl2br($this->htmlEscape($review['detail']))."</div>";
|
70 |
+
else:
|
71 |
+
echo substr($review['detail'],0,round($recentReviewGroup['homepage_character']))?>
|
72 |
+
<?php echo $this->__('...')?><a class='RecentReview-read read open' id="<?php echo "read_".$i;?>" onclick="sbreadmore('<?php echo "read_".$i;?>')" title="Read More"><span><?php echo $this->__('Read More');?></span></a></div>
|
73 |
+
<div class="RecentReview-DetailReview sbfull" id="<?php echo "close_$i"?>" style="display: none;"><?php echo nl2br($this->htmlEscape($review['detail'])); ?>
|
74 |
+
<a id="<?php echo "read_".$i;?>" onclick="sbclose('<?php echo "close_".$i;?>')" title="Read Less"><span><?php echo $this->__('Close');?></span></a>
|
75 |
+
</div>
|
76 |
+
<?php endif;?>
|
77 |
+
</div>
|
78 |
+
<div class="RecentReview-ReviewAuthor">
|
79 |
+
<span><?php echo $this->__('Review by <span>%s</span>', $this->htmlEscape($review['nickname']));?></span>
|
80 |
+
</div>
|
81 |
+
</div>
|
82 |
+
<?php $i++;
|
83 |
+
endforeach;?>
|
84 |
+
</div>
|
85 |
+
</div>
|
86 |
+
<?php
|
87 |
+
endif;
|
88 |
+
endif;
|
89 |
+
endif;?>
|
app/etc/modules/Sbridge_Recentreview.xml
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* @category Sbridge
|
5 |
+
* @package Sbridge_Recentreview
|
6 |
+
* @author ModuleCreator
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
-->
|
10 |
+
<config>
|
11 |
+
<modules>
|
12 |
+
<Sbridge_Recentreview>
|
13 |
+
<active>true</active>
|
14 |
+
<codePool>local</codePool>
|
15 |
+
</Sbridge_Recentreview>
|
16 |
+
</modules>
|
17 |
+
</config>
|
package.xml
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<package>
|
3 |
+
<name>Recent_Products_Review</name>
|
4 |
+
<version>1.0.0</version>
|
5 |
+
<stability>stable</stability>
|
6 |
+
<license>OSLv3.0</license>
|
7 |
+
<channel>community</channel>
|
8 |
+
<extends/>
|
9 |
+
<summary>Easy Extension to showcase Recent Review for store products along with product image.</summary>
|
10 |
+
<description>Customer reviews are massively important in current ecommerce business to sell your products. People expects review for products before they actually buy products online.
|
11 |
+

|
12 |
+
We setubridge has optimum solution for merchants who wants to showcase products reviews to promot products. We have easy, quick & flexible solution to display recent store products review in sidebars. Alogn with recent review sidebar widget, extension comes up with backend configurations interface which allows admin to make selection for review sidebar display. Admin can choose number of reviews & position of review sidebar to be display from admin configuration. Please go through below some highlighted feature for extension
|
13 |
+

|
14 |
+
This Recent Review Sidebar extension allows you to display latest reviews on your store at sidebar - Right or Left on any pages which contains sidebar.
|
15 |
+
By displaying like this you get the attention of your customers to recently reviewed product.
|
16 |
+

|
17 |
+
<h3>Recent Product Product Extension Features</h3>
|
18 |
+
<li>Instantly enable/display sidebar widget from admin panel</li>
|
19 |
+
<li>Showcase Recent review in sidebar</li>
|
20 |
+
<li>Display Product image along with review & Direct link to land on product detail page</li>
|
21 |
+
<li>Admin controls to display Review sidebar in Left OR Right Sidebar using backend configuration.</li>
|
22 |
+
<li>Limit Number of reviews to be display in sidebar</li>
|
23 |
+
<li>Display rating summary</li>
|
24 |
+
<li>Optimized code to load reviews to keep performance graph up</li>
|
25 |
+
<li>Easy installation & Configuration</li>
|
26 |
+

|
27 |
+
<h3>Technical Standards</h3>
|
28 |
+
<li>Follows Extension Development Guideline</li>
|
29 |
+
<li>Compatible with Latest Magento community additions</li>
|
30 |
+
<li>Follows Magento Coding standards</li>
|
31 |
+
</description>
|
32 |
+
<notes>First release</notes>
|
33 |
+
<authors><author><name>SetuBridge</name><user>Technolabs</user><email>support@setubridge.com</email></author></authors>
|
34 |
+
<date>2014-03-26</date>
|
35 |
+
<time>09:40:51</time>
|
36 |
+
<contents><target name="magelocal"><dir name="Sbridge"><dir name="Recentreview"><dir name="Adminhtml"><dir name="Model"><dir name="System"><dir name="Config"><dir name="Source"><file name="Mycustomoptions.php" hash="eeae1931e79a9a9a2278cee154c9616e"/></dir></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="d499ede872fa94ace0a7e849b9a5d7ea"/></dir><dir name="Model"><file name="Recentreview.php" hash="23392cab843dc2350b10b3bcd17eb41a"/></dir><dir name="etc"><file name="adminhtml.xml" hash="04bc640ab89340c1c437ce60bf805c56"/><file name="config.xml" hash="c14b7f822a80f68a94fc2c26b55602b7"/><file name="system.xml" hash="6eb7eb563af63f41c6e1b73ee0364021"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Sbridge_Recentreview.xml" hash="181c4633ecd0a23ce343054d8f2482de"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="recentreview.xml" hash="64560e994f678724b4ca273ee83fbdf7"/></dir><dir name="template"><dir name="recentreview"><file name="recent_review.phtml" hash="1a6791cb48e8821814aef7e9fbfdf9e6"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="recentreview.xml" hash="024bdc8ee3c4d20341360f69fbfffd44"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="default"><dir name="css"><file name="recentreview.css" hash="81a90dc808f64bcd4238037321eb566f"/></dir><dir name="js"><dir name="recentreview"><file name="recentreview.js" hash="471eafcb0a396c93a468a731eee64fc5"/></dir></dir><dir name="images"><dir name="recentreview"><file name="review-icon.png" hash="dc43e0a19863ab7309de3dc82b3dbf16"/></dir></dir></dir></dir></dir></target></contents>
|
37 |
+
<compatible/>
|
38 |
+
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
39 |
+
</package>
|
skin/frontend/default/default/css/recentreview.css
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Setubridge Technolabs
|
3 |
+
* http://www.setubridge.com/
|
4 |
+
* @author SetuBridge
|
5 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
6 |
+
**/
|
7 |
+
|
8 |
+
.RecentReview .DetailReview {word-break: break-all;}
|
9 |
+
.RecentReview-ProdImage
|
10 |
+
{
|
11 |
+
float: left;
|
12 |
+
margin-left: 5px;
|
13 |
+
margin-top: 5px;
|
14 |
+
margin-right: 10px;
|
15 |
+
}
|
16 |
+
.ProdName{margin-top: 5px;}
|
17 |
+
.ProdReviews
|
18 |
+
{
|
19 |
+
border-left: 1px solid #C4C1BC;
|
20 |
+
padding: 5px;
|
21 |
+
}
|
22 |
+
.RecentReview-ProdReviews {word-break: break-all;}
|
23 |
+
.RecentReview-Items {border-bottom: 1px solid #CCCCCC;}
|
24 |
+
.ratings-table {
|
25 |
+
clear: both;
|
26 |
+
margin-bottom: 10px;
|
27 |
+
}
|
28 |
+
.RecentReview-DetailReview {margin: 5px;}
|
29 |
+
.RecentReview-DetailReview.sbfull {margin: 5px;}
|
30 |
+
.RecentReview-ReviewAuthor {padding-left: 5px;}
|
31 |
+
.RecentReview-ReviewDate {font-style: italic;}
|
32 |
+
.RecentReview-DetailReview.sbfull a {cursor: pointer;}
|
33 |
+
.RecentReview-read.read {cursor: pointer;}
|
34 |
+
.RecentReview-ProdName {word-break: break-all;}
|
35 |
+
.block-recent-review .content {padding: 5px;}
|
36 |
+
.block-recent-review .block-title strong
|
37 |
+
{
|
38 |
+
background:url("../images/recentreview/review-icon.PNG") no-repeat scroll 5px 1px rgba(0, 0, 0, 0);
|
39 |
+
padding-left: 25px;
|
40 |
+
}
|
41 |
+
.content .RecentReview-Items:last-child {border-bottom: 0 none;}
|
skin/frontend/default/default/images/recentreview/review-icon.png
ADDED
Binary file
|
skin/frontend/default/default/js/recentreview/recentreview.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Setubridge Technolabs
|
3 |
+
* http://www.setubridge.com/
|
4 |
+
* @author SetuBridge
|
5 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
6 |
+
**/
|
7 |
+
function sbclose(group1)
|
8 |
+
{
|
9 |
+
if($(group1).hasClassName('sbfull'))
|
10 |
+
{
|
11 |
+
$(group1).hide();
|
12 |
+
$(group1).previous().show();
|
13 |
+
}
|
14 |
+
}
|
15 |
+
function sbreadmore(group)
|
16 |
+
{
|
17 |
+
if($(group).hasClassName('open'))
|
18 |
+
{
|
19 |
+
$(group).parentNode.hide();
|
20 |
+
var ne = $(group).parentNode.next()
|
21 |
+
ne.show();
|
22 |
+
}
|
23 |
+
}
|