Version Notes
Adds multiple selection features for attribute and price filters in Magento layered navigation.
Download this release
Release Info
Developer | Magento Core Team |
Extension | Mana_Filters |
Version | 14.11.25.15 |
Comparing to | |
See all releases |
Code changes from version 14.06.13.09 to 14.11.25.15
- app/code/local/Mana/Core/Helper/Data.php +35 -2
- app/code/local/Mana/Core/Helper/Eav.php +68 -0
- app/code/local/Mana/Core/Helper/Layer.php +3 -0
- app/code/local/Mana/Core/Helper/PageType/CmsPage.php +1 -1
- app/code/local/Mana/Core/Model/Indexer.php +11 -0
- app/code/local/Mana/Core/Resource/JsonCollection.php +186 -0
- app/code/local/Mana/Core/etc/config.xml +1 -1
- app/code/local/Mana/Db/Model/Entity/Indexer.php +4 -1
- app/code/local/Mana/Db/Resource/Entity/JsonCollection.php +1 -173
- app/code/local/Mana/Db/etc/config.xml +1 -1
- app/code/local/Mana/Filters/Block/Filter.php +2 -14
- app/code/local/Mana/Filters/Block/Layer.php +1 -1
- app/code/local/Mana/Filters/Block/State.php +20 -0
- app/code/local/Mana/Filters/Helper/Data.php +36 -0
- app/code/local/Mana/Filters/Model/Filter/Attribute.php +25 -1
- app/code/local/Mana/Filters/Model/Filter/Category.php +54 -1
- app/code/local/Mana/Filters/Model/Filter/Decimal.php +33 -0
- app/code/local/Mana/Filters/Model/Filter/Price.php +32 -0
- app/code/local/Mana/Filters/Model/Item.php +28 -1
- app/code/local/Mana/Filters/Model/Query.php +17 -0
- app/code/local/Mana/Filters/Model/Solr/Adapter/HttpStream.php +13 -0
- app/code/local/Mana/Filters/Model/Solr/Adapter/PhpExtension.php +12 -0
- app/code/local/Mana/Filters/Model/Solr/Price.php +8 -4
- app/code/local/Mana/Filters/Model/Source/Filter.php +91 -0
- app/code/local/Mana/Filters/Resource/Filter/Attribute.php +4 -4
- app/code/local/Mana/Filters/Resource/Filter/Price.php +3 -3
- app/code/local/Mana/Filters/etc/config.xml +1 -1
- app/design/frontend/base/default/template/mana/filters/items/list_special.phtml +33 -0
- app/design/frontend/base/default/template/mana/filters/state.phtml +1 -1
- js/jquery/history.adapter.jquery.js +4 -1
- js/mana/core.js +61 -62
- js/mana/core.js.map +26 -26
- js/mana/core.min.js +7 -7
- js/src/Mana/Core/Core.js +2 -2
- js/src/Mana/Core/Layout.js +17 -19
- js/src/Mana/Core/Object.js +6 -5
- package.xml +4 -4
app/code/local/Mana/Core/Helper/Data.php
CHANGED
@@ -12,6 +12,10 @@
|
|
12 |
*/
|
13 |
class Mana_Core_Helper_Data extends Mage_Core_Helper_Abstract {
|
14 |
protected $_pageTypes;
|
|
|
|
|
|
|
|
|
15 |
|
16 |
/**
|
17 |
* Retrieve config value for store by path. By default uses standard Magento function to query core_config_data
|
@@ -546,6 +550,17 @@ class Mana_Core_Helper_Data extends Mage_Core_Helper_Abstract {
|
|
546 |
}
|
547 |
}
|
548 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
549 |
public function base64EncodeUrl($url) {
|
550 |
return base64_encode(Mage::getSingleton('core/url')->sessionUrlVar($url));
|
551 |
}
|
@@ -651,10 +666,10 @@ class Mana_Core_Helper_Data extends Mage_Core_Helper_Abstract {
|
|
651 |
return $this->_attributes[$key];
|
652 |
}
|
653 |
|
654 |
-
public function getAttributeTable($attribute) {
|
655 |
return $attribute['backend_table'] ?
|
656 |
$attribute['backend_table'] :
|
657 |
-
Mage::getSingleton('core/resource')->getTableName('
|
658 |
}
|
659 |
|
660 |
/**
|
@@ -738,6 +753,10 @@ class Mana_Core_Helper_Data extends Mage_Core_Helper_Abstract {
|
|
738 |
return $this->isModuleEnabled('Mana_Filters');
|
739 |
}
|
740 |
|
|
|
|
|
|
|
|
|
741 |
public function isManadevSeoLayeredNavigationInstalled() {
|
742 |
return $this->isModuleEnabled('ManaPro_FilterSeoLinks');
|
743 |
}
|
@@ -768,6 +787,10 @@ class Mana_Core_Helper_Data extends Mage_Core_Helper_Abstract {
|
|
768 |
return $this->isModuleEnabled('Enterprise_UrlRewrite');
|
769 |
}
|
770 |
|
|
|
|
|
|
|
|
|
771 |
protected $_accentTranslations = array(
|
772 |
'à' => 'a',
|
773 |
'á' => 'a',
|
@@ -892,4 +915,14 @@ class Mana_Core_Helper_Data extends Mage_Core_Helper_Abstract {
|
|
892 |
return $this;
|
893 |
}
|
894 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
895 |
}
|
12 |
*/
|
13 |
class Mana_Core_Helper_Data extends Mage_Core_Helper_Abstract {
|
14 |
protected $_pageTypes;
|
15 |
+
/**
|
16 |
+
* @var Mage_Catalog_Model_Category
|
17 |
+
*/
|
18 |
+
protected $_rootCategory;
|
19 |
|
20 |
/**
|
21 |
* Retrieve config value for store by path. By default uses standard Magento function to query core_config_data
|
550 |
}
|
551 |
}
|
552 |
|
553 |
+
public function setProtectedProperty($object, $propertyName, $value) {
|
554 |
+
$className = get_class($object);
|
555 |
+
$class = new ReflectionClass($className);
|
556 |
+
$property = $class->getProperty($propertyName);
|
557 |
+
if (method_exists($property, 'setAccessible')) {
|
558 |
+
$property->setAccessible(true);
|
559 |
+
$property->setValue($object, $value);
|
560 |
+
}
|
561 |
+
}
|
562 |
+
|
563 |
+
|
564 |
public function base64EncodeUrl($url) {
|
565 |
return base64_encode(Mage::getSingleton('core/url')->sessionUrlVar($url));
|
566 |
}
|
666 |
return $this->_attributes[$key];
|
667 |
}
|
668 |
|
669 |
+
public function getAttributeTable($attribute, $baseTable = 'catalog_category_entity') {
|
670 |
return $attribute['backend_table'] ?
|
671 |
$attribute['backend_table'] :
|
672 |
+
Mage::getSingleton('core/resource')->getTableName($baseTable . '_' . $attribute['backend_type']);
|
673 |
}
|
674 |
|
675 |
/**
|
753 |
return $this->isModuleEnabled('Mana_Filters');
|
754 |
}
|
755 |
|
756 |
+
public function isManadevLayeredNavigationCheckboxesInstalled() {
|
757 |
+
return $this->isModuleEnabled('ManaPro_FilterCheckboxes');
|
758 |
+
}
|
759 |
+
|
760 |
public function isManadevSeoLayeredNavigationInstalled() {
|
761 |
return $this->isModuleEnabled('ManaPro_FilterSeoLinks');
|
762 |
}
|
787 |
return $this->isModuleEnabled('Enterprise_UrlRewrite');
|
788 |
}
|
789 |
|
790 |
+
public function isSpecialPagesInstalled() {
|
791 |
+
return $this->isModuleEnabled('Mana_Page');
|
792 |
+
}
|
793 |
+
|
794 |
protected $_accentTranslations = array(
|
795 |
'à' => 'a',
|
796 |
'á' => 'a',
|
915 |
return $this;
|
916 |
}
|
917 |
|
918 |
+
public function getRootCategory() {
|
919 |
+
if (!$this->_rootCategory) {
|
920 |
+
$this->_rootCategory = Mage::getModel('catalog/category');
|
921 |
+
$this->_rootCategory
|
922 |
+
->setStoreId(Mage::app()->getStore()->getId())
|
923 |
+
->load(Mage::app()->getStore()->getRootCategoryId());
|
924 |
+
|
925 |
+
}
|
926 |
+
return $this->_rootCategory;
|
927 |
+
}
|
928 |
}
|
app/code/local/Mana/Core/Helper/Eav.php
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @category Mana
|
4 |
+
* @package Mana_Core
|
5 |
+
* @copyright Copyright (c) http://www.manadev.com
|
6 |
+
* @license http://www.manadev.com/license Proprietary License
|
7 |
+
*/
|
8 |
+
/**
|
9 |
+
* @author Mana Team
|
10 |
+
*
|
11 |
+
*/
|
12 |
+
class Mana_Core_Helper_Eav extends Mage_Core_Helper_Abstract {
|
13 |
+
protected $_attributes;
|
14 |
+
|
15 |
+
public function getAttributes()
|
16 |
+
{
|
17 |
+
if (is_null($this->_attributes)) {
|
18 |
+
$this->_attributes = Mage::getSingleton('eav/config')
|
19 |
+
->getEntityType('catalog_product')
|
20 |
+
->getAttributeCollection();
|
21 |
+
}
|
22 |
+
|
23 |
+
return $this->_attributes;
|
24 |
+
}
|
25 |
+
|
26 |
+
/**
|
27 |
+
* @param Varien_Db_Select $select
|
28 |
+
* @param string $attributeCode
|
29 |
+
* @return $this
|
30 |
+
*/
|
31 |
+
public function joinAttribute($select, $attributeCode) {
|
32 |
+
/* @var $core Mana_Core_Helper_Data */
|
33 |
+
$core = Mage::helper(strtolower('Mana_Core'));
|
34 |
+
|
35 |
+
/* @var $attribute Mage_Catalog_Model_Resource_Eav_Attribute */
|
36 |
+
$attribute = $core->collectionFind($this->getAttributes(), 'attribute_code', $attributeCode);
|
37 |
+
|
38 |
+
/* @var $db Varien_Db_Adapter_Pdo_Mysql */
|
39 |
+
$db = $select->getAdapter();
|
40 |
+
|
41 |
+
$alias = 'meav_'.$attributeCode;
|
42 |
+
$storeAlias = 's' . $alias;
|
43 |
+
$from = $select->getPart(Varien_Db_Select::FROM);
|
44 |
+
if (!isset($from[$alias])) {
|
45 |
+
$select->joinLeft(array($alias => $attribute->getBackendTable()),
|
46 |
+
implode(' AND ', array(
|
47 |
+
"`$alias`.`entity_id` = `e`.`entity_id`",
|
48 |
+
$db->quoteInto("`$alias`.`attribute_id` = ?", $attribute->getId()),
|
49 |
+
"`$alias`.`store_id` = 0",
|
50 |
+
)), null);
|
51 |
+
$select->joinLeft(array($storeAlias => $attribute->getBackendTable()),
|
52 |
+
implode(' AND ', array(
|
53 |
+
"`$storeAlias`.`entity_id` = `e`.`entity_id`",
|
54 |
+
$db->quoteInto("`$storeAlias`.`attribute_id` = ?", $attribute->getId()),
|
55 |
+
$db->quoteInto("`$storeAlias`.`store_id` = ?", Mage::app()->getStore()->getId()),
|
56 |
+
)), null);
|
57 |
+
}
|
58 |
+
|
59 |
+
return $this;
|
60 |
+
}
|
61 |
+
|
62 |
+
public function attributeValue($attributeCode) {
|
63 |
+
$alias = 'meav_' . $attributeCode;
|
64 |
+
$storeAlias = 's' . $alias;
|
65 |
+
|
66 |
+
return "COALESCE(`$storeAlias`.`value`, `$alias`.`value`)";
|
67 |
+
}
|
68 |
+
}
|
app/code/local/Mana/Core/Helper/Layer.php
CHANGED
@@ -11,6 +11,9 @@
|
|
11 |
*/
|
12 |
class Mana_Core_Helper_Layer extends Mage_Core_Helper_Abstract {
|
13 |
public function useSolrForNavigation() {
|
|
|
|
|
|
|
14 |
if (!Mage::helper('core')->isModuleEnabled('Enterprise_Search')) {
|
15 |
return false;
|
16 |
}
|
11 |
*/
|
12 |
class Mana_Core_Helper_Layer extends Mage_Core_Helper_Abstract {
|
13 |
public function useSolrForNavigation() {
|
14 |
+
if (Mage::registry('m_no_solr')) {
|
15 |
+
return false;
|
16 |
+
}
|
17 |
if (!Mage::helper('core')->isModuleEnabled('Enterprise_Search')) {
|
18 |
return false;
|
19 |
}
|
app/code/local/Mana/Core/Helper/PageType/CmsPage.php
CHANGED
@@ -22,7 +22,7 @@ class Mana_Core_Helper_PageType_CmsPage extends Mana_Core_Helper_PageType {
|
|
22 |
if ($block = Mage::getSingleton('core/layout')->getBlock('cms.products')) {
|
23 |
return ($block->hasData('hide_when_no_filters_applied')
|
24 |
? $block->getData('hide_when_no_filters_applied')
|
25 |
-
: Mage::getStoreConfigFlag('mana_filters/display/hide_cms_product_list'));
|
26 |
}
|
27 |
|
28 |
return true;
|
22 |
if ($block = Mage::getSingleton('core/layout')->getBlock('cms.products')) {
|
23 |
return ($block->hasData('hide_when_no_filters_applied')
|
24 |
? $block->getData('hide_when_no_filters_applied')
|
25 |
+
: !Mage::getStoreConfigFlag('mana_filters/display/hide_cms_product_list'));
|
26 |
}
|
27 |
|
28 |
return true;
|
app/code/local/Mana/Core/Model/Indexer.php
CHANGED
@@ -13,6 +13,8 @@ abstract class Mana_Core_Model_Indexer extends Mage_Index_Model_Indexer_Abstract
|
|
13 |
protected $_code;
|
14 |
protected $_process;
|
15 |
protected $_xml = null;
|
|
|
|
|
16 |
public function getCode() {
|
17 |
return $this->_code;
|
18 |
}
|
@@ -40,6 +42,15 @@ abstract class Mana_Core_Model_Indexer extends Mage_Index_Model_Indexer_Abstract
|
|
40 |
return $this->_xml;
|
41 |
}
|
42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
/**
|
44 |
* Get Indexer name
|
45 |
*
|
13 |
protected $_code;
|
14 |
protected $_process;
|
15 |
protected $_xml = null;
|
16 |
+
protected $_configXml = null;
|
17 |
+
|
18 |
public function getCode() {
|
19 |
return $this->_code;
|
20 |
}
|
42 |
return $this->_xml;
|
43 |
}
|
44 |
|
45 |
+
public function getConfigXml() {
|
46 |
+
if (is_null($this->_configXml)) {
|
47 |
+
$result = Mage::getConfig()->getXpath("//global/index/indexer_config/{$this->getProcess()->getIndexerCode()}");
|
48 |
+
|
49 |
+
$this->_configXml = count($result) == 1 ? $result[0] : false;
|
50 |
+
}
|
51 |
+
return $this->_configXml;
|
52 |
+
}
|
53 |
+
|
54 |
/**
|
55 |
* Get Indexer name
|
56 |
*
|
app/code/local/Mana/Core/Resource/JsonCollection.php
ADDED
@@ -0,0 +1,186 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @category Mana
|
4 |
+
* @package Mana_Db
|
5 |
+
* @copyright Copyright (c) http://www.manadev.com
|
6 |
+
* @license http://www.manadev.com/license Proprietary License
|
7 |
+
*/
|
8 |
+
/**
|
9 |
+
* @author Mana Team
|
10 |
+
* @method string getScopeName()
|
11 |
+
*/
|
12 |
+
class Mana_Core_Resource_JsonCollection extends Varien_Data_Collection {
|
13 |
+
protected $_rawData = array();
|
14 |
+
protected $_data = array();
|
15 |
+
protected $_mFilters = array();
|
16 |
+
|
17 |
+
/**
|
18 |
+
* @param $data
|
19 |
+
* @return Mana_Core_Resource_JsonCollection
|
20 |
+
*/
|
21 |
+
public function setData($data) {
|
22 |
+
foreach (array_keys($data) as $index) {
|
23 |
+
if (!isset($data[$index]['id'])) {
|
24 |
+
$data[$index]['id'] = $index;
|
25 |
+
}
|
26 |
+
}
|
27 |
+
$this->_data = $data;
|
28 |
+
$this->_rawData = $data;
|
29 |
+
|
30 |
+
return $this;
|
31 |
+
}
|
32 |
+
|
33 |
+
public function getData() {
|
34 |
+
return $this->_data;
|
35 |
+
}
|
36 |
+
public function load($printQuery = false, $logQuery = false) {
|
37 |
+
if ($this->isLoaded()) {
|
38 |
+
return $this;
|
39 |
+
}
|
40 |
+
|
41 |
+
$this->_beforeLoad();
|
42 |
+
|
43 |
+
$this->_renderFilters()
|
44 |
+
->_renderOrders()
|
45 |
+
->_renderLimit();
|
46 |
+
|
47 |
+
$data = $this->getData();
|
48 |
+
|
49 |
+
if (is_array($data)) {
|
50 |
+
foreach ($data as $row) {
|
51 |
+
$item = $this->getNewEmptyItem();
|
52 |
+
$item->addData($row);
|
53 |
+
$this->addItem($item);
|
54 |
+
}
|
55 |
+
}
|
56 |
+
|
57 |
+
$this->_setIsLoaded();
|
58 |
+
$this->_afterLoad();
|
59 |
+
|
60 |
+
return $this;
|
61 |
+
}
|
62 |
+
|
63 |
+
protected function _beforeLoad() {
|
64 |
+
return $this;
|
65 |
+
}
|
66 |
+
|
67 |
+
protected function _afterLoad() {
|
68 |
+
return $this;
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* @return Mana_Db_Resource_Entity_JsonCollection
|
73 |
+
*/
|
74 |
+
protected function _renderFilters() {
|
75 |
+
$this->_data = array_filter($this->_data, array($this, '_filterItem'));
|
76 |
+
return $this;
|
77 |
+
}
|
78 |
+
|
79 |
+
/**
|
80 |
+
* Render sql select orders
|
81 |
+
*
|
82 |
+
* @return Mana_Db_Resource_Entity_JsonCollection
|
83 |
+
*/
|
84 |
+
protected function _renderOrders() {
|
85 |
+
if (count($this->_orders)) {
|
86 |
+
uasort($this->_data, array($this, '_compareItems'));
|
87 |
+
}
|
88 |
+
|
89 |
+
return $this;
|
90 |
+
}
|
91 |
+
|
92 |
+
/**
|
93 |
+
* Render sql select limit
|
94 |
+
*
|
95 |
+
* @return Mana_Db_Resource_Entity_JsonCollection
|
96 |
+
*/
|
97 |
+
protected function _renderLimit() {
|
98 |
+
if ($this->_pageSize !== false) {
|
99 |
+
$offset = ($this->_curPage - 1) * $this->_pageSize;
|
100 |
+
$count = count($this->_data);
|
101 |
+
if ($count > $offset) {
|
102 |
+
if ($count >= $offset + $this->_pageSize) {
|
103 |
+
$this->_data = array_slice($this->_data, $offset, $this->_pageSize);
|
104 |
+
}
|
105 |
+
else {
|
106 |
+
$this->_data = array_slice($this->_data, $offset);
|
107 |
+
}
|
108 |
+
}
|
109 |
+
else {
|
110 |
+
$this->_data = array();
|
111 |
+
}
|
112 |
+
}
|
113 |
+
|
114 |
+
return $this;
|
115 |
+
}
|
116 |
+
|
117 |
+
public function getRawData() {
|
118 |
+
return $this->_rawData;
|
119 |
+
}
|
120 |
+
|
121 |
+
/**
|
122 |
+
* @param array $a
|
123 |
+
* @param array $b
|
124 |
+
* @return int
|
125 |
+
*/
|
126 |
+
protected function _compareItems($a, $b) {
|
127 |
+
foreach ($this->_orders as $column => $direction) {
|
128 |
+
if (isset($a[$column])) {
|
129 |
+
if (isset($b[$column])) {
|
130 |
+
if ($a[$column] < $b[$column]) {
|
131 |
+
return strtolower($direction) == 'desc' ? 1 : -1;
|
132 |
+
}
|
133 |
+
if ($a[$column] > $b[$column]) {
|
134 |
+
return strtolower($direction) == 'desc' ? -1 : 1;
|
135 |
+
}
|
136 |
+
}
|
137 |
+
else {
|
138 |
+
return strtolower($direction) == 'desc' ? -1 : 1;
|
139 |
+
}
|
140 |
+
}
|
141 |
+
else {
|
142 |
+
if (isset($b[$column])) {
|
143 |
+
return strtolower($direction) == 'desc' ? 1 : -1;
|
144 |
+
}
|
145 |
+
}
|
146 |
+
}
|
147 |
+
return 0;
|
148 |
+
}
|
149 |
+
|
150 |
+
/**
|
151 |
+
* @param array $a
|
152 |
+
* @return bool
|
153 |
+
*/
|
154 |
+
protected function _filterItem($a) {
|
155 |
+
foreach ($this->_mFilters as $filter) {
|
156 |
+
$value = isset($a[$filter['attribute']]) ? $a[$filter['attribute']] : '';
|
157 |
+
if (isset($filter['condition']['like'])) {
|
158 |
+
$test = $filter['condition']['like'];
|
159 |
+
if ($this->getMbstring()->stripos($value, $this->getMbstring()->substr($test, 1, mb_strlen($test) - 2)) === false) {
|
160 |
+
return false;
|
161 |
+
}
|
162 |
+
}
|
163 |
+
elseif (isset($filter['condition']['eq'])) {
|
164 |
+
$test = $filter['condition']['eq'];
|
165 |
+
if ($value != $test) {
|
166 |
+
return false;
|
167 |
+
}
|
168 |
+
}
|
169 |
+
}
|
170 |
+
|
171 |
+
return true;
|
172 |
+
}
|
173 |
+
public function addFieldToFilter($attribute, $condition = null) {
|
174 |
+
$this->_mFilters[] = array('attribute' => $attribute, 'condition' => $condition);
|
175 |
+
}
|
176 |
+
|
177 |
+
#region Dependencies
|
178 |
+
|
179 |
+
/**
|
180 |
+
* @return Mana_Core_Helper_Mbstring
|
181 |
+
*/
|
182 |
+
public function getMbstring() {
|
183 |
+
return Mage::helper('mana_core/mbstring');
|
184 |
+
}
|
185 |
+
#endregion
|
186 |
+
}
|
app/code/local/Mana/Core/etc/config.xml
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
<Mana_Core>
|
13 |
<!-- This version number identifies version of database tables specific to this extension. It is written to
|
14 |
core_resource table. -->
|
15 |
-
<version>14.
|
16 |
</Mana_Core>
|
17 |
</modules>
|
18 |
<!-- This section contains module settings which are merged into global configuration during each page load,
|
12 |
<Mana_Core>
|
13 |
<!-- This version number identifies version of database tables specific to this extension. It is written to
|
14 |
core_resource table. -->
|
15 |
+
<version>14.10.28.12</version>
|
16 |
</Mana_Core>
|
17 |
</modules>
|
18 |
<!-- This section contains module settings which are merged into global configuration during each page load,
|
app/code/local/Mana/Db/Model/Entity/Indexer.php
CHANGED
@@ -21,7 +21,10 @@ class Mana_Db_Model_Entity_Indexer extends Mana_Core_Model_Indexer {
|
|
21 |
|
22 |
public function matchEvent(Mage_Index_Model_Event $event) {
|
23 |
/* @var $object Mana_Db_Model_Entity */
|
24 |
-
$object = $event->getData('data_object')
|
|
|
|
|
|
|
25 |
$key = $event->getData('entity').'-'.$object->getId();
|
26 |
if (!isset($this->_matchedEvents[$key])) {
|
27 |
$this->_matchedEvents[$key] = $this->_matchEntity($event, $object);
|
21 |
|
22 |
public function matchEvent(Mage_Index_Model_Event $event) {
|
23 |
/* @var $object Mana_Db_Model_Entity */
|
24 |
+
if (!($object = $event->getData('data_object'))) {
|
25 |
+
return false;
|
26 |
+
}
|
27 |
+
|
28 |
$key = $event->getData('entity').'-'.$object->getId();
|
29 |
if (!isset($this->_matchedEvents[$key])) {
|
30 |
$this->_matchedEvents[$key] = $this->_matchEntity($event, $object);
|
app/code/local/Mana/Db/Resource/Entity/JsonCollection.php
CHANGED
@@ -9,178 +9,6 @@
|
|
9 |
* @author Mana Team
|
10 |
* @method string getScopeName()
|
11 |
*/
|
12 |
-
class Mana_Db_Resource_Entity_JsonCollection extends
|
13 |
-
protected $_rawData = array();
|
14 |
-
protected $_data = array();
|
15 |
-
protected $_mFilters = array();
|
16 |
|
17 |
-
/**
|
18 |
-
* @param $data
|
19 |
-
* @return Mana_Db_Resource_Entity_JsonCollection
|
20 |
-
*/
|
21 |
-
public function setData($data) {
|
22 |
-
foreach (array_keys($data) as $index) {
|
23 |
-
if (!isset($data[$index]['id'])) {
|
24 |
-
$data[$index]['id'] = $index;
|
25 |
-
}
|
26 |
-
}
|
27 |
-
$this->_data = $data;
|
28 |
-
$this->_rawData = $data;
|
29 |
-
|
30 |
-
return $this;
|
31 |
-
}
|
32 |
-
|
33 |
-
public function getData() {
|
34 |
-
return $this->_data;
|
35 |
-
}
|
36 |
-
public function load($printQuery = false, $logQuery = false) {
|
37 |
-
if ($this->isLoaded()) {
|
38 |
-
return $this;
|
39 |
-
}
|
40 |
-
|
41 |
-
$this->_beforeLoad();
|
42 |
-
|
43 |
-
$this->_renderFilters()
|
44 |
-
->_renderOrders()
|
45 |
-
->_renderLimit();
|
46 |
-
|
47 |
-
$data = $this->getData();
|
48 |
-
|
49 |
-
if (is_array($data)) {
|
50 |
-
foreach ($data as $row) {
|
51 |
-
$item = $this->getNewEmptyItem();
|
52 |
-
$item->addData($row);
|
53 |
-
$this->addItem($item);
|
54 |
-
}
|
55 |
-
}
|
56 |
-
|
57 |
-
$this->_setIsLoaded();
|
58 |
-
$this->_afterLoad();
|
59 |
-
|
60 |
-
return $this;
|
61 |
-
}
|
62 |
-
|
63 |
-
protected function _beforeLoad() {
|
64 |
-
return $this;
|
65 |
-
}
|
66 |
-
|
67 |
-
protected function _afterLoad() {
|
68 |
-
return $this;
|
69 |
-
}
|
70 |
-
|
71 |
-
/**
|
72 |
-
* @return Mana_Db_Resource_Entity_JsonCollection
|
73 |
-
*/
|
74 |
-
protected function _renderFilters() {
|
75 |
-
$this->_data = array_filter($this->_data, array($this, '_filterItem'));
|
76 |
-
return $this;
|
77 |
-
}
|
78 |
-
|
79 |
-
/**
|
80 |
-
* Render sql select orders
|
81 |
-
*
|
82 |
-
* @return Mana_Db_Resource_Entity_JsonCollection
|
83 |
-
*/
|
84 |
-
protected function _renderOrders() {
|
85 |
-
if (count($this->_orders)) {
|
86 |
-
uasort($this->_data, array($this, '_compareItems'));
|
87 |
-
}
|
88 |
-
|
89 |
-
return $this;
|
90 |
-
}
|
91 |
-
|
92 |
-
/**
|
93 |
-
* Render sql select limit
|
94 |
-
*
|
95 |
-
* @return Mana_Db_Resource_Entity_JsonCollection
|
96 |
-
*/
|
97 |
-
protected function _renderLimit() {
|
98 |
-
if ($this->_pageSize !== false) {
|
99 |
-
$offset = ($this->_curPage - 1) * $this->_pageSize;
|
100 |
-
$count = count($this->_data);
|
101 |
-
if ($count > $offset) {
|
102 |
-
if ($count >= $offset + $this->_pageSize) {
|
103 |
-
$this->_data = array_slice($this->_data, $offset, $this->_pageSize);
|
104 |
-
}
|
105 |
-
else {
|
106 |
-
$this->_data = array_slice($this->_data, $offset);
|
107 |
-
}
|
108 |
-
}
|
109 |
-
else {
|
110 |
-
$this->_data = array();
|
111 |
-
}
|
112 |
-
}
|
113 |
-
|
114 |
-
return $this;
|
115 |
-
}
|
116 |
-
|
117 |
-
public function getRawData() {
|
118 |
-
return $this->_rawData;
|
119 |
-
}
|
120 |
-
|
121 |
-
/**
|
122 |
-
* @param array $a
|
123 |
-
* @param array $b
|
124 |
-
* @return int
|
125 |
-
*/
|
126 |
-
protected function _compareItems($a, $b) {
|
127 |
-
foreach ($this->_orders as $column => $direction) {
|
128 |
-
if (isset($a[$column])) {
|
129 |
-
if (isset($b[$column])) {
|
130 |
-
if ($a[$column] < $b[$column]) {
|
131 |
-
return strtolower($direction) == 'desc' ? 1 : -1;
|
132 |
-
}
|
133 |
-
if ($a[$column] > $b[$column]) {
|
134 |
-
return strtolower($direction) == 'desc' ? -1 : 1;
|
135 |
-
}
|
136 |
-
}
|
137 |
-
else {
|
138 |
-
return strtolower($direction) == 'desc' ? -1 : 1;
|
139 |
-
}
|
140 |
-
}
|
141 |
-
else {
|
142 |
-
if (isset($b[$column])) {
|
143 |
-
return strtolower($direction) == 'desc' ? 1 : -1;
|
144 |
-
}
|
145 |
-
}
|
146 |
-
}
|
147 |
-
return 0;
|
148 |
-
}
|
149 |
-
|
150 |
-
/**
|
151 |
-
* @param array $a
|
152 |
-
* @return bool
|
153 |
-
*/
|
154 |
-
protected function _filterItem($a) {
|
155 |
-
foreach ($this->_mFilters as $filter) {
|
156 |
-
$value = isset($a[$filter['attribute']]) ? $a[$filter['attribute']] : '';
|
157 |
-
if (isset($filter['condition']['like'])) {
|
158 |
-
$test = $filter['condition']['like'];
|
159 |
-
if ($this->getMbstring()->stripos($value, $this->getMbstring()->substr($test, 1, mb_strlen($test) - 2)) === false) {
|
160 |
-
return false;
|
161 |
-
}
|
162 |
-
}
|
163 |
-
elseif (isset($filter['condition']['eq'])) {
|
164 |
-
$test = $filter['condition']['eq'];
|
165 |
-
if ($value != $test) {
|
166 |
-
return false;
|
167 |
-
}
|
168 |
-
}
|
169 |
-
}
|
170 |
-
|
171 |
-
return true;
|
172 |
-
}
|
173 |
-
public function addFieldToFilter($attribute, $condition = null) {
|
174 |
-
$this->_mFilters[] = array('attribute' => $attribute, 'condition' => $condition);
|
175 |
-
}
|
176 |
-
|
177 |
-
#region Dependencies
|
178 |
-
|
179 |
-
/**
|
180 |
-
* @return Mana_Core_Helper_Mbstring
|
181 |
-
*/
|
182 |
-
public function getMbstring() {
|
183 |
-
return Mage::helper('mana_core/mbstring');
|
184 |
-
}
|
185 |
-
#endregion
|
186 |
}
|
9 |
* @author Mana Team
|
10 |
* @method string getScopeName()
|
11 |
*/
|
12 |
+
class Mana_Db_Resource_Entity_JsonCollection extends Mana_Core_Resource_JsonCollection {
|
|
|
|
|
|
|
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
}
|
app/code/local/Mana/Db/etc/config.xml
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
<Mana_Db>
|
13 |
<!-- This version number identifies version of database tables specific to this extension. It is written to
|
14 |
core_resource table. -->
|
15 |
-
<version>14.
|
16 |
</Mana_Db>
|
17 |
</modules>
|
18 |
<!-- This section contains module settings which are merged into global configuration during each page load,
|
12 |
<Mana_Db>
|
13 |
<!-- This version number identifies version of database tables specific to this extension. It is written to
|
14 |
core_resource table. -->
|
15 |
+
<version>14.10.28.12</version>
|
16 |
</Mana_Db>
|
17 |
</modules>
|
18 |
<!-- This section contains module settings which are merged into global configuration during each page load,
|
app/code/local/Mana/Filters/Block/Filter.php
CHANGED
@@ -90,6 +90,7 @@ class Mana_Filters_Block_Filter extends Mage_Catalog_Block_Layer_Filter_Abstract
|
|
90 |
if ($count == 1 &&
|
91 |
empty($selected) &&
|
92 |
$this->getFilterOptions()->getCode() != 'category' &&
|
|
|
93 |
Mage::getStoreConfigFlag('mana_filters/display/hide_filters_with_single_visible_item'))
|
94 |
{
|
95 |
return 0;
|
@@ -142,20 +143,7 @@ class Mana_Filters_Block_Filter extends Mage_Catalog_Block_Layer_Filter_Abstract
|
|
142 |
}
|
143 |
|
144 |
public function getListItemClass($item) {
|
145 |
-
|
146 |
-
if ($item->getMShowSelected()) {
|
147 |
-
$result .= 'm-selected-ln-item';
|
148 |
-
}
|
149 |
-
if (!($item->getCount() || $item->getMSelected())) {
|
150 |
-
if ($result) {
|
151 |
-
$result .= ' ';
|
152 |
-
}
|
153 |
-
$result .= 'm-disabled';
|
154 |
-
}
|
155 |
-
if ($result) {
|
156 |
-
$result = "class=\"$result\"";
|
157 |
-
}
|
158 |
-
return $result;
|
159 |
}
|
160 |
|
161 |
#region Dependencies
|
90 |
if ($count == 1 &&
|
91 |
empty($selected) &&
|
92 |
$this->getFilterOptions()->getCode() != 'category' &&
|
93 |
+
$this->getFilterOptions()->getCode() != 'price' &&
|
94 |
Mage::getStoreConfigFlag('mana_filters/display/hide_filters_with_single_visible_item'))
|
95 |
{
|
96 |
return 0;
|
143 |
}
|
144 |
|
145 |
public function getListItemClass($item) {
|
146 |
+
return Mage::helper('mana_filters')->getListItemClass($item);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
147 |
}
|
148 |
|
149 |
#region Dependencies
|
app/code/local/Mana/Filters/Block/Layer.php
CHANGED
@@ -14,7 +14,7 @@ class Mana_Filters_Block_Layer extends Mage_Core_Block_Template {
|
|
14 |
{
|
15 |
$category = Mage::getModel('catalog/category')->load($id);
|
16 |
if ($category->getId()) {
|
17 |
-
Mage::
|
18 |
}
|
19 |
}
|
20 |
}
|
14 |
{
|
15 |
$category = Mage::getModel('catalog/category')->load($id);
|
16 |
if ($category->getId()) {
|
17 |
+
Mage::helper('mana_filters')->getLayer()->setCurrentCategory($category);
|
18 |
}
|
19 |
}
|
20 |
}
|
app/code/local/Mana/Filters/Block/State.php
CHANGED
@@ -17,6 +17,9 @@ class Mana_Filters_Block_State extends Mage_Catalog_Block_Layer_State {
|
|
17 |
foreach ($this->getActiveFilters() as $item) {
|
18 |
$query[$item->getFilter()->getRequestVar()] = $item->getFilter()->getResetValue();
|
19 |
}
|
|
|
|
|
|
|
20 |
$params = array('_secure' => Mage::app()->getFrontController()->getRequest()->isSecure());
|
21 |
$params['_current'] = true;
|
22 |
$params['_use_rewrite'] = true;
|
@@ -62,4 +65,21 @@ class Mana_Filters_Block_State extends Mage_Catalog_Block_Layer_State {
|
|
62 |
}
|
63 |
return false;
|
64 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
}
|
17 |
foreach ($this->getActiveFilters() as $item) {
|
18 |
$query[$item->getFilter()->getRequestVar()] = $item->getFilter()->getResetValue();
|
19 |
}
|
20 |
+
if ($this->coreHelper()->isSpecialPagesInstalled()) {
|
21 |
+
$query[$this->specialPageHelper()->getRequestVar()] = null;
|
22 |
+
}
|
23 |
$params = array('_secure' => Mage::app()->getFrontController()->getRequest()->isSecure());
|
24 |
$params['_current'] = true;
|
25 |
$params['_use_rewrite'] = true;
|
65 |
}
|
66 |
return false;
|
67 |
}
|
68 |
+
|
69 |
+
#region Dependencies
|
70 |
+
|
71 |
+
/**
|
72 |
+
* @return Mana_Core_Helper_Data
|
73 |
+
*/
|
74 |
+
public function coreHelper() {
|
75 |
+
return Mage::helper('mana_core');
|
76 |
+
}
|
77 |
+
|
78 |
+
/**
|
79 |
+
* @return Mana_Page_Helper_Special
|
80 |
+
*/
|
81 |
+
public function specialPageHelper() {
|
82 |
+
return Mage::helper('mana_page/special');
|
83 |
+
}
|
84 |
+
#endregion
|
85 |
}
|
app/code/local/Mana/Filters/Helper/Data.php
CHANGED
@@ -133,6 +133,9 @@ class Mana_Filters_Helper_Data extends Mana_Core_Helper_Layer {
|
|
133 |
foreach ($this->getLayer()->getState()->getFilters() as $item) {
|
134 |
$filterState[$item->getFilter()->getRequestVar()] = $item->getFilter()->getCleanValue();
|
135 |
}
|
|
|
|
|
|
|
136 |
if ($clearListParams) {
|
137 |
$filterState = array_merge($filterState, array(
|
138 |
'dir' => null,
|
@@ -453,6 +456,33 @@ class Mana_Filters_Helper_Data extends Mana_Core_Helper_Layer {
|
|
453 |
);
|
454 |
}
|
455 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
456 |
|
457 |
#region Dependencies
|
458 |
|
@@ -463,5 +493,11 @@ class Mana_Filters_Helper_Data extends Mana_Core_Helper_Layer {
|
|
463 |
return Mage::helper('mana_core');
|
464 |
}
|
465 |
|
|
|
|
|
|
|
|
|
|
|
|
|
466 |
#endregion
|
467 |
}
|
133 |
foreach ($this->getLayer()->getState()->getFilters() as $item) {
|
134 |
$filterState[$item->getFilter()->getRequestVar()] = $item->getFilter()->getCleanValue();
|
135 |
}
|
136 |
+
if ($this->coreHelper()->isSpecialPagesInstalled()) {
|
137 |
+
$filterState[$this->specialPageHelper()->getRequestVar()] = null;
|
138 |
+
}
|
139 |
if ($clearListParams) {
|
140 |
$filterState = array_merge($filterState, array(
|
141 |
'dir' => null,
|
456 |
);
|
457 |
}
|
458 |
|
459 |
+
public function getSpecialOptionData($code) {
|
460 |
+
if ($this->coreHelper()->isSpecialPagesInstalled()) {
|
461 |
+
$data = $this->specialPageHelper()->getOptionData($code);
|
462 |
+
usort($data, array(Mage::getSingleton('mana_filters/sort'), 'byPosition'));
|
463 |
+
return $data;
|
464 |
+
}
|
465 |
+
else {
|
466 |
+
return array();
|
467 |
+
}
|
468 |
+
}
|
469 |
+
|
470 |
+
public function getListItemClass($item) {
|
471 |
+
$result = '';
|
472 |
+
if ($item->getMShowSelected()) {
|
473 |
+
$result .= 'm-selected-ln-item';
|
474 |
+
}
|
475 |
+
if (!($item->getCount() || $item->getMSelected())) {
|
476 |
+
if ($result) {
|
477 |
+
$result .= ' ';
|
478 |
+
}
|
479 |
+
$result .= 'm-disabled';
|
480 |
+
}
|
481 |
+
if ($result) {
|
482 |
+
$result = "class=\"$result\"";
|
483 |
+
}
|
484 |
+
return $result;
|
485 |
+
}
|
486 |
|
487 |
#region Dependencies
|
488 |
|
493 |
return Mage::helper('mana_core');
|
494 |
}
|
495 |
|
496 |
+
/**
|
497 |
+
* @return Mana_Page_Helper_Special
|
498 |
+
*/
|
499 |
+
public function specialPageHelper() {
|
500 |
+
return Mage::helper('mana_page/special');
|
501 |
+
}
|
502 |
#endregion
|
503 |
}
|
app/code/local/Mana/Filters/Model/Filter/Attribute.php
CHANGED
@@ -56,6 +56,9 @@ class Mana_Filters_Model_Filter_Attribute
|
|
56 |
/* @var $query Mana_Filters_Model_Query */
|
57 |
$query = $this->getQuery();
|
58 |
|
|
|
|
|
|
|
59 |
// MANA BEGIN: from url, retrieve ids of all options currently selected
|
60 |
$selectedOptionIds = $this->getMSelectedValues();
|
61 |
// MANA END
|
@@ -67,7 +70,8 @@ class Mana_Filters_Model_Filter_Attribute
|
|
67 |
$data = $this->getLayer()->getAggregator()->getCacheData($key);
|
68 |
|
69 |
if ($data === null && $this->itemHelper()->isEnabled() &&
|
70 |
-
$this->_getIsFilterable() == self::OPTIONS_ONLY_WITH_RESULTS
|
|
|
71 |
{
|
72 |
$data = $query->getFilterCounts($this->getFilterOptions()->getCode());
|
73 |
}
|
@@ -118,6 +122,10 @@ class Mana_Filters_Model_Filter_Attribute
|
|
118 |
foreach (array_keys($data) as $position => $key) {
|
119 |
$data[$key]['position'] = $position;
|
120 |
}
|
|
|
|
|
|
|
|
|
121 |
usort($data, array(Mage::getSingleton('mana_filters/sort'), $sortMethod));
|
122 |
|
123 |
$this->getLayer()->getAggregator()->saveCacheData($data, $key, $tags);
|
@@ -299,6 +307,10 @@ class Mana_Filters_Model_Filter_Attribute
|
|
299 |
|
300 |
public function getRemoveUrl()
|
301 |
{
|
|
|
|
|
|
|
|
|
302 |
$query = array($this->getRequestVar() => $this->getResetValue());
|
303 |
if ($this->coreHelper()->isManadevDependentFilterInstalled()) {
|
304 |
$query = $this->dependentHelper()->removeDependentFiltersFromUrl($query, $this->getRequestVar());
|
@@ -339,6 +351,11 @@ class Mana_Filters_Model_Filter_Attribute
|
|
339 |
return $values ? array_filter(explode('_', $values)) : array();
|
340 |
}
|
341 |
#endregion
|
|
|
|
|
|
|
|
|
|
|
342 |
#region Dependencies
|
343 |
|
344 |
/**
|
@@ -361,5 +378,12 @@ class Mana_Filters_Model_Filter_Attribute
|
|
361 |
public function itemHelper() {
|
362 |
return Mage::helper('mana_filters/item');
|
363 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
364 |
#endregion
|
365 |
}
|
56 |
/* @var $query Mana_Filters_Model_Query */
|
57 |
$query = $this->getQuery();
|
58 |
|
59 |
+
/* @var $helper Mana_Filters_Helper_Data */
|
60 |
+
$helper = Mage::helper('mana_filters');
|
61 |
+
|
62 |
// MANA BEGIN: from url, retrieve ids of all options currently selected
|
63 |
$selectedOptionIds = $this->getMSelectedValues();
|
64 |
// MANA END
|
70 |
$data = $this->getLayer()->getAggregator()->getCacheData($key);
|
71 |
|
72 |
if ($data === null && $this->itemHelper()->isEnabled() &&
|
73 |
+
$this->_getIsFilterable() == self::OPTIONS_ONLY_WITH_RESULTS &&
|
74 |
+
!$helper->useSolr())
|
75 |
{
|
76 |
$data = $query->getFilterCounts($this->getFilterOptions()->getCode());
|
77 |
}
|
122 |
foreach (array_keys($data) as $position => $key) {
|
123 |
$data[$key]['position'] = $position;
|
124 |
}
|
125 |
+
if ($this->_addSpecialOptionsToAllOptions()) {
|
126 |
+
$data = array_merge($data, Mage::helper('mana_filters')->getSpecialOptionData($this->getFilterOptions()->getCode()));
|
127 |
+
}
|
128 |
+
|
129 |
usort($data, array(Mage::getSingleton('mana_filters/sort'), $sortMethod));
|
130 |
|
131 |
$this->getLayer()->getAggregator()->saveCacheData($data, $key, $tags);
|
307 |
|
308 |
public function getRemoveUrl()
|
309 |
{
|
310 |
+
if ($this->coreHelper()->isSpecialPagesInstalled() && $this->specialPageHelper()->isAppliedInFilter($this->getRequestVar())) {
|
311 |
+
return $this->specialPageHelper()->getClearFilterUrl($this->getRequestVar());
|
312 |
+
}
|
313 |
+
|
314 |
$query = array($this->getRequestVar() => $this->getResetValue());
|
315 |
if ($this->coreHelper()->isManadevDependentFilterInstalled()) {
|
316 |
$query = $this->dependentHelper()->removeDependentFiltersFromUrl($query, $this->getRequestVar());
|
351 |
return $values ? array_filter(explode('_', $values)) : array();
|
352 |
}
|
353 |
#endregion
|
354 |
+
|
355 |
+
protected function _addSpecialOptionsToAllOptions() {
|
356 |
+
return true;
|
357 |
+
}
|
358 |
+
|
359 |
#region Dependencies
|
360 |
|
361 |
/**
|
378 |
public function itemHelper() {
|
379 |
return Mage::helper('mana_filters/item');
|
380 |
}
|
381 |
+
|
382 |
+
/**
|
383 |
+
* @return Mana_Page_Helper_Special
|
384 |
+
*/
|
385 |
+
public function specialPageHelper() {
|
386 |
+
return Mage::helper('mana_page/special');
|
387 |
+
}
|
388 |
#endregion
|
389 |
}
|
app/code/local/Mana/Filters/Model/Filter/Category.php
CHANGED
@@ -15,6 +15,8 @@ class Mana_Filters_Model_Filter_Category
|
|
15 |
extends Mage_Catalog_Model_Layer_Filter_Category
|
16 |
implements Mana_Filters_Interface_Filter
|
17 |
{
|
|
|
|
|
18 |
#region Category Specific logic
|
19 |
protected $_countedCategories;
|
20 |
|
@@ -22,7 +24,7 @@ class Mana_Filters_Model_Filter_Category
|
|
22 |
public function getCountedCategories() {
|
23 |
if (!$this->_countedCategories) {
|
24 |
$category = $this->isApplied() ? $this->getAppliedCategory() : $this->getCategory();
|
25 |
-
$this->_countedCategories = $
|
26 |
}
|
27 |
return $this->_countedCategories;
|
28 |
}
|
@@ -336,6 +338,57 @@ class Mana_Filters_Model_Filter_Category
|
|
336 |
return null;
|
337 |
}
|
338 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
339 |
#region Dependencies
|
340 |
|
341 |
/**
|
15 |
extends Mage_Catalog_Model_Layer_Filter_Category
|
16 |
implements Mana_Filters_Interface_Filter
|
17 |
{
|
18 |
+
const GET_ALL_CHILDREN_RECURSIVELY = 'recursive';
|
19 |
+
const GET_ALL_DIRECT_CHILDREN = 'direct';
|
20 |
#region Category Specific logic
|
21 |
protected $_countedCategories;
|
22 |
|
24 |
public function getCountedCategories() {
|
25 |
if (!$this->_countedCategories) {
|
26 |
$category = $this->isApplied() ? $this->getAppliedCategory() : $this->getCategory();
|
27 |
+
$this->_countedCategories = $this->getChildrenCollection($category, self::GET_ALL_DIRECT_CHILDREN);
|
28 |
}
|
29 |
return $this->_countedCategories;
|
30 |
}
|
338 |
return null;
|
339 |
}
|
340 |
|
341 |
+
public function getChildrenCollection($category, $mode) {
|
342 |
+
|
343 |
+
/* @var $resource Mage_Catalog_Model_Resource_Eav_Mysql4_Category */
|
344 |
+
$resource = $category->getResource();
|
345 |
+
|
346 |
+
$categoryIds = array();
|
347 |
+
switch ($mode) {
|
348 |
+
case self::GET_ALL_CHILDREN_RECURSIVELY:
|
349 |
+
$categoryIds = $resource->getChildren($category, true);
|
350 |
+
break;
|
351 |
+
case self::GET_ALL_DIRECT_CHILDREN:
|
352 |
+
$categoryIds = $resource->getChildren($category, false);
|
353 |
+
break;
|
354 |
+
}
|
355 |
+
|
356 |
+
$collection = $category->getCollection();
|
357 |
+
|
358 |
+
/* @var $_conn Varien_Db_Adapter_Pdo_Mysql */
|
359 |
+
$_conn = $collection->getConnection();
|
360 |
+
|
361 |
+
/* @var $collection Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Collection */
|
362 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
363 |
+
$storeId = $category->getStoreId();
|
364 |
+
$collection->getSelect()
|
365 |
+
->reset(Zend_Db_Select::COLUMNS)
|
366 |
+
->columns('main_table.*')
|
367 |
+
->joinLeft(
|
368 |
+
array('url_rewrite' => $collection->getTable('core/url_rewrite')),
|
369 |
+
'url_rewrite.category_id=main_table.entity_id AND url_rewrite.is_system=1 AND ' .
|
370 |
+
$_conn->quoteInto(
|
371 |
+
'url_rewrite.product_id IS NULL AND url_rewrite.store_id=? AND url_rewrite.id_path LIKE "category/%"',
|
372 |
+
$storeId),
|
373 |
+
array('request_path' => 'url_rewrite.request_path'));
|
374 |
+
}
|
375 |
+
else {
|
376 |
+
$collection
|
377 |
+
->addAttributeToSelect('url_key')
|
378 |
+
->addAttributeToSelect('name')
|
379 |
+
->addAttributeToSelect('all_children')
|
380 |
+
->addAttributeToSelect('is_anchor')
|
381 |
+
->joinUrlRewrite();
|
382 |
+
}
|
383 |
+
$collection
|
384 |
+
->addAttributeToFilter('is_active', 1)
|
385 |
+
->addIdFilter($categoryIds)
|
386 |
+
->setOrder('position', 'ASC')
|
387 |
+
->load();
|
388 |
+
|
389 |
+
return $collection;
|
390 |
+
}
|
391 |
+
|
392 |
#region Dependencies
|
393 |
|
394 |
/**
|
app/code/local/Mana/Filters/Model/Filter/Decimal.php
CHANGED
@@ -82,9 +82,27 @@ class Mana_Filters_Model_Filter_Decimal
|
|
82 |
);
|
83 |
}
|
84 |
|
|
|
|
|
|
|
|
|
85 |
return $data;
|
86 |
}
|
87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
public function getLowestPossibleValue()
|
89 |
{
|
90 |
return (int)$this->getMinValue();
|
@@ -250,6 +268,10 @@ class Mana_Filters_Model_Filter_Decimal
|
|
250 |
|
251 |
public function getRemoveUrl()
|
252 |
{
|
|
|
|
|
|
|
|
|
253 |
$query = array($this->getRequestVar() => $this->getResetValue());
|
254 |
if ($this->coreHelper()->isManadevDependentFilterInstalled()) {
|
255 |
$query = $this->dependentHelper()->removeDependentFiltersFromUrl($query, $this->getRequestVar());
|
@@ -454,6 +476,11 @@ class Mana_Filters_Model_Filter_Decimal
|
|
454 |
return $this->_getResource()->isUpperBoundInclusive();
|
455 |
}
|
456 |
#endregion
|
|
|
|
|
|
|
|
|
|
|
457 |
#region Dependencies
|
458 |
|
459 |
/**
|
@@ -470,5 +497,11 @@ class Mana_Filters_Model_Filter_Decimal
|
|
470 |
return Mage::helper('manapro_filterdependent');
|
471 |
}
|
472 |
|
|
|
|
|
|
|
|
|
|
|
|
|
473 |
#endregion
|
474 |
}
|
82 |
);
|
83 |
}
|
84 |
|
85 |
+
if ($this->_addSpecialOptionsToAllOptions()) {
|
86 |
+
$data = array_merge($data, Mage::helper('mana_filters')->getSpecialOptionData($this->getFilterOptions()->getCode()));
|
87 |
+
}
|
88 |
+
|
89 |
return $data;
|
90 |
}
|
91 |
|
92 |
+
protected $_specialItems;
|
93 |
+
public function getSpecialItems()
|
94 |
+
{
|
95 |
+
if (!$this->_specialItems) {
|
96 |
+
$this->_specialItems = array();
|
97 |
+
if (!$this->_addSpecialOptionsToAllOptions()) {
|
98 |
+
foreach (Mage::helper('mana_filters')->getSpecialOptionData($this->getFilterOptions()->getCode()) as $itemData) {
|
99 |
+
$this->_specialItems[] = $this->_createItemEx($itemData);
|
100 |
+
}
|
101 |
+
}
|
102 |
+
}
|
103 |
+
return $this->_specialItems;
|
104 |
+
}
|
105 |
+
|
106 |
public function getLowestPossibleValue()
|
107 |
{
|
108 |
return (int)$this->getMinValue();
|
268 |
|
269 |
public function getRemoveUrl()
|
270 |
{
|
271 |
+
if ($this->coreHelper()->isSpecialPagesInstalled() && $this->specialPageHelper()->isAppliedInFilter($this->getRequestVar())) {
|
272 |
+
return $this->specialPageHelper()->getClearFilterUrl($this->getRequestVar());
|
273 |
+
}
|
274 |
+
|
275 |
$query = array($this->getRequestVar() => $this->getResetValue());
|
276 |
if ($this->coreHelper()->isManadevDependentFilterInstalled()) {
|
277 |
$query = $this->dependentHelper()->removeDependentFiltersFromUrl($query, $this->getRequestVar());
|
476 |
return $this->_getResource()->isUpperBoundInclusive();
|
477 |
}
|
478 |
#endregion
|
479 |
+
|
480 |
+
protected function _addSpecialOptionsToAllOptions() {
|
481 |
+
return true;
|
482 |
+
}
|
483 |
+
|
484 |
#region Dependencies
|
485 |
|
486 |
/**
|
497 |
return Mage::helper('manapro_filterdependent');
|
498 |
}
|
499 |
|
500 |
+
/**
|
501 |
+
* @return Mana_Page_Helper_Special
|
502 |
+
*/
|
503 |
+
public function specialPageHelper() {
|
504 |
+
return Mage::helper('mana_page/special');
|
505 |
+
}
|
506 |
#endregion
|
507 |
}
|
app/code/local/Mana/Filters/Model/Filter/Price.php
CHANGED
@@ -80,9 +80,26 @@ class Mana_Filters_Model_Filter_Price
|
|
80 |
);
|
81 |
}
|
82 |
|
|
|
|
|
|
|
83 |
return $data;
|
84 |
}
|
85 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
public function getLowestPossibleValue() {
|
87 |
return 0;
|
88 |
}
|
@@ -275,6 +292,10 @@ class Mana_Filters_Model_Filter_Price
|
|
275 |
|
276 |
public function getRemoveUrl()
|
277 |
{
|
|
|
|
|
|
|
|
|
278 |
$query = array($this->getRequestVar() => $this->getResetValue());
|
279 |
if ($this->coreHelper()->isManadevDependentFilterInstalled()) {
|
280 |
$query = $this->dependentHelper()->removeDependentFiltersFromUrl($query, $this->getRequestVar());
|
@@ -438,6 +459,11 @@ class Mana_Filters_Model_Filter_Price
|
|
438 |
}
|
439 |
#endregion
|
440 |
|
|
|
|
|
|
|
|
|
|
|
441 |
#region Dependencies
|
442 |
|
443 |
/**
|
@@ -454,5 +480,11 @@ class Mana_Filters_Model_Filter_Price
|
|
454 |
return Mage::helper('manapro_filterdependent');
|
455 |
}
|
456 |
|
|
|
|
|
|
|
|
|
|
|
|
|
457 |
#endregion
|
458 |
}
|
80 |
);
|
81 |
}
|
82 |
|
83 |
+
if ($this->_addSpecialOptionsToAllOptions()) {
|
84 |
+
$data = array_merge($data, Mage::helper('mana_filters')->getSpecialOptionData($this->getFilterOptions()->getCode()));
|
85 |
+
}
|
86 |
return $data;
|
87 |
}
|
88 |
|
89 |
+
protected $_specialItems;
|
90 |
+
public function getSpecialItems()
|
91 |
+
{
|
92 |
+
if (!$this->_specialItems) {
|
93 |
+
$this->_specialItems = array();
|
94 |
+
if (!$this->_addSpecialOptionsToAllOptions()) {
|
95 |
+
foreach (Mage::helper('mana_filters')->getSpecialOptionData($this->getFilterOptions()->getCode()) as $itemData) {
|
96 |
+
$this->_specialItems[] = $this->_createItemEx($itemData);
|
97 |
+
}
|
98 |
+
}
|
99 |
+
}
|
100 |
+
return $this->_specialItems;
|
101 |
+
}
|
102 |
+
|
103 |
public function getLowestPossibleValue() {
|
104 |
return 0;
|
105 |
}
|
292 |
|
293 |
public function getRemoveUrl()
|
294 |
{
|
295 |
+
if ($this->coreHelper()->isSpecialPagesInstalled() && $this->specialPageHelper()->isAppliedInFilter($this->getRequestVar())) {
|
296 |
+
return $this->specialPageHelper()->getClearFilterUrl($this->getRequestVar());
|
297 |
+
}
|
298 |
+
|
299 |
$query = array($this->getRequestVar() => $this->getResetValue());
|
300 |
if ($this->coreHelper()->isManadevDependentFilterInstalled()) {
|
301 |
$query = $this->dependentHelper()->removeDependentFiltersFromUrl($query, $this->getRequestVar());
|
459 |
}
|
460 |
#endregion
|
461 |
|
462 |
+
protected function _addSpecialOptionsToAllOptions() {
|
463 |
+
return true;
|
464 |
+
}
|
465 |
+
|
466 |
+
|
467 |
#region Dependencies
|
468 |
|
469 |
/**
|
480 |
return Mage::helper('manapro_filterdependent');
|
481 |
}
|
482 |
|
483 |
+
/**
|
484 |
+
* @return Mana_Page_Helper_Special
|
485 |
+
*/
|
486 |
+
public function specialPageHelper() {
|
487 |
+
return Mage::helper('mana_page/special');
|
488 |
+
}
|
489 |
#endregion
|
490 |
}
|
app/code/local/Mana/Filters/Model/Item.php
CHANGED
@@ -25,6 +25,10 @@ class Mana_Filters_Model_Item extends Mage_Catalog_Model_Layer_Filter_Item {
|
|
25 |
*/
|
26 |
public function getUrl()
|
27 |
{
|
|
|
|
|
|
|
|
|
28 |
// MANA BEGIN: add multivalue filter handling
|
29 |
$values = $this->getFilter()->getMSelectedValues(); // this could fail if called from some kind of standard filter
|
30 |
if (!$values) $values = array();
|
@@ -53,6 +57,12 @@ class Mana_Filters_Model_Item extends Mage_Catalog_Model_Layer_Filter_Item {
|
|
53 |
*/
|
54 |
public function getReplaceUrl()
|
55 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
// MANA BEGIN: add multivalue filter handling
|
57 |
$values = array();
|
58 |
if (!in_array($this->getValue(), $values)) $values[] = $this->getValue();
|
@@ -79,6 +89,10 @@ class Mana_Filters_Model_Item extends Mage_Catalog_Model_Layer_Filter_Item {
|
|
79 |
*/
|
80 |
public function getRemoveUrl()
|
81 |
{
|
|
|
|
|
|
|
|
|
82 |
// MANA BEGIN: add multivalue filter handling
|
83 |
if ($this->hasData('remove_url')) {
|
84 |
return $this->getData('remove_url');
|
@@ -139,13 +153,20 @@ class Mana_Filters_Model_Item extends Mage_Catalog_Model_Layer_Filter_Item {
|
|
139 |
) {
|
140 |
/* @var $url Mana_Seo_Rewrite_Url */
|
141 |
$url = Mage::getModel('core/url');
|
142 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
143 |
}
|
144 |
else {
|
145 |
$this->_seoData = array(
|
146 |
'url' => $this->getValue(),
|
147 |
'prefix' => '',
|
148 |
'position' => 0,
|
|
|
149 |
'id' => $this->getValue(),
|
150 |
);
|
151 |
}
|
@@ -179,5 +200,11 @@ class Mana_Filters_Model_Item extends Mage_Catalog_Model_Layer_Filter_Item {
|
|
179 |
return Mage::helper('manapro_filterdependent');
|
180 |
}
|
181 |
|
|
|
|
|
|
|
|
|
|
|
|
|
182 |
#endregion
|
183 |
}
|
25 |
*/
|
26 |
public function getUrl()
|
27 |
{
|
28 |
+
if ($this->coreHelper()->isSpecialPagesInstalled() && $this->getData('special')) {
|
29 |
+
return $this->specialPageHelper()->getItemAddToFilterUrl($this);
|
30 |
+
}
|
31 |
+
|
32 |
// MANA BEGIN: add multivalue filter handling
|
33 |
$values = $this->getFilter()->getMSelectedValues(); // this could fail if called from some kind of standard filter
|
34 |
if (!$values) $values = array();
|
57 |
*/
|
58 |
public function getReplaceUrl()
|
59 |
{
|
60 |
+
if ($this->coreHelper()->isSpecialPagesInstalled() &&
|
61 |
+
($this->getData('special') || $this->specialPageHelper()->isAppliedInFilter($this->getFilter()->getRequestVar())))
|
62 |
+
{
|
63 |
+
return $this->specialPageHelper()->getItemReplaceInFilterUrl($this, $this->getFilter()->getRequestVar());
|
64 |
+
}
|
65 |
+
|
66 |
// MANA BEGIN: add multivalue filter handling
|
67 |
$values = array();
|
68 |
if (!in_array($this->getValue(), $values)) $values[] = $this->getValue();
|
89 |
*/
|
90 |
public function getRemoveUrl()
|
91 |
{
|
92 |
+
if ($this->coreHelper()->isSpecialPagesInstalled() && $this->getData('special')) {
|
93 |
+
return $this->specialPageHelper()->getItemRemoveFromFilterUrl($this);
|
94 |
+
}
|
95 |
+
|
96 |
// MANA BEGIN: add multivalue filter handling
|
97 |
if ($this->hasData('remove_url')) {
|
98 |
return $this->getData('remove_url');
|
153 |
) {
|
154 |
/* @var $url Mana_Seo_Rewrite_Url */
|
155 |
$url = Mage::getModel('core/url');
|
156 |
+
$requestVar = $this->getFilter()->getRequestVar();
|
157 |
+
if ($this->coreHelper()->isSpecialPagesInstalled()) {
|
158 |
+
if ($this->getData('special')) {
|
159 |
+
$requestVar = $this->specialPageHelper()->getRequestVar();
|
160 |
+
}
|
161 |
+
}
|
162 |
+
$this->_seoData = $url->getItemData($requestVar, $this->getValue());
|
163 |
}
|
164 |
else {
|
165 |
$this->_seoData = array(
|
166 |
'url' => $this->getValue(),
|
167 |
'prefix' => '',
|
168 |
'position' => 0,
|
169 |
+
'special' => $this->getData('special'),
|
170 |
'id' => $this->getValue(),
|
171 |
);
|
172 |
}
|
200 |
return Mage::helper('manapro_filterdependent');
|
201 |
}
|
202 |
|
203 |
+
/**
|
204 |
+
* @return Mana_Page_Helper_Special
|
205 |
+
*/
|
206 |
+
public function specialPageHelper() {
|
207 |
+
return Mage::helper('mana_page/special');
|
208 |
+
}
|
209 |
#endregion
|
210 |
}
|
app/code/local/Mana/Filters/Model/Query.php
CHANGED
@@ -69,6 +69,9 @@ class Mana_Filters_Model_Query extends Varien_Object
|
|
69 |
}
|
70 |
|
71 |
public function apply() {
|
|
|
|
|
|
|
72 |
foreach ($this->_filters as $code => $filter) {
|
73 |
if (!$filter['isApplyProcessed']) {
|
74 |
$model = $filter['model'];
|
@@ -89,6 +92,7 @@ class Mana_Filters_Model_Query extends Varien_Object
|
|
89 |
$this->_filters[$code]['isApplyProcessed'] = true;
|
90 |
}
|
91 |
}
|
|
|
92 |
return $this;
|
93 |
}
|
94 |
|
@@ -190,5 +194,18 @@ class Mana_Filters_Model_Query extends Varien_Object
|
|
190 |
return Mage::helper('mana_filters');
|
191 |
}
|
192 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
#endregion
|
194 |
}
|
69 |
}
|
70 |
|
71 |
public function apply() {
|
72 |
+
if ($this->coreHelper()->isSpecialPagesInstalled()) {
|
73 |
+
$this->specialPageHelper()->registerSpecialFilters($this);
|
74 |
+
}
|
75 |
foreach ($this->_filters as $code => $filter) {
|
76 |
if (!$filter['isApplyProcessed']) {
|
77 |
$model = $filter['model'];
|
92 |
$this->_filters[$code]['isApplyProcessed'] = true;
|
93 |
}
|
94 |
}
|
95 |
+
|
96 |
return $this;
|
97 |
}
|
98 |
|
194 |
return Mage::helper('mana_filters');
|
195 |
}
|
196 |
|
197 |
+
/**
|
198 |
+
* @return Mana_Core_Helper_Data
|
199 |
+
*/
|
200 |
+
public function coreHelper() {
|
201 |
+
return Mage::helper('mana_core');
|
202 |
+
}
|
203 |
+
|
204 |
+
/**
|
205 |
+
* @return Mana_Page_Helper_Special
|
206 |
+
*/
|
207 |
+
public function specialPageHelper() {
|
208 |
+
return Mage::helper('mana_page/special');
|
209 |
+
}
|
210 |
#endregion
|
211 |
}
|
app/code/local/Mana/Filters/Model/Solr/Adapter/HttpStream.php
CHANGED
@@ -151,6 +151,19 @@ class Mana_Filters_Model_Solr_Adapter_HttpStream extends Enterprise_Search_Model
|
|
151 |
}
|
152 |
return $result;
|
153 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
#region Dependencies
|
155 |
|
156 |
/**
|
151 |
}
|
152 |
return $result;
|
153 |
}
|
154 |
+
|
155 |
+
function _prepareSortFields($sortBy) {
|
156 |
+
$unsetCurrentCategory = false;
|
157 |
+
if (!Mage::registry('current_category')) {
|
158 |
+
$unsetCurrentCategory = true;
|
159 |
+
Mage::register('current_category', Mage::helper('mana_core')->getRootCategory());
|
160 |
+
}
|
161 |
+
$result = parent::_prepareSortFields($sortBy);
|
162 |
+
if ($unsetCurrentCategory) {
|
163 |
+
Mage::unregister('current_category');
|
164 |
+
}
|
165 |
+
return $result;
|
166 |
+
}
|
167 |
#region Dependencies
|
168 |
|
169 |
/**
|
app/code/local/Mana/Filters/Model/Solr/Adapter/PhpExtension.php
CHANGED
@@ -83,4 +83,16 @@ class Mana_Filters_Model_Solr_Adapter_PhpExtension extends Enterprise_Search_Mod
|
|
83 |
}
|
84 |
return $result;
|
85 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
}
|
83 |
}
|
84 |
return $result;
|
85 |
}
|
86 |
+
function _prepareSortFields($sortBy) {
|
87 |
+
$unsetCurrentCategory = false;
|
88 |
+
if (!Mage::registry('current_category')) {
|
89 |
+
$unsetCurrentCategory = true;
|
90 |
+
Mage::register('current_category', Mage::helper('mana_core')->getRootCategory());
|
91 |
+
}
|
92 |
+
$result = parent::_prepareSortFields($sortBy);
|
93 |
+
if ($unsetCurrentCategory) {
|
94 |
+
Mage::unregister('current_category');
|
95 |
+
}
|
96 |
+
return $result;
|
97 |
+
}
|
98 |
}
|
app/code/local/Mana/Filters/Model/Solr/Price.php
CHANGED
@@ -59,10 +59,12 @@ class Mana_Filters_Model_Solr_Price extends Mana_Filters_Model_Filter_Price
|
|
59 |
if (!empty($facets)) {
|
60 |
foreach ($facets as $key => $value) {
|
61 |
preg_match('/TO ([\d\.]+)\]$/', $key, $rangeKey);
|
62 |
-
$rangeKey = $rangeKey[1] / $this->getPriceRange();
|
63 |
$rangeKey = round($rangeKey);
|
64 |
-
|
65 |
-
|
|
|
|
|
66 |
}
|
67 |
}
|
68 |
return $result;
|
@@ -82,8 +84,10 @@ class Mana_Filters_Model_Solr_Price extends Mana_Filters_Model_Filter_Price
|
|
82 |
if (strpos($selection, ',') !== false) {
|
83 |
list($index, $range) = explode(',', $selection);
|
84 |
$range = $this->_getResource()->getPriceRange($index, $range);
|
|
|
|
|
85 |
$to = $range['to'];
|
86 |
-
if ($to < $this->getMaxPriceInt() && !$this->isUpperBoundInclusive()) {
|
87 |
$to -= 0.001;
|
88 |
}
|
89 |
|
59 |
if (!empty($facets)) {
|
60 |
foreach ($facets as $key => $value) {
|
61 |
preg_match('/TO ([\d\.]+)\]$/', $key, $rangeKey);
|
62 |
+
$rangeKey = $rangeKey[1] * $this->getCurrencyRate() / $this->getPriceRange();
|
63 |
$rangeKey = round($rangeKey);
|
64 |
+
if ($value > 0) {
|
65 |
+
/** @noinspection PhpIllegalArrayKeyTypeInspection */
|
66 |
+
$result[$rangeKey] = $value;
|
67 |
+
}
|
68 |
}
|
69 |
}
|
70 |
return $result;
|
84 |
if (strpos($selection, ',') !== false) {
|
85 |
list($index, $range) = explode(',', $selection);
|
86 |
$range = $this->_getResource()->getPriceRange($index, $range);
|
87 |
+
$range['from'] /= $this->getCurrencyRate();
|
88 |
+
$range['to'] /= $this->getCurrencyRate();
|
89 |
$to = $range['to'];
|
90 |
+
if ($to < $this->getMaxPriceInt() / $this->getCurrencyRate() && !$this->isUpperBoundInclusive()) {
|
91 |
$to -= 0.001;
|
92 |
}
|
93 |
|
app/code/local/Mana/Filters/Model/Source/Filter.php
ADDED
@@ -0,0 +1,91 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @category Mana
|
4 |
+
* @package ManaPro_FilterDependent
|
5 |
+
* @copyright Copyright (c) http://www.manadev.com
|
6 |
+
* @license http://www.manadev.com/license Proprietary License
|
7 |
+
*/
|
8 |
+
/**
|
9 |
+
* @author Mana Team
|
10 |
+
*
|
11 |
+
*/
|
12 |
+
class Mana_Filters_Model_Source_Filter extends Mana_Core_Model_Source_Abstract {
|
13 |
+
protected $_currentFilterId;
|
14 |
+
protected $_noEmptyValue = false;
|
15 |
+
protected $_excluded = array();
|
16 |
+
|
17 |
+
public function setCurrentFilterId($value) {
|
18 |
+
$this->_currentFilterId = $value;
|
19 |
+
return $this;
|
20 |
+
}
|
21 |
+
|
22 |
+
public function setNoEmptyValue($value) {
|
23 |
+
$this->_noEmptyValue = $value;
|
24 |
+
|
25 |
+
return $this;
|
26 |
+
}
|
27 |
+
|
28 |
+
public function exclude($code) {
|
29 |
+
$this->_excluded[$code] = $code;
|
30 |
+
return $this;
|
31 |
+
}
|
32 |
+
|
33 |
+
protected function _getAllOptions() {
|
34 |
+
$result = $this->_noEmptyValue ? array() : array(array('value' => '', 'label' => ''));
|
35 |
+
|
36 |
+
if ($this->adminHelper()->isGlobal()) {
|
37 |
+
$collection = $this->getGlobalFilterCollection();
|
38 |
+
|
39 |
+
$select = $collection->getSelect()
|
40 |
+
->reset(Varien_Db_Select::COLUMNS)
|
41 |
+
->columns(array('id', 'name'));
|
42 |
+
}
|
43 |
+
else {
|
44 |
+
$collection = $this->getStoreLevelFilterCollection()
|
45 |
+
->addStoreFilter($this->adminHelper()->getStore());
|
46 |
+
$select = $collection->getSelect()
|
47 |
+
->reset(Varien_Db_Select::COLUMNS)
|
48 |
+
->columns(array('global_id', 'name'));
|
49 |
+
Mage::helper('mana_db')->joinLeft($select,
|
50 |
+
'global', Mage::getSingleton('core/resource')->getTableName('mana_filters/filter2'),
|
51 |
+
'main_table.global_id = global.id');
|
52 |
+
}
|
53 |
+
if ($this->_currentFilterId) {
|
54 |
+
$collection->addFieldToFilter('id', array('neq' => $this->_currentFilterId));
|
55 |
+
}
|
56 |
+
|
57 |
+
if (count($this->_excluded)) {
|
58 |
+
$collection->addFieldToFilter('code', array('nin' => $this->_excluded));
|
59 |
+
}
|
60 |
+
$data = $collection->getConnection()->fetchPairs($select);
|
61 |
+
foreach ($data as $value => $label) {
|
62 |
+
$result[] = array('value' => $value, 'label' => $label);
|
63 |
+
}
|
64 |
+
|
65 |
+
return $result;
|
66 |
+
}
|
67 |
+
|
68 |
+
#region Dependencies
|
69 |
+
|
70 |
+
/**
|
71 |
+
* @return Mana_Admin_Helper_Data
|
72 |
+
*/
|
73 |
+
public function adminHelper() {
|
74 |
+
return Mage::helper('mana_admin');
|
75 |
+
}
|
76 |
+
|
77 |
+
/**
|
78 |
+
* @return Mana_Filters_Resource_Filter2_Collection
|
79 |
+
*/
|
80 |
+
public function getGlobalFilterCollection() {
|
81 |
+
return Mage::getResourceModel('mana_filters/filter2_collection');
|
82 |
+
}
|
83 |
+
|
84 |
+
/**
|
85 |
+
* @return Mana_Filters_Resource_Filter2_Store_Collection
|
86 |
+
*/
|
87 |
+
public function getStoreLevelFilterCollection() {
|
88 |
+
return Mage::getResourceModel('mana_filters/filter2_store_collection');
|
89 |
+
}
|
90 |
+
#endregion
|
91 |
+
}
|
app/code/local/Mana/Filters/Resource/Filter/Attribute.php
CHANGED
@@ -110,10 +110,10 @@ class Mana_Filters_Resource_Filter_Attribute
|
|
110 |
|
111 |
$tableAlias = $attribute->getAttributeCode() . '_idx';
|
112 |
$conditions = array(
|
113 |
-
"{$tableAlias}
|
114 |
-
$connection->quoteInto("{$tableAlias}
|
115 |
-
$connection->quoteInto("{$tableAlias}
|
116 |
-
"{$tableAlias}
|
117 |
);
|
118 |
$conditions = join(' AND ', $conditions);
|
119 |
$collection->getSelect()
|
110 |
|
111 |
$tableAlias = $attribute->getAttributeCode() . '_idx';
|
112 |
$conditions = array(
|
113 |
+
"`{$tableAlias}`.entity_id = e.entity_id",
|
114 |
+
$connection->quoteInto("`{$tableAlias}`.attribute_id = ?", $attribute->getAttributeId()),
|
115 |
+
$connection->quoteInto("`{$tableAlias}`.store_id = ?", $collection->getStoreId()),
|
116 |
+
"`{$tableAlias}`.value in (" . implode(',', array_filter($value)) . ")"
|
117 |
);
|
118 |
$conditions = join(' AND ', $conditions);
|
119 |
$collection->getSelect()
|
app/code/local/Mana/Filters/Resource/Filter/Price.php
CHANGED
@@ -111,7 +111,7 @@ class Mana_Filters_Resource_Filter_Price extends Mage_Catalog_Model_Resource_Eav
|
|
111 |
'range' => $rangeExpr,
|
112 |
'count' => $countExpr
|
113 |
));
|
114 |
-
$select->group($rangeExpr)->order(
|
115 |
|
116 |
Mage::helper('mana_filters')->resetProductCollectionWhereClause($select);
|
117 |
$select->where("{$table}.min_price > 0");
|
@@ -137,12 +137,12 @@ class Mana_Filters_Resource_Filter_Price extends Mage_Catalog_Model_Resource_Eav
|
|
137 |
));
|
138 |
|
139 |
// MANA BEGIN: make sure price filter is not applied
|
140 |
-
Mage::helper('mana_filters')->resetProductCollectionWhereClause($select);
|
141 |
// MANA END
|
142 |
|
143 |
$select->where("{$table}.min_price > 0");
|
144 |
$select->group('range');
|
145 |
-
|
146 |
return $connection->fetchPairs($select);
|
147 |
}
|
148 |
}
|
111 |
'range' => $rangeExpr,
|
112 |
'count' => $countExpr
|
113 |
));
|
114 |
+
$select->group($rangeExpr)->order($rangeExpr);
|
115 |
|
116 |
Mage::helper('mana_filters')->resetProductCollectionWhereClause($select);
|
117 |
$select->where("{$table}.min_price > 0");
|
137 |
));
|
138 |
|
139 |
// MANA BEGIN: make sure price filter is not applied
|
140 |
+
//Mage::helper('mana_filters')->resetProductCollectionWhereClause($select);
|
141 |
// MANA END
|
142 |
|
143 |
$select->where("{$table}.min_price > 0");
|
144 |
$select->group('range');
|
145 |
+
$sql = $select->__toString();
|
146 |
return $connection->fetchPairs($select);
|
147 |
}
|
148 |
}
|
app/code/local/Mana/Filters/etc/config.xml
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
<Mana_Filters>
|
13 |
<!-- This version number identifies version of database tables specific to this extension. It is written to
|
14 |
core_resource table. -->
|
15 |
-
<version>14.
|
16 |
</Mana_Filters>
|
17 |
</modules>
|
18 |
|
12 |
<Mana_Filters>
|
13 |
<!-- This version number identifies version of database tables specific to this extension. It is written to
|
14 |
core_resource table. -->
|
15 |
+
<version>14.11.25.15</version>
|
16 |
</Mana_Filters>
|
17 |
</modules>
|
18 |
|
app/design/frontend/base/default/template/mana/filters/items/list_special.phtml
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @category Mana
|
4 |
+
* @package Mana_Filters
|
5 |
+
* @copyright Copyright (c) http://www.manadev.com
|
6 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
7 |
+
*/
|
8 |
+
/**
|
9 |
+
* Template for showing options for filter as a HTML list
|
10 |
+
* @author Mana Team
|
11 |
+
* Injected instead of standard catalog/layer/filter.phtml in Mana_Filters_Block_Filter_Attribute constructor.
|
12 |
+
* This template is overridden by copying (template body was pasted from catalog/layer/filter.phtml
|
13 |
+
* and modified as needed). All changes are marked with comments.
|
14 |
+
*/
|
15 |
+
/* @var $this Mage_Core_Block_Template */
|
16 |
+
?>
|
17 |
+
<ol class="m-filter-item-list m-special-filters <?php echo $this->getFilterOptions()->getIsReverse() ? 'm-reverse' : '' ?>">
|
18 |
+
<?php foreach ($this->getFilter()->getSpecialItems() as $_item): ?>
|
19 |
+
<li <?php if ($_item->getMShowSelected()): ?>class="m-selected-ln-item"<?php endif; ?>>
|
20 |
+
<?php if ($_item->getMSelected()): ?>
|
21 |
+
<span class="m-selected-filter-item"><?php echo $this->escapeHtml($_item->getLabel()) ?></span>
|
22 |
+
<?php else : ?>
|
23 |
+
<?php if (!$this->getFilterOptions()->getDisableNoResultOptions() || $_item->getCount() > 0 || $_item->getMSelected()): ?>
|
24 |
+
<a href="<?php echo $this->urlEscape($_item->getUrl()) ?>" title="<?php echo $this->escapeHtml($_item->getLabel()) ?>"><?php echo $this->escapeHtml($_item->getLabel()) ?></a>
|
25 |
+
<?php else: echo $this->escapeHtml($_item->getLabel()) ?>
|
26 |
+
<?php endif; ?>
|
27 |
+
<?php endif; ?>
|
28 |
+
<?php if (Mage::getStoreConfigFlag('mana_filters/display/count')) : ?>
|
29 |
+
(<?php echo $_item->getCount() ?>)
|
30 |
+
<?php endif; ?>
|
31 |
+
</li>
|
32 |
+
<?php endforeach ?>
|
33 |
+
</ol>
|
app/design/frontend/base/default/template/mana/filters/state.phtml
CHANGED
@@ -33,7 +33,7 @@
|
|
33 |
<?php else : ?>
|
34 |
<li>
|
35 |
<a href="<?php echo $_filter->getRemoveUrl() ?>" title="<?php echo $this->__('Remove This Item') ?>" class="btn-remove"><?php echo $this->__('Remove This Item') ?></a>
|
36 |
-
<span class="label"><?php echo $this->__($_filter->getName()) ?>:</span> <?php echo $_filter->getMShowSelected() ? $this->__('not') : '' ?> <?php echo $this->
|
37 |
</li>
|
38 |
<?php endif; ?>
|
39 |
<?php endforeach; ?>
|
33 |
<?php else : ?>
|
34 |
<li>
|
35 |
<a href="<?php echo $_filter->getRemoveUrl() ?>" title="<?php echo $this->__('Remove This Item') ?>" class="btn-remove"><?php echo $this->__('Remove This Item') ?></a>
|
36 |
+
<span class="label"><?php echo $this->__($_filter->getName()) ?>:</span> <?php echo $_filter->getMShowSelected() ? $this->__('not') : '' ?> <?php echo $this->escapeHtml($_filter->getLabel()) ?>
|
37 |
</li>
|
38 |
<?php endif; ?>
|
39 |
<?php endforeach; ?>
|
js/jquery/history.adapter.jquery.js
CHANGED
@@ -37,7 +37,10 @@
|
|
37 |
* @return
|
38 |
*/
|
39 |
trigger: function(el,event){
|
40 |
-
|
|
|
|
|
|
|
41 |
},
|
42 |
|
43 |
/**
|
37 |
* @return
|
38 |
*/
|
39 |
trigger: function(el,event){
|
40 |
+
if (jQuery.mobile && jQuery.mobile.navigate && jQuery.mobile.navigate.navigator) {
|
41 |
+
jQuery.mobile.navigate.navigator.ignorePopState = true;
|
42 |
+
}
|
43 |
+
jQuery(el).trigger(event);
|
44 |
},
|
45 |
|
46 |
/**
|
js/mana/core.js
CHANGED
@@ -7,8 +7,8 @@
|
|
7 |
|
8 |
; // make JS merging easier
|
9 |
|
10 |
-
|
11 |
-
|
12 |
var Mana = Mana || {};
|
13 |
|
14 |
(function($, $p, undefined) {
|
@@ -143,15 +143,16 @@ var Mana = Mana || {};
|
|
143 |
});
|
144 |
})(jQuery, $);
|
145 |
|
146 |
-
|
147 |
-
|
148 |
/* Simple JavaScript Inheritance
|
149 |
* By John Resig http://ejohn.org/
|
150 |
* MIT Licensed.
|
151 |
*/
|
152 |
// Inspired by base2 and Prototype
|
|
|
153 |
(function (undefined) {
|
154 |
-
var
|
155 |
|
156 |
// The base Class implementation (does nothing)
|
157 |
Mana.Object = function () {
|
@@ -167,9 +168,9 @@ var Mana = Mana || {};
|
|
167 |
|
168 |
// Instantiate a base class (but only create the instance,
|
169 |
// don't run the init constructor)
|
170 |
-
|
171 |
var prototype = new this();
|
172 |
-
|
173 |
|
174 |
// Copy the properties over onto the new prototype
|
175 |
for (var name in prop) {
|
@@ -201,11 +202,11 @@ var Mana = Mana || {};
|
|
201 |
var Object;
|
202 |
if (className === undefined) {
|
203 |
// All construction is actually done in the init method
|
204 |
-
Object = function Object() { if (!
|
205 |
}
|
206 |
else {
|
207 |
// give constructor a meaningful name for easier debugging
|
208 |
-
eval("Object = function " + className.replace(/\//g, '_') + "() { if (!
|
209 |
}
|
210 |
|
211 |
// Populate our constructed prototype object
|
@@ -220,12 +221,12 @@ var Mana = Mana || {};
|
|
220 |
return Object;
|
221 |
};
|
222 |
})();
|
223 |
-
|
224 |
-
|
225 |
Mana.define('Mana/Core', ['jquery'], function ($) {
|
226 |
return Mana.Object.extend('Mana/Core', {
|
227 |
-
getClasses: function(element) {
|
228 |
-
return element.className.split(/\s+/);
|
229 |
},
|
230 |
getPrefixedClass: function(element, prefix) {
|
231 |
var result = '';
|
@@ -270,8 +271,8 @@ Mana.define('Mana/Core', ['jquery'], function ($) {
|
|
270 |
}
|
271 |
});
|
272 |
});
|
273 |
-
|
274 |
-
|
275 |
Mana.define('Mana/Core/Config', ['jquery'], function ($) {
|
276 |
return Mana.Object.extend('Mana/Core/Config', {
|
277 |
_init: function () {
|
@@ -300,8 +301,8 @@ Mana.define('Mana/Core/Config', ['jquery'], function ($) {
|
|
300 |
|
301 |
});
|
302 |
});
|
303 |
-
|
304 |
-
|
305 |
Mana.define('Mana/Core/Json', ['jquery', 'singleton:Mana/Core'], function ($, core) {
|
306 |
return Mana.Object.extend('Mana/Core/Json', {
|
307 |
parse: function (what) {
|
@@ -326,8 +327,8 @@ Mana.define('Mana/Core/Json', ['jquery', 'singleton:Mana/Core'], function ($, co
|
|
326 |
}
|
327 |
});
|
328 |
});
|
329 |
-
|
330 |
-
|
331 |
Mana.define('Mana/Core/Utf8', [], function () {
|
332 |
return Mana.Object.extend('Mana/Core/Utf8', {
|
333 |
decode: function (str_data) {
|
@@ -375,8 +376,8 @@ Mana.define('Mana/Core/Utf8', [], function () {
|
|
375 |
}
|
376 |
});
|
377 |
});
|
378 |
-
|
379 |
-
|
380 |
Mana.define('Mana/Core/Base64', ['singleton:Mana/Core/Utf8'], function (utf8) {
|
381 |
return Mana.Object.extend('Mana/Core/Base64', {
|
382 |
encode: function (what) {
|
@@ -503,8 +504,8 @@ Mana.define('Mana/Core/Base64', ['singleton:Mana/Core/Utf8'], function (utf8) {
|
|
503 |
}
|
504 |
});
|
505 |
});
|
506 |
-
|
507 |
-
|
508 |
Mana.define('Mana/Core/UrlTemplate', ['singleton:Mana/Core/Base64', 'singleton:Mana/Core/Config'], function (base64, config) {
|
509 |
return Mana.Object.extend('Mana/Core/UrlTemplate', {
|
510 |
decodeAttribute: function (data) {
|
@@ -520,8 +521,8 @@ Mana.define('Mana/Core/UrlTemplate', ['singleton:Mana/Core/Base64', 'singleton:M
|
|
520 |
}
|
521 |
});
|
522 |
});
|
523 |
-
|
524 |
-
|
525 |
Mana.define('Mana/Core/StringTemplate', ['jquery'], function ($, undefined) {
|
526 |
return Mana.Object.extend('Mana/Core/StringTemplate', {
|
527 |
concat: function(parsedTemplate, vars) {
|
@@ -545,8 +546,8 @@ Mana.define('Mana/Core/StringTemplate', ['jquery'], function ($, undefined) {
|
|
545 |
}
|
546 |
});
|
547 |
});
|
548 |
-
|
549 |
-
|
550 |
Mana.define('Mana/Core/Layout', ['jquery', 'singleton:Mana/Core'], function ($, core, undefined) {
|
551 |
return Mana.Object.extend('Mana/Core/Layout', {
|
552 |
_init: function () {
|
@@ -747,25 +748,23 @@ Mana.define('Mana/Core/Layout', ['jquery', 'singleton:Mana/Core'], function ($,
|
|
747 |
return options.$popup;
|
748 |
},
|
749 |
_preparePopupOptions: function(options) {
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
$.extend(true, result, options);
|
768 |
-
return result;
|
769 |
},
|
770 |
showPopup: function (options) {
|
771 |
options = this._preparePopupOptions(options);
|
@@ -848,8 +847,8 @@ Mana.define('Mana/Core/Layout', ['jquery', 'singleton:Mana/Core'], function ($,
|
|
848 |
}
|
849 |
});
|
850 |
});
|
851 |
-
|
852 |
-
|
853 |
Mana.define('Mana/Core/Ajax', ['jquery', 'singleton:Mana/Core/Layout', 'singleton:Mana/Core/Json',
|
854 |
'singleton:Mana/Core', 'singleton:Mana/Core/Config'],
|
855 |
function ($, layout, json, core, config, undefined)
|
@@ -1147,8 +1146,8 @@ function ($, layout, json, core, config, undefined)
|
|
1147 |
}
|
1148 |
});
|
1149 |
});
|
1150 |
-
|
1151 |
-
|
1152 |
Mana.define('Mana/Core/Block', ['jquery', 'singleton:Mana/Core', 'singleton:Mana/Core/Layout',
|
1153 |
'singleton:Mana/Core/Json'],
|
1154 |
function($, core, layout, json, undefined) {
|
@@ -1374,8 +1373,8 @@ function($, core, layout, json, undefined) {
|
|
1374 |
}
|
1375 |
});
|
1376 |
});
|
1377 |
-
|
1378 |
-
|
1379 |
Mana.define('Mana/Core/PopupBlock', ['jquery', 'Mana/Core/Block', 'singleton:Mana/Core/Layout'], function ($, Block, layout) {
|
1380 |
return Block.extend('Mana/Core/PopupBlock', {
|
1381 |
prepare: function(options) {
|
@@ -1390,8 +1389,8 @@ Mana.define('Mana/Core/PopupBlock', ['jquery', 'Mana/Core/Block', 'singleton:Man
|
|
1390 |
}
|
1391 |
});
|
1392 |
});
|
1393 |
-
|
1394 |
-
|
1395 |
Mana.define('Mana/Core/PageBlock', ['jquery', 'Mana/Core/Block', 'singleton:Mana/Core/Config'],
|
1396 |
function ($, Block, config)
|
1397 |
{
|
@@ -1473,8 +1472,8 @@ function ($, Block, config)
|
|
1473 |
}
|
1474 |
});
|
1475 |
});
|
1476 |
-
|
1477 |
-
|
1478 |
Mana.require(['jquery', 'singleton:Mana/Core/Layout', 'singleton:Mana/Core/Ajax'], function($, layout, ajax) {
|
1479 |
function _generateBlocks() {
|
1480 |
var vars = layout.beginGeneratingBlocks();
|
@@ -1485,8 +1484,8 @@ Mana.require(['jquery', 'singleton:Mana/Core/Layout', 'singleton:Mana/Core/Ajax'
|
|
1485 |
ajax.startIntercepting();
|
1486 |
});
|
1487 |
});
|
1488 |
-
|
1489 |
-
|
1490 |
Mana.require(['jquery'], function($) {
|
1491 |
var bp = {
|
1492 |
xsmall: 479,
|
@@ -1511,8 +1510,8 @@ Mana.require(['jquery'], function($) {
|
|
1511 |
}
|
1512 |
});
|
1513 |
});
|
1514 |
-
|
1515 |
-
|
1516 |
//region (Obsolete) additional jQuery functions used in MANAdev extensions
|
1517 |
(function($) {
|
1518 |
// this variables are private to this code block
|
@@ -1846,6 +1845,6 @@ Mana.require(['jquery'], function($) {
|
|
1846 |
};
|
1847 |
|
1848 |
})(jQuery);
|
1849 |
-
//endregion
|
1850 |
-
|
1851 |
//# sourceMappingURL=core.js.map
|
7 |
|
8 |
; // make JS merging easier
|
9 |
|
10 |
+
|
11 |
+
|
12 |
var Mana = Mana || {};
|
13 |
|
14 |
(function($, $p, undefined) {
|
143 |
});
|
144 |
})(jQuery, $);
|
145 |
|
146 |
+
|
147 |
+
|
148 |
/* Simple JavaScript Inheritance
|
149 |
* By John Resig http://ejohn.org/
|
150 |
* MIT Licensed.
|
151 |
*/
|
152 |
// Inspired by base2 and Prototype
|
153 |
+
var m_object_initializing = false;
|
154 |
(function (undefined) {
|
155 |
+
var fnTest = /xyz/.test(function () { xyz;}) ? /\b_super\b/ : /.*/;
|
156 |
|
157 |
// The base Class implementation (does nothing)
|
158 |
Mana.Object = function () {
|
168 |
|
169 |
// Instantiate a base class (but only create the instance,
|
170 |
// don't run the init constructor)
|
171 |
+
m_object_initializing = true;
|
172 |
var prototype = new this();
|
173 |
+
m_object_initializing = false;
|
174 |
|
175 |
// Copy the properties over onto the new prototype
|
176 |
for (var name in prop) {
|
202 |
var Object;
|
203 |
if (className === undefined) {
|
204 |
// All construction is actually done in the init method
|
205 |
+
Object = function Object() { if (!m_object_initializing && this._init) this._init.apply(this, arguments); };
|
206 |
}
|
207 |
else {
|
208 |
// give constructor a meaningful name for easier debugging
|
209 |
+
eval("Object = function " + className.replace(/\//g, '_') + "() { if (!m_object_initializing && this._init) this._init.apply(this, arguments); };");
|
210 |
}
|
211 |
|
212 |
// Populate our constructed prototype object
|
221 |
return Object;
|
222 |
};
|
223 |
})();
|
224 |
+
|
225 |
+
|
226 |
Mana.define('Mana/Core', ['jquery'], function ($) {
|
227 |
return Mana.Object.extend('Mana/Core', {
|
228 |
+
getClasses: function(element) {
|
229 |
+
return element.className && element.className.split ? element.className.split(/\s+/) : [];
|
230 |
},
|
231 |
getPrefixedClass: function(element, prefix) {
|
232 |
var result = '';
|
271 |
}
|
272 |
});
|
273 |
});
|
274 |
+
|
275 |
+
|
276 |
Mana.define('Mana/Core/Config', ['jquery'], function ($) {
|
277 |
return Mana.Object.extend('Mana/Core/Config', {
|
278 |
_init: function () {
|
301 |
|
302 |
});
|
303 |
});
|
304 |
+
|
305 |
+
|
306 |
Mana.define('Mana/Core/Json', ['jquery', 'singleton:Mana/Core'], function ($, core) {
|
307 |
return Mana.Object.extend('Mana/Core/Json', {
|
308 |
parse: function (what) {
|
327 |
}
|
328 |
});
|
329 |
});
|
330 |
+
|
331 |
+
|
332 |
Mana.define('Mana/Core/Utf8', [], function () {
|
333 |
return Mana.Object.extend('Mana/Core/Utf8', {
|
334 |
decode: function (str_data) {
|
376 |
}
|
377 |
});
|
378 |
});
|
379 |
+
|
380 |
+
|
381 |
Mana.define('Mana/Core/Base64', ['singleton:Mana/Core/Utf8'], function (utf8) {
|
382 |
return Mana.Object.extend('Mana/Core/Base64', {
|
383 |
encode: function (what) {
|
504 |
}
|
505 |
});
|
506 |
});
|
507 |
+
|
508 |
+
|
509 |
Mana.define('Mana/Core/UrlTemplate', ['singleton:Mana/Core/Base64', 'singleton:Mana/Core/Config'], function (base64, config) {
|
510 |
return Mana.Object.extend('Mana/Core/UrlTemplate', {
|
511 |
decodeAttribute: function (data) {
|
521 |
}
|
522 |
});
|
523 |
});
|
524 |
+
|
525 |
+
|
526 |
Mana.define('Mana/Core/StringTemplate', ['jquery'], function ($, undefined) {
|
527 |
return Mana.Object.extend('Mana/Core/StringTemplate', {
|
528 |
concat: function(parsedTemplate, vars) {
|
546 |
}
|
547 |
});
|
548 |
});
|
549 |
+
|
550 |
+
|
551 |
Mana.define('Mana/Core/Layout', ['jquery', 'singleton:Mana/Core'], function ($, core, undefined) {
|
552 |
return Mana.Object.extend('Mana/Core/Layout', {
|
553 |
_init: function () {
|
748 |
return options.$popup;
|
749 |
},
|
750 |
_preparePopupOptions: function(options) {
|
751 |
+
if (options.overlay === undefined) { options.overlay = {}; }
|
752 |
+
if (options.overlay.opacity === undefined) { options.overlay.opacity = 0.2; }
|
753 |
+
|
754 |
+
if (options.popup === undefined) { options.popup = {}; }
|
755 |
+
if (options.popup.blockName === undefined) { options.popup.blockName = 'Mana/Core/PopupBlock'; }
|
756 |
+
|
757 |
+
if (options.popupBlock === undefined) { options.popupBlock = {}; }
|
758 |
+
|
759 |
+
if (options.fadein === undefined) { options.fadein = {}; }
|
760 |
+
if (options.fadein.overlayTime === undefined) { options.fadein.overlayTime = 0; }
|
761 |
+
if (options.fadein.popupTime === undefined) { options.fadein.popupTime = 300; }
|
762 |
+
|
763 |
+
if (options.fadeout === undefined) { options.fadeout = {}; }
|
764 |
+
if (options.fadeout.overlayTime === undefined) { options.fadeout.overlayTime = 0; }
|
765 |
+
if (options.fadeout.popupTime === undefined) { options.fadeout.popupTime = 500; }
|
766 |
+
|
767 |
+
return options;
|
|
|
|
|
768 |
},
|
769 |
showPopup: function (options) {
|
770 |
options = this._preparePopupOptions(options);
|
847 |
}
|
848 |
});
|
849 |
});
|
850 |
+
|
851 |
+
|
852 |
Mana.define('Mana/Core/Ajax', ['jquery', 'singleton:Mana/Core/Layout', 'singleton:Mana/Core/Json',
|
853 |
'singleton:Mana/Core', 'singleton:Mana/Core/Config'],
|
854 |
function ($, layout, json, core, config, undefined)
|
1146 |
}
|
1147 |
});
|
1148 |
});
|
1149 |
+
|
1150 |
+
|
1151 |
Mana.define('Mana/Core/Block', ['jquery', 'singleton:Mana/Core', 'singleton:Mana/Core/Layout',
|
1152 |
'singleton:Mana/Core/Json'],
|
1153 |
function($, core, layout, json, undefined) {
|
1373 |
}
|
1374 |
});
|
1375 |
});
|
1376 |
+
|
1377 |
+
|
1378 |
Mana.define('Mana/Core/PopupBlock', ['jquery', 'Mana/Core/Block', 'singleton:Mana/Core/Layout'], function ($, Block, layout) {
|
1379 |
return Block.extend('Mana/Core/PopupBlock', {
|
1380 |
prepare: function(options) {
|
1389 |
}
|
1390 |
});
|
1391 |
});
|
1392 |
+
|
1393 |
+
|
1394 |
Mana.define('Mana/Core/PageBlock', ['jquery', 'Mana/Core/Block', 'singleton:Mana/Core/Config'],
|
1395 |
function ($, Block, config)
|
1396 |
{
|
1472 |
}
|
1473 |
});
|
1474 |
});
|
1475 |
+
|
1476 |
+
|
1477 |
Mana.require(['jquery', 'singleton:Mana/Core/Layout', 'singleton:Mana/Core/Ajax'], function($, layout, ajax) {
|
1478 |
function _generateBlocks() {
|
1479 |
var vars = layout.beginGeneratingBlocks();
|
1484 |
ajax.startIntercepting();
|
1485 |
});
|
1486 |
});
|
1487 |
+
|
1488 |
+
|
1489 |
Mana.require(['jquery'], function($) {
|
1490 |
var bp = {
|
1491 |
xsmall: 479,
|
1510 |
}
|
1511 |
});
|
1512 |
});
|
1513 |
+
|
1514 |
+
|
1515 |
//region (Obsolete) additional jQuery functions used in MANAdev extensions
|
1516 |
(function($) {
|
1517 |
// this variables are private to this code block
|
1845 |
};
|
1846 |
|
1847 |
})(jQuery);
|
1848 |
+
//endregion
|
1849 |
+
|
1850 |
//# sourceMappingURL=core.js.map
|
js/mana/core.js.map
CHANGED
@@ -1,27 +1,27 @@
|
|
1 |
-
{
|
2 |
-
"version": 3,
|
3 |
-
"file": "core.js",
|
4 |
-
"sources": [
|
5 |
-
"src/Mana/Core/header.js",
|
6 |
-
"src/Mana/Core/Mana.js",
|
7 |
-
"src/Mana/Core/Object.js",
|
8 |
-
"src/Mana/Core/Core.js",
|
9 |
-
"src/Mana/Core/Config.js",
|
10 |
-
"src/Mana/Core/Json.js",
|
11 |
-
"src/Mana/Core/Utf8.js",
|
12 |
-
"src/Mana/Core/Base64.js",
|
13 |
-
"src/Mana/Core/UrlTemplate.js",
|
14 |
-
"src/Mana/Core/StringTemplate.js",
|
15 |
-
"src/Mana/Core/Layout.js",
|
16 |
-
"src/Mana/Core/Ajax.js",
|
17 |
-
"src/Mana/Core/Block.js",
|
18 |
-
"src/Mana/Core/PopupBlock.js",
|
19 |
-
"src/Mana/Core/PageBlock.js",
|
20 |
-
"src/Mana/Core/init.js",
|
21 |
-
"src/Mana/Core/rwd.js",
|
22 |
-
"src/Mana/Core/obsolete.js"
|
23 |
-
],
|
24 |
-
"names": [],
|
25 |
-
"mappings": "AAAA;AACA;AACA;AACA;AACA;AACA;AACA
|
26 |
-
"sourceRoot": "../"
|
27 |
}
|
1 |
+
{
|
2 |
+
"version": 3,
|
3 |
+
"file": "core.js",
|
4 |
+
"sources": [
|
5 |
+
"src/Mana/Core/header.js",
|
6 |
+
"src/Mana/Core/Mana.js",
|
7 |
+
"src/Mana/Core/Object.js",
|
8 |
+
"src/Mana/Core/Core.js",
|
9 |
+
"src/Mana/Core/Config.js",
|
10 |
+
"src/Mana/Core/Json.js",
|
11 |
+
"src/Mana/Core/Utf8.js",
|
12 |
+
"src/Mana/Core/Base64.js",
|
13 |
+
"src/Mana/Core/UrlTemplate.js",
|
14 |
+
"src/Mana/Core/StringTemplate.js",
|
15 |
+
"src/Mana/Core/Layout.js",
|
16 |
+
"src/Mana/Core/Ajax.js",
|
17 |
+
"src/Mana/Core/Block.js",
|
18 |
+
"src/Mana/Core/PopupBlock.js",
|
19 |
+
"src/Mana/Core/PageBlock.js",
|
20 |
+
"src/Mana/Core/init.js",
|
21 |
+
"src/Mana/Core/rwd.js",
|
22 |
+
"src/Mana/Core/obsolete.js"
|
23 |
+
],
|
24 |
+
"names": [],
|
25 |
+
"mappings": "AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3SA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",
|
26 |
+
"sourceRoot": "../"
|
27 |
}
|
js/mana/core.min.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
-
/**
|
2 |
-
* @category Mana
|
3 |
-
* @package Mana_Core
|
4 |
-
* @copyright Copyright (c) http://www.manadev.com
|
5 |
-
* @license http://www.manadev.com/license Proprietary License
|
6 |
-
*/
|
7 |
-
var Mana=Mana||{};!function(e,t,n){e.extend(Mana,{_singletons:{},_defines:{jquery:e,prototype:t},define:function(e,t,n){var o=Mana._resolveDependencyNames(t);return Mana._define(e,o.names,function(){return n.apply(this,Mana._resolveDependencies(arguments,o.deps))})},require:function(e,t){var n=Mana._resolveDependencyNames(e);return Mana._define(null,n.names,function(){return t.apply(this,Mana._resolveDependencies(arguments,n.deps))})},_define:function(t,n,o){var i=[];e.each(n,function(e,t){i.push(Mana._resolveDefine(t))});var r=o.apply(this,i);return t&&(Mana._defines[t]=r),r},_resolveDefine:function(e){return Mana._defines[e]===n&&console.warn("'"+e+"' is not defined"),Mana._defines[e]},requireOptional:function(e,t){var n=Mana._resolveDependencyNames(e);return Mana._define(null,n.names,function(){return t.apply(this,Mana._resolveDependencies(arguments,n.deps))})},_resolveDependencyNames:function(t){var n=[],o=[];return e.each(t,function(e,t){var i=t.indexOf(":"),r={name:t,resolver:""};-1!=i&&(r={name:t.substr(i+1),resolver:t.substr(0,i)}),Mana._resolveDependencyName(r),n.push(r.name),o.push(r)}),{names:n,deps:o}},_resolveDependencies:function(t,n){return e.each(t,function(e,o){t[e]=Mana._resolveDependency(n[e],o)}),t},_resolveDependencyName:function(){},_resolveDependency:function(e,t){if(t!==n)switch(e.resolver){case"singleton":return Mana._singletons[e.name]===n&&(Mana._singletons[e.name]=new t),Mana._singletons[e.name]}return t}})}(jQuery,$),function(undefined){var initializing=!1,fnTest=/xyz/.test(function(){})?/\b_super\b/:/.*/;Mana.Object=function(){},Mana.Object.extend=function(className,prop){prop===undefined&&(prop=className,className=undefined);var _super=this.prototype;initializing=!0;var prototype=new this;initializing=!1;for(var name in prop)prototype[name]="function"==typeof prop[name]&&"function"==typeof _super[name]&&fnTest.test(prop[name])?function(e,t){return function(){var n=this._super;this._super=_super[e];var o=t.apply(this,arguments);return this._super=n,o}}(name,prop[name]):prop[name];var Object;return className===undefined?Object=function(){!initializing&&this._init&&this._init.apply(this,arguments)}:eval("Object = function "+className.replace(/\//g,"_")+"() { if (!initializing && this._init) this._init.apply(this, arguments); };"),Object.prototype=prototype,Object.prototype.constructor=Object,Object.extend=arguments.callee,Object}}(),Mana.define("Mana/Core",["jquery"],function(e){return Mana.Object.extend("Mana/Core",{getClasses:function(e){return e.className.split(/\s+/)},getPrefixedClass:function(t,n){var o="";return e.each(this.getClasses(t),function(e,t){return 0==t.indexOf(n)?(o=t.substr(n.length),!1):void 0}),o},arrayRemove:function(e,t,n){var o=e.slice((n||t)+1||e.length);return e.length=0>t?e.length+t:t,e.push.apply(e,o)},getBlockAlias:function(e,t){var n;return 0===(n=t.indexOf(e+"-"))?t.substr((e+"-").length):t},count:function(t){var n=0;return e.each(t,function(){n++}),n},isFunction:function(e){return!!(e&&e.constructor&&e.call&&e.apply)},isString:function(e){return"[object String]"==Object.prototype.toString.call(e)}})}),Mana.define("Mana/Core/Config",["jquery"],function(e){return Mana.Object.extend("Mana/Core/Config",{_init:function(){this._data={debug:!1,showOverlay:!0,showWait:!0}},getData:function(e){return this._data[e]},setData:function(e,t){return this._data[e]=t,this},set:function(t){return e.extend(this._data,t),this},getBaseUrl:function(e){return this.getData(0==e.indexOf(this.getData("url.base"))?"url.base":"url.secureBase")}})}),Mana.define("Mana/Core/Json",["jquery","singleton:Mana/Core"],function(e,t){return Mana.Object.extend("Mana/Core/Json",{parse:function(t){return e.parseJSON(t)},stringify:function(e){return Object.toJSON(e)},decodeAttribute:function(n){if(t.isString(n)){var o=n.split('"'),i=[];e.each(o,function(e,t){i.push(t.replace(/'/g,'"'))});var r=i.join("'");return this.parse(r)}return n}})}),Mana.define("Mana/Core/Utf8",[],function(){return Mana.Object.extend("Mana/Core/Utf8",{decode:function(e){var t=[],n=0,o=0,i=0,r=0,a=0;for(e+="";n<e.length;)i=e.charCodeAt(n),128>i?(t[o++]=String.fromCharCode(i),n++):i>191&&224>i?(r=e.charCodeAt(n+1),t[o++]=String.fromCharCode((31&i)<<6|63&r),n+=2):(r=e.charCodeAt(n+1),a=e.charCodeAt(n+2),t[o++]=String.fromCharCode((15&i)<<12|(63&r)<<6|63&a),n+=3);return t.join("")}})}),Mana.define("Mana/Core/Base64",["singleton:Mana/Core/Utf8"],function(e){return Mana.Object.extend("Mana/Core/Base64",{encode:function(e){for(var t,n,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i="",r=e.length,a=0;r-->0;){if(t=e.charCodeAt(a++),i+=o.charAt(t>>2&63),r--<=0){i+=o.charAt(t<<4&63),i+="==";break}if(n=e.charCodeAt(a++),i+=o.charAt(63&(t<<4|n>>4&15)),r--<=0){i+=o.charAt(n<<2&63),i+="=";break}t=e.charCodeAt(a++),i+=o.charAt(63&(n<<2|t>>6&3)),i+=o.charAt(63&t)}return i},decode:function(t){var n,o,i,r,a,c,s,u,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",d=0,h=0,p="",f=[];if(!t)return t;t+="";do r=l.indexOf(t.charAt(d++)),a=l.indexOf(t.charAt(d++)),c=l.indexOf(t.charAt(d++)),s=l.indexOf(t.charAt(d++)),u=r<<18|a<<12|c<<6|s,n=u>>16&255,o=u>>8&255,i=255&u,f[h++]=64==c?String.fromCharCode(n):64==s?String.fromCharCode(n,o):String.fromCharCode(n,o,i);while(d<t.length);return p=f.join(""),p=e.decode(p)}})}),Mana.define("Mana/Core/UrlTemplate",["singleton:Mana/Core/Base64","singleton:Mana/Core/Config"],function(e,t){return Mana.Object.extend("Mana/Core/UrlTemplate",{decodeAttribute:function(n){return t.getData("debug")?n:e.decode(n.replace(/-/g,"+").replace(/_/g,"/").replace(/,/g,"="))},encodeAttribute:function(t){return e.encode(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,",")}})}),Mana.define("Mana/Core/StringTemplate",["jquery"],function(e,t){return Mana.Object.extend("Mana/Core/StringTemplate",{concat:function(n,o){var i="";return e.each(n,function(e,n){var r=n[0],a=n[1];"string"==r?i+=a:"var"==r&&(i+=o[a]!==t?o[a]:"{{"+a+"}}")}),i}})}),Mana.define("Mana/Core/Layout",["jquery","singleton:Mana/Core"],function(e,t,n){return Mana.Object.extend("Mana/Core/Layout",{_init:function(){this._pageBlock=null},getPageBlock:function(){return this._pageBlock},getBlock:function(e){return this._getBlockRecursively(this.getPageBlock(),e)},getBlockForElement:function(e){var t=this._getElementBlockInfo(e);return t?this.getBlock(t.id):null},_getBlockRecursively:function(t,n){if(t.getId()==n)return t;var o=this,i=null;return e.each(t.getChildren(),function(e,t){return i=o._getBlockRecursively(t,n),i?!1:!0}),i},beginGeneratingBlocks:function(e){var t={parentBlock:e,namedBlocks:{}};return e&&(e.trigger("unload",{},!1,!0),e.trigger("unbind",{},!1,!0),t.namedBlocks=this._removeAnonymousBlocks(e)),t},endGeneratingBlocks:function(t){var o=t.parentBlock,i=t.namedBlocks,r=this;this._collectBlockTypes(o?o.getElement():document,function(t){if(!r._pageBlock){var a=document.body,c=e(a),s=c.attr("data-m-block"),u=s?t[s]:t["Mana/Core/PageBlock"];r._pageBlock=(new u).setElement(e("body")[0]).setId("page")}var l=o===n;l&&(o=r.getPageBlock()),r._generateBlocksInElement(o.getElement(),o,t,i),e.each(i,function(e,t){t.parent.removeChild(t.child)}),o.trigger("bind",{},!1,!0),o.trigger("load",{},!1,!0)})},_collectBlockTypes:function(t,n){var o=["Mana/Core/PageBlock"];this._collectBlockTypesInElement(t,o),Mana.requireOptional(o,function(){var t=arguments,i={};e.each(o,function(e,n){i[n]=t[e]}),n(i)})},_collectBlockTypesInElement:function(t,n){var o=this;e(t).children().each(function(){var e=o._getElementBlockInfo(this);e&&-1==n.indexOf(e.typeName)&&n.push(e.typeName),o._collectBlockTypesInElement(this,n)})},_removeAnonymousBlocks:function(t){var n=this,o={};return e.each(t.getChildren().slice(0),function(e,i){i.getId()?(o[i.getId()]={parent:t,child:i},n._removeAnonymousBlocks(i)):t.removeChild(i)}),o},_getElementBlockInfo:function(n){var o,i,r=e(n);return(o=t.getPrefixedClass(n,"mb-"))||(i=r.attr("data-m-block"))||r.hasClass("m-block")?{id:o||n.id,typeName:i||r.attr("data-m-block")||"Mana/Core/Block"}:null},_generateBlocksInElement:function(t,n,o,i){var r=this;e(t).children().each(function(){var e=r._createBlockFromElement(this,n,o,i);r._generateBlocksInElement(this,e||n,o,i)})},_createBlockFromElement:function(e,n,o,i){var r=this._getElementBlockInfo(e);if(r){var a,c=o[r.typeName],s=!1;return r.id?(a=n.getChild(t.getBlockAlias(n.getId(),r.id)),a?(s=!0,delete i[r.id]):c?a=new c:console.error("Block '"+r.typeName+"' is not defined"),a&&a.setId(r.id)):c?a=new c:console.error("Block '"+r.typeName+"' is not defined"),a?(a.setElement(e),s||n.addChild(a),a):null}return null},preparePopup:function(o){if(o=this._preparePopupOptions(o),o.$popup===n){var i=e("#m-popup");i.css({width:"auto",height:"auto"}),i.html(t.isString(o.content)?o.content:e(o.content).html()),o.popup["class"]&&i.addClass(o.popup["class"]),o.$popup=i}return o.$popup},_preparePopupOptions:function(t){var n={overlay:{opacity:.2},popup:{blockName:"Mana/Core/PopupBlock"},popupBlock:{},fadein:{overlayTime:0,popupTime:300},fadeout:{overlayTime:0,popupTime:500}};return e.extend(!0,n,t),n},showPopup:function(t){t=this._preparePopupOptions(t);var n=this;Mana.requireOptional([t.popup.blockName],function(o){var i=t.fadeout.callback;t.fadeout.callback=function(){e("#m-popup").fadeOut(t.fadeout.popupTime,function(){i&&i()})};var r=n.getPageBlock().showOverlay("m-popup-overlay",t.fadeout),a=n.preparePopup(t);r.animate({opacity:t.overlay.opacity},t.fadein.overlayTime,function(){a.show();var i=new o;i.setElement(a[0]);var r=n.beginGeneratingBlocks(i);n.endGeneratingBlocks(r),i.prepare&&i.prepare(t.popupBlock),e(".m-popup-overlay").on("click",function(){return n.hidePopup(),!1}),n._popupEscListenerInitialized||(n._popupEscListenerInitialized=!0,e(document).keydown(function(t){return e(".m-popup-overlay").length&&27==t.keyCode?(n.hidePopup(),!1):!0})),a.css("top",(e(window).height()-a.outerHeight())/2+e(window).scrollTop()+"px").css("left",(e(window).width()-a.outerWidth())/2+e(window).scrollLeft()+"px");a.height();a.hide().css({height:"auto"});var c={left:a.css("left"),top:a.css("top"),width:a.width()+"px",height:a.height()+"px"};a.children().each(function(){e(this).css({width:a.width()+e(this).width()-e(this).outerWidth()+"px",height:a.height()+e(this).height()-e(this).outerHeight()+"px"})}),a.css({top:e(window).height()/2+e(window).scrollTop()+"px",left:e(window).width()/2+e(window).scrollLeft()+"px",width:"0px",height:"0px"}).show(),a.animate(c,t.fadein.popupTime,t.fadein.callback)})})},hidePopup:function(){this.getPageBlock().hideOverlay()}})}),Mana.define("Mana/Core/Ajax",["jquery","singleton:Mana/Core/Layout","singleton:Mana/Core/Json","singleton:Mana/Core","singleton:Mana/Core/Config"],function(e,t,n,o,i,r){return Mana.Object.extend("Mana/Core/Ajax",{_init:function(){this._interceptors=[],this._matchedInterceptorCache={},this._lastAjaxActionSource=r,this._oldSetLocation=r,this._preventClicks=0},_encodeUrl:function(e,t){return t.encode?t.encode.offset!==r?t.encode.length===r?0===t.encode.offset?window.encodeURI(e.substr(t.encode.offset)):e.substr(0,t.encode.offset)+window.encodeURI(e.substr(t.encode.offset)):0===t.encode.length?e:0===t.encode.offset?window.encodeURI(e.substr(t.encode.offset,t.encode.length))+e.substr(t.encode.offset+t.encode.length):e.substr(0,t.encode.offset)+window.encodeURI(e.substr(t.encode.offset,t.encode.length))+e.substr(t.encode.offset+t.encode.length):e:window.encodeURI(e)},get:function(t,n,o){var i=this;o=this._before(o,t),e.get(this._encodeUrl(t,o)).done(function(e){i._done(e,n,o,t)}).fail(function(e){i._fail(e,o,t)}).complete(function(){i._complete(o,t)})},post:function(t,n,o,i){var a=this;n===r&&(n=[]),o===r&&(o=function(){}),i=this._before(i,t,n),e.post(window.encodeURI(t),n).done(function(e){a._done(e,o,i,t,n)}).fail(function(e){a._fail(e,i,t,n)}).complete(function(){a._complete(i,t,n)})},update:function(n){n.updates&&e.each(n.updates,function(t,n){e(t).html(n)}),n.blocks&&e.each(n.blocks,function(e,o){var i=t.getBlock(e);i&&i.setContent(n.sections[o])}),n.config&&i.set(n.config),n.script&&e.globalEval(n.script),n.title&&(document.title=n.title.replace(/&/g,"&"))},getSectionSeparator:function(){return"\n91b5970cd70e2353d866806f8003c1cd56646961\n"},_before:function(n,o){var i=t.getPageBlock();return n=e.extend({showOverlay:i.getShowOverlay(),showWait:i.getShowWait(),showDebugMessages:i.getShowDebugMessages()},n),n.showOverlay&&i.showOverlay(),n.showWait&&i.showWait(),n.preventClicks&&this._preventClicks++,e(document).trigger("m-ajax-before",[[],o,"",n]),n},_done:function(e,o,i,r,a){var c=t.getPageBlock();i.showOverlay&&c.hideOverlay(),i.showWait&&c.hideWait();try{var s=e;try{var u=e.split(this.getSectionSeparator());e=u.shift(),e=n.parse(e),e.sections=u}catch(l){return void o(s,{url:r})}e?e.error&&!e.customErrorDisplay?i.showDebugMessages&&alert(e.message||e.error):o(e,{url:r,data:a}):i.showDebugMessages&&alert("No response.")}catch(d){if(i.showDebugMessages){var h="";"string"==typeof d?h+=d:(h+=d.message,d.fileName&&(h+="\n in "+d.fileName+" ("+d.lineNumber+")")),e&&(h+="\n\n",h+="string"==typeof e?e:n.stringify(e)),alert(h)}}},_fail:function(e,n){var o=t.getPageBlock();n.showOverlay&&o.hideOverlay(),n.showWait&&o.hideWait(),n.showDebugMessages&&alert(e.status+(e.responseText?": "+e.responseText:""))},_complete:function(t,n){t.preventClicks&&this._preventClicks--,e(document).trigger("m-ajax-after",[[],n,"",t])},addInterceptor:function(e){this._interceptors.push(e)},removeInterceptor:function(e){var t=this._interceptors.indexOf(e);-1!=t&&this._interceptors.splice(t,1)},startIntercepting:function(){var t=this;window.History&&window.History.enabled&&e(window).on("statechange",t._onStateChange=function(){var e=window.History.getState(),n=e.url;t._findMatchingInterceptor(n,t._lastAjaxActionSource)?t._internalCallInterceptionCallback(n,t._lastAjaxActionSource):t._oldSetLocation(n,t._lastAjaxActionSource)}),window.setLocation&&(this._oldSetLocation=window.setLocation,window.setLocation=function(e,n){t._callInterceptionCallback(e,n)}),e(document).on("click","a",t._onClick=function(){var e=this.href;return t._preventClicks&&e==location.href+"#"?!1:t._findMatchingInterceptor(e,this)?t._callInterceptionCallback(e,this):!0})},stopIntercepting:function(){window.History&&window.History.enabled&&(e(window).off("statechange",self._onStateChange),self._onStateChange=null),e(document).off("click","a",self._onClick),self._onClick=null},_internalCallInterceptionCallback:function(e,t){var n=this._findMatchingInterceptor(e,t);return n?(this.lastUrl=e,n.intercept(e,t),!1):!0},_callInterceptionCallback:function(e,t){return this._findMatchingInterceptor(e,t)?(this._lastAjaxActionSource=t,window.History&&window.History.enabled?window.History.pushState(null,window.title,e):this._internalCallInterceptionCallback(e,t)):this._oldSetLocation(e,t),!1},_findMatchingInterceptor:function(t,n){if(this._matchedInterceptorCache[t]===r){var o=!1;i.getData("ajax.enabled")&&e.each(this._interceptors,function(e,i){return i.match(t,n)?(o=i,!1):!0}),this._matchedInterceptorCache[t]=o}return this._matchedInterceptorCache[t]},getDocumentUrl:function(){return this.lastUrl?this.lastUrl:document.URL}})}),Mana.define("Mana/Core/Block",["jquery","singleton:Mana/Core","singleton:Mana/Core/Layout","singleton:Mana/Core/Json"],function(e,t,n,o,i){return Mana.Object.extend("Mana/Core/Block",{_init:function(){this._id="",this._element=null,this._parent=null,this._children=[],this._namedChildren={},this._isSelfContained=!1,this._eventHandlers={},this._data={},this._text={},this._subscribeToHtmlEvents()._subscribeToBlockEvents()},_subscribeToHtmlEvents:function(){return this._json={},this},_subscribeToBlockEvents:function(){return this},getElement:function(){return this._element},$:function(){return e(this.getElement())},setElement:function(e){return this._element=e,this},addChild:function(e){return this._children.push(e),e.getId()&&(this._namedChildren[t.getBlockAlias(this.getId(),e.getId())]=e),e._parent=this,this},removeChild:function(n){var o=e.inArray(n,this._children);return-1!=o&&(t.arrayRemove(this._children,o),n.getId()&&delete this._namedChildren[t.getBlockAlias(this.getId(),n.getId())]),n._parent=null,this},getIsSelfContained:function(){return this._isSelfContained},setIsSelfContained:function(e){return this._isSelfContained=e,this},getId:function(){return this._id||this.getElement().id},setId:function(e){return this._id=e,this},getParent:function(){return this._parent},getChild:function(n){if(t.isFunction(n)){var o=null;return e.each(this._children,function(e,t){return n(e,t)?(o=t,!1):!0}),o}return this._namedChildren[n]},getChildren:function(t){if(t===i)return this._children.slice(0);var n=[];return e.each(this._children,function(e,o){t(e,o)&&n.push(o)}),n},getAlias:function(){var t=i,n=this;return e.each(this._parent._namedChildren,function(e,o){return o===n?(t=e,!1):!0}),t},_trigger:function(t,n){return n.stopped||this._eventHandlers[t]===i||e.each(this._eventHandlers[t],function(e,t){var o=t.callback.call(t.target,n);return o===!1&&(n.stopped=!0),o}),n.result},trigger:function(t,n,o,r){return n===i&&(n={}),n.target===i&&(n.target=this),r===i&&(r=!1),o===i&&(o=!0),this._trigger(t,n),r&&e.each(this.getChildren(),function(e,o){o.trigger(t,n,!1,r)}),o&&this.getParent()&&this.getParent().trigger(t,n,o,!1),n.result},on:function(e,t,n,o){return this._eventHandlers[e]===i&&(this._eventHandlers[e]=[]),o===i&&(o=0),this._eventHandlers[e].push({target:t,callback:n,sortOrder:o}),this._eventHandlers[e].sort(function(e,t){return e.sortOrder<t.sortOrder?-1:e.sortOrder>t.sortOrder?1:0}),this},off:function(n,o,r){this._eventHandlers[n]===i&&(this._eventHandlers[n]=[]);var a=-1;e.each(this._eventHandlers[n],function(e,t){return t.target==o&&t.callback==r?(a=e,!1):!0}),-1!=a&&t.arrayRemove(this._eventHandlers[n],a)},setContent:function(t){if("string"!=e.type(t)){if(!(t.content&&this.getId()&&t.content[this.getId()]))return this;t=t.content[this.getId()]}var o=n.beginGeneratingBlocks(this);return t=e(t),e(this.getElement()).replaceWith(t),this.setElement(t[0]),n.endGeneratingBlocks(o),this},getData:function(e){return this._data[e]},setData:function(e,t){return this._data[e]=t,this},getText:function(e){return this._text[e]===i&&(this._text[e]=this.$().data(e+"-text")),this._text[e]},getJsonData:function(e,t){return this._json[e]===i&&(this._json[e]=o.decodeAttribute(this.$().data(e))),t===i?this._json[e]:this._json[e][t]}})}),Mana.define("Mana/Core/PopupBlock",["jquery","Mana/Core/Block","singleton:Mana/Core/Layout"],function(e,t,n){return t.extend("Mana/Core/PopupBlock",{prepare:function(e){var t=this;this._host=e.host,this.$().find(".btn-close").on("click",function(){return t._close()})},_close:function(){return n.hidePopup(),!1}})}),Mana.define("Mana/Core/PageBlock",["jquery","Mana/Core/Block","singleton:Mana/Core/Config"],function(e,t,n){return t.extend("Mana/Core/PageBlock",{_init:function(){this._defaultOverlayFadeout={overlayTime:0,popupTime:0,callback:null},this._overlayFadeout=this._defaultOverlayFadeout,this._super()},_subscribeToHtmlEvents:function(){function t(){o||(o=!0,n.resize(),o=!1)}var n=this,o=!1;return this._super().on("bind",this,function(){e(window).on("load",t),e(window).on("resize",t)}).on("unbind",this,function(){e(window).off("load",t),e(window).off("resize",t)})},_subscribeToBlockEvents:function(){return this._super().on("load",this,function(){this.resize()})},resize:function(){this.trigger("resize",{},!1,!0)},showOverlay:function(t,n){this._overlayFadeout=n||this._defaultOverlayFadeout;var o=e(t?'<div class="m-overlay '+t+'"></div>':'<div class="m-overlay"></div>');return o.appendTo(this.getElement()),o.css({left:0,top:0}).width(e(document).width()).height(e(document).height()),o},hideOverlay:function(){var t=this;return e(".m-overlay").fadeOut(this._overlayFadeout.overlayTime,function(){e(".m-overlay").remove(),t._overlayFadeout.callback&&t._overlayFadeout.callback(),t._overlayFadeout=t._defaultOverlayFadeout}),this},showWait:function(){return e("#m-wait").show(),this},hideWait:function(){return e("#m-wait").hide(),this},getShowDebugMessages:function(){return n.getData("debug")},getShowOverlay:function(){return n.getData("showOverlay")},getShowWait:function(){return n.getData("showWait")}})}),Mana.require(["jquery","singleton:Mana/Core/Layout","singleton:Mana/Core/Ajax"],function(e,t,n){function o(){var e=t.beginGeneratingBlocks();t.endGeneratingBlocks(e)}e(function(){o(),n.startIntercepting()})}),Mana.require(["jquery"],function(e){var t={xsmall:479,small:599,medium:770,large:979,xlarge:1199};Mana.rwdIsMobile=!1,e(function(){window.enquire&&enquire.register("screen and (max-width: "+t.medium+"px)",{match:function(){Mana.rwdIsMobile=!0,e(document).trigger("m-rwd-mobile")},unmatch:function(){Mana.rwdIsMobile=!1,e(document).trigger("m-rwd-wide")}})})}),function(e){var t={},n={};e.__=function(n){if("string"==typeof n){var o=arguments;return o[0]=t[n]?t[n]:n,e.vsprintf(o)}t=e.extend(t,n)},e.options=function(t){return"string"==typeof t?n[t]:(n=e.extend(!0,n,t),void e(document).trigger("m-options-changed"))},e.dynamicUpdate=function(t){t&&e.each(t,function(t,n){e(n.selector).html(n.html)})},e.dynamicReplace=function(t,n,o){t&&e.each(t,function(t,i){var r=e(t);if(r.length){var a=e(r[0]);r.length>1&&r.slice(1).remove(),a.replaceWith(o?e.utf8_decode(i):i)}else if(n)throw"There is no content to replace."})},e.errorUpdate=function(t,n){t||(t="#messages");var o=e(t);o.length?o.html('<ul class="messages"><li class="error-msg"><ul><li>'+n+"</li></ul></li></ul>"):alert(n)},e.arrayRemove=function(e,t,n){var o=e.slice((n||t)+1||e.length);return e.length=0>t?e.length+t:t,e.push.apply(e,o)},e.mViewport=function(){var e="CSS1Compat"==document.compatMode;return{l:window.pageXOffset||(e?document.documentElement.scrollLeft:document.body.scrollLeft),t:window.pageYOffset||(e?document.documentElement.scrollTop:document.body.scrollTop),w:window.innerWidth||(e?document.documentElement.clientWidth:document.body.clientWidth),h:window.innerHeight||(e?document.documentElement.clientHeight:document.body.clientHeight)}},e.mStickTo=function(t,n){var o=e(t).offset(),i=e.mViewport(),r=o.top+t.offsetHeight,a=o.left+(t.offsetWidth-n.outerWidth())/2;r+n.outerHeight()>i.t+i.h&&(r=o.top-n.outerHeight()),a+n.outerWidth()>i.l+i.w&&(a=o.left+t.offsetWidth-n.outerWidth()),n.css({left:a+"px",top:r+"px"})},e.fn.mMarkAttr=function(e,t){return t?this.attr(e,e):this.removeAttr(e),this},e(function(){try{window.mainNav&&window.mainNav("nav",{show_delay:"100",hide_delay:"100"})}catch(e){}}),e.base64_decode=function(t){var n,o,i,r,a,c,s,u,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",d=0,h=0,p="",f=[];if(!t)return t;t+="";do r=l.indexOf(t.charAt(d++)),a=l.indexOf(t.charAt(d++)),c=l.indexOf(t.charAt(d++)),s=l.indexOf(t.charAt(d++)),u=r<<18|a<<12|c<<6|s,n=u>>16&255,o=u>>8&255,i=255&u,f[h++]=64==c?String.fromCharCode(n):64==s?String.fromCharCode(n,o):String.fromCharCode(n,o,i);while(d<t.length);return p=f.join(""),p=e.utf8_decode(p)},e.utf8_decode=function(e){var t=[],n=0,o=0,i=0,r=0,a=0;for(e+="";n<e.length;)i=e.charCodeAt(n),128>i?(t[o++]=String.fromCharCode(i),n++):i>191&&224>i?(r=e.charCodeAt(n+1),t[o++]=String.fromCharCode((31&i)<<6|63&r),n+=2):(r=e.charCodeAt(n+1),a=e.charCodeAt(n+2),t[o++]=String.fromCharCode((15&i)<<12|(63&r)<<6|63&a),n+=3);return t.join("")};var o={overlayTime:500,popupTime:1e3,callback:null};e.mSetPopupFadeoutOptions=function(e){o=e},e.fn.extend({mPopup:function(t,n){var o=e.extend({fadeOut:{overlayTime:0,popupTime:500,callback:null},fadeIn:{overlayTime:0,popupTime:500,callback:null},overlay:{opacity:.2},popup:{contentSelector:"."+t+"-text",containerClass:"m-"+t+"-popup-container",top:100}},n);e(this).live("click",function(){if(e.mPopupClosing())return!1;var t=e(o.popup.contentSelector).html();e.mSetPopupFadeoutOptions(o.fadeOut);var n=e('<div class="m-popup-overlay"> </div>');return n.appendTo(document.body),n.css({left:0,top:0}).width(e(document).width()).height(e(document).height()),n.animate({opacity:o.overlay.opacity},o.fadeIn.overlayTime,function(){e("#m-popup").css({width:"auto",height:"auto"}).html(t).addClass(o.popup.containerClass).css("top",(e(window).height()-e("#m-popup").outerHeight())/2-o.popup.top+e(window).scrollTop()+"px").css("left",(e(window).width()-e("#m-popup").outerWidth())/2+e(window).scrollLeft()+"px");e("#m-popup").height();e("#m-popup").show().height(0),e("#m-popup").hide().css({height:"auto"});var n={left:e("#m-popup").css("left"),top:e("#m-popup").css("top"),width:e("#m-popup").width()+"px",height:e("#m-popup").height()+"px"};e("#m-popup").children().each(function(){e(this).css({width:e("#m-popup").width()+e(this).width()-e(this).outerWidth()+"px",height:e("#m-popup").height()+e(this).height()-e(this).outerHeight()+"px"})}),e("#m-popup").css({top:e(window).height()/2-o.popup.top+e(window).scrollTop()+"px",left:e(window).width()/2+e(window).scrollLeft()+"px",width:"0px",height:"0px"}).show(),e("#m-popup").animate(n,o.fadeIn.popupTime,function(){o.fadeIn.callback&&o.fadeIn.callback()})}),!1})}});var i=!1;e.mPopupClosing=function(e){return void 0!==e&&(i=e),i},e.mClosePopup=function(){return e.mPopupClosing(!0),e(".m-popup-overlay").fadeOut(o.overlayTime,function(){e(".m-popup-overlay").remove(),e("#m-popup").fadeOut(o.popupTime,function(){o.callback&&o.callback(),e.mPopupClosing(!1)})}),!1}}(jQuery);
|
1 |
+
/**
|
2 |
+
* @category Mana
|
3 |
+
* @package Mana_Core
|
4 |
+
* @copyright Copyright (c) http://www.manadev.com
|
5 |
+
* @license http://www.manadev.com/license Proprietary License
|
6 |
+
*/
|
7 |
+
var Mana=Mana||{};!function(e,t,n){e.extend(Mana,{_singletons:{},_defines:{jquery:e,prototype:t},define:function(e,t,n){var o=Mana._resolveDependencyNames(t);return Mana._define(e,o.names,function(){return n.apply(this,Mana._resolveDependencies(arguments,o.deps))})},require:function(e,t){var n=Mana._resolveDependencyNames(e);return Mana._define(null,n.names,function(){return t.apply(this,Mana._resolveDependencies(arguments,n.deps))})},_define:function(t,n,o){var i=[];e.each(n,function(e,t){i.push(Mana._resolveDefine(t))});var r=o.apply(this,i);return t&&(Mana._defines[t]=r),r},_resolveDefine:function(e){return Mana._defines[e]===n&&console.warn("'"+e+"' is not defined"),Mana._defines[e]},requireOptional:function(e,t){var n=Mana._resolveDependencyNames(e);return Mana._define(null,n.names,function(){return t.apply(this,Mana._resolveDependencies(arguments,n.deps))})},_resolveDependencyNames:function(t){var n=[],o=[];return e.each(t,function(e,t){var i=t.indexOf(":"),r={name:t,resolver:""};-1!=i&&(r={name:t.substr(i+1),resolver:t.substr(0,i)}),Mana._resolveDependencyName(r),n.push(r.name),o.push(r)}),{names:n,deps:o}},_resolveDependencies:function(t,n){return e.each(t,function(e,o){t[e]=Mana._resolveDependency(n[e],o)}),t},_resolveDependencyName:function(){},_resolveDependency:function(e,t){if(t!==n)switch(e.resolver){case"singleton":return Mana._singletons[e.name]===n&&(Mana._singletons[e.name]=new t),Mana._singletons[e.name]}return t}})}(jQuery,$);var m_object_initializing=!1;!function(undefined){var fnTest=/xyz/.test(function(){})?/\b_super\b/:/.*/;Mana.Object=function(){},Mana.Object.extend=function(className,prop){prop===undefined&&(prop=className,className=undefined);var _super=this.prototype;m_object_initializing=!0;var prototype=new this;m_object_initializing=!1;for(var name in prop)prototype[name]="function"==typeof prop[name]&&"function"==typeof _super[name]&&fnTest.test(prop[name])?function(e,t){return function(){var n=this._super;this._super=_super[e];var o=t.apply(this,arguments);return this._super=n,o}}(name,prop[name]):prop[name];var Object;return className===undefined?Object=function(){!m_object_initializing&&this._init&&this._init.apply(this,arguments)}:eval("Object = function "+className.replace(/\//g,"_")+"() { if (!m_object_initializing && this._init) this._init.apply(this, arguments); };"),Object.prototype=prototype,Object.prototype.constructor=Object,Object.extend=arguments.callee,Object}}(),Mana.define("Mana/Core",["jquery"],function(e){return Mana.Object.extend("Mana/Core",{getClasses:function(e){return e.className&&e.className.split?e.className.split(/\s+/):[]},getPrefixedClass:function(t,n){var o="";return e.each(this.getClasses(t),function(e,t){return 0==t.indexOf(n)?(o=t.substr(n.length),!1):void 0}),o},arrayRemove:function(e,t,n){var o=e.slice((n||t)+1||e.length);return e.length=0>t?e.length+t:t,e.push.apply(e,o)},getBlockAlias:function(e,t){var n;return 0===(n=t.indexOf(e+"-"))?t.substr((e+"-").length):t},count:function(t){var n=0;return e.each(t,function(){n++}),n},isFunction:function(e){return!!(e&&e.constructor&&e.call&&e.apply)},isString:function(e){return"[object String]"==Object.prototype.toString.call(e)}})}),Mana.define("Mana/Core/Config",["jquery"],function(e){return Mana.Object.extend("Mana/Core/Config",{_init:function(){this._data={debug:!1,showOverlay:!0,showWait:!0}},getData:function(e){return this._data[e]},setData:function(e,t){return this._data[e]=t,this},set:function(t){return e.extend(this._data,t),this},getBaseUrl:function(e){return this.getData(0==e.indexOf(this.getData("url.base"))?"url.base":"url.secureBase")}})}),Mana.define("Mana/Core/Json",["jquery","singleton:Mana/Core"],function(e,t){return Mana.Object.extend("Mana/Core/Json",{parse:function(t){return e.parseJSON(t)},stringify:function(e){return Object.toJSON(e)},decodeAttribute:function(n){if(t.isString(n)){var o=n.split('"'),i=[];e.each(o,function(e,t){i.push(t.replace(/'/g,'"'))});var r=i.join("'");return this.parse(r)}return n}})}),Mana.define("Mana/Core/Utf8",[],function(){return Mana.Object.extend("Mana/Core/Utf8",{decode:function(e){var t=[],n=0,o=0,i=0,r=0,a=0;for(e+="";n<e.length;)i=e.charCodeAt(n),128>i?(t[o++]=String.fromCharCode(i),n++):i>191&&224>i?(r=e.charCodeAt(n+1),t[o++]=String.fromCharCode((31&i)<<6|63&r),n+=2):(r=e.charCodeAt(n+1),a=e.charCodeAt(n+2),t[o++]=String.fromCharCode((15&i)<<12|(63&r)<<6|63&a),n+=3);return t.join("")}})}),Mana.define("Mana/Core/Base64",["singleton:Mana/Core/Utf8"],function(e){return Mana.Object.extend("Mana/Core/Base64",{encode:function(e){for(var t,n,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i="",r=e.length,a=0;r-->0;){if(t=e.charCodeAt(a++),i+=o.charAt(t>>2&63),r--<=0){i+=o.charAt(t<<4&63),i+="==";break}if(n=e.charCodeAt(a++),i+=o.charAt(63&(t<<4|n>>4&15)),r--<=0){i+=o.charAt(n<<2&63),i+="=";break}t=e.charCodeAt(a++),i+=o.charAt(63&(n<<2|t>>6&3)),i+=o.charAt(63&t)}return i},decode:function(t){var n,o,i,r,a,c,s,u,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",d=0,h=0,p="",f=[];if(!t)return t;t+="";do r=l.indexOf(t.charAt(d++)),a=l.indexOf(t.charAt(d++)),c=l.indexOf(t.charAt(d++)),s=l.indexOf(t.charAt(d++)),u=r<<18|a<<12|c<<6|s,n=u>>16&255,o=u>>8&255,i=255&u,f[h++]=64==c?String.fromCharCode(n):64==s?String.fromCharCode(n,o):String.fromCharCode(n,o,i);while(d<t.length);return p=f.join(""),p=e.decode(p)}})}),Mana.define("Mana/Core/UrlTemplate",["singleton:Mana/Core/Base64","singleton:Mana/Core/Config"],function(e,t){return Mana.Object.extend("Mana/Core/UrlTemplate",{decodeAttribute:function(n){return t.getData("debug")?n:e.decode(n.replace(/-/g,"+").replace(/_/g,"/").replace(/,/g,"="))},encodeAttribute:function(t){return e.encode(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,",")}})}),Mana.define("Mana/Core/StringTemplate",["jquery"],function(e,t){return Mana.Object.extend("Mana/Core/StringTemplate",{concat:function(n,o){var i="";return e.each(n,function(e,n){var r=n[0],a=n[1];"string"==r?i+=a:"var"==r&&(i+=o[a]!==t?o[a]:"{{"+a+"}}")}),i}})}),Mana.define("Mana/Core/Layout",["jquery","singleton:Mana/Core"],function(e,t,n){return Mana.Object.extend("Mana/Core/Layout",{_init:function(){this._pageBlock=null},getPageBlock:function(){return this._pageBlock},getBlock:function(e){return this._getBlockRecursively(this.getPageBlock(),e)},getBlockForElement:function(e){var t=this._getElementBlockInfo(e);return t?this.getBlock(t.id):null},_getBlockRecursively:function(t,n){if(t.getId()==n)return t;var o=this,i=null;return e.each(t.getChildren(),function(e,t){return i=o._getBlockRecursively(t,n),i?!1:!0}),i},beginGeneratingBlocks:function(e){var t={parentBlock:e,namedBlocks:{}};return e&&(e.trigger("unload",{},!1,!0),e.trigger("unbind",{},!1,!0),t.namedBlocks=this._removeAnonymousBlocks(e)),t},endGeneratingBlocks:function(t){var o=t.parentBlock,i=t.namedBlocks,r=this;this._collectBlockTypes(o?o.getElement():document,function(t){if(!r._pageBlock){var a=document.body,c=e(a),s=c.attr("data-m-block"),u=s?t[s]:t["Mana/Core/PageBlock"];r._pageBlock=(new u).setElement(e("body")[0]).setId("page")}var l=o===n;l&&(o=r.getPageBlock()),r._generateBlocksInElement(o.getElement(),o,t,i),e.each(i,function(e,t){t.parent.removeChild(t.child)}),o.trigger("bind",{},!1,!0),o.trigger("load",{},!1,!0)})},_collectBlockTypes:function(t,n){var o=["Mana/Core/PageBlock"];this._collectBlockTypesInElement(t,o),Mana.requireOptional(o,function(){var t=arguments,i={};e.each(o,function(e,n){i[n]=t[e]}),n(i)})},_collectBlockTypesInElement:function(t,n){var o=this;e(t).children().each(function(){var e=o._getElementBlockInfo(this);e&&-1==n.indexOf(e.typeName)&&n.push(e.typeName),o._collectBlockTypesInElement(this,n)})},_removeAnonymousBlocks:function(t){var n=this,o={};return e.each(t.getChildren().slice(0),function(e,i){i.getId()?(o[i.getId()]={parent:t,child:i},n._removeAnonymousBlocks(i)):t.removeChild(i)}),o},_getElementBlockInfo:function(n){var o,i,r=e(n);return(o=t.getPrefixedClass(n,"mb-"))||(i=r.attr("data-m-block"))||r.hasClass("m-block")?{id:o||n.id,typeName:i||r.attr("data-m-block")||"Mana/Core/Block"}:null},_generateBlocksInElement:function(t,n,o,i){var r=this;e(t).children().each(function(){var e=r._createBlockFromElement(this,n,o,i);r._generateBlocksInElement(this,e||n,o,i)})},_createBlockFromElement:function(e,n,o,i){var r=this._getElementBlockInfo(e);if(r){var a,c=o[r.typeName],s=!1;return r.id?(a=n.getChild(t.getBlockAlias(n.getId(),r.id)),a?(s=!0,delete i[r.id]):c?a=new c:console.error("Block '"+r.typeName+"' is not defined"),a&&a.setId(r.id)):c?a=new c:console.error("Block '"+r.typeName+"' is not defined"),a?(a.setElement(e),s||n.addChild(a),a):null}return null},preparePopup:function(o){if(o=this._preparePopupOptions(o),o.$popup===n){var i=e("#m-popup");i.css({width:"auto",height:"auto"}),i.html(t.isString(o.content)?o.content:e(o.content).html()),o.popup["class"]&&i.addClass(o.popup["class"]),o.$popup=i}return o.$popup},_preparePopupOptions:function(e){return e.overlay===n&&(e.overlay={}),e.overlay.opacity===n&&(e.overlay.opacity=.2),e.popup===n&&(e.popup={}),e.popup.blockName===n&&(e.popup.blockName="Mana/Core/PopupBlock"),e.popupBlock===n&&(e.popupBlock={}),e.fadein===n&&(e.fadein={}),e.fadein.overlayTime===n&&(e.fadein.overlayTime=0),e.fadein.popupTime===n&&(e.fadein.popupTime=300),e.fadeout===n&&(e.fadeout={}),e.fadeout.overlayTime===n&&(e.fadeout.overlayTime=0),e.fadeout.popupTime===n&&(e.fadeout.popupTime=500),e},showPopup:function(t){t=this._preparePopupOptions(t);var n=this;Mana.requireOptional([t.popup.blockName],function(o){var i=t.fadeout.callback;t.fadeout.callback=function(){e("#m-popup").fadeOut(t.fadeout.popupTime,function(){i&&i()})};var r=n.getPageBlock().showOverlay("m-popup-overlay",t.fadeout),a=n.preparePopup(t);r.animate({opacity:t.overlay.opacity},t.fadein.overlayTime,function(){a.show();var i=new o;i.setElement(a[0]);var r=n.beginGeneratingBlocks(i);n.endGeneratingBlocks(r),i.prepare&&i.prepare(t.popupBlock),e(".m-popup-overlay").on("click",function(){return n.hidePopup(),!1}),n._popupEscListenerInitialized||(n._popupEscListenerInitialized=!0,e(document).keydown(function(t){return e(".m-popup-overlay").length&&27==t.keyCode?(n.hidePopup(),!1):!0})),a.css("top",(e(window).height()-a.outerHeight())/2+e(window).scrollTop()+"px").css("left",(e(window).width()-a.outerWidth())/2+e(window).scrollLeft()+"px");a.height();a.hide().css({height:"auto"});var c={left:a.css("left"),top:a.css("top"),width:a.width()+"px",height:a.height()+"px"};a.children().each(function(){e(this).css({width:a.width()+e(this).width()-e(this).outerWidth()+"px",height:a.height()+e(this).height()-e(this).outerHeight()+"px"})}),a.css({top:e(window).height()/2+e(window).scrollTop()+"px",left:e(window).width()/2+e(window).scrollLeft()+"px",width:"0px",height:"0px"}).show(),a.animate(c,t.fadein.popupTime,t.fadein.callback)})})},hidePopup:function(){this.getPageBlock().hideOverlay()}})}),Mana.define("Mana/Core/Ajax",["jquery","singleton:Mana/Core/Layout","singleton:Mana/Core/Json","singleton:Mana/Core","singleton:Mana/Core/Config"],function(e,t,n,o,i,r){return Mana.Object.extend("Mana/Core/Ajax",{_init:function(){this._interceptors=[],this._matchedInterceptorCache={},this._lastAjaxActionSource=r,this._oldSetLocation=r,this._preventClicks=0},_encodeUrl:function(e,t){return t.encode?t.encode.offset!==r?t.encode.length===r?0===t.encode.offset?window.encodeURI(e.substr(t.encode.offset)):e.substr(0,t.encode.offset)+window.encodeURI(e.substr(t.encode.offset)):0===t.encode.length?e:0===t.encode.offset?window.encodeURI(e.substr(t.encode.offset,t.encode.length))+e.substr(t.encode.offset+t.encode.length):e.substr(0,t.encode.offset)+window.encodeURI(e.substr(t.encode.offset,t.encode.length))+e.substr(t.encode.offset+t.encode.length):e:window.encodeURI(e)},get:function(t,n,o){var i=this;o=this._before(o,t),e.get(this._encodeUrl(t,o)).done(function(e){i._done(e,n,o,t)}).fail(function(e){i._fail(e,o,t)}).complete(function(){i._complete(o,t)})},post:function(t,n,o,i){var a=this;n===r&&(n=[]),o===r&&(o=function(){}),i=this._before(i,t,n),e.post(window.encodeURI(t),n).done(function(e){a._done(e,o,i,t,n)}).fail(function(e){a._fail(e,i,t,n)}).complete(function(){a._complete(i,t,n)})},update:function(n){n.updates&&e.each(n.updates,function(t,n){e(t).html(n)}),n.blocks&&e.each(n.blocks,function(e,o){var i=t.getBlock(e);i&&i.setContent(n.sections[o])}),n.config&&i.set(n.config),n.script&&e.globalEval(n.script),n.title&&(document.title=n.title.replace(/&/g,"&"))},getSectionSeparator:function(){return"\n91b5970cd70e2353d866806f8003c1cd56646961\n"},_before:function(n,o){var i=t.getPageBlock();return n=e.extend({showOverlay:i.getShowOverlay(),showWait:i.getShowWait(),showDebugMessages:i.getShowDebugMessages()},n),n.showOverlay&&i.showOverlay(),n.showWait&&i.showWait(),n.preventClicks&&this._preventClicks++,e(document).trigger("m-ajax-before",[[],o,"",n]),n},_done:function(e,o,i,r,a){var c=t.getPageBlock();i.showOverlay&&c.hideOverlay(),i.showWait&&c.hideWait();try{var s=e;try{var u=e.split(this.getSectionSeparator());e=u.shift(),e=n.parse(e),e.sections=u}catch(l){return void o(s,{url:r})}e?e.error&&!e.customErrorDisplay?i.showDebugMessages&&alert(e.message||e.error):o(e,{url:r,data:a}):i.showDebugMessages&&alert("No response.")}catch(d){if(i.showDebugMessages){var h="";"string"==typeof d?h+=d:(h+=d.message,d.fileName&&(h+="\n in "+d.fileName+" ("+d.lineNumber+")")),e&&(h+="\n\n",h+="string"==typeof e?e:n.stringify(e)),alert(h)}}},_fail:function(e,n){var o=t.getPageBlock();n.showOverlay&&o.hideOverlay(),n.showWait&&o.hideWait(),n.showDebugMessages&&alert(e.status+(e.responseText?": "+e.responseText:""))},_complete:function(t,n){t.preventClicks&&this._preventClicks--,e(document).trigger("m-ajax-after",[[],n,"",t])},addInterceptor:function(e){this._interceptors.push(e)},removeInterceptor:function(e){var t=this._interceptors.indexOf(e);-1!=t&&this._interceptors.splice(t,1)},startIntercepting:function(){var t=this;window.History&&window.History.enabled&&e(window).on("statechange",t._onStateChange=function(){var e=window.History.getState(),n=e.url;t._findMatchingInterceptor(n,t._lastAjaxActionSource)?t._internalCallInterceptionCallback(n,t._lastAjaxActionSource):t._oldSetLocation(n,t._lastAjaxActionSource)}),window.setLocation&&(this._oldSetLocation=window.setLocation,window.setLocation=function(e,n){t._callInterceptionCallback(e,n)}),e(document).on("click","a",t._onClick=function(){var e=this.href;return t._preventClicks&&e==location.href+"#"?!1:t._findMatchingInterceptor(e,this)?t._callInterceptionCallback(e,this):!0})},stopIntercepting:function(){window.History&&window.History.enabled&&(e(window).off("statechange",self._onStateChange),self._onStateChange=null),e(document).off("click","a",self._onClick),self._onClick=null},_internalCallInterceptionCallback:function(e,t){var n=this._findMatchingInterceptor(e,t);return n?(this.lastUrl=e,n.intercept(e,t),!1):!0},_callInterceptionCallback:function(e,t){return this._findMatchingInterceptor(e,t)?(this._lastAjaxActionSource=t,window.History&&window.History.enabled?window.History.pushState(null,window.title,e):this._internalCallInterceptionCallback(e,t)):this._oldSetLocation(e,t),!1},_findMatchingInterceptor:function(t,n){if(this._matchedInterceptorCache[t]===r){var o=!1;i.getData("ajax.enabled")&&e.each(this._interceptors,function(e,i){return i.match(t,n)?(o=i,!1):!0}),this._matchedInterceptorCache[t]=o}return this._matchedInterceptorCache[t]},getDocumentUrl:function(){return this.lastUrl?this.lastUrl:document.URL}})}),Mana.define("Mana/Core/Block",["jquery","singleton:Mana/Core","singleton:Mana/Core/Layout","singleton:Mana/Core/Json"],function(e,t,n,o,i){return Mana.Object.extend("Mana/Core/Block",{_init:function(){this._id="",this._element=null,this._parent=null,this._children=[],this._namedChildren={},this._isSelfContained=!1,this._eventHandlers={},this._data={},this._text={},this._subscribeToHtmlEvents()._subscribeToBlockEvents()},_subscribeToHtmlEvents:function(){return this._json={},this},_subscribeToBlockEvents:function(){return this},getElement:function(){return this._element},$:function(){return e(this.getElement())},setElement:function(e){return this._element=e,this},addChild:function(e){return this._children.push(e),e.getId()&&(this._namedChildren[t.getBlockAlias(this.getId(),e.getId())]=e),e._parent=this,this},removeChild:function(n){var o=e.inArray(n,this._children);return-1!=o&&(t.arrayRemove(this._children,o),n.getId()&&delete this._namedChildren[t.getBlockAlias(this.getId(),n.getId())]),n._parent=null,this},getIsSelfContained:function(){return this._isSelfContained},setIsSelfContained:function(e){return this._isSelfContained=e,this},getId:function(){return this._id||this.getElement().id},setId:function(e){return this._id=e,this},getParent:function(){return this._parent},getChild:function(n){if(t.isFunction(n)){var o=null;return e.each(this._children,function(e,t){return n(e,t)?(o=t,!1):!0}),o}return this._namedChildren[n]},getChildren:function(t){if(t===i)return this._children.slice(0);var n=[];return e.each(this._children,function(e,o){t(e,o)&&n.push(o)}),n},getAlias:function(){var t=i,n=this;return e.each(this._parent._namedChildren,function(e,o){return o===n?(t=e,!1):!0}),t},_trigger:function(t,n){return n.stopped||this._eventHandlers[t]===i||e.each(this._eventHandlers[t],function(e,t){var o=t.callback.call(t.target,n);return o===!1&&(n.stopped=!0),o}),n.result},trigger:function(t,n,o,r){return n===i&&(n={}),n.target===i&&(n.target=this),r===i&&(r=!1),o===i&&(o=!0),this._trigger(t,n),r&&e.each(this.getChildren(),function(e,o){o.trigger(t,n,!1,r)}),o&&this.getParent()&&this.getParent().trigger(t,n,o,!1),n.result},on:function(e,t,n,o){return this._eventHandlers[e]===i&&(this._eventHandlers[e]=[]),o===i&&(o=0),this._eventHandlers[e].push({target:t,callback:n,sortOrder:o}),this._eventHandlers[e].sort(function(e,t){return e.sortOrder<t.sortOrder?-1:e.sortOrder>t.sortOrder?1:0}),this},off:function(n,o,r){this._eventHandlers[n]===i&&(this._eventHandlers[n]=[]);var a=-1;e.each(this._eventHandlers[n],function(e,t){return t.target==o&&t.callback==r?(a=e,!1):!0}),-1!=a&&t.arrayRemove(this._eventHandlers[n],a)},setContent:function(t){if("string"!=e.type(t)){if(!(t.content&&this.getId()&&t.content[this.getId()]))return this;t=t.content[this.getId()]}var o=n.beginGeneratingBlocks(this);return t=e(t),e(this.getElement()).replaceWith(t),this.setElement(t[0]),n.endGeneratingBlocks(o),this},getData:function(e){return this._data[e]},setData:function(e,t){return this._data[e]=t,this},getText:function(e){return this._text[e]===i&&(this._text[e]=this.$().data(e+"-text")),this._text[e]},getJsonData:function(e,t){return this._json[e]===i&&(this._json[e]=o.decodeAttribute(this.$().data(e))),t===i?this._json[e]:this._json[e][t]}})}),Mana.define("Mana/Core/PopupBlock",["jquery","Mana/Core/Block","singleton:Mana/Core/Layout"],function(e,t,n){return t.extend("Mana/Core/PopupBlock",{prepare:function(e){var t=this;this._host=e.host,this.$().find(".btn-close").on("click",function(){return t._close()})},_close:function(){return n.hidePopup(),!1}})}),Mana.define("Mana/Core/PageBlock",["jquery","Mana/Core/Block","singleton:Mana/Core/Config"],function(e,t,n){return t.extend("Mana/Core/PageBlock",{_init:function(){this._defaultOverlayFadeout={overlayTime:0,popupTime:0,callback:null},this._overlayFadeout=this._defaultOverlayFadeout,this._super()},_subscribeToHtmlEvents:function(){function t(){o||(o=!0,n.resize(),o=!1)}var n=this,o=!1;return this._super().on("bind",this,function(){e(window).on("load",t),e(window).on("resize",t)}).on("unbind",this,function(){e(window).off("load",t),e(window).off("resize",t)})},_subscribeToBlockEvents:function(){return this._super().on("load",this,function(){this.resize()})},resize:function(){this.trigger("resize",{},!1,!0)},showOverlay:function(t,n){this._overlayFadeout=n||this._defaultOverlayFadeout;var o=e(t?'<div class="m-overlay '+t+'"></div>':'<div class="m-overlay"></div>');return o.appendTo(this.getElement()),o.css({left:0,top:0}).width(e(document).width()).height(e(document).height()),o},hideOverlay:function(){var t=this;return e(".m-overlay").fadeOut(this._overlayFadeout.overlayTime,function(){e(".m-overlay").remove(),t._overlayFadeout.callback&&t._overlayFadeout.callback(),t._overlayFadeout=t._defaultOverlayFadeout}),this},showWait:function(){return e("#m-wait").show(),this},hideWait:function(){return e("#m-wait").hide(),this},getShowDebugMessages:function(){return n.getData("debug")},getShowOverlay:function(){return n.getData("showOverlay")},getShowWait:function(){return n.getData("showWait")}})}),Mana.require(["jquery","singleton:Mana/Core/Layout","singleton:Mana/Core/Ajax"],function(e,t,n){function o(){var e=t.beginGeneratingBlocks();t.endGeneratingBlocks(e)}e(function(){o(),n.startIntercepting()})}),Mana.require(["jquery"],function(e){var t={xsmall:479,small:599,medium:770,large:979,xlarge:1199};Mana.rwdIsMobile=!1,e(function(){window.enquire&&enquire.register("screen and (max-width: "+t.medium+"px)",{match:function(){Mana.rwdIsMobile=!0,e(document).trigger("m-rwd-mobile")},unmatch:function(){Mana.rwdIsMobile=!1,e(document).trigger("m-rwd-wide")}})})}),function(e){var t={},n={};e.__=function(n){if("string"==typeof n){var o=arguments;return o[0]=t[n]?t[n]:n,e.vsprintf(o)}t=e.extend(t,n)},e.options=function(t){return"string"==typeof t?n[t]:(n=e.extend(!0,n,t),void e(document).trigger("m-options-changed"))},e.dynamicUpdate=function(t){t&&e.each(t,function(t,n){e(n.selector).html(n.html)})},e.dynamicReplace=function(t,n,o){t&&e.each(t,function(t,i){var r=e(t);if(r.length){var a=e(r[0]);r.length>1&&r.slice(1).remove(),a.replaceWith(o?e.utf8_decode(i):i)}else if(n)throw"There is no content to replace."})},e.errorUpdate=function(t,n){t||(t="#messages");var o=e(t);o.length?o.html('<ul class="messages"><li class="error-msg"><ul><li>'+n+"</li></ul></li></ul>"):alert(n)},e.arrayRemove=function(e,t,n){var o=e.slice((n||t)+1||e.length);return e.length=0>t?e.length+t:t,e.push.apply(e,o)},e.mViewport=function(){var e="CSS1Compat"==document.compatMode;return{l:window.pageXOffset||(e?document.documentElement.scrollLeft:document.body.scrollLeft),t:window.pageYOffset||(e?document.documentElement.scrollTop:document.body.scrollTop),w:window.innerWidth||(e?document.documentElement.clientWidth:document.body.clientWidth),h:window.innerHeight||(e?document.documentElement.clientHeight:document.body.clientHeight)}},e.mStickTo=function(t,n){var o=e(t).offset(),i=e.mViewport(),r=o.top+t.offsetHeight,a=o.left+(t.offsetWidth-n.outerWidth())/2;r+n.outerHeight()>i.t+i.h&&(r=o.top-n.outerHeight()),a+n.outerWidth()>i.l+i.w&&(a=o.left+t.offsetWidth-n.outerWidth()),n.css({left:a+"px",top:r+"px"})},e.fn.mMarkAttr=function(e,t){return t?this.attr(e,e):this.removeAttr(e),this},e(function(){try{window.mainNav&&window.mainNav("nav",{show_delay:"100",hide_delay:"100"})}catch(e){}}),e.base64_decode=function(t){var n,o,i,r,a,c,s,u,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",d=0,h=0,p="",f=[];if(!t)return t;t+="";do r=l.indexOf(t.charAt(d++)),a=l.indexOf(t.charAt(d++)),c=l.indexOf(t.charAt(d++)),s=l.indexOf(t.charAt(d++)),u=r<<18|a<<12|c<<6|s,n=u>>16&255,o=u>>8&255,i=255&u,f[h++]=64==c?String.fromCharCode(n):64==s?String.fromCharCode(n,o):String.fromCharCode(n,o,i);while(d<t.length);return p=f.join(""),p=e.utf8_decode(p)},e.utf8_decode=function(e){var t=[],n=0,o=0,i=0,r=0,a=0;for(e+="";n<e.length;)i=e.charCodeAt(n),128>i?(t[o++]=String.fromCharCode(i),n++):i>191&&224>i?(r=e.charCodeAt(n+1),t[o++]=String.fromCharCode((31&i)<<6|63&r),n+=2):(r=e.charCodeAt(n+1),a=e.charCodeAt(n+2),t[o++]=String.fromCharCode((15&i)<<12|(63&r)<<6|63&a),n+=3);return t.join("")};var o={overlayTime:500,popupTime:1e3,callback:null};e.mSetPopupFadeoutOptions=function(e){o=e},e.fn.extend({mPopup:function(t,n){var o=e.extend({fadeOut:{overlayTime:0,popupTime:500,callback:null},fadeIn:{overlayTime:0,popupTime:500,callback:null},overlay:{opacity:.2},popup:{contentSelector:"."+t+"-text",containerClass:"m-"+t+"-popup-container",top:100}},n);e(this).live("click",function(){if(e.mPopupClosing())return!1;var t=e(o.popup.contentSelector).html();e.mSetPopupFadeoutOptions(o.fadeOut);var n=e('<div class="m-popup-overlay"> </div>');return n.appendTo(document.body),n.css({left:0,top:0}).width(e(document).width()).height(e(document).height()),n.animate({opacity:o.overlay.opacity},o.fadeIn.overlayTime,function(){e("#m-popup").css({width:"auto",height:"auto"}).html(t).addClass(o.popup.containerClass).css("top",(e(window).height()-e("#m-popup").outerHeight())/2-o.popup.top+e(window).scrollTop()+"px").css("left",(e(window).width()-e("#m-popup").outerWidth())/2+e(window).scrollLeft()+"px");e("#m-popup").height();e("#m-popup").show().height(0),e("#m-popup").hide().css({height:"auto"});var n={left:e("#m-popup").css("left"),top:e("#m-popup").css("top"),width:e("#m-popup").width()+"px",height:e("#m-popup").height()+"px"};e("#m-popup").children().each(function(){e(this).css({width:e("#m-popup").width()+e(this).width()-e(this).outerWidth()+"px",height:e("#m-popup").height()+e(this).height()-e(this).outerHeight()+"px"})}),e("#m-popup").css({top:e(window).height()/2-o.popup.top+e(window).scrollTop()+"px",left:e(window).width()/2+e(window).scrollLeft()+"px",width:"0px",height:"0px"}).show(),e("#m-popup").animate(n,o.fadeIn.popupTime,function(){o.fadeIn.callback&&o.fadeIn.callback()})}),!1})}});var i=!1;e.mPopupClosing=function(e){return void 0!==e&&(i=e),i},e.mClosePopup=function(){return e.mPopupClosing(!0),e(".m-popup-overlay").fadeOut(o.overlayTime,function(){e(".m-popup-overlay").remove(),e("#m-popup").fadeOut(o.popupTime,function(){o.callback&&o.callback(),e.mPopupClosing(!1)})}),!1}}(jQuery);
|
js/src/Mana/Core/Core.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
Mana.define('Mana/Core', ['jquery'], function ($) {
|
2 |
return Mana.Object.extend('Mana/Core', {
|
3 |
-
getClasses: function(element) {
|
4 |
-
return element.className.split(/\s+/);
|
5 |
},
|
6 |
getPrefixedClass: function(element, prefix) {
|
7 |
var result = '';
|
1 |
Mana.define('Mana/Core', ['jquery'], function ($) {
|
2 |
return Mana.Object.extend('Mana/Core', {
|
3 |
+
getClasses: function(element) {
|
4 |
+
return element.className && element.className.split ? element.className.split(/\s+/) : [];
|
5 |
},
|
6 |
getPrefixedClass: function(element, prefix) {
|
7 |
var result = '';
|
js/src/Mana/Core/Layout.js
CHANGED
@@ -198,25 +198,23 @@ Mana.define('Mana/Core/Layout', ['jquery', 'singleton:Mana/Core'], function ($,
|
|
198 |
return options.$popup;
|
199 |
},
|
200 |
_preparePopupOptions: function(options) {
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
$.extend(true, result, options);
|
219 |
-
return result;
|
220 |
},
|
221 |
showPopup: function (options) {
|
222 |
options = this._preparePopupOptions(options);
|
198 |
return options.$popup;
|
199 |
},
|
200 |
_preparePopupOptions: function(options) {
|
201 |
+
if (options.overlay === undefined) { options.overlay = {}; }
|
202 |
+
if (options.overlay.opacity === undefined) { options.overlay.opacity = 0.2; }
|
203 |
+
|
204 |
+
if (options.popup === undefined) { options.popup = {}; }
|
205 |
+
if (options.popup.blockName === undefined) { options.popup.blockName = 'Mana/Core/PopupBlock'; }
|
206 |
+
|
207 |
+
if (options.popupBlock === undefined) { options.popupBlock = {}; }
|
208 |
+
|
209 |
+
if (options.fadein === undefined) { options.fadein = {}; }
|
210 |
+
if (options.fadein.overlayTime === undefined) { options.fadein.overlayTime = 0; }
|
211 |
+
if (options.fadein.popupTime === undefined) { options.fadein.popupTime = 300; }
|
212 |
+
|
213 |
+
if (options.fadeout === undefined) { options.fadeout = {}; }
|
214 |
+
if (options.fadeout.overlayTime === undefined) { options.fadeout.overlayTime = 0; }
|
215 |
+
if (options.fadeout.popupTime === undefined) { options.fadeout.popupTime = 500; }
|
216 |
+
|
217 |
+
return options;
|
|
|
|
|
218 |
},
|
219 |
showPopup: function (options) {
|
220 |
options = this._preparePopupOptions(options);
|
js/src/Mana/Core/Object.js
CHANGED
@@ -3,8 +3,9 @@
|
|
3 |
* MIT Licensed.
|
4 |
*/
|
5 |
// Inspired by base2 and Prototype
|
|
|
6 |
(function (undefined) {
|
7 |
-
var
|
8 |
|
9 |
// The base Class implementation (does nothing)
|
10 |
Mana.Object = function () {
|
@@ -20,9 +21,9 @@
|
|
20 |
|
21 |
// Instantiate a base class (but only create the instance,
|
22 |
// don't run the init constructor)
|
23 |
-
|
24 |
var prototype = new this();
|
25 |
-
|
26 |
|
27 |
// Copy the properties over onto the new prototype
|
28 |
for (var name in prop) {
|
@@ -54,11 +55,11 @@
|
|
54 |
var Object;
|
55 |
if (className === undefined) {
|
56 |
// All construction is actually done in the init method
|
57 |
-
Object = function Object() { if (!
|
58 |
}
|
59 |
else {
|
60 |
// give constructor a meaningful name for easier debugging
|
61 |
-
eval("Object = function " + className.replace(/\//g, '_') + "() { if (!
|
62 |
}
|
63 |
|
64 |
// Populate our constructed prototype object
|
3 |
* MIT Licensed.
|
4 |
*/
|
5 |
// Inspired by base2 and Prototype
|
6 |
+
var m_object_initializing = false;
|
7 |
(function (undefined) {
|
8 |
+
var fnTest = /xyz/.test(function () { xyz;}) ? /\b_super\b/ : /.*/;
|
9 |
|
10 |
// The base Class implementation (does nothing)
|
11 |
Mana.Object = function () {
|
21 |
|
22 |
// Instantiate a base class (but only create the instance,
|
23 |
// don't run the init constructor)
|
24 |
+
m_object_initializing = true;
|
25 |
var prototype = new this();
|
26 |
+
m_object_initializing = false;
|
27 |
|
28 |
// Copy the properties over onto the new prototype
|
29 |
for (var name in prop) {
|
55 |
var Object;
|
56 |
if (className === undefined) {
|
57 |
// All construction is actually done in the init method
|
58 |
+
Object = function Object() { if (!m_object_initializing && this._init) this._init.apply(this, arguments); };
|
59 |
}
|
60 |
else {
|
61 |
// give constructor a meaningful name for easier debugging
|
62 |
+
eval("Object = function " + className.replace(/\//g, '_') + "() { if (!m_object_initializing && this._init) this._init.apply(this, arguments); };");
|
63 |
}
|
64 |
|
65 |
// Populate our constructed prototype object
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Mana_Filters</name>
|
4 |
-
<version>14.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
@@ -10,9 +10,9 @@
|
|
10 |
<description>Add multiple selection features for attribute and price filters in Magento layered navigation</description>
|
11 |
<notes>Adds multiple selection features for attribute and price filters in Magento layered navigation.</notes>
|
12 |
<authors><author><name>Mana Team</name><user>auto-converted</user><email>team@manadev.com</email></author></authors>
|
13 |
-
<date>2014-
|
14 |
-
<time>
|
15 |
-
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="css"><file name="mana_core.css" hash="cdc7b84e7e3e73b182cf7ed02bbc76a8"/></dir><dir name="images"><dir name="mana_core"><file name="m-wait.gif" hash="1ae32bc8232ff2527c627e5b38eb319a"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="jquery"><file name="ui.css" hash="4ab351feeb25bfbcb84f61e722545525"/><dir name="images"><file name="animated-overlay.gif" hash="2b912f7c0653008ca28ebacda49025e7"/><file name="ui-bg_diagonals-thick_18_b81900_40x40.png" hash="95f9cceeb9d742dd3e917ec16ed754f8"/><file name="ui-bg_diagonals-thick_20_666666_40x40.png" hash="f040b255ca13e693da34ab33c7d6b554"/><file name="ui-bg_flat_0_aaaaaa_40x100.png" hash="2a44fbdb7360c60122bcf6dcef0387d8"/><file name="ui-bg_flat_10_000000_40x100.png" hash="c18cd01623c7fed23c80d53e2f5e7c78"/><file name="ui-bg_flat_75_ffffff_40x100.png" hash="8692e6efddf882acbff144c38ea7dfdf"/><file name="ui-bg_glass_55_fbf9ee_1x400.png" hash="f8f4558e0b92ff2cd6136781533902ec"/><file name="ui-bg_glass_65_ffffff_1x400.png" hash="e5a8f32e28fd5c27bf0fed33c8a8b9b5"/><file name="ui-bg_glass_75_dadada_1x400.png" hash="c12c6510dad3ebfa64c8a30e959a2469"/><file name="ui-bg_glass_75_e6e6e6_1x400.png" hash="f4254356c2a8c9a383205ef2c4de22c4"/><file name="ui-bg_glass_95_fef1ec_1x400.png" hash="5a3be2d8fff8324d59aec3df7b0a0c83"/><file name="ui-bg_glass_100_f6f6f6_1x400.png" hash="5f1847175ba18c41322cb9cb0581e0fb"/><file name="ui-bg_glass_100_fdf5ce_1x400.png" hash="d386adb3d23db4588a3271526a530f51"/><file name="ui-bg_gloss-wave_35_f6a828_500x100.png" hash="34c616d227cbdaefd8a81534d6ca7813"/><file name="ui-bg_highlight-soft_75_cccccc_1x100.png" hash="72c593d16e998952cd8d798fee33c6f3"/><file name="ui-bg_highlight-soft_75_ffe45c_1x100.png" hash="b806658954cb4d16ade8977af737f486"/><file name="ui-bg_highlight-soft_100_eeeeee_1x100.png" hash="384c3f17709ba0f809b023b6e7b10b84"/><file name="ui-icons_2e83ff_256x240.png" hash="25162bf857a8eb83ea932a58436e1049"/><file name="ui-icons_228ef1_256x240.png" hash="79f41c0765e9ec18562b20b0801d748b"/><file name="ui-icons_222222_256x240.png" hash="9129e086dc488d8bcaf808510bc646ba"/><file name="ui-icons_454545_256x240.png" hash="771099482bdc1571ece41073b1752596"/><file name="ui-icons_888888_256x240.png" hash="faf6f5dc44e713178784c1fb053990aa"/><file name="ui-icons_cd0a0a_256x240.png" hash="5d8808d43cefca6f6781a5316d176632"/><file name="ui-icons_ef8c08_256x240.png" hash="380c866362e1e42896f973ea92f67013"/><file name="ui-icons_ffd27a_256x240.png" hash="2a20f483ddcbc84e6469ce5bbd280699"/><file name="ui-icons_ffffff_256x240.png" hash="342bc03f6264c75d3f1d7f99e34295b9"/></dir></dir><file name="mana_core.css" hash="4b45e64cd88e3fcb70ccb3f1c4f39917"/><file name="mana_filters.css" hash="1d9769421d9cd76993bb033107363821"/></dir><dir name="images"><dir name="mana_core"><file name="m-wait.gif" hash="1ae32bc8232ff2527c627e5b38eb319a"/></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="css"><file name="mana_core.css" hash="c8533f81b029f25db3e3396cd75e779b"/><file name="mana_filters.css" hash="8b5cb1b1c480a051bed60ed64af2d790"/></dir><dir name="images"><dir name="mana_core"><file name="m-wait.gif" hash="79d9787b05ea3e0e5e1e7b23a357bca0"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="mana_core.xml" hash="cc0feb9124aa77e1f323b61cf504c204"/></dir><dir name="template"><dir name="mana"><dir name="core"><file name="js.phtml" hash="53a4035fe21537c0cd7fde286ed4a611"/><file name="popup.phtml" hash="e2823a07a8eefcad23f1ea416e95f84c"/><file name="require.phtml" hash="b85203a9ecf3808b5cdde85fcb03ec6e"/><file name="wait.phtml" hash="7c0ffe76e7b3aca2163d9ecc5145e81b"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="mana_core.xml" hash="67573b93ead87e30c31eedf5f39af2a2"/><file name="mana_filters.xml" hash="51005a99382d5450fbc6ea239bbbc7a2"/></dir><dir name="template"><dir name="mana"><dir name="core"><file name="js.phtml" hash="1aa41c842f1984142a864f667f99d33b"/><file name="popup.phtml" hash="e2823a07a8eefcad23f1ea416e95f84c"/><file name="require.phtml" hash="b85203a9ecf3808b5cdde85fcb03ec6e"/><file name="wait.phtml" hash="2fdb82f90c1aa8705fa76f500b967fef"/></dir><dir name="filters"><file name="cms.phtml" hash="b4c954289a496a8e79bddac6f89abbbe"/><file name="state.phtml" hash="d39975d6dc1fba2cec9679b023dfb667"/><dir name="items"><file name="list.phtml" hash="f5e0ac3cea381560e83d536433e303c7"/><file name="list_popup.phtml" hash="ff8d08726080a7eee21a85282d5294a4"/><file name="standard.phtml" hash="5c125504a6674f6eac8ea6ebd2c7ed1e"/><file name="standard_popup.phtml" hash="5318ff7766dce895a033ca0cea8a12d6"/></dir></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="layout"><file name="mana_filters.xml" hash="5aa157d9c8f9cdb68c7d0c03c1e8a0f3"/></dir><dir name="template"><dir name="mana"><dir name="filters"><dir name="items"><file name="list.phtml" hash="1adf0a61f5a3a216939ae03daaae7080"/><file name="standard.phtml" hash="983c40cf9136b3b879d2d1a41bdccbf6"/></dir></dir></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="Mana_Core.csv" hash="264b6e6e44c593af6f79b93875091672"/><file name="Mana_Db.csv" hash="754c3b5f318886cb1eae04af5e841ada"/><file name="Mana_Filters.csv" hash="7a4c41f5f3d3a4f4389db3ba7cac53e4"/></dir></target><target name="mageweb"><dir name="js"><dir name="jquery"><file name="advListRotator.js" hash="6629920522d9fd8364469abe1ae705c9"/><file name="fileuploader.js" hash="164c23d4b94b5424c8e1c00057d45ce4"/><file name="froogaloop.js" hash="aefc485211db6c55726e13759063d312"/><file name="froogaloop.min.js" hash="d39fd09571c0cae46b8c35d75cffeb77"/><file name="history.adapter.jquery.js" hash="8e34662937b6021c290077b353800702"/><file name="history.js" hash="89898d2f67eecb9f819588dcad2c8717"/><file name="jquery-ui.js" hash="6ac9f97eaab22d1a1f91572a20ef516b"/><file name="jquery-ui.min.js" hash="c1e83e4d225186ec057ea9eb18742dea"/><file name="jquery.easing.js" hash="cc674e02a06874bb5888ede6e0b1c977"/><file name="jquery.flexslider-min.js" hash="c236f33e84d73c1a873ec63cc25d7bd1"/><file name="jquery.js" hash="a581ffd88c93e2125e42f7ecb363739f"/><file name="jquery.min.js" hash="f8a9d24fe8df43991da1c0dd0dd9d1af"/><file name="jquery.noconflict.js" hash="0da09155d7323809b48494da0846bf34"/><file name="jquery.printf.js" hash="71e34de7c90b12d738ca6b912fef04da"/><file name="require.js" hash="a7afdceabeb04107653fdc7d274a00d1"/><file name="require.min.js" hash="215507e3b7eb905c61e436921c5736bd"/><dir name="validate"><file name="jquery.validate.js" hash="0bb7a2f5eea19acc7bb65f6c82ec15fb"/><dir name="localization"><file name="messages_ar.js" hash="a42cc9c91da7c4f6d2f48492dda14273"/><file name="messages_bg.js" hash="bc4ebf054b6a399abf518ef28bbad839"/><file name="messages_cn.js" hash="886e45b3ffd60a683ecc8e6ea644e519"/><file name="messages_cs.js" hash="6b794f90ab955c17fe02b6553876050c"/><file name="messages_da.js" hash="cc862df2998db2cc18c8276aa7bfe0f0"/><file name="messages_de.js" hash="70a9eb9abfc4365f36718b06b38f6725"/><file name="messages_el.js" hash="bd18b65d9f876e12997281e09d2a8bf3"/><file name="messages_es.js" hash="2f3a18c6d0377bc4658839a070853ed7"/><file name="messages_fa.js" hash="e32dd026bd9d2f626b7371bf025eb5c1"/><file name="messages_fi.js" hash="d8810a4f5b025594129f32957e521210"/><file name="messages_fr.js" hash="3081f76c1368d03d2e1a84a7ed9748e2"/><file name="messages_he.js" hash="028af705c2c07e946ce6de5e63223611"/><file name="messages_hu.js" hash="7612f6525fd5922f970d40b5929c88bb"/><file name="messages_it.js" hash="824964b0dcf1ea4904d18a125ff10b09"/><file name="messages_kk.js" hash="28c0dac0417ec5e0ec9271bfd11b7129"/><file name="messages_lt.js" hash="ef0a5dea6d4bfe7965ff9c719238f2b0"/><file name="messages_lv.js" hash="6d1d834333de4f018259481658d79e85"/><file name="messages_nl.js" hash="9f8aad8e3d769b0a636a02c672044232"/><file name="messages_no.js" hash="1a00dddbef393a2b8bc2e78934243566"/><file name="messages_pl.js" hash="28cea41b05ff80cc721b6896a2f658ba"/><file name="messages_ptbr.js" hash="194f1a4cbe9483dea4363400e046b923"/><file name="messages_ptpt.js" hash="3a9a7730cc461866e37f2cd8b0507f3a"/><file name="messages_ro.js" hash="eaf4c868e8fde6f5dee2f0a3ee0cbe12"/><file name="messages_ru.js" hash="e3d6e8809230c758b95438de4c783474"/><file name="messages_se.js" hash="b80035c9f1fdfba7c7f523838ec6510b"/><file name="messages_sk.js" hash="9e1b0a7378aff7add6100dc3c3e8d80c"/><file name="messages_tr.js" hash="7ecf31a65c2eefd8c7da62f65ccf33a7"/><file name="messages_tw.js" hash="b660609f8ddf6b17d71b72aa43512f1f"/><file name="messages_ua.js" hash="80e565078f016c8ea1cffc6c8cdd5a93"/><file name="methods_de.js" hash="a9d8792f8e46298165daaf4e9a5d98ad"/><file name="methods_nl.js" hash="8505eec534134eac849adca1cf8f2f9d"/><file name="methods_pt.js" hash="09b350c9c069b5a82d5811339ac15ab6"/></dir></dir></dir><dir name="mana"><file name="core.js" hash="cdfda671a3361d34c08e544e0357489e"/><file name="core.js.map" hash="11d54f3b87ba371680f3a64575d02e0d"/><file name="core.min.js" hash="0c1905f1da4b3dddac590a3d5a307d34"/></dir><dir name="src"><dir name="Mana"><dir name="Core"><file name="Ajax.js" hash="a4adb98a7e0e46efb596ef46d12f591c"/><file name="Base64.js" hash="32c5eca8e7ae6860935f6026c810bb7f"/><file name="Block.js" hash="aa31f18ce505d2c43ddfac845b3516d6"/><file name="Config.js" hash="2592b48b066c51fad272c471c14e1ca1"/><file name="Core.js" hash="e251a9d5950eb1ca8303879c5d6c84c2"/><file name="header.js" hash="53b9f4625f72a5e2d93edbc0129c1b82"/><file name="init.js" hash="e05d11b113604d27530c83bb9ff557cb"/><file name="Json.js" hash="226ab2f431754f2338aec47ecaabf720"/><file name="Layout.js" hash="e0e953dc2d8e2421830e642b02fbc7fd"/><file name="Mana.js" hash="fa1102a7f579b5dda5db1f2dfa848672"/><file name="Object.js" hash="8c84b51fafe42654f920a776e5250309"/><file name="obsolete.js" hash="6c05b74822091b64f27019f433afb5ec"/><file name="PageBlock.js" hash="4798d5992ded92dc472bde54486327cc"/><file name="PopupBlock.js" hash="22bdd511747703b95d267a9d649e3d8e"/><file name="rwd.js" hash="3bbb8b6175369e03560444faa9061264"/><file name="StringTemplate.js" hash="7cd14ce2f038bf9d1f88c516f0ec11a3"/><file name="UrlTemplate.js" hash="340bfd288bfdbe53e562fac6f81ee1c7"/><file name="Utf8.js" hash="a7381e9d7e3b54f8169d58ad660c8f13"/></dir></dir></dir></dir></target><target name="magelocal"><dir name="Mana"><dir name="Core"><file name="Profiler.php" hash="750f9a6490534be89ef5a55ddf62db21"/><file name="Profiler2.php" hash="65d3000031d885779b195558cecc159a"/><dir name="Block"><file name="Js.php" hash="23b65253ab9b20b0c80f5cb30b25e63f"/><file name="List.php" hash="8a54149b3d24b8f1447ee77dc7c691ed"/><file name="Require.php" hash="39764e20e72f331223f1ad85a21c15a3"/><file name="Singleton.php" hash="74e1cb457680fb2f999af95fa3af26c2"/></dir><dir name="etc"><file name="adminhtml.xml" hash="6245429c5bc31a6b9667afe2e714cdb9"/><file name="config.xml" hash="6857907ac085b0ae0a1fad1bc8e23bb1"/><file name="system.xml" hash="107f9fc56e6b83ceb92fa20bfcc93705"/></dir><dir name="Exception"><file name="Validation.php" hash="fea7418326430c7acd04c34d8a4b3f07"/></dir><dir name="Helper"><file name="Data.php" hash="415f11ed029a3b252d04cb8fde071ce0"/><file name="Db.php" hash="8f63c21d8e5d1feda88727d222a233a3"/><file name="Debug.php" hash="6fd3859ac2e817d36aadd8ba6c47405a"/><file name="Files.php" hash="d0f013090c6266c8e39d7b095985ba27"/><file name="Image.php" hash="75ade04d12f104d05314f2d9343ec539"/><file name="Js.php" hash="a9866a72f35c584a0c4684d4b2a371dd"/><file name="Json.php" hash="39f860c7189913faad31b234903ea6d6"/><file name="Layer.php" hash="30a33c43ac0b4fdcd8cb4e20968ea664"/><file name="Layout.php" hash="32d6016c0ddad2f414791dee4712c13e"/><file name="Lock.php" hash="7567ccb21cef8c90dac0e9bbac321801"/><file name="Logger.php" hash="6fc13c5afbd795a4d0ecfe9c576baaac"/><file name="Mbstring.php" hash="1702040a0138b88445a36bdd23d44566"/><file name="PageType.php" hash="78c1ed2f6353d29f2f8ed580014176a2"/><file name="Router.php" hash="9713a66ad89d22b0d0a5c6d5a5937ae6"/><file name="Seo.php" hash="b8aafbf9d4ec1d796e83c9ff2f7fac0b"/><file name="StringTemplate.php" hash="a7720417ae715c37eb155853e3e84f90"/><file name="UrlTemplate.php" hash="2e04649154b3c1a80e40df17cc1846a6"/><file name="Utils.php" hash="611650a169c7747bbc8177dcd31ee2a4"/><dir name="Db"><file name="Aggregate.php" hash="ee2b6086c62e6870d2139b3e8f619bdc"/></dir><dir name="PageType"><file name="Category.php" hash="22851b663096414aa80a6504ff6d1196"/><file name="CmsPage.php" hash="4e0e65b61638212f4a7780d6e0b7f4b8"/><file name="HomePage.php" hash="64891fa7d23b59fc14ad38d2e9fc2f4b"/><file name="Search.php" hash="3b0e7e11924e950f0d9a2d30e7a83118"/></dir></dir><dir name="Model"><file name="Callback.php" hash="2e8955cf399ea302e8b19c6ccb999cc5"/><file name="Closure.php" hash="f1456fc3e6aa04906339198be3a0a544"/><file name="Eav.php" hash="ed4adbb339497fefe1db29a59c2ed110"/><file name="Indexer.php" hash="3fcaafc332c5fe3dca0cdef383228603"/><file name="Object.php" hash="dcb759ec94621a28c4e531715813513c"/><file name="Observer.php" hash="ca5d42b0d4bef6a312575f07df964d2d"/><dir name="Attribute"><file name="Scope.php" hash="7277aac766688c59886cff561b8c44a3"/></dir><dir name="Condition"><file name="Abstract.php" hash="2b4cb990a9c690d7a1f5033e5a97cc3c"/><file name="Combine.php" hash="ee16e0a17610f5b08bc04b2f2967820b"/></dir><dir name="Config"><file name="Default.php" hash="b69bd384a59f38f214f565d21af1ca3a"/></dir><dir name="Html"><file name="Filter.php" hash="ca77f8b76bd39d00001d6dfb12ff6929"/><file name="Parser.php" hash="5f4c098e69b582025f909ddeeab6e630"/><file name="Reader.php" hash="41a66c26ce51f3803eba50cea5b95d96"/><file name="State.php" hash="5952deebd020273729594ace8a2cae9b"/><file name="Token.php" hash="5c7a4ef3150a35b8a6bf9e296e53e739"/></dir><dir name="Source"><file name="Abstract.php" hash="bb05e3ce9f5e01ef2843a5a558a86fd8"/><file name="Config.php" hash="59b1d6927157e4b34bde55794a7a86be"/><file name="Country.php" hash="cd5c9dd00c4456db2e6b4f6316303a8c"/><file name="Design.php" hash="8c033c3585d0bf0bc31a95cbbbf7d4c4"/><file name="Js.php" hash="71852d9a46c5fca27d4b0403e9ee19d9"/><file name="Layout.php" hash="4eb47f747d5a91983fb62e802ec51793"/><file name="Status.php" hash="d4fdf128e0c4cf088f654baf426c5f0f"/><file name="Yesno.php" hash="3082e75e81e111aed0ac9f1cc17e579e"/><file name="YesNoDefault.php" hash="4a13c8de30d7f27b71dac16bbf1e18ae"/></dir></dir><dir name="Resource"><file name="Eav.php" hash="2ada400977d3a8b0883a03998e1a4e47"/><file name="Indexer.php" hash="6ced1a9ad6696345071a189c8c3e657d"/><dir name="Attribute"><file name="Collection.php" hash="7f01d6480b5110a431a5b50571a9ec62"/></dir><dir name="Eav"><file name="Collection.php" hash="5153a97a4021aebced2b0a538d10b4e7"/><file name="Setup.php" hash="13360360cbfada91713159a38c82e6b2"/><dir name="Collection"><file name="Derived.php" hash="03a87d87a781c8256b6414fb132ed30e"/></dir></dir><dir name="Virtual"><file name="Collection.php" hash="ac2d11980e9dc015ed0cfbe12fbf3fc7"/></dir></dir><dir name="Rewrite"><dir name="PageCache"><file name="Processor.php" hash="d5175e3a150d92ec32016654c8a7988a"/></dir></dir><dir name="sql"><dir name="mana_core_setup"><file name="mysql4-install-1.1.1.php" hash="a169406e2cc37282d001e9415eda219a"/></dir></dir></dir><dir name="Db"><dir name="etc"><file name="config.xml" hash="456710718979cc7987f6aed01a917b1f"/><file name="m_db.xml" hash="7fb95c96ed440dfc5efb8d3ed598dd20"/></dir><dir name="Exception"><file name="Formula.php" hash="f791f3d718241b9b004ae1719dd8fca8"/><file name="Validation.php" hash="7238432db3b3a24615dc186e60afc546"/></dir><dir name="Helper"><file name="Config.php" hash="947e93e74329de11cffe102dad3b5002"/><file name="Data.php" hash="a35a41643d9c5e875d0e8e2dbfa8d4d1"/><file name="Formula.php" hash="c5761ee937e3490d1508a3ed0cfac805"/><dir name="Formula"><file name="Abstract.php" hash="88283737316ebd8cafddce5e42ac2bd8"/><file name="DependencyFinder.php" hash="480e4097ef5e9b21c527f5c61dbd3987"/><file name="Entity.php" hash="e5f500a86b18b37dd43fc8ab151fd204"/><file name="Evaluator.php" hash="8dc9cf1b9ddf8cefd053909ba841d985"/><file name="Function.php" hash="db3fb341c32f9c285d37df84a36fb82c"/><file name="Parser.php" hash="7828e59f31c03e31da92a889b4e8b52f"/><file name="Processor.php" hash="4bf7bfa8a2cdcfbecaede6ab3aa67f04"/><file name="Selector.php" hash="91bee56da8ee75aa06edacb19cb925b9"/><dir name="Entity"><file name="Aggregate.php" hash="fab53a31e480228474de7015100d6498"/><file name="Foreign.php" hash="6d4159dcb6ff3f7e5a958b6e891057c1"/><file name="Frontend.php" hash="4bef999e0ca552c3fa8b518c36b6e239"/><file name="Normal.php" hash="6a91af1bd600ca9b8be40ee5be5c4fa5"/><dir name="Aggregate"><file name="Field.php" hash="682fc6e82caf400025ba22f6b1c40156"/></dir></dir><dir name="Function"><file name="Count.php" hash="62d463301d3eac82f9f8c2952cc23ed4"/><file name="Glue.php" hash="00abff0970bc94ef46ebdb91d773ab02"/><file name="If.php" hash="215287632f25bd541fe29051cc11fba4"/><file name="Lower.php" hash="7e91d1e618e66d262b0967f0a053adfd"/><file name="Seo.php" hash="70ce3da277c48fc84363c58baba3dd37"/><file name="SkinUrl.php" hash="059ac4b6d44bf7714886c023c30a1490"/></dir><dir name="Processor"><file name="Eav.php" hash="722b0888661d38b399f74eaf9ec4247e"/><file name="Entity.php" hash="b3d6e11b78cf782c9eae78ce1eefd155"/><file name="System.php" hash="c7a3c7bf6194b041dd17dc2b3a605f6f"/><file name="Table.php" hash="771155e0a194fcf7a821e51172100138"/></dir></dir></dir><dir name="Model"><file name="Entity.php" hash="88e63ed2ebdeb129757d7acbd6f4d805"/><file name="Indexer.php" hash="8596a12b7ee26e686937cef3d2985685"/><file name="Object.php" hash="91dac5c80f75dcb81c1aadaa8984b466"/><file name="Observer.php" hash="d52dc7c597890e130a6d0ee92846fa89"/><file name="Setup.php" hash="637ff1d605b453dacf2565587c78a8d9"/><file name="Validation.php" hash="f2dd026c3d73f3fd345e1b7abde51e7d"/><dir name="Entity"><file name="Indexer.php" hash="c807d323f91e2c38344332ae8e9654b3"/></dir><dir name="Formula"><file name="Alias.php" hash="d14575f9f0477021a2e53ff1fd9c5501"/><file name="Closure.php" hash="d773c0f5ed1f593acb5458bfb3187a7b"/><file name="Context.php" hash="5fd16cf22bc1bac09856606ee0d0a141"/><file name="Entity.php" hash="c0eb7a9362996c104bde5cd2c469db10"/><file name="Expr.php" hash="b739ab589ea0e3378e32c12a69ba78cc"/><file name="Field.php" hash="d00b8c25724e34f6cad819edf1497ede"/><file name="Node.php" hash="e28d2d8d0af762abbe3b9677937103fe"/><dir name="Alias"><file name="Array.php" hash="6719df8e4123c881980f5a2b6ef93a8f"/><file name="Empty.php" hash="93e05898f60e111f12b5febb119305dd"/><file name="Single.php" hash="8603f08d6415110c8c0f04a805055fab"/></dir><dir name="Closure"><file name="AggregateFieldJoin.php" hash="f1d19cb54eaf620d038508b7ad31fc60"/><file name="ForeignJoin.php" hash="b07167a5ef2a7caf479266269f232edf"/><file name="ForeignJoinEnd.php" hash="6b9000298615ce69eadc04e707fbe17f"/><file name="Join.php" hash="b8d368c1042754f18d027027acccb27a"/></dir><dir name="Node"><file name="Add.php" hash="22f6ec02b3226ce2c9313f713d1b03fb"/><file name="Field.php" hash="93c6bf27b93091ebe7672500e7e94e48"/><file name="FormulaExpr.php" hash="b6a36a818533775fa778c6dc66ec40f7"/><file name="FunctionCall.php" hash="bac31778c670aca74c9db49dcb40007a"/><file name="Identifier.php" hash="a38aa478e6485ef9ea95fb0758c2ea49"/><file name="Multiply.php" hash="292881a092500642e4d98aeb33aa2f75"/><file name="NullValue.php" hash="2ddeb334ac3e12cdec1b413904e02210"/><file name="NumberConstant.php" hash="fd2524859dc3ed2a3fb46468b8352f72"/><file name="StringConstant.php" hash="04cdb7baa502e001dfb35af748efde30"/></dir></dir><dir name="Replication"><file name="Target.php" hash="b918ef992096a72080a743352385b64b"/></dir><dir name="Setup"><file name="Abstract.php" hash="d8e84857de7b1cdb6ba6c03e5f4aa867"/><file name="V13012122.php" hash="a2ca004389d5145d819ff791f965ef9e"/></dir><dir name="Virtual"><file name="Result.php" hash="33f35c946b2285e62a5a1c08c1bb3ec8"/></dir></dir><dir name="Resource"><file name="Entity.php" hash="c5f9ee0f1475f2d4a2075b5cead6199d"/><file name="Formula.php" hash="53b21b55b710d119fc91bbcf841caea2"/><file name="Object.php" hash="9106bec7565a3bedaf2de81b18569157"/><file name="Replicate.php" hash="e4c75872344dde3ed8a04744110faace"/><dir name="Edit"><file name="Session.php" hash="07474c4d34f6ec1cd91ade3e871ec096"/></dir><dir name="Entity"><file name="Collection.php" hash="291cbdeef792ab848175c0ae9bb65fad"/><file name="Indexer.php" hash="9e102278a3cf4e69ead0a34b12d3c91c"/><file name="JsonCollection.php" hash="bf1f5a893a33affb7c1b182f803d600a"/></dir><dir name="Object"><file name="Collection.php" hash="6f7f393abef136226ed22eb8f45d2fdd"/></dir></dir><dir name="sql"><dir name="mana_db_setup"><file name="mysql4-install-11.09.28.09.php" hash="0d8c0873cbbabb1db406e1c0b709b4de"/><file name="mysql4-upgrade-11.09.28.09-11.09.28.10.php" hash="04ccee17b3b04906e8fed2b1ac9214a3"/><file name="mysql4-upgrade-11.10.08.23-11.10.20.22.php" hash="847b24ea006e99af80cc8980ff7ff021"/></dir></dir></dir><dir name="Filters"><dir name="Block"><file name="Filter.php" hash="af52c37fb8b8d83cb2cb0f318818aaee"/><file name="Layer.php" hash="0f8fac9a9277fb6e204a8ed32b164902"/><file name="Search.php" hash="e7c5d74b36406fb181ba149588070f95"/><file name="State.php" hash="c1b960278b23822b9a645f8b29e9e79e"/><file name="View.php" hash="5257cd7eefe0b40f6b479c098dcda36e"/></dir><dir name="etc"><file name="config.xml" hash="cafb094e9188b44b5a289f23e9c2a03c"/></dir><dir name="Helper"><file name="Data.php" hash="521f102ddc19b09476ebe43afad10cd4"/><file name="Extended.php" hash="5b065cc2be0a8b96dc4db32bc8279304"/><file name="Item.php" hash="7f482a48c1e661076ccea3c21f59677c"/></dir><dir name="Interface"><file name="Filter.php" hash="f1aaf305fa9d01c666d5d0801816ced0"/></dir><dir name="Model"><file name="Filter.php" hash="cd3bc9276ff4566802e2d43280394e6f"/><file name="Filter2.php" hash="81ef439832e656d8aad2c6a8d3c2cf47"/><file name="Item.php" hash="23f74f06de263e462f8ea2f096696f8e"/><file name="Observer.php" hash="e835045553a7e4d8d821eed81e6492a1"/><file name="Operation.php" hash="54d01ace78c5b6ba3facf1a2f3255618"/><file name="Query.php" hash="d97c90a1ef471babf2d7375b4aa3eb24"/><file name="Repository.php" hash="e0cf842a98aa5ae27fc107c18f190fab"/><file name="Sort.php" hash="95804fcd46ca143587747dc7dfe9845e"/><dir name="Config"><dir name="Display"><file name="Default.php" hash="e16716300e514ef6ee7fa4c1c5fd3331"/></dir></dir><dir name="Filter"><file name="Attribute.php" hash="fed1e49349cb00230e0db624591b7043"/><file name="Category.php" hash="064e14439f5999f53f04b360a6a25a5b"/><file name="Common.php" hash="522b1695cf4f4f545c7174b90a8b06ba"/><file name="Decimal.php" hash="345c021580768436dab88b304c20229e"/><file name="Default.php" hash="960d7b6f0fd9c32cf9726e11a62cbb1e"/><file name="Price.php" hash="d90bddf4d7ee8ec591e3e71159ad259c"/></dir><dir name="Filter2"><file name="Store.php" hash="d82d20f485c4417bc51a73bcf01cd374"/><file name="Value.php" hash="d3214a80a4c3fe1eb492ce860de8d60b"/><dir name="Value"><file name="Store.php" hash="695bf8aad7ff431fe5a511098cf23f48"/></dir></dir><dir name="Solr"><file name="Attribute.php" hash="c60628b8ec074147918ea7a96e85ecd5"/><file name="Category.php" hash="281864a88dc542de2dd8bd15812a64d4"/><file name="Decimal.php" hash="4c732a1189b7cd5c96ece2f2040c4704"/><file name="Price.php" hash="97f7ffaff98551516113a7e0151c743b"/><dir name="Adapter"><file name="HttpStream.php" hash="e22a03fe69b70da21546b54558a87763"/><file name="PhpExtension.php" hash="f3a9202c874765eda2e978c15dbaaf3c"/></dir><dir name="And"><file name="Attribute.php" hash="3df0798bc675483dd4b327299fc00b33"/></dir><dir name="Reverse"><file name="Attribute.php" hash="c23dc7f104559c3df2f3394438735537"/><file name="Decimal.php" hash="89810a0c5fe707af354d7be73b8dfe36"/><file name="Price.php" hash="bf207efb2854f99a15775f38f019f5b4"/></dir></dir><dir name="Source"><file name="Display.php" hash="509e389d33e3175e304ab67ffdb79325"/><file name="Filterable.php" hash="618680f75072220ad711dec6e220d43b"/><dir name="Display"><file name="All.php" hash="1875630a7565c9655c8c8724dad45bba"/><file name="Attribute.php" hash="d2bd347e70e3924490dff6e57274ff40"/><file name="Category.php" hash="437b3f678edd292a0110529aadfb1530"/><file name="Decimal.php" hash="b432f32e93fb1991f8882bfe25f0514e"/><file name="Price.php" hash="c6a017240beaf76666e9f702a9fcd48d"/></dir></dir></dir><dir name="Resource"><file name="Filter.php" hash="e74d789c7751fe0a126b38ab0bd3ac40"/><file name="Filter2.php" hash="ed398f976465a24464e92566a9b41f6a"/><file name="Item.php" hash="c90c3eb3649317e1746065ee3e15f44a"/><file name="ItemAdditionalInfo.php" hash="af989c2a78aadbe51831d216b6c54643"/><file name="Setup.php" hash="83b12b7939ac1c7696360f77304d9d84"/><dir name="EnterpriseSearch"><file name="Engine.php" hash="51d77208587d1c55c8d508a3024bd269"/></dir><dir name="Filter"><file name="Attribute.php" hash="db4bec9fe85abd13193a491ef533da27"/><file name="Collection.php" hash="6831f054791977048641d43c288ff53c"/><file name="Decimal.php" hash="472f527ca55851d319d28ad4119e38ac"/><file name="Price.php" hash="b165981a092366d05b3537c4684e6087"/><dir name="And"><file name="Attribute.php" hash="cdc41ca223083360b35bd5f455733cd8"/></dir><dir name="Attribute"><file name="Collection.php" hash="c854270f63ca3bfd44cfd6ab27888676"/></dir><dir name="Collection"><file name="Derived.php" hash="5240ac10d2989122c49665919a9555ff"/></dir><dir name="Reverse"><file name="Attribute.php" hash="0be2e3f5eef03862e13b37deb1f7f7a3"/><file name="Decimal.php" hash="9d9974cf64c5178812bcc6fca83bc9ff"/><file name="Price.php" hash="3be48facf6596b618fc0a621f625d460"/></dir></dir><dir name="Filter2"><file name="Collection.php" hash="822b71198d05e41e90d096cb7cc47fa5"/><file name="Store.php" hash="4c430d687e9ae90ec36a9faa1c283aa1"/><file name="Value.php" hash="ea33d71787937002c2c794df69b982a8"/><dir name="Store"><file name="Collection.php" hash="7998c9394089d23d21db58a4023cc180"/></dir><dir name="Value"><file name="Collection.php" hash="3273b517dd65a46034cb3ef8adb3c610"/><file name="Store.php" hash="48d9631e8d34b15a72fc22e6bb3a98c2"/><dir name="Store"><file name="Collection.php" hash="073931492acfc99a3b5cd1ecf7113982"/></dir></dir></dir><dir name="Indexer"><file name="Source.php" hash="251589738ea54dcf6e986921f3810931"/></dir><dir name="Solr"><file name="Attribute.php" hash="f2b30e509881147f2f73ede11ac2fbed"/><file name="Collection.php" hash="9b35d28e731fc47f420447251a5e976b"/><file name="Engine.php" hash="e3c3306e436e6943aa10f9b1a77404be"/><dir name="And"><file name="Attribute.php" hash="a7dd5fbb9388a4b73efeeaa7e91a9b7b"/></dir><dir name="Reverse"><file name="Attribute.php" hash="1084278692e5ffe1d16640b530e33662"/></dir></dir></dir><dir name="sql"><dir name="mana_filters_setup"><file name="mysql4-install-1.1.1.php" hash="22f7381b5ea9261a2e8a00fda28f28ef"/><file name="mysql4-upgrade-1.1.1-1.9.1.php" hash="04c761bab20de6e0fed68e141fb68112"/><file name="mysql4-upgrade-11.09.24.09-11.09.28.09.php" hash="a007f769d492c43b1e7a583a2763300a"/><file name="mysql4-upgrade-11.10.19.18-11.10.23.01.php" hash="ef0b7b4f4530e5b01f349e3d534ebb16"/><file name="mysql4-upgrade-12.01.14.09-12.01.15.14.php" hash="001d8e035bc798d8779c29ac38912543"/><file name="mysql4-upgrade-12.04.10.23-12.04.17.18.php" hash="48f2d8cc8ca6afe014a95dea808e5087"/><file name="mysql4-upgrade-12.10.25.17-12.10.25.18.php" hash="5d726b388ac30fc00cd95bb86ab5641b"/><file name="mysql4-upgrade-12.11.02.16-12.11.13.15.php" hash="11fc0db6ff2f56fe95bfaf89ab758f61"/><file name="mysql4-upgrade-13.09.11.14-13.09.23.17.php" hash="aca62ea5d13c5bc3259a48e5cd4d5282"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Mana_Core.xml" hash="0ca7883c0f5fcaa12b32842f142f92eb"/><file name="Mana_Db.xml" hash="9b4669b284f2a688e165abaac373c358"/><file name="Mana_Filters.xml" hash="1a5a180ae37f2b369a2c8ce2d2d120b1"/></dir></target></contents>
|
16 |
<compatible/>
|
17 |
<dependencies/>
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Mana_Filters</name>
|
4 |
+
<version>14.11.25.15</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
10 |
<description>Add multiple selection features for attribute and price filters in Magento layered navigation</description>
|
11 |
<notes>Adds multiple selection features for attribute and price filters in Magento layered navigation.</notes>
|
12 |
<authors><author><name>Mana Team</name><user>auto-converted</user><email>team@manadev.com</email></author></authors>
|
13 |
+
<date>2014-11-26</date>
|
14 |
+
<time>11:15:47</time>
|
15 |
+
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="css"><file name="mana_core.css" hash="cdc7b84e7e3e73b182cf7ed02bbc76a8"/></dir><dir name="images"><dir name="mana_core"><file name="m-wait.gif" hash="1ae32bc8232ff2527c627e5b38eb319a"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="jquery"><file name="ui.css" hash="4ab351feeb25bfbcb84f61e722545525"/><dir name="images"><file name="animated-overlay.gif" hash="2b912f7c0653008ca28ebacda49025e7"/><file name="ui-bg_diagonals-thick_18_b81900_40x40.png" hash="95f9cceeb9d742dd3e917ec16ed754f8"/><file name="ui-bg_diagonals-thick_20_666666_40x40.png" hash="f040b255ca13e693da34ab33c7d6b554"/><file name="ui-bg_flat_0_aaaaaa_40x100.png" hash="2a44fbdb7360c60122bcf6dcef0387d8"/><file name="ui-bg_flat_10_000000_40x100.png" hash="c18cd01623c7fed23c80d53e2f5e7c78"/><file name="ui-bg_flat_75_ffffff_40x100.png" hash="8692e6efddf882acbff144c38ea7dfdf"/><file name="ui-bg_glass_55_fbf9ee_1x400.png" hash="f8f4558e0b92ff2cd6136781533902ec"/><file name="ui-bg_glass_65_ffffff_1x400.png" hash="e5a8f32e28fd5c27bf0fed33c8a8b9b5"/><file name="ui-bg_glass_75_dadada_1x400.png" hash="c12c6510dad3ebfa64c8a30e959a2469"/><file name="ui-bg_glass_75_e6e6e6_1x400.png" hash="f4254356c2a8c9a383205ef2c4de22c4"/><file name="ui-bg_glass_95_fef1ec_1x400.png" hash="5a3be2d8fff8324d59aec3df7b0a0c83"/><file name="ui-bg_glass_100_f6f6f6_1x400.png" hash="5f1847175ba18c41322cb9cb0581e0fb"/><file name="ui-bg_glass_100_fdf5ce_1x400.png" hash="d386adb3d23db4588a3271526a530f51"/><file name="ui-bg_gloss-wave_35_f6a828_500x100.png" hash="34c616d227cbdaefd8a81534d6ca7813"/><file name="ui-bg_highlight-soft_75_cccccc_1x100.png" hash="72c593d16e998952cd8d798fee33c6f3"/><file name="ui-bg_highlight-soft_75_ffe45c_1x100.png" hash="b806658954cb4d16ade8977af737f486"/><file name="ui-bg_highlight-soft_100_eeeeee_1x100.png" hash="384c3f17709ba0f809b023b6e7b10b84"/><file name="ui-icons_2e83ff_256x240.png" hash="25162bf857a8eb83ea932a58436e1049"/><file name="ui-icons_228ef1_256x240.png" hash="79f41c0765e9ec18562b20b0801d748b"/><file name="ui-icons_222222_256x240.png" hash="9129e086dc488d8bcaf808510bc646ba"/><file name="ui-icons_454545_256x240.png" hash="771099482bdc1571ece41073b1752596"/><file name="ui-icons_888888_256x240.png" hash="faf6f5dc44e713178784c1fb053990aa"/><file name="ui-icons_cd0a0a_256x240.png" hash="5d8808d43cefca6f6781a5316d176632"/><file name="ui-icons_ef8c08_256x240.png" hash="380c866362e1e42896f973ea92f67013"/><file name="ui-icons_ffd27a_256x240.png" hash="2a20f483ddcbc84e6469ce5bbd280699"/><file name="ui-icons_ffffff_256x240.png" hash="342bc03f6264c75d3f1d7f99e34295b9"/></dir></dir><file name="mana_core.css" hash="4b45e64cd88e3fcb70ccb3f1c4f39917"/><file name="mana_filters.css" hash="1d9769421d9cd76993bb033107363821"/></dir><dir name="images"><dir name="mana_core"><file name="m-wait.gif" hash="1ae32bc8232ff2527c627e5b38eb319a"/></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="css"><file name="mana_core.css" hash="c8533f81b029f25db3e3396cd75e779b"/><file name="mana_filters.css" hash="8b5cb1b1c480a051bed60ed64af2d790"/></dir><dir name="images"><dir name="mana_core"><file name="m-wait.gif" hash="79d9787b05ea3e0e5e1e7b23a357bca0"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="mana_core.xml" hash="cc0feb9124aa77e1f323b61cf504c204"/></dir><dir name="template"><dir name="mana"><dir name="core"><file name="js.phtml" hash="53a4035fe21537c0cd7fde286ed4a611"/><file name="popup.phtml" hash="e2823a07a8eefcad23f1ea416e95f84c"/><file name="require.phtml" hash="b85203a9ecf3808b5cdde85fcb03ec6e"/><file name="wait.phtml" hash="7c0ffe76e7b3aca2163d9ecc5145e81b"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="mana_core.xml" hash="67573b93ead87e30c31eedf5f39af2a2"/><file name="mana_filters.xml" hash="51005a99382d5450fbc6ea239bbbc7a2"/></dir><dir name="template"><dir name="mana"><dir name="core"><file name="js.phtml" hash="1aa41c842f1984142a864f667f99d33b"/><file name="popup.phtml" hash="e2823a07a8eefcad23f1ea416e95f84c"/><file name="require.phtml" hash="b85203a9ecf3808b5cdde85fcb03ec6e"/><file name="wait.phtml" hash="2fdb82f90c1aa8705fa76f500b967fef"/></dir><dir name="filters"><file name="cms.phtml" hash="b4c954289a496a8e79bddac6f89abbbe"/><file name="state.phtml" hash="9f49dcb0fa2e99652e02b9891d4ea7d8"/><dir name="items"><file name="list.phtml" hash="f5e0ac3cea381560e83d536433e303c7"/><file name="list_popup.phtml" hash="ff8d08726080a7eee21a85282d5294a4"/><file name="list_special.phtml" hash="2e930f38fbcd7b942d70adfb5307e305"/><file name="standard.phtml" hash="5c125504a6674f6eac8ea6ebd2c7ed1e"/><file name="standard_popup.phtml" hash="5318ff7766dce895a033ca0cea8a12d6"/></dir></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="layout"><file name="mana_filters.xml" hash="5aa157d9c8f9cdb68c7d0c03c1e8a0f3"/></dir><dir name="template"><dir name="mana"><dir name="filters"><dir name="items"><file name="list.phtml" hash="1adf0a61f5a3a216939ae03daaae7080"/><file name="standard.phtml" hash="983c40cf9136b3b879d2d1a41bdccbf6"/></dir></dir></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="Mana_Core.csv" hash="264b6e6e44c593af6f79b93875091672"/><file name="Mana_Db.csv" hash="754c3b5f318886cb1eae04af5e841ada"/><file name="Mana_Filters.csv" hash="7a4c41f5f3d3a4f4389db3ba7cac53e4"/></dir></target><target name="mageweb"><dir name="js"><dir name="jquery"><file name="advListRotator.js" hash="6629920522d9fd8364469abe1ae705c9"/><file name="fileuploader.js" hash="164c23d4b94b5424c8e1c00057d45ce4"/><file name="froogaloop.js" hash="aefc485211db6c55726e13759063d312"/><file name="froogaloop.min.js" hash="d39fd09571c0cae46b8c35d75cffeb77"/><file name="history.adapter.jquery.js" hash="b930b14f725f7f882a06b834a486cc4c"/><file name="history.js" hash="89898d2f67eecb9f819588dcad2c8717"/><file name="jquery-ui.js" hash="6ac9f97eaab22d1a1f91572a20ef516b"/><file name="jquery-ui.min.js" hash="c1e83e4d225186ec057ea9eb18742dea"/><file name="jquery.easing.js" hash="cc674e02a06874bb5888ede6e0b1c977"/><file name="jquery.flexslider-min.js" hash="c236f33e84d73c1a873ec63cc25d7bd1"/><file name="jquery.js" hash="a581ffd88c93e2125e42f7ecb363739f"/><file name="jquery.min.js" hash="f8a9d24fe8df43991da1c0dd0dd9d1af"/><file name="jquery.noconflict.js" hash="0da09155d7323809b48494da0846bf34"/><file name="jquery.printf.js" hash="71e34de7c90b12d738ca6b912fef04da"/><file name="require.js" hash="a7afdceabeb04107653fdc7d274a00d1"/><file name="require.min.js" hash="215507e3b7eb905c61e436921c5736bd"/><dir name="validate"><file name="jquery.validate.js" hash="0bb7a2f5eea19acc7bb65f6c82ec15fb"/><dir name="localization"><file name="messages_ar.js" hash="a42cc9c91da7c4f6d2f48492dda14273"/><file name="messages_bg.js" hash="bc4ebf054b6a399abf518ef28bbad839"/><file name="messages_cn.js" hash="886e45b3ffd60a683ecc8e6ea644e519"/><file name="messages_cs.js" hash="6b794f90ab955c17fe02b6553876050c"/><file name="messages_da.js" hash="cc862df2998db2cc18c8276aa7bfe0f0"/><file name="messages_de.js" hash="70a9eb9abfc4365f36718b06b38f6725"/><file name="messages_el.js" hash="bd18b65d9f876e12997281e09d2a8bf3"/><file name="messages_es.js" hash="2f3a18c6d0377bc4658839a070853ed7"/><file name="messages_fa.js" hash="e32dd026bd9d2f626b7371bf025eb5c1"/><file name="messages_fi.js" hash="d8810a4f5b025594129f32957e521210"/><file name="messages_fr.js" hash="3081f76c1368d03d2e1a84a7ed9748e2"/><file name="messages_he.js" hash="028af705c2c07e946ce6de5e63223611"/><file name="messages_hu.js" hash="7612f6525fd5922f970d40b5929c88bb"/><file name="messages_it.js" hash="824964b0dcf1ea4904d18a125ff10b09"/><file name="messages_kk.js" hash="28c0dac0417ec5e0ec9271bfd11b7129"/><file name="messages_lt.js" hash="ef0a5dea6d4bfe7965ff9c719238f2b0"/><file name="messages_lv.js" hash="6d1d834333de4f018259481658d79e85"/><file name="messages_nl.js" hash="9f8aad8e3d769b0a636a02c672044232"/><file name="messages_no.js" hash="1a00dddbef393a2b8bc2e78934243566"/><file name="messages_pl.js" hash="28cea41b05ff80cc721b6896a2f658ba"/><file name="messages_ptbr.js" hash="194f1a4cbe9483dea4363400e046b923"/><file name="messages_ptpt.js" hash="3a9a7730cc461866e37f2cd8b0507f3a"/><file name="messages_ro.js" hash="eaf4c868e8fde6f5dee2f0a3ee0cbe12"/><file name="messages_ru.js" hash="e3d6e8809230c758b95438de4c783474"/><file name="messages_se.js" hash="b80035c9f1fdfba7c7f523838ec6510b"/><file name="messages_sk.js" hash="9e1b0a7378aff7add6100dc3c3e8d80c"/><file name="messages_tr.js" hash="7ecf31a65c2eefd8c7da62f65ccf33a7"/><file name="messages_tw.js" hash="b660609f8ddf6b17d71b72aa43512f1f"/><file name="messages_ua.js" hash="80e565078f016c8ea1cffc6c8cdd5a93"/><file name="methods_de.js" hash="a9d8792f8e46298165daaf4e9a5d98ad"/><file name="methods_nl.js" hash="8505eec534134eac849adca1cf8f2f9d"/><file name="methods_pt.js" hash="09b350c9c069b5a82d5811339ac15ab6"/></dir></dir></dir><dir name="mana"><file name="core.js" hash="50a499ad52d5155e6edaf7cad2f7e778"/><file name="core.js.map" hash="7ed0105807c60a60ef8027479f7007c7"/><file name="core.min.js" hash="7537021875f5a04f140258d91bb3bfc5"/></dir><dir name="src"><dir name="Mana"><dir name="Core"><file name="Ajax.js" hash="a4adb98a7e0e46efb596ef46d12f591c"/><file name="Base64.js" hash="32c5eca8e7ae6860935f6026c810bb7f"/><file name="Block.js" hash="aa31f18ce505d2c43ddfac845b3516d6"/><file name="Config.js" hash="2592b48b066c51fad272c471c14e1ca1"/><file name="Core.js" hash="2b29cb91249da92b4aa6a180d38a4f4b"/><file name="header.js" hash="53b9f4625f72a5e2d93edbc0129c1b82"/><file name="init.js" hash="e05d11b113604d27530c83bb9ff557cb"/><file name="Json.js" hash="226ab2f431754f2338aec47ecaabf720"/><file name="Layout.js" hash="e8c17f6f40c5d768a57cd73da2c575cd"/><file name="Mana.js" hash="fa1102a7f579b5dda5db1f2dfa848672"/><file name="Object.js" hash="e15ad2bbac3d4729b1bc7499415fd0e9"/><file name="obsolete.js" hash="6c05b74822091b64f27019f433afb5ec"/><file name="PageBlock.js" hash="4798d5992ded92dc472bde54486327cc"/><file name="PopupBlock.js" hash="22bdd511747703b95d267a9d649e3d8e"/><file name="rwd.js" hash="3bbb8b6175369e03560444faa9061264"/><file name="StringTemplate.js" hash="7cd14ce2f038bf9d1f88c516f0ec11a3"/><file name="UrlTemplate.js" hash="340bfd288bfdbe53e562fac6f81ee1c7"/><file name="Utf8.js" hash="a7381e9d7e3b54f8169d58ad660c8f13"/></dir></dir></dir></dir></target><target name="magelocal"><dir name="Mana"><dir name="Core"><file name="Profiler.php" hash="750f9a6490534be89ef5a55ddf62db21"/><file name="Profiler2.php" hash="65d3000031d885779b195558cecc159a"/><dir name="Block"><file name="Js.php" hash="23b65253ab9b20b0c80f5cb30b25e63f"/><file name="List.php" hash="8a54149b3d24b8f1447ee77dc7c691ed"/><file name="Require.php" hash="39764e20e72f331223f1ad85a21c15a3"/><file name="Singleton.php" hash="74e1cb457680fb2f999af95fa3af26c2"/></dir><dir name="etc"><file name="adminhtml.xml" hash="6245429c5bc31a6b9667afe2e714cdb9"/><file name="config.xml" hash="1724ef23c2b6347ba451dffb2df7b8c2"/><file name="system.xml" hash="107f9fc56e6b83ceb92fa20bfcc93705"/></dir><dir name="Exception"><file name="Validation.php" hash="fea7418326430c7acd04c34d8a4b3f07"/></dir><dir name="Helper"><file name="Data.php" hash="e08ef5d31e210c3f5f0a1519b5318568"/><file name="Db.php" hash="8f63c21d8e5d1feda88727d222a233a3"/><file name="Debug.php" hash="6fd3859ac2e817d36aadd8ba6c47405a"/><file name="Eav.php" hash="9a801730d87f636cdd612c83528d9998"/><file name="Files.php" hash="d0f013090c6266c8e39d7b095985ba27"/><file name="Image.php" hash="75ade04d12f104d05314f2d9343ec539"/><file name="Js.php" hash="a9866a72f35c584a0c4684d4b2a371dd"/><file name="Json.php" hash="39f860c7189913faad31b234903ea6d6"/><file name="Layer.php" hash="f1d1197dc115ef8680d7bfeb0ef11c84"/><file name="Layout.php" hash="32d6016c0ddad2f414791dee4712c13e"/><file name="Lock.php" hash="7567ccb21cef8c90dac0e9bbac321801"/><file name="Logger.php" hash="6fc13c5afbd795a4d0ecfe9c576baaac"/><file name="Mbstring.php" hash="1702040a0138b88445a36bdd23d44566"/><file name="PageType.php" hash="78c1ed2f6353d29f2f8ed580014176a2"/><file name="Router.php" hash="9713a66ad89d22b0d0a5c6d5a5937ae6"/><file name="Seo.php" hash="b8aafbf9d4ec1d796e83c9ff2f7fac0b"/><file name="StringTemplate.php" hash="a7720417ae715c37eb155853e3e84f90"/><file name="UrlTemplate.php" hash="2e04649154b3c1a80e40df17cc1846a6"/><file name="Utils.php" hash="611650a169c7747bbc8177dcd31ee2a4"/><dir name="Db"><file name="Aggregate.php" hash="ee2b6086c62e6870d2139b3e8f619bdc"/></dir><dir name="PageType"><file name="Category.php" hash="22851b663096414aa80a6504ff6d1196"/><file name="CmsPage.php" hash="a54ea981e73b877a9ec63023be79b1e5"/><file name="HomePage.php" hash="64891fa7d23b59fc14ad38d2e9fc2f4b"/><file name="Search.php" hash="3b0e7e11924e950f0d9a2d30e7a83118"/></dir></dir><dir name="Model"><file name="Callback.php" hash="2e8955cf399ea302e8b19c6ccb999cc5"/><file name="Closure.php" hash="f1456fc3e6aa04906339198be3a0a544"/><file name="Eav.php" hash="ed4adbb339497fefe1db29a59c2ed110"/><file name="Indexer.php" hash="d0e5a2c7f12a484336d3baa529ba41dc"/><file name="Object.php" hash="dcb759ec94621a28c4e531715813513c"/><file name="Observer.php" hash="ca5d42b0d4bef6a312575f07df964d2d"/><dir name="Attribute"><file name="Scope.php" hash="7277aac766688c59886cff561b8c44a3"/></dir><dir name="Condition"><file name="Abstract.php" hash="2b4cb990a9c690d7a1f5033e5a97cc3c"/><file name="Combine.php" hash="ee16e0a17610f5b08bc04b2f2967820b"/></dir><dir name="Config"><file name="Default.php" hash="b69bd384a59f38f214f565d21af1ca3a"/></dir><dir name="Html"><file name="Filter.php" hash="ca77f8b76bd39d00001d6dfb12ff6929"/><file name="Parser.php" hash="5f4c098e69b582025f909ddeeab6e630"/><file name="Reader.php" hash="41a66c26ce51f3803eba50cea5b95d96"/><file name="State.php" hash="5952deebd020273729594ace8a2cae9b"/><file name="Token.php" hash="5c7a4ef3150a35b8a6bf9e296e53e739"/></dir><dir name="Source"><file name="Abstract.php" hash="bb05e3ce9f5e01ef2843a5a558a86fd8"/><file name="Config.php" hash="59b1d6927157e4b34bde55794a7a86be"/><file name="Country.php" hash="cd5c9dd00c4456db2e6b4f6316303a8c"/><file name="Design.php" hash="8c033c3585d0bf0bc31a95cbbbf7d4c4"/><file name="Js.php" hash="71852d9a46c5fca27d4b0403e9ee19d9"/><file name="Layout.php" hash="4eb47f747d5a91983fb62e802ec51793"/><file name="Status.php" hash="d4fdf128e0c4cf088f654baf426c5f0f"/><file name="Yesno.php" hash="3082e75e81e111aed0ac9f1cc17e579e"/><file name="YesNoDefault.php" hash="4a13c8de30d7f27b71dac16bbf1e18ae"/></dir></dir><dir name="Resource"><file name="Eav.php" hash="2ada400977d3a8b0883a03998e1a4e47"/><file name="Indexer.php" hash="6ced1a9ad6696345071a189c8c3e657d"/><file name="JsonCollection.php" hash="5a1c91aace6564fc62c3eeeddc0cd03b"/><dir name="Attribute"><file name="Collection.php" hash="7f01d6480b5110a431a5b50571a9ec62"/></dir><dir name="Eav"><file name="Collection.php" hash="5153a97a4021aebced2b0a538d10b4e7"/><file name="Setup.php" hash="13360360cbfada91713159a38c82e6b2"/><dir name="Collection"><file name="Derived.php" hash="03a87d87a781c8256b6414fb132ed30e"/></dir></dir><dir name="Virtual"><file name="Collection.php" hash="ac2d11980e9dc015ed0cfbe12fbf3fc7"/></dir></dir><dir name="Rewrite"><dir name="PageCache"><file name="Processor.php" hash="d5175e3a150d92ec32016654c8a7988a"/></dir></dir><dir name="sql"><dir name="mana_core_setup"><file name="mysql4-install-1.1.1.php" hash="a169406e2cc37282d001e9415eda219a"/></dir></dir></dir><dir name="Db"><dir name="etc"><file name="config.xml" hash="03b75095a6c89342032e58fc8fbc1da7"/><file name="m_db.xml" hash="7fb95c96ed440dfc5efb8d3ed598dd20"/></dir><dir name="Exception"><file name="Formula.php" hash="f791f3d718241b9b004ae1719dd8fca8"/><file name="Validation.php" hash="7238432db3b3a24615dc186e60afc546"/></dir><dir name="Helper"><file name="Config.php" hash="947e93e74329de11cffe102dad3b5002"/><file name="Data.php" hash="a35a41643d9c5e875d0e8e2dbfa8d4d1"/><file name="Formula.php" hash="c5761ee937e3490d1508a3ed0cfac805"/><dir name="Formula"><file name="Abstract.php" hash="88283737316ebd8cafddce5e42ac2bd8"/><file name="DependencyFinder.php" hash="480e4097ef5e9b21c527f5c61dbd3987"/><file name="Entity.php" hash="e5f500a86b18b37dd43fc8ab151fd204"/><file name="Evaluator.php" hash="8dc9cf1b9ddf8cefd053909ba841d985"/><file name="Function.php" hash="db3fb341c32f9c285d37df84a36fb82c"/><file name="Parser.php" hash="7828e59f31c03e31da92a889b4e8b52f"/><file name="Processor.php" hash="4bf7bfa8a2cdcfbecaede6ab3aa67f04"/><file name="Selector.php" hash="91bee56da8ee75aa06edacb19cb925b9"/><dir name="Entity"><file name="Aggregate.php" hash="fab53a31e480228474de7015100d6498"/><file name="Foreign.php" hash="6d4159dcb6ff3f7e5a958b6e891057c1"/><file name="Frontend.php" hash="4bef999e0ca552c3fa8b518c36b6e239"/><file name="Normal.php" hash="6a91af1bd600ca9b8be40ee5be5c4fa5"/><dir name="Aggregate"><file name="Field.php" hash="682fc6e82caf400025ba22f6b1c40156"/></dir></dir><dir name="Function"><file name="Count.php" hash="62d463301d3eac82f9f8c2952cc23ed4"/><file name="Glue.php" hash="00abff0970bc94ef46ebdb91d773ab02"/><file name="If.php" hash="215287632f25bd541fe29051cc11fba4"/><file name="Lower.php" hash="7e91d1e618e66d262b0967f0a053adfd"/><file name="Seo.php" hash="70ce3da277c48fc84363c58baba3dd37"/><file name="SkinUrl.php" hash="059ac4b6d44bf7714886c023c30a1490"/></dir><dir name="Processor"><file name="Eav.php" hash="722b0888661d38b399f74eaf9ec4247e"/><file name="Entity.php" hash="b3d6e11b78cf782c9eae78ce1eefd155"/><file name="System.php" hash="c7a3c7bf6194b041dd17dc2b3a605f6f"/><file name="Table.php" hash="771155e0a194fcf7a821e51172100138"/></dir></dir></dir><dir name="Model"><file name="Entity.php" hash="88e63ed2ebdeb129757d7acbd6f4d805"/><file name="Indexer.php" hash="8596a12b7ee26e686937cef3d2985685"/><file name="Object.php" hash="91dac5c80f75dcb81c1aadaa8984b466"/><file name="Observer.php" hash="d52dc7c597890e130a6d0ee92846fa89"/><file name="Setup.php" hash="637ff1d605b453dacf2565587c78a8d9"/><file name="Validation.php" hash="f2dd026c3d73f3fd345e1b7abde51e7d"/><dir name="Entity"><file name="Indexer.php" hash="80ea5030912a762f6c1ccfaadbfbbc54"/></dir><dir name="Formula"><file name="Alias.php" hash="d14575f9f0477021a2e53ff1fd9c5501"/><file name="Closure.php" hash="d773c0f5ed1f593acb5458bfb3187a7b"/><file name="Context.php" hash="5fd16cf22bc1bac09856606ee0d0a141"/><file name="Entity.php" hash="c0eb7a9362996c104bde5cd2c469db10"/><file name="Expr.php" hash="b739ab589ea0e3378e32c12a69ba78cc"/><file name="Field.php" hash="d00b8c25724e34f6cad819edf1497ede"/><file name="Node.php" hash="e28d2d8d0af762abbe3b9677937103fe"/><dir name="Alias"><file name="Array.php" hash="6719df8e4123c881980f5a2b6ef93a8f"/><file name="Empty.php" hash="93e05898f60e111f12b5febb119305dd"/><file name="Single.php" hash="8603f08d6415110c8c0f04a805055fab"/></dir><dir name="Closure"><file name="AggregateFieldJoin.php" hash="f1d19cb54eaf620d038508b7ad31fc60"/><file name="ForeignJoin.php" hash="b07167a5ef2a7caf479266269f232edf"/><file name="ForeignJoinEnd.php" hash="6b9000298615ce69eadc04e707fbe17f"/><file name="Join.php" hash="b8d368c1042754f18d027027acccb27a"/></dir><dir name="Node"><file name="Add.php" hash="22f6ec02b3226ce2c9313f713d1b03fb"/><file name="Field.php" hash="93c6bf27b93091ebe7672500e7e94e48"/><file name="FormulaExpr.php" hash="b6a36a818533775fa778c6dc66ec40f7"/><file name="FunctionCall.php" hash="bac31778c670aca74c9db49dcb40007a"/><file name="Identifier.php" hash="a38aa478e6485ef9ea95fb0758c2ea49"/><file name="Multiply.php" hash="292881a092500642e4d98aeb33aa2f75"/><file name="NullValue.php" hash="2ddeb334ac3e12cdec1b413904e02210"/><file name="NumberConstant.php" hash="fd2524859dc3ed2a3fb46468b8352f72"/><file name="StringConstant.php" hash="04cdb7baa502e001dfb35af748efde30"/></dir></dir><dir name="Replication"><file name="Target.php" hash="b918ef992096a72080a743352385b64b"/></dir><dir name="Setup"><file name="Abstract.php" hash="d8e84857de7b1cdb6ba6c03e5f4aa867"/><file name="V13012122.php" hash="a2ca004389d5145d819ff791f965ef9e"/></dir><dir name="Virtual"><file name="Result.php" hash="33f35c946b2285e62a5a1c08c1bb3ec8"/></dir></dir><dir name="Resource"><file name="Entity.php" hash="c5f9ee0f1475f2d4a2075b5cead6199d"/><file name="Formula.php" hash="53b21b55b710d119fc91bbcf841caea2"/><file name="Object.php" hash="9106bec7565a3bedaf2de81b18569157"/><file name="Replicate.php" hash="e4c75872344dde3ed8a04744110faace"/><dir name="Edit"><file name="Session.php" hash="07474c4d34f6ec1cd91ade3e871ec096"/></dir><dir name="Entity"><file name="Collection.php" hash="291cbdeef792ab848175c0ae9bb65fad"/><file name="Indexer.php" hash="9e102278a3cf4e69ead0a34b12d3c91c"/><file name="JsonCollection.php" hash="e2f66cce960914674366bc4b54603650"/></dir><dir name="Object"><file name="Collection.php" hash="6f7f393abef136226ed22eb8f45d2fdd"/></dir></dir><dir name="sql"><dir name="mana_db_setup"><file name="mysql4-install-11.09.28.09.php" hash="0d8c0873cbbabb1db406e1c0b709b4de"/><file name="mysql4-upgrade-11.09.28.09-11.09.28.10.php" hash="04ccee17b3b04906e8fed2b1ac9214a3"/><file name="mysql4-upgrade-11.10.08.23-11.10.20.22.php" hash="847b24ea006e99af80cc8980ff7ff021"/></dir></dir></dir><dir name="Filters"><dir name="Block"><file name="Filter.php" hash="bfbc2dc381f8ec2cb3a2f3eecff673f6"/><file name="Layer.php" hash="cfc87dab28d7a269a987840cd52b84db"/><file name="Search.php" hash="e7c5d74b36406fb181ba149588070f95"/><file name="State.php" hash="5259384f8b24da0e737fde2d7ffcfd93"/><file name="View.php" hash="5257cd7eefe0b40f6b479c098dcda36e"/></dir><dir name="etc"><file name="config.xml" hash="910a53d815900b5edb63a4525eefac3e"/></dir><dir name="Helper"><file name="Data.php" hash="9037b11c2450bd0661d96aadbf031968"/><file name="Extended.php" hash="5b065cc2be0a8b96dc4db32bc8279304"/><file name="Item.php" hash="7f482a48c1e661076ccea3c21f59677c"/></dir><dir name="Interface"><file name="Filter.php" hash="f1aaf305fa9d01c666d5d0801816ced0"/></dir><dir name="Model"><file name="Filter.php" hash="cd3bc9276ff4566802e2d43280394e6f"/><file name="Filter2.php" hash="81ef439832e656d8aad2c6a8d3c2cf47"/><file name="Item.php" hash="a9c7bad2c855698387135d8b0cbd5610"/><file name="Observer.php" hash="e835045553a7e4d8d821eed81e6492a1"/><file name="Operation.php" hash="54d01ace78c5b6ba3facf1a2f3255618"/><file name="Query.php" hash="b37cef8c7b24752661fb340e0d78e807"/><file name="Repository.php" hash="e0cf842a98aa5ae27fc107c18f190fab"/><file name="Sort.php" hash="95804fcd46ca143587747dc7dfe9845e"/><dir name="Config"><dir name="Display"><file name="Default.php" hash="e16716300e514ef6ee7fa4c1c5fd3331"/></dir></dir><dir name="Filter"><file name="Attribute.php" hash="61d312cb5095bcc2f474b23f8c3afd82"/><file name="Category.php" hash="cc18ac1c3f47fda27fc74086d867c18f"/><file name="Common.php" hash="522b1695cf4f4f545c7174b90a8b06ba"/><file name="Decimal.php" hash="43bd8e5b3d47e19a156a15bf14a248a2"/><file name="Default.php" hash="960d7b6f0fd9c32cf9726e11a62cbb1e"/><file name="Price.php" hash="14c50f49106ea768d537465d3d1775e7"/></dir><dir name="Filter2"><file name="Store.php" hash="d82d20f485c4417bc51a73bcf01cd374"/><file name="Value.php" hash="d3214a80a4c3fe1eb492ce860de8d60b"/><dir name="Value"><file name="Store.php" hash="695bf8aad7ff431fe5a511098cf23f48"/></dir></dir><dir name="Solr"><file name="Attribute.php" hash="c60628b8ec074147918ea7a96e85ecd5"/><file name="Category.php" hash="281864a88dc542de2dd8bd15812a64d4"/><file name="Decimal.php" hash="4c732a1189b7cd5c96ece2f2040c4704"/><file name="Price.php" hash="33d267665ed583da42a0001a5e575426"/><dir name="Adapter"><file name="HttpStream.php" hash="e8ae626402b1403e7cbcb5f692aa76ee"/><file name="PhpExtension.php" hash="847d0e30ec5aef0ddb1dfe5fe150e30f"/></dir><dir name="And"><file name="Attribute.php" hash="3df0798bc675483dd4b327299fc00b33"/></dir><dir name="Reverse"><file name="Attribute.php" hash="c23dc7f104559c3df2f3394438735537"/><file name="Decimal.php" hash="89810a0c5fe707af354d7be73b8dfe36"/><file name="Price.php" hash="bf207efb2854f99a15775f38f019f5b4"/></dir></dir><dir name="Source"><file name="Display.php" hash="509e389d33e3175e304ab67ffdb79325"/><file name="Filter.php" hash="7f62fe307f6e83dbdb018e41e09c1087"/><file name="Filterable.php" hash="618680f75072220ad711dec6e220d43b"/><dir name="Display"><file name="All.php" hash="1875630a7565c9655c8c8724dad45bba"/><file name="Attribute.php" hash="d2bd347e70e3924490dff6e57274ff40"/><file name="Category.php" hash="437b3f678edd292a0110529aadfb1530"/><file name="Decimal.php" hash="b432f32e93fb1991f8882bfe25f0514e"/><file name="Price.php" hash="c6a017240beaf76666e9f702a9fcd48d"/></dir></dir></dir><dir name="Resource"><file name="Filter.php" hash="e74d789c7751fe0a126b38ab0bd3ac40"/><file name="Filter2.php" hash="ed398f976465a24464e92566a9b41f6a"/><file name="Item.php" hash="c90c3eb3649317e1746065ee3e15f44a"/><file name="ItemAdditionalInfo.php" hash="af989c2a78aadbe51831d216b6c54643"/><file name="Setup.php" hash="83b12b7939ac1c7696360f77304d9d84"/><dir name="EnterpriseSearch"><file name="Engine.php" hash="51d77208587d1c55c8d508a3024bd269"/></dir><dir name="Filter"><file name="Attribute.php" hash="5d8d60c67a2295bb690bf755247ff9cc"/><file name="Collection.php" hash="6831f054791977048641d43c288ff53c"/><file name="Decimal.php" hash="472f527ca55851d319d28ad4119e38ac"/><file name="Price.php" hash="a7141e1bb1ff424b6ccff608ab245fd9"/><dir name="And"><file name="Attribute.php" hash="cdc41ca223083360b35bd5f455733cd8"/></dir><dir name="Attribute"><file name="Collection.php" hash="c854270f63ca3bfd44cfd6ab27888676"/></dir><dir name="Collection"><file name="Derived.php" hash="5240ac10d2989122c49665919a9555ff"/></dir><dir name="Reverse"><file name="Attribute.php" hash="0be2e3f5eef03862e13b37deb1f7f7a3"/><file name="Decimal.php" hash="9d9974cf64c5178812bcc6fca83bc9ff"/><file name="Price.php" hash="3be48facf6596b618fc0a621f625d460"/></dir></dir><dir name="Filter2"><file name="Collection.php" hash="822b71198d05e41e90d096cb7cc47fa5"/><file name="Store.php" hash="4c430d687e9ae90ec36a9faa1c283aa1"/><file name="Value.php" hash="ea33d71787937002c2c794df69b982a8"/><dir name="Store"><file name="Collection.php" hash="7998c9394089d23d21db58a4023cc180"/></dir><dir name="Value"><file name="Collection.php" hash="3273b517dd65a46034cb3ef8adb3c610"/><file name="Store.php" hash="48d9631e8d34b15a72fc22e6bb3a98c2"/><dir name="Store"><file name="Collection.php" hash="073931492acfc99a3b5cd1ecf7113982"/></dir></dir></dir><dir name="Indexer"><file name="Source.php" hash="251589738ea54dcf6e986921f3810931"/></dir><dir name="Solr"><file name="Attribute.php" hash="f2b30e509881147f2f73ede11ac2fbed"/><file name="Collection.php" hash="9b35d28e731fc47f420447251a5e976b"/><file name="Engine.php" hash="e3c3306e436e6943aa10f9b1a77404be"/><dir name="And"><file name="Attribute.php" hash="a7dd5fbb9388a4b73efeeaa7e91a9b7b"/></dir><dir name="Reverse"><file name="Attribute.php" hash="1084278692e5ffe1d16640b530e33662"/></dir></dir></dir><dir name="sql"><dir name="mana_filters_setup"><file name="mysql4-install-1.1.1.php" hash="22f7381b5ea9261a2e8a00fda28f28ef"/><file name="mysql4-upgrade-1.1.1-1.9.1.php" hash="04c761bab20de6e0fed68e141fb68112"/><file name="mysql4-upgrade-11.09.24.09-11.09.28.09.php" hash="a007f769d492c43b1e7a583a2763300a"/><file name="mysql4-upgrade-11.10.19.18-11.10.23.01.php" hash="ef0b7b4f4530e5b01f349e3d534ebb16"/><file name="mysql4-upgrade-12.01.14.09-12.01.15.14.php" hash="001d8e035bc798d8779c29ac38912543"/><file name="mysql4-upgrade-12.04.10.23-12.04.17.18.php" hash="48f2d8cc8ca6afe014a95dea808e5087"/><file name="mysql4-upgrade-12.10.25.17-12.10.25.18.php" hash="5d726b388ac30fc00cd95bb86ab5641b"/><file name="mysql4-upgrade-12.11.02.16-12.11.13.15.php" hash="11fc0db6ff2f56fe95bfaf89ab758f61"/><file name="mysql4-upgrade-13.09.11.14-13.09.23.17.php" hash="aca62ea5d13c5bc3259a48e5cd4d5282"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Mana_Core.xml" hash="0ca7883c0f5fcaa12b32842f142f92eb"/><file name="Mana_Db.xml" hash="9b4669b284f2a688e165abaac373c358"/><file name="Mana_Filters.xml" hash="1a5a180ae37f2b369a2c8ce2d2d120b1"/></dir></target></contents>
|
16 |
<compatible/>
|
17 |
<dependencies/>
|
18 |
</package>
|