Version Notes
Simple FAQ Extension
Download this release
Release Info
Developer | Tarun Vishnoi |
Extension | tv_faq_new |
Version | 0.1.8 |
Comparing to | |
See all releases |
Code changes from version 0.1.7 to 0.1.8
app/code/local/TV/Faq/Block/Adminhtml/Item/Edit/Tab/Form.php
CHANGED
@@ -32,11 +32,7 @@ class TV_Faq_Block_Adminhtml_Item_Edit_Tab_Form extends Mage_Adminhtml_Block_Wid
|
|
32 |
|
33 |
$form = new Varien_Data_Form();
|
34 |
$form->setHtmlIdPrefix('faq_');
|
35 |
-
$wysiwygConfig = Mage::getSingleton('cms/wysiwyg_config')->getConfig(
|
36 |
-
|
37 |
-
array('tab_id' => 'form_section')
|
38 |
-
|
39 |
-
);
|
40 |
|
41 |
$wysiwygConfig["files_browser_window_url"] = Mage::getSingleton('adminhtml/url')->getUrl('adminhtml/cms_wysiwyg_images/index');
|
42 |
|
32 |
|
33 |
$form = new Varien_Data_Form();
|
34 |
$form->setHtmlIdPrefix('faq_');
|
35 |
+
$wysiwygConfig = Mage::getSingleton('cms/wysiwyg_config')->getConfig(array('tab_id' => 'form_section'));
|
|
|
|
|
|
|
|
|
36 |
|
37 |
$wysiwygConfig["files_browser_window_url"] = Mage::getSingleton('adminhtml/url')->getUrl('adminhtml/cms_wysiwyg_images/index');
|
38 |
|
app/code/local/TV/Faq/Block/Frontend/Detail.php
CHANGED
@@ -10,17 +10,17 @@
|
|
10 |
* Website: www.abc.com
|
11 |
* Email: honeyvishnoi@gmail.com
|
12 |
*/
|
13 |
-
class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template
|
14 |
|
15 |
protected $_faq;
|
16 |
protected $_images;
|
17 |
|
18 |
|
19 |
protected function _prepareLayout()
|
20 |
-
|
21 |
$faq = $this->getFaq();
|
22 |
|
23 |
-
if ($faq !== false && $head = $this->getLayout()->getBlock('head'))
|
24 |
$head->setTitle($this->htmlEscape($faq->getQuestion()) . ' - ' . $head->getTitle());
|
25 |
}
|
26 |
}
|
@@ -30,17 +30,17 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
30 |
*
|
31 |
* @return TV_Faq_Model_Faq The current faq item
|
32 |
*/
|
33 |
-
public function getFaq()
|
34 |
-
if (!$this->_faq)
|
35 |
$id = intval($this->getRequest()->getParam('faq'));
|
36 |
-
try
|
37 |
$this->_faq = Mage :: getModel('tv_faq/faq')->load($id);
|
38 |
|
39 |
if ($this->_faq->getIsActive() != 1){
|
40 |
Mage::throwException('Faq Item is not active');
|
41 |
}
|
42 |
}
|
43 |
-
catch (Exception $e)
|
44 |
$this->_faq = false;
|
45 |
}
|
46 |
}
|
@@ -52,12 +52,12 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
52 |
/**
|
53 |
* Extracting available images
|
54 |
*
|
55 |
-
* @param string $thumbSize dimensions of thumbnail image (either number of width pixels or
|
56 |
-
* @param string $imageSize dimensions of detail image (either number of width pixels or
|
57 |
* @return unknown
|
58 |
*/
|
59 |
-
public function getImages($thumbSize = null, $imageSize = null)
|
60 |
-
if (!$faq = $this->getFaq())
|
61 |
return false;
|
62 |
}
|
63 |
|
@@ -66,17 +66,17 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
66 |
$result = array();
|
67 |
|
68 |
// if we have found images - process them
|
69 |
-
if (is_array($images) && !empty($images))
|
70 |
|
71 |
// get media model
|
72 |
$mediaConfig = Mage :: getSingleton('faq/faq_media_config');
|
73 |
$mediaModel = Mage :: getSingleton('media/image')->setConfig($mediaConfig);
|
74 |
|
75 |
// iterate through images
|
76 |
-
foreach ($images as $image)
|
77 |
|
78 |
// only go on if the image can be found
|
79 |
-
if (file_exists(Mage::getBaseDir('media') . DS . 'faq' . DS . $image))
|
80 |
|
81 |
// gather needed information
|
82 |
$newImage = array(
|
@@ -84,15 +84,15 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
84 |
'galleryUrl' => $this->getGalleryUrl($image)
|
85 |
);
|
86 |
|
87 |
-
if ($thumbSize)
|
88 |
$newImage['src'] = $mediaModel->getSpecialLink($image, $thumbSize);
|
89 |
}
|
90 |
|
91 |
-
if ($imageSize)
|
92 |
$newImage['href'] = $mediaModel->getSpecialLink($image, $imageSize);
|
93 |
$newImage['width'] = intval($imageSize);
|
94 |
}
|
95 |
-
else
|
96 |
$newImage['href'] = Mage::getBaseUrl('media') . '/faq/' . $image;
|
97 |
$newImage['width'] = $mediaModel->setFileName($image)->getDimensions()->getWidth();
|
98 |
}
|
@@ -112,9 +112,9 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
112 |
* @param string $image File name
|
113 |
* @return string URL to gallery
|
114 |
*/
|
115 |
-
public function getGalleryUrl($image)
|
116 |
$params = array('faq' => $this->getFaq()->getFaqId() . '_' . urlencode(str_replace(array(' ', 'ä', 'ö', 'ü', 'ß'), array('_', 'ae', 'oe', 'ue', 'ss'), (strtolower($this->getFaq()->getQuestion())))));
|
117 |
-
if ($image)
|
118 |
$params['image'] = $image;
|
119 |
return $this->getUrl('*/*/gallery', $params);
|
120 |
}
|
@@ -128,10 +128,10 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
128 |
* @param string $type needed Image information type ('previous', 'current' or 'next') - if not given the function returns all of them.
|
129 |
* @return array Requested image information
|
130 |
*/
|
131 |
-
public function getGalleryImages($type = null)
|
132 |
|
133 |
// only do processing once (since parameters don't change during gallery view)
|
134 |
-
if (!$this->_images)
|
135 |
|
136 |
// get images and parameters
|
137 |
$currentParam = $this->getRequest()->getParam('image');
|
@@ -145,29 +145,29 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
145 |
);
|
146 |
|
147 |
// if we have images -> process them
|
148 |
-
if (is_array($images) && !empty($images))
|
149 |
$previousImage = null;
|
150 |
|
151 |
-
foreach ($images as $image)
|
152 |
|
153 |
// if we found the requested pic -> save it
|
154 |
// if the requested pic was not found the first pic of the collection is used
|
155 |
-
if ($image['original'] == $currentParam || !$result['current'])
|
156 |
$result['current'] = $image;
|
157 |
|
158 |
// save the previous image to get back to it
|
159 |
$result['previous'] = $previousImage;
|
160 |
|
161 |
-
if ($image['original'] == $currentParam)
|
162 |
$current = true;
|
163 |
}
|
164 |
}
|
165 |
// save next image for pagination
|
166 |
-
elseif ($result['current'])
|
167 |
$result['next'] = $image;
|
168 |
|
169 |
// if we found the requested image -> break
|
170 |
-
if ($current)
|
171 |
break;
|
172 |
}
|
173 |
}
|
@@ -182,7 +182,7 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
182 |
}
|
183 |
|
184 |
// if the requested type is given - return the image
|
185 |
-
if ($type)
|
186 |
return (isset($this->_images[$type]) ? $this->_images[$type] : false);
|
187 |
}
|
188 |
|
@@ -196,7 +196,7 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
196 |
*
|
197 |
* @return array Image information
|
198 |
*/
|
199 |
-
public function getCurrentImage()
|
200 |
return $this->getGalleryImages('current');
|
201 |
}
|
202 |
|
@@ -206,7 +206,7 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
206 |
*
|
207 |
* @return array Image information
|
208 |
*/
|
209 |
-
public function getPreviousImage()
|
210 |
return $this->getGalleryImages('previous');
|
211 |
}
|
212 |
|
@@ -216,7 +216,7 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
216 |
*
|
217 |
* @return array Image information
|
218 |
*/
|
219 |
-
public function getNextImage()
|
220 |
return $this->getGalleryImages('next');
|
221 |
}
|
222 |
|
@@ -225,7 +225,7 @@ class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template {
|
|
225 |
*
|
226 |
* @return int Width of current image
|
227 |
*/
|
228 |
-
public function getImageWidth()
|
229 |
$current = $this->getCurrentImage();
|
230 |
return $current['width'];
|
231 |
}
|
10 |
* Website: www.abc.com
|
11 |
* Email: honeyvishnoi@gmail.com
|
12 |
*/
|
13 |
+
class TV_Faq_Block_Frontend_Detail extends Mage_Core_Block_Template{
|
14 |
|
15 |
protected $_faq;
|
16 |
protected $_images;
|
17 |
|
18 |
|
19 |
protected function _prepareLayout()
|
20 |
+
{
|
21 |
$faq = $this->getFaq();
|
22 |
|
23 |
+
if ($faq !== false && $head = $this->getLayout()->getBlock('head')){
|
24 |
$head->setTitle($this->htmlEscape($faq->getQuestion()) . ' - ' . $head->getTitle());
|
25 |
}
|
26 |
}
|
30 |
*
|
31 |
* @return TV_Faq_Model_Faq The current faq item
|
32 |
*/
|
33 |
+
public function getFaq(){
|
34 |
+
if (!$this->_faq){
|
35 |
$id = intval($this->getRequest()->getParam('faq'));
|
36 |
+
try{
|
37 |
$this->_faq = Mage :: getModel('tv_faq/faq')->load($id);
|
38 |
|
39 |
if ($this->_faq->getIsActive() != 1){
|
40 |
Mage::throwException('Faq Item is not active');
|
41 |
}
|
42 |
}
|
43 |
+
catch (Exception $e){
|
44 |
$this->_faq = false;
|
45 |
}
|
46 |
}
|
52 |
/**
|
53 |
* Extracting available images
|
54 |
*
|
55 |
+
* @param string $thumbSize dimensions of thumbnail image (either number of width pixels or{width]x{height}
|
56 |
+
* @param string $imageSize dimensions of detail image (either number of width pixels or{width]x{height}
|
57 |
* @return unknown
|
58 |
*/
|
59 |
+
public function getImages($thumbSize = null, $imageSize = null){
|
60 |
+
if (!$faq = $this->getFaq()){
|
61 |
return false;
|
62 |
}
|
63 |
|
66 |
$result = array();
|
67 |
|
68 |
// if we have found images - process them
|
69 |
+
if (is_array($images) && !empty($images)){
|
70 |
|
71 |
// get media model
|
72 |
$mediaConfig = Mage :: getSingleton('faq/faq_media_config');
|
73 |
$mediaModel = Mage :: getSingleton('media/image')->setConfig($mediaConfig);
|
74 |
|
75 |
// iterate through images
|
76 |
+
foreach ($images as $image){
|
77 |
|
78 |
// only go on if the image can be found
|
79 |
+
if (file_exists(Mage::getBaseDir('media') . DS . 'faq' . DS . $image)){
|
80 |
|
81 |
// gather needed information
|
82 |
$newImage = array(
|
84 |
'galleryUrl' => $this->getGalleryUrl($image)
|
85 |
);
|
86 |
|
87 |
+
if ($thumbSize){
|
88 |
$newImage['src'] = $mediaModel->getSpecialLink($image, $thumbSize);
|
89 |
}
|
90 |
|
91 |
+
if ($imageSize){
|
92 |
$newImage['href'] = $mediaModel->getSpecialLink($image, $imageSize);
|
93 |
$newImage['width'] = intval($imageSize);
|
94 |
}
|
95 |
+
else{
|
96 |
$newImage['href'] = Mage::getBaseUrl('media') . '/faq/' . $image;
|
97 |
$newImage['width'] = $mediaModel->setFileName($image)->getDimensions()->getWidth();
|
98 |
}
|
112 |
* @param string $image File name
|
113 |
* @return string URL to gallery
|
114 |
*/
|
115 |
+
public function getGalleryUrl($image){
|
116 |
$params = array('faq' => $this->getFaq()->getFaqId() . '_' . urlencode(str_replace(array(' ', 'ä', 'ö', 'ü', 'ß'), array('_', 'ae', 'oe', 'ue', 'ss'), (strtolower($this->getFaq()->getQuestion())))));
|
117 |
+
if ($image){
|
118 |
$params['image'] = $image;
|
119 |
return $this->getUrl('*/*/gallery', $params);
|
120 |
}
|
128 |
* @param string $type needed Image information type ('previous', 'current' or 'next') - if not given the function returns all of them.
|
129 |
* @return array Requested image information
|
130 |
*/
|
131 |
+
public function getGalleryImages($type = null){
|
132 |
|
133 |
// only do processing once (since parameters don't change during gallery view)
|
134 |
+
if (!$this->_images){
|
135 |
|
136 |
// get images and parameters
|
137 |
$currentParam = $this->getRequest()->getParam('image');
|
145 |
);
|
146 |
|
147 |
// if we have images -> process them
|
148 |
+
if (is_array($images) && !empty($images)){
|
149 |
$previousImage = null;
|
150 |
|
151 |
+
foreach ($images as $image){
|
152 |
|
153 |
// if we found the requested pic -> save it
|
154 |
// if the requested pic was not found the first pic of the collection is used
|
155 |
+
if ($image['original'] == $currentParam || !$result['current']){
|
156 |
$result['current'] = $image;
|
157 |
|
158 |
// save the previous image to get back to it
|
159 |
$result['previous'] = $previousImage;
|
160 |
|
161 |
+
if ($image['original'] == $currentParam){
|
162 |
$current = true;
|
163 |
}
|
164 |
}
|
165 |
// save next image for pagination
|
166 |
+
elseif ($result['current']){
|
167 |
$result['next'] = $image;
|
168 |
|
169 |
// if we found the requested image -> break
|
170 |
+
if ($current){
|
171 |
break;
|
172 |
}
|
173 |
}
|
182 |
}
|
183 |
|
184 |
// if the requested type is given - return the image
|
185 |
+
if ($type){
|
186 |
return (isset($this->_images[$type]) ? $this->_images[$type] : false);
|
187 |
}
|
188 |
|
196 |
*
|
197 |
* @return array Image information
|
198 |
*/
|
199 |
+
public function getCurrentImage(){
|
200 |
return $this->getGalleryImages('current');
|
201 |
}
|
202 |
|
206 |
*
|
207 |
* @return array Image information
|
208 |
*/
|
209 |
+
public function getPreviousImage(){
|
210 |
return $this->getGalleryImages('previous');
|
211 |
}
|
212 |
|
216 |
*
|
217 |
* @return array Image information
|
218 |
*/
|
219 |
+
public function getNextImage(){
|
220 |
return $this->getGalleryImages('next');
|
221 |
}
|
222 |
|
225 |
*
|
226 |
* @return int Width of current image
|
227 |
*/
|
228 |
+
public function getImageWidth(){
|
229 |
$current = $this->getCurrentImage();
|
230 |
return $current['width'];
|
231 |
}
|
app/code/local/TV/Faq/Block/Frontend/List.php
CHANGED
@@ -15,8 +15,8 @@ class TV_Faq_Block_Frontend_List extends Mage_Core_Block_Template
|
|
15 |
protected $_faqCollection;
|
16 |
|
17 |
protected function _prepareLayout()
|
18 |
-
|
19 |
-
if ($head = $this->getLayout()->getBlock('head'))
|
20 |
$head->setTitle($this->htmlEscape($this->__('Frequently Asked Questions')) . ' - ' . $head->getTitle());
|
21 |
}
|
22 |
}
|
@@ -31,13 +31,13 @@ class TV_Faq_Block_Frontend_List extends Mage_Core_Block_Template
|
|
31 |
{
|
32 |
if (!$this->_faqCollection || (intval($pageSize) > 0
|
33 |
&& $this->_faqCollection->getSize() != intval($pageSize))
|
34 |
-
)
|
35 |
$this->_faqCollection = Mage :: getModel('tv_faq/faq')
|
36 |
->getCollection()
|
37 |
->addStoreFilter(Mage :: app()->getStore())
|
38 |
->addIsActiveFilter();
|
39 |
|
40 |
-
if (isset($pageSize) && intval($pageSize) && intval($pageSize) > 0)
|
41 |
$this->_faqCollection->setPageSize(intval($pageSize));
|
42 |
}
|
43 |
}
|
@@ -53,7 +53,7 @@ class TV_Faq_Block_Frontend_List extends Mage_Core_Block_Template
|
|
53 |
public function getCategoryCollection()
|
54 |
{
|
55 |
$categories = $this->getData('category_collection');
|
56 |
-
if (is_null($categories))
|
57 |
$categories = Mage::getResourceSingleton('tv_faq/category_collection')
|
58 |
->addStoreFilter(Mage::app()->getStore())
|
59 |
->addIsActiveFilter();
|
@@ -89,10 +89,10 @@ class TV_Faq_Block_Frontend_List extends Mage_Core_Block_Template
|
|
89 |
$_intro = mb_substr($_intro, 0, mb_strpos($_intro, "\n"));
|
90 |
|
91 |
$length = 100 - mb_strlen($faqItem->getQuestion());
|
92 |
-
if ($length < 0)
|
93 |
return '';
|
94 |
}
|
95 |
-
if (mb_strlen($_intro) > $length)
|
96 |
$_intro = mb_substr($_intro, 0, $length);
|
97 |
$_intro = mb_substr($_intro, 0, mb_strrpos($_intro, ' ')).'...';
|
98 |
}
|
@@ -120,7 +120,7 @@ class TV_Faq_Block_Frontend_List extends Mage_Core_Block_Template
|
|
120 |
*
|
121 |
* @return boolean True if the jumplist should be displayed
|
122 |
*/
|
123 |
-
public function hasFaqJumplist()
|
124 |
// TODO add configuration option to enable/disable jumplist
|
125 |
return count($this->getFaqJumplist()) > 0;
|
126 |
}
|
15 |
protected $_faqCollection;
|
16 |
|
17 |
protected function _prepareLayout()
|
18 |
+
{
|
19 |
+
if ($head = $this->getLayout()->getBlock('head')){
|
20 |
$head->setTitle($this->htmlEscape($this->__('Frequently Asked Questions')) . ' - ' . $head->getTitle());
|
21 |
}
|
22 |
}
|
31 |
{
|
32 |
if (!$this->_faqCollection || (intval($pageSize) > 0
|
33 |
&& $this->_faqCollection->getSize() != intval($pageSize))
|
34 |
+
){
|
35 |
$this->_faqCollection = Mage :: getModel('tv_faq/faq')
|
36 |
->getCollection()
|
37 |
->addStoreFilter(Mage :: app()->getStore())
|
38 |
->addIsActiveFilter();
|
39 |
|
40 |
+
if (isset($pageSize) && intval($pageSize) && intval($pageSize) > 0){
|
41 |
$this->_faqCollection->setPageSize(intval($pageSize));
|
42 |
}
|
43 |
}
|
53 |
public function getCategoryCollection()
|
54 |
{
|
55 |
$categories = $this->getData('category_collection');
|
56 |
+
if (is_null($categories)){
|
57 |
$categories = Mage::getResourceSingleton('tv_faq/category_collection')
|
58 |
->addStoreFilter(Mage::app()->getStore())
|
59 |
->addIsActiveFilter();
|
89 |
$_intro = mb_substr($_intro, 0, mb_strpos($_intro, "\n"));
|
90 |
|
91 |
$length = 100 - mb_strlen($faqItem->getQuestion());
|
92 |
+
if ($length < 0){
|
93 |
return '';
|
94 |
}
|
95 |
+
if (mb_strlen($_intro) > $length){
|
96 |
$_intro = mb_substr($_intro, 0, $length);
|
97 |
$_intro = mb_substr($_intro, 0, mb_strrpos($_intro, ' ')).'...';
|
98 |
}
|
120 |
*
|
121 |
* @return boolean True if the jumplist should be displayed
|
122 |
*/
|
123 |
+
public function hasFaqJumplist(){
|
124 |
// TODO add configuration option to enable/disable jumplist
|
125 |
return count($this->getFaqJumplist()) > 0;
|
126 |
}
|
app/code/local/TV/Faq/etc/adminhtml.xml
CHANGED
@@ -29,6 +29,16 @@
|
|
29 |
<faq translate="title" module="tv_faq">
|
30 |
<title>Faq</title>
|
31 |
<sort_order>50</sort_order>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
</faq>
|
33 |
</children>
|
34 |
</cms>
|
29 |
<faq translate="title" module="tv_faq">
|
30 |
<title>Faq</title>
|
31 |
<sort_order>50</sort_order>
|
32 |
+
<children>
|
33 |
+
<item translate="titl" module="tv_faq">
|
34 |
+
<title>Manage Items</title>
|
35 |
+
<action>adminhtml/faq</action>
|
36 |
+
</item>
|
37 |
+
<category translate="titl" module="tv_faq">
|
38 |
+
<title>Manage Categories</title>
|
39 |
+
<action>adminhtml/faq_category</action>
|
40 |
+
</category>
|
41 |
+
</children>
|
42 |
</faq>
|
43 |
</children>
|
44 |
</cms>
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>tv_faq_new</name>
|
4 |
-
<version>0.1.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="https://opensource.org/licenses/osl-3.0.php">OSL</license>
|
7 |
<channel>community</channel>
|
@@ -10,9 +10,9 @@
|
|
10 |
<description>This extension allows admin to enter questions and answers and list them on front end.</description>
|
11 |
<notes>Simple FAQ Extension</notes>
|
12 |
<authors><author><name>Tarun Vishnoi</name><user>tarun_ons</user><email>honeyvishnoi@gmail.com</email></author></authors>
|
13 |
-
<date>2017-
|
14 |
-
<time>
|
15 |
-
<contents><target name="magelocal"><dir name="TV"><dir name="Faq"><dir name="Block"><dir name="Adminhtml"><dir name="Category"><dir name="Edit"><file name="Form.php" hash="92dff8a012206aae13e4c2ae3759c5f9"/><dir name="Tab"><file name="Form.php" hash="46d4ab06cbd0099a31e4ac99b6de39fc"/></dir><file name="Tabs.php" hash="69bd08df860a478ccf90fc9fa2c56ae7"/></dir><file name="Edit.php" hash="3b58bcd78038a5e943b90da796598d4c"/><file name="Grid.php" hash="319356af6e0e6329a42b779834456bc0"/></dir><file name="Category.php" hash="59a310d0fa62886828e9a53afcf35954"/><dir name="Item"><dir name="Edit"><file name="Form.php" hash="6ec7bc1dea4b127e65298a15ffbe3ee4"/><dir name="Tab"><file name="Form.php" hash="
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.1.0</min><max>7.0.0</max></php></required></dependencies>
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>tv_faq_new</name>
|
4 |
+
<version>0.1.8</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="https://opensource.org/licenses/osl-3.0.php">OSL</license>
|
7 |
<channel>community</channel>
|
10 |
<description>This extension allows admin to enter questions and answers and list them on front end.</description>
|
11 |
<notes>Simple FAQ Extension</notes>
|
12 |
<authors><author><name>Tarun Vishnoi</name><user>tarun_ons</user><email>honeyvishnoi@gmail.com</email></author></authors>
|
13 |
+
<date>2017-05-31</date>
|
14 |
+
<time>06:56:06</time>
|
15 |
+
<contents><target name="magelocal"><dir name="TV"><dir name="Faq"><dir name="Block"><dir name="Adminhtml"><dir name="Category"><dir name="Edit"><file name="Form.php" hash="92dff8a012206aae13e4c2ae3759c5f9"/><dir name="Tab"><file name="Form.php" hash="46d4ab06cbd0099a31e4ac99b6de39fc"/></dir><file name="Tabs.php" hash="69bd08df860a478ccf90fc9fa2c56ae7"/></dir><file name="Edit.php" hash="3b58bcd78038a5e943b90da796598d4c"/><file name="Grid.php" hash="319356af6e0e6329a42b779834456bc0"/></dir><file name="Category.php" hash="59a310d0fa62886828e9a53afcf35954"/><dir name="Item"><dir name="Edit"><file name="Form.php" hash="6ec7bc1dea4b127e65298a15ffbe3ee4"/><dir name="Tab"><file name="Form.php" hash="e7274a33062cfd8fe523e344ac5065e4"/></dir><file name="Tabs.php" hash="1fc1ab43dcf72b6e63bc785f4e83effb"/></dir><file name="Edit.php" hash="ee55af3d2c18c06d99c91f50bc38bce6"/><file name="Grid.php" hash="b172258c705c6ac5a10cd28fd513ac2a"/></dir><file name="Item.php" hash="de90e2d7348bf60db6cb0a852f4b558b"/></dir><dir name="Frontend"><file name="Detail.php" hash="6f2f27357e62361edea0009214cfac1e"/><file name="List.php" hash="13311ded5344f06501fcb82560e8ff85"/></dir></dir><dir name="Helper"><file name="Data.php" hash="b6c919e0c4d5e54e28779c389872f7c2"/><file name="Jumplist.php" hash="c6b5469ffddef4afbb9825787af363ae"/><file name="JumplistItem.php" hash="3323517e20c5db4c5b41caa17a56dd2e"/></dir><dir name="Model"><file name="Category.php" hash="9e928e4f26ac0ad1965b912bd43ff0d4"/><file name="Faq.php" hash="c93d162961776b7c1d4a887b12e15d98"/><dir name="Mysql4"><dir name="Category"><file name="Collection.php" hash="c6f262642e9a3558ef599582e402cf39"/></dir><file name="Category.php" hash="c084383e9031018b4bb93fed37bad39e"/><dir name="Faq"><file name="Collection.php" hash="909b63da3d8c1fb177a49855286ce951"/></dir><file name="Faq.php" hash="691c7c4015628e45671daa9f6a847daf"/></dir></dir><dir name="Wysiwyg"><dir name="Images"><dir name="Content"><file name="Files.php" hash="96ba466e162a5b304e05581a1b9981c2"/><file name="Newfolder.php" hash="e53addca9a2a2a705e97bd493c57833c"/><file name="Uploader.php" hash="d46965540d2986ff74f9c2c030f2dbb4"/></dir><file name="Content.php" hash="fa97cc6ae723a62eeb137dcb23851225"/><file name="Tree.php" hash="6de3fa85978962413118cfc15b5f8f82"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Faq"><file name="CategoryController.php" hash="f66c2305c654f36cb5dc8e2682e135f2"/></dir><file name="FaqController.php" hash="876b26440bb40188b38cfc7b98a38b21"/></dir><file name="IndexController.php" hash="3e8c7abb09eb92da75cf562eb8d3a890"/></dir><dir name="etc"><file name="adminhtml.xml" hash="a9cc5d6e150a1f10c9c2dfbe3322d2f9"/><file name="config.xml" hash="42ecc7df781233659a4d274fa7b11e4b"/></dir><dir name="sql"><dir name="faq_setup"><file name="mysql4-install-0.1.0.php" hash="1a5a6fc58d62fb45706bd94a4c9073cf"/><file name="mysql4-install-1.0.7.php" hash="5914476063c2aef33bb3adb0bdc3effe"/><file name="mysql4-upgrade-1.0.6-1.0.7.php" hash="b63f7b5b2ff00f632b0be0582ef7a530"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="faq.xml" hash="d6d4c73235f8fec0b08f545f178db4eb"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="faq.xml" hash="9306a6a1548a87e27a41ce1802d78251"/></dir><dir name="template"><dir name="faq"><file name="detail.phtml" hash="945c73c968c7c980c1acc4bed4a4cc4a"/><file name="list.phtml" hash="b53d2bf9b23893a320993fc5e5bccc24"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="TV_Faq.xml" hash="690d6d2c3226982e59507bfc619ceed2"/></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="tv"><file name="style.css" hash="b3d8c3aa6e12fb7de64140fb65c2b73f"/><file name="toggle-minus.png" hash="31d75504726b3f09a9e7af2115fb58c9"/><file name="toggle-plus.png" hash="c8b91476d2cf1c55b6e2010c02a96074"/></dir></dir></dir></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.1.0</min><max>7.0.0</max></php></required></dependencies>
|
18 |
</package>
|