Version Notes
1.0.3
- Added Mage_Shipping mocks. Please read documentation how to properly disable this module.
https://github.com/Zookal/magento-mock
Download this release
Release Info
| Developer | Cyrill Schumacher |
| Extension | Zookal_Mock |
| Version | 1.0.3 |
| Comparing to | |
| See all releases | |
Code changes from version 1.0.2 to 1.0.3
- app/code/community/Zookal/Mock/Helper/Data.php +1 -1
- app/code/community/Zookal/Mock/Model/Catalog/Model/Product.php +27 -0
- app/code/community/Zookal/Mock/Model/Mocks/Abstract.php +18 -15
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Config.php +24 -0
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Giftmessage/Block/Adminhtml/Product/Helper/Form/Config.php +6 -0
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Rate/Request.php +18 -0
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping.php +18 -0
- app/code/community/Zookal/Mock/Model/Mocks/Mage/{Usa/Model/Shipping → Shipping}/Carrier/Ups.php +1 -1
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Carrier/Usps/Source/Size.php +13 -0
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Model/Config.php +26 -0
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Model/Rate/Abstract.php +18 -0
- app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Model/Shipping.php +27 -0
- app/code/community/Zookal/Mock/Model/Observer.php +7 -3
- app/code/community/Zookal/Mock/etc/config.xml +11 -2
- app/code/community/Zookal/Mock/etc/system.xml +2 -2
- package.xml +89 -68
app/code/community/Zookal/Mock/Helper/Data.php
CHANGED
|
@@ -44,7 +44,7 @@ class Zookal_Mock_Helper_Data extends Mage_Core_Helper_Abstract
|
|
| 44 |
*/
|
| 45 |
public function isLogMethodEnabled()
|
| 46 |
{
|
| 47 |
-
return (int)$this->getStore()->getConfig('
|
| 48 |
}
|
| 49 |
|
| 50 |
/**
|
| 44 |
*/
|
| 45 |
public function isLogMethodEnabled()
|
| 46 |
{
|
| 47 |
+
return (int)$this->getStore()->getConfig('dev/zookalmock/enable_method_log') === 1;
|
| 48 |
}
|
| 49 |
|
| 50 |
/**
|
app/code/community/Zookal/Mock/Model/Catalog/Model/Product.php
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
class Zookal_Mock_Model_Catalog_Model_Product extends Mage_Catalog_Model_Product
|
| 11 |
+
{
|
| 12 |
+
|
| 13 |
+
/**
|
| 14 |
+
* Use only if:
|
| 15 |
+
* - you don't have your own Mage_Catalog_Model_Product rewrite
|
| 16 |
+
* - Mage_Shipping is disabled
|
| 17 |
+
*
|
| 18 |
+
* If you have your own rewrite of Mage_Catalog_Model_Product add the method getIsVirtual()
|
| 19 |
+
* Do not change anything in the database.
|
| 20 |
+
*
|
| 21 |
+
* @return bool
|
| 22 |
+
*/
|
| 23 |
+
public function getIsVirtual()
|
| 24 |
+
{
|
| 25 |
+
return true;
|
| 26 |
+
}
|
| 27 |
+
}
|
app/code/community/Zookal/Mock/Model/Mocks/Abstract.php
CHANGED
|
@@ -20,6 +20,7 @@ abstract class Zookal_Mock_Model_Mocks_Abstract
|
|
| 20 |
protected $_mockMethodsReturnThis = array(
|
| 21 |
'add' => 1, // e.g. addCustomerFilter ...
|
| 22 |
'cle' => 1, // e.g. clean() clear() clearasil()
|
|
|
|
| 23 |
'gettotals' => 1, // Special case in Sales_Collection
|
| 24 |
'gro' => 1, // e.g. groupByCustomer
|
| 25 |
'joi' => 1, // e.g. joinCustomerName
|
|
@@ -29,6 +30,7 @@ abstract class Zookal_Mock_Model_Mocks_Abstract
|
|
| 29 |
'pre' => 1, // e.g. prepare()
|
| 30 |
'resetsortorder' => 1,
|
| 31 |
'renewsession' => 1,
|
|
|
|
| 32 |
'set' => 1,
|
| 33 |
'too' => 1, // e.g. toOptionArray, toOptionHash
|
| 34 |
'uns' => 1,
|
|
@@ -39,21 +41,22 @@ abstract class Zookal_Mock_Model_Mocks_Abstract
|
|
| 39 |
'toh' => 1, // toHtml() on blocks
|
| 40 |
);
|
| 41 |
protected $_mockMethodsReturnFalse = array(
|
| 42 |
-
'
|
| 43 |
-
'
|
| 44 |
-
'
|
| 45 |
-
'
|
| 46 |
-
'
|
| 47 |
-
'
|
| 48 |
-
'
|
| 49 |
-
'
|
| 50 |
-
'
|
| 51 |
-
'
|
| 52 |
-
'
|
| 53 |
-
'
|
| 54 |
-
'
|
| 55 |
-
'
|
| 56 |
-
'
|
|
|
|
| 57 |
);
|
| 58 |
|
| 59 |
/**
|
| 20 |
protected $_mockMethodsReturnThis = array(
|
| 21 |
'add' => 1, // e.g. addCustomerFilter ...
|
| 22 |
'cle' => 1, // e.g. clean() clear() clearasil()
|
| 23 |
+
'collectrates' => 1, // e.g. Mage_Shipping_Model_Shipping::collectRates()
|
| 24 |
'gettotals' => 1, // Special case in Sales_Collection
|
| 25 |
'gro' => 1, // e.g. groupByCustomer
|
| 26 |
'joi' => 1, // e.g. joinCustomerName
|
| 30 |
'pre' => 1, // e.g. prepare()
|
| 31 |
'resetsortorder' => 1,
|
| 32 |
'renewsession' => 1,
|
| 33 |
+
'sav' => 1, // e.g. save()
|
| 34 |
'set' => 1,
|
| 35 |
'too' => 1, // e.g. toOptionArray, toOptionHash
|
| 36 |
'uns' => 1,
|
| 41 |
'toh' => 1, // toHtml() on blocks
|
| 42 |
);
|
| 43 |
protected $_mockMethodsReturnFalse = array(
|
| 44 |
+
'displaygirthvalue' => 1, // Mage_Usa helper in packaging/popup.phtml
|
| 45 |
+
'can' => 1, // canCapture and all other payment related methods
|
| 46 |
+
'has' => 1,
|
| 47 |
+
'isa' => 1, // e.g. isAvailable -> Payment
|
| 48 |
+
'isd' => 1, // e.g. isDiscounted e.g. Weee helper
|
| 49 |
+
'ise' => 1, // e.g. isEnabled e.g. Weee helper
|
| 50 |
+
'isg' => 1, // e.g. isGateway -> Payment
|
| 51 |
+
'isi' => 1, // e.g. isInitializeNeeded -> Payment
|
| 52 |
+
'ism' => 1, // e.g. isMessagesAvailable -> GiftMessage
|
| 53 |
+
'iss' => 1, // e.g. isSubscribed
|
| 54 |
+
'ist' => 1, // e.g. isTaxable in Weee
|
| 55 |
+
'isv' => 1, // e.g. isValid...
|
| 56 |
+
'isl' => 1, // e.g. isLoggedIn
|
| 57 |
+
'use' => 1,
|
| 58 |
+
'typ' => 1, // Weee Helper->typeofdisplay()
|
| 59 |
+
'val' => 1, // Weee Helper->validateCatalogPricesAndFptConfiguration()
|
| 60 |
);
|
| 61 |
|
| 62 |
/**
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Config.php
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/**
|
| 12 |
+
* needed when Mage_Shipping is disabled
|
| 13 |
+
* Class Zookal_Mock_Model_Mocks_Mage_Config
|
| 14 |
+
*/
|
| 15 |
+
class Zookal_Mock_Model_Mocks_Mage_Config extends Zookal_Mock_Model_Mocks_Abstract
|
| 16 |
+
{
|
| 17 |
+
/**
|
| 18 |
+
* @return array
|
| 19 |
+
*/
|
| 20 |
+
public function getAllCarriers()
|
| 21 |
+
{
|
| 22 |
+
return array();
|
| 23 |
+
}
|
| 24 |
+
}
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Giftmessage/Block/Adminhtml/Product/Helper/Form/Config.php
CHANGED
|
@@ -7,6 +7,12 @@
|
|
| 7 |
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
class Mage_GiftMessage_Block_Adminhtml_Product_Helper_Form_Config extends Mage_Adminhtml_Block_Catalog_Product_Helper_Form_Config
|
| 11 |
{
|
| 12 |
/**
|
| 7 |
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
*/
|
| 10 |
+
|
| 11 |
+
/**
|
| 12 |
+
* Class Mage_GiftMessage_Block_Adminhtml_Product_Helper_Form_Config
|
| 13 |
+
* Do not change the class name, as it is needed for the autoloader because this class is somewhere in Magentos source code hardcoded :-(
|
| 14 |
+
* @see Zookal_Mock_Model_Observer::_setMockIncludePath
|
| 15 |
+
*/
|
| 16 |
class Mage_GiftMessage_Block_Adminhtml_Product_Helper_Form_Config extends Mage_Adminhtml_Block_Catalog_Product_Helper_Form_Config
|
| 17 |
{
|
| 18 |
/**
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Rate/Request.php
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/**
|
| 12 |
+
* Mock for Mage_Shipping_Model_Rate_Request
|
| 13 |
+
* Class Zookal_Mock_Model_Mocks_Mage_Rate_Request
|
| 14 |
+
*/
|
| 15 |
+
class Zookal_Mock_Model_Mocks_Mage_Rate_Request extends Zookal_Mock_Model_Mocks_Abstract
|
| 16 |
+
{
|
| 17 |
+
|
| 18 |
+
}
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping.php
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/**
|
| 12 |
+
* needed when Mage_Shipping is disabled
|
| 13 |
+
* Mock for Mage_Shipping_Model_Shipping
|
| 14 |
+
* Class Zookal_Mock_Model_Mocks_Mage_Config
|
| 15 |
+
*/
|
| 16 |
+
class Zookal_Mock_Model_Mocks_Mage_Shipping extends Zookal_Mock_Model_Mocks_Abstract
|
| 17 |
+
{
|
| 18 |
+
}
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/{Usa/Model/Shipping → Shipping}/Carrier/Ups.php
RENAMED
|
@@ -7,7 +7,7 @@
|
|
| 7 |
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
*/
|
| 10 |
-
class
|
| 11 |
{
|
| 12 |
|
| 13 |
}
|
| 7 |
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
*/
|
| 10 |
+
class Zookal_Mock_Model_Mocks_Mage_Shipping_Carrier_Ups extends Zookal_Mock_Model_Mocks_Abstract
|
| 11 |
{
|
| 12 |
|
| 13 |
}
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Carrier/Usps/Source/Size.php
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
class Zookal_Mock_Model_Mocks_Mage_Shipping_Carrier_Usps_Source_Size extends Zookal_Mock_Model_Mocks_Abstract
|
| 11 |
+
{
|
| 12 |
+
|
| 13 |
+
}
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Model/Config.php
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/**
|
| 12 |
+
* needed when Mage_Shipping is disabled
|
| 13 |
+
* Do not change the class name, as it is needed for the autoloader because this class is somewhere in Magentos source code hardcoded :-(
|
| 14 |
+
* @see Zookal_Mock_Model_Observer::_setMockIncludePath
|
| 15 |
+
* Class Zookal_Mock_Model_Mocks_Mage_Config
|
| 16 |
+
*/
|
| 17 |
+
class Mage_Shipping_Model_Config extends Zookal_Mock_Model_Mocks_Abstract
|
| 18 |
+
{
|
| 19 |
+
/**
|
| 20 |
+
* Shipping origin settings
|
| 21 |
+
*/
|
| 22 |
+
const XML_PATH_ORIGIN_COUNTRY_ID = 'shipping/mock/fake_country_id';
|
| 23 |
+
const XML_PATH_ORIGIN_REGION_ID = 'shipping/mock/fake_region_id';
|
| 24 |
+
const XML_PATH_ORIGIN_CITY = 'shipping/mock/fake_city';
|
| 25 |
+
const XML_PATH_ORIGIN_POSTCODE = 'shipping/mock/fake_postcode';
|
| 26 |
+
}
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Model/Rate/Abstract.php
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/**
|
| 12 |
+
* Class Mage_Shipping_Model_Rate_Abstract
|
| 13 |
+
* Do not change the class name, as it is needed for the autoloader because this class is somewhere in Magentos source code hardcoded :-(
|
| 14 |
+
* @see Zookal_Mock_Model_Observer::_setMockIncludePath
|
| 15 |
+
*/
|
| 16 |
+
abstract class Mage_Shipping_Model_Rate_Abstract extends Zookal_Mock_Model_Mocks_Abstract //Mage_Core_Model_Abstract
|
| 17 |
+
{
|
| 18 |
+
}
|
app/code/community/Zookal/Mock/Model/Mocks/Mage/Shipping/Model/Shipping.php
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* @category Zookal_Mock
|
| 5 |
+
* @package Model
|
| 6 |
+
* @author Cyrill Schumacher | {firstName}@{lastName}.fm | @SchumacherFM
|
| 7 |
+
* @copyright Copyright (c) Zookal Pty Ltd
|
| 8 |
+
* @license OSL - Open Software Licence 3.0 | http://opensource.org/licenses/osl-3.0.php
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/**
|
| 12 |
+
* Class Mage_Shipping_Model_Shipping
|
| 13 |
+
* Do not change the class name, as it is needed for the autoloader because this class is somewhere in Magentos source code hardcoded :-(
|
| 14 |
+
* @see Zookal_Mock_Model_Observer::_setMockIncludePath
|
| 15 |
+
*/
|
| 16 |
+
class Mage_Shipping_Model_Shipping extends Zookal_Mock_Model_Mocks_Abstract
|
| 17 |
+
{
|
| 18 |
+
const XML_PATH_STORE_COUNTRY_ID = 'shipping/mock/fake_country_id';
|
| 19 |
+
const XML_PATH_ORIGIN_REGION_ID = 'shipping/mock/fake_region_id';
|
| 20 |
+
const XML_PATH_ORIGIN_CITY = 'shipping/mock/fake_city';
|
| 21 |
+
const XML_PATH_ORIGIN_POSTCODE = 'shipping/mock/fake_postcode';
|
| 22 |
+
const XML_PATH_STORE_ADDRESS1 = 'shipping/mock/fake_street_line1';
|
| 23 |
+
const XML_PATH_STORE_ADDRESS2 = 'shipping/mock/fake_street_line2';
|
| 24 |
+
const XML_PATH_STORE_CITY = 'shipping/mock/fake_city';
|
| 25 |
+
const XML_PATH_STORE_REGION_ID = 'shipping/mock/fake_region_id';
|
| 26 |
+
const XML_PATH_STORE_ZIP = 'shipping/mock/fake_postcode';
|
| 27 |
+
}
|
app/code/community/Zookal/Mock/Model/Observer.php
CHANGED
|
@@ -25,8 +25,10 @@ class Zookal_Mock_Model_Observer
|
|
| 25 |
protected $_mappingModel = array(
|
| 26 |
'Mage_Wishlist' => 'wishlist',
|
| 27 |
'Mage_Weee' => 'weee',
|
|
|
|
| 28 |
'Mage_Tag' => 'tag',
|
| 29 |
'Mage_Tax' => 'tax',
|
|
|
|
| 30 |
'Mage_Sales' => 'sales',
|
| 31 |
'Mage_Review' => 'review',
|
| 32 |
'Mage_Reports' => 'reports',
|
|
@@ -53,15 +55,17 @@ class Zookal_Mock_Model_Observer
|
|
| 53 |
'Mage_Adminhtml' => '_mageMockIncludePath',
|
| 54 |
'Mage_Catalog' => '_mageCatalog',
|
| 55 |
'Mage_Customer' => '_mageCustomer',
|
| 56 |
-
'Mage_GiftMessage' => '
|
| 57 |
'Mage_GoogleCheckout' => '_mageGoogleCheckout',
|
| 58 |
'Mage_Log' => '_mageMockIncludePath',
|
| 59 |
'Mage_ProductAlert' => '_mageMockHelper',
|
| 60 |
'Mage_Review' => '_mageMockHelper',
|
|
|
|
| 61 |
'Mage_Tag' => '_mageMockIncludePath',
|
| 62 |
'Mage_Tax' => '_mageTaxClass',
|
|
|
|
| 63 |
'Mage_Wishlist' => '_mageMockHelper',
|
| 64 |
-
'Mage_Weee' => '
|
| 65 |
);
|
| 66 |
|
| 67 |
/**
|
|
@@ -147,7 +151,7 @@ class Zookal_Mock_Model_Observer
|
|
| 147 |
* @param $moduleName
|
| 148 |
* @param $resource
|
| 149 |
*/
|
| 150 |
-
protected function
|
| 151 |
{
|
| 152 |
$this->_mageMockHelper($pathPrefix, $moduleName, $resource);
|
| 153 |
$this->_mageMockIncludePath();
|
| 25 |
protected $_mappingModel = array(
|
| 26 |
'Mage_Wishlist' => 'wishlist',
|
| 27 |
'Mage_Weee' => 'weee',
|
| 28 |
+
'Mage_Usa' => 'usa',
|
| 29 |
'Mage_Tag' => 'tag',
|
| 30 |
'Mage_Tax' => 'tax',
|
| 31 |
+
'Mage_Shipping' => 'shipping',
|
| 32 |
'Mage_Sales' => 'sales',
|
| 33 |
'Mage_Review' => 'review',
|
| 34 |
'Mage_Reports' => 'reports',
|
| 55 |
'Mage_Adminhtml' => '_mageMockIncludePath',
|
| 56 |
'Mage_Catalog' => '_mageCatalog',
|
| 57 |
'Mage_Customer' => '_mageCustomer',
|
| 58 |
+
'Mage_GiftMessage' => '_mageMockHelperIncludePath',
|
| 59 |
'Mage_GoogleCheckout' => '_mageGoogleCheckout',
|
| 60 |
'Mage_Log' => '_mageMockIncludePath',
|
| 61 |
'Mage_ProductAlert' => '_mageMockHelper',
|
| 62 |
'Mage_Review' => '_mageMockHelper',
|
| 63 |
+
'Mage_Shipping' => '_mageMockHelperIncludePath',
|
| 64 |
'Mage_Tag' => '_mageMockIncludePath',
|
| 65 |
'Mage_Tax' => '_mageTaxClass',
|
| 66 |
+
'Mage_Usa' => '_mageMockHelper',
|
| 67 |
'Mage_Wishlist' => '_mageMockHelper',
|
| 68 |
+
'Mage_Weee' => '_mageMockHelperIncludePath',
|
| 69 |
);
|
| 70 |
|
| 71 |
/**
|
| 151 |
* @param $moduleName
|
| 152 |
* @param $resource
|
| 153 |
*/
|
| 154 |
+
protected function _mageMockHelperIncludePath($pathPrefix, $moduleName, $resource)
|
| 155 |
{
|
| 156 |
$this->_mageMockHelper($pathPrefix, $moduleName, $resource);
|
| 157 |
$this->_mageMockIncludePath();
|
app/code/community/Zookal/Mock/etc/config.xml
CHANGED
|
@@ -16,6 +16,15 @@
|
|
| 16 |
<zookal_mock>
|
| 17 |
<class>Zookal_Mock_Model</class>
|
| 18 |
</zookal_mock>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
</models>
|
| 20 |
<blocks>
|
| 21 |
<zookal_mock>
|
|
@@ -45,11 +54,11 @@
|
|
| 45 |
</translate>
|
| 46 |
</adminhtml>
|
| 47 |
<default>
|
| 48 |
-
<
|
| 49 |
<zookalmock>
|
| 50 |
<enable_method_log>0</enable_method_log>
|
| 51 |
</zookalmock>
|
| 52 |
-
</
|
| 53 |
</default>
|
| 54 |
<phpunit>
|
| 55 |
<suite>
|
| 16 |
<zookal_mock>
|
| 17 |
<class>Zookal_Mock_Model</class>
|
| 18 |
</zookal_mock>
|
| 19 |
+
<!--
|
| 20 |
+
Example rewrite when Mage_Shipping is disabled and/or files are removed.
|
| 21 |
+
Add this rewrite xml somewhere into your config.xml files.
|
| 22 |
+
<catalog>
|
| 23 |
+
<rewrite>
|
| 24 |
+
<product>Zookal_Mock_Model_Catalog_Model_Product</product>
|
| 25 |
+
</rewrite>
|
| 26 |
+
</catalog>
|
| 27 |
+
-->
|
| 28 |
</models>
|
| 29 |
<blocks>
|
| 30 |
<zookal_mock>
|
| 54 |
</translate>
|
| 55 |
</adminhtml>
|
| 56 |
<default>
|
| 57 |
+
<dev>
|
| 58 |
<zookalmock>
|
| 59 |
<enable_method_log>0</enable_method_log>
|
| 60 |
</zookalmock>
|
| 61 |
+
</dev>
|
| 62 |
</default>
|
| 63 |
<phpunit>
|
| 64 |
<suite>
|
app/code/community/Zookal/Mock/etc/system.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<config>
|
| 3 |
<sections>
|
| 4 |
-
<
|
| 5 |
<groups>
|
| 6 |
<zookalmock translate="label">
|
| 7 |
<label>Object Mock [Zookal_Mock Module]</label>
|
|
@@ -24,6 +24,6 @@
|
|
| 24 |
</fields>
|
| 25 |
</zookalmock>
|
| 26 |
</groups>
|
| 27 |
-
</
|
| 28 |
</sections>
|
| 29 |
</config>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<config>
|
| 3 |
<sections>
|
| 4 |
+
<dev>
|
| 5 |
<groups>
|
| 6 |
<zookalmock translate="label">
|
| 7 |
<label>Object Mock [Zookal_Mock Module]</label>
|
| 24 |
</fields>
|
| 25 |
</zookalmock>
|
| 26 |
</groups>
|
| 27 |
+
</dev>
|
| 28 |
</sections>
|
| 29 |
</config>
|
package.xml
CHANGED
|
@@ -1,26 +1,34 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Zookal_Mock</name>
|
| 4 |
-
<version>1.0.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="https://github.com/Zookal/magento-mock">OSL</license>
|
| 7 |
<channel>community</channel>
|
| 8 |
<extends/>
|
| 9 |
<summary>Transparent auto detecting of disabled core modules & exten. Providing mock objects for not breaking Magento.</summary>
|
| 10 |
-
<description><
|
| 11 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 12 |

|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |

|
| 17 |
<p>If you try to disable e.g. Mage_Newsletter or Mage_Wishlist or ... and you call certain parts of the backend or some rare parts of the frontend you will get
|
| 18 |
errors that Magento cannot find the class XYZ. Best examples are the two previoulsy mentioned. If you have disabled them and you open in the backend a
|
| 19 |
customer entry to edit it, the page will generate an error. Mage_Customer Edit has many dependencies with other modules. So the <strong>Zookal Mock
|
| 20 |
Module</strong> will provide you mock objects which catches all method calls to disabled classes of that modules without breaking anything.</p>
|
| 21 |

|
| 22 |
-
<p><strong>Uninstalling payment modules</strong>: If you try to remove a payment module (
|
| 23 |
-
cannot open anymore all orders associated with that module. The reason is that the tables
|
| 24 |
the method which referers to the model for loading payment relevant informations. Please see below how to uninstall your payment module without touching
|
| 25 |
database tables.</p>
|
| 26 |

|
|
@@ -35,6 +43,7 @@
|
|
| 35 |
<li>Mage_Rating</li>
|
| 36 |
<li>Mage_Tag</li>
|
| 37 |
<li>Mage_Tax</li>
|
|
|
|
| 38 |
<li>Mage_Log</li>
|
| 39 |
<li>Mage_Backup</li>
|
| 40 |
<li>Mage_Customer</li>
|
|
@@ -51,25 +60,21 @@
|
|
| 51 |
<p>Also we can't delete the database tables from some disabled modules as e.g. CatalogIndex relies von customer_group tables
|
| 52 |
or Customer relies on some tax tables when tax is disabled.</p>
|
| 53 |

|
| 54 |
-
<p>At Zookal we have the following modules disabled: Mage_AdminNotification, Mage_Authorizenet, Mage_Backup, Mage_Captcha, Mage_Compiler, Mage_Connect,
|
| 55 |
-
Mage_GoogleCheckout, Mage_GoogleBase, Mage_Install, Mage_Log, Mage_Paypal, Mage_PaypalUk, Mage_Poll, Mage_ProductAlert, Mage_Review, Mage_Rating,
|
| 56 |
-
Mage_Rss, Mage_Sendfriend, Mage_Tag, Mage_Usa, Mage_Wishlist, Mage_XmlConnect, Phoenix_Moneybookers.</p>
|
| 57 |
-

|
| 58 |
<h2>
|
| 59 |
How do I
|
| 60 |
disable a module?</h2>
|
| 61 |

|
| 62 |
<p>Add in your custom app/etc/modules/Vendor_NameSpace.xml</p>
|
| 63 |

|
| 64 |
-
<
|
| 65 |
-
&
|
| 66 |
-
&
|
| 67 |
-
&
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
&
|
|
|
|
| 71 |
</pre>
|
| 72 |
-
</div>
|
| 73 |

|
| 74 |
<h2>
|
| 75 |
How do I uninstall a payment module?</h2>
|
|
@@ -80,42 +85,43 @@
|
|
| 80 |

|
| 81 |
<p>In one of your local modules add the following "backup" entry into the config.xml:</p>
|
| 82 |

|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
&
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
&
|
|
|
|
|
|
|
| 95 |
</pre>
|
| 96 |
-
</div>
|
| 97 |

|
| 98 |
<p>The above xml contains the section where Mage_Paypal module has been disabled and previously used in orders.</p>
|
| 99 |

|
| 100 |
<p>No other database updates are required. Clear the caches and check in the backend some orders related to that payment method. You will now see a key/value
|
| 101 |
list of the payment details.</p>
|
| 102 |

|
| 103 |
-
<p>The backend mock payment block has an integrated event
|
| 104 |

|
| 105 |
-
<p>The frontend mock payment block uses the default block
|
| 106 |

|
| 107 |
<h2>
|
| 108 |
I've disabled and removed Mage_Adminhtml</h2>
|
| 109 |

|
| 110 |
<p>You rock!</p>
|
| 111 |

|
| 112 |
-
<p>Did you remove every Adminhtml area via
|
| 113 |

|
| 114 |
<p>Running a backend-less version of Magento saves you processor time, space, speeds up your store and improves security. All missing required adminhtml files
|
| 115 |
will be transparently mocked. Nothing to configure!</p>
|
| 116 |

|
| 117 |
-
|
| 118 |
-
But how do I maintain a backend-less store
|
| 119 |

|
| 120 |
<p>You have two solutions:</p>
|
| 121 |

|
|
@@ -128,7 +134,7 @@
|
|
| 128 |
<p>(1) If having multiple servers: Make sure that you connect only via SSL encryption to your MySQL server. Someone is spying :-(``</p>
|
| 129 |

|
| 130 |
<p>(2) There is currently a feature missing in n98-magerun <a href="https://github.com/netz98/n98-magerun/issues/309">https://github.com/netz98/n98-magerun/issues/309</a>
|
| 131 |
-
that you cannot configure
|
| 132 |

|
| 133 |
<h2>
|
| 134 |
I've disabled module
|
|
@@ -136,33 +142,33 @@
|
|
| 136 |

|
| 137 |
<p>Let's say you disabled Mage_Dataflow but enabled Mage_Catalog and the system is presenting you:</p>
|
| 138 |

|
| 139 |
-
<pre>
|
| 140 |
-
|
|
|
|
|
|
|
| 141 |

|
| 142 |
<p>You have two possibilities:</p>
|
| 143 |

|
| 144 |
<ol>
|
| 145 |
<li>Edit app/etc/modules/Mage_*.xml and remove the appropriate dependencies.</li>
|
| 146 |
-
<li>Edit your main index.php file and add this custom config model to
|
| 147 |
</li>
|
| 148 |
</ol>
|
| 149 |
-
<
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
<span class="p">));</span>
|
| 154 |
</pre>
|
| 155 |
-
</div>
|
| 156 |

|
| 157 |
-
<p>The config model
|
| 158 |
sense ;-)</p>
|
| 159 |

|
| 160 |
<h2>I've disabled
|
| 161 |
Mage_[Bundle|Rating|Review|Wishlist|Usa] but getting a weird error!</h2>
|
| 162 |

|
| 163 |
-
<p>The error is: <
|
| 164 |

|
| 165 |
-
<p>Digging deeper Mage_Core_Model_Config would like to access
|
| 166 |
Mage_[Bundle|Rating|Review|Wishlist|Usa] requires the module Mage_XmlConnect. The notice message appears because the core helper is not yet initialized.</p>
|
| 167 |

|
| 168 |
<p>So deactivating Mage_XmlConnect works out as the solution. It has many dependencies. Btw: Only if you have the Magento own mobile app you'll need the
|
|
@@ -177,10 +183,32 @@
|
|
| 177 |

|
| 178 |
<ol>
|
| 179 |
<li>Customize your theme in that way that no one can access (/).</li>
|
| 180 |
-
<li>Create your own front router by adding an observer to the event
|
| 181 |
</ol>
|
| 182 |
<p>Blocks are also gone.</p>
|
| 183 |

|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 184 |
<h2>
|
| 185 |
Can I remove the files of the disabled modules?</h2>
|
| 186 |

|
|
@@ -191,6 +219,7 @@
|
|
| 191 |
<li>Mage_Adminhtml</li>
|
| 192 |
<li>Mage_Log</li>
|
| 193 |
<li>Mage_Tag</li>
|
|
|
|
| 194 |
</ul>
|
| 195 |
<p>which have hardcoded dependencies through the whole Mage_Adminhtml code (if adminhtml has not been removed).</p>
|
| 196 |

|
|
@@ -200,7 +229,7 @@
|
|
| 200 |
Will there be a performance increase?</h2>
|
| 201 |

|
| 202 |
<p>Yes there will be a performance increase due to less loading of classes and xml files.</p>
|
| 203 |
-
|
| 204 |

|
| 205 |
<h2>
|
| 206 |
About</h2>
|
|
@@ -227,24 +256,16 @@
|
|
| 227 |

|
| 228 |
<p>Made in Sydney, Australia :-)</p>
|
| 229 |
</description>
|
| 230 |
-
<notes>1.0.
|
| 231 |
-

|
| 232 |
-
- Added Mage_CatalogInventory mocks
|
| 233 |
-
- Added Mage_Usa fallback mock model. Errors occur when loading system/config section and files of Mage_Usa have been removed
|
| 234 |
-

|
| 235 |
-
1.0.1
|
| 236 |
-

|
| 237 |
-
- Added Mage_Weee mocks
|
| 238 |
-
- Added Mage_GiftMessage mocks
|
| 239 |
-
Possibility to run mock module in a shell script
|
| 240 |

|
| 241 |
-
|
| 242 |

|
| 243 |
-
-
|
|
|
|
| 244 |
<authors><author><name>Cyrill Schumacher</name><user>cyrills</user><email>cyrill@schumacher.fm</email></author></authors>
|
| 245 |
-
<date>2014-04-
|
| 246 |
-
<time>
|
| 247 |
-
<contents><target name="magecommunity"><dir name="Zookal"><dir name="Mock"><dir><dir name="Block"><dir name="Payment"><file name="Backend.php" hash="b9229921a72e19f692cb9d6924221564"/><file name="Frontend.php" hash="833bd12a2d8c3b8ed489e283189ed122"/></dir></dir><dir name="Helper"><file name="Data.php" hash="
|
| 248 |
<compatible/>
|
| 249 |
<dependencies><required><php><min>5.3.0</min><max>6.0.0</max></php></required></dependencies>
|
| 250 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Zookal_Mock</name>
|
| 4 |
+
<version>1.0.3</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="https://github.com/Zookal/magento-mock">OSL</license>
|
| 7 |
<channel>community</channel>
|
| 8 |
<extends/>
|
| 9 |
<summary>Transparent auto detecting of disabled core modules & exten. Providing mock objects for not breaking Magento.</summary>
|
| 10 |
+
<description><p><strong>
|
| 11 |
+
Transparent autodetecting of disabled core modules and extensions and providing mock objects for not
|
| 12 |
+
breaking Magento.
|
| 13 |
+
<ul>
|
| 14 |
+
<li>Nothing to configure. *</li>
|
| 15 |
+
<li>No class rewrites.</li>
|
| 16 |
+
<li>Only one observer. </li>
|
| 17 |
+
<li>Works out of the box.</li>
|
| 18 |
+
</ul>
|
| 19 |
+
</strong>
|
| 20 |

|
| 21 |
+
* only if you disable modules which have dependencies to other disabled modules. See documentation.
|
| 22 |
+

|
| 23 |
+
</p>
|
| 24 |

|
| 25 |
<p>If you try to disable e.g. Mage_Newsletter or Mage_Wishlist or ... and you call certain parts of the backend or some rare parts of the frontend you will get
|
| 26 |
errors that Magento cannot find the class XYZ. Best examples are the two previoulsy mentioned. If you have disabled them and you open in the backend a
|
| 27 |
customer entry to edit it, the page will generate an error. Mage_Customer Edit has many dependencies with other modules. So the <strong>Zookal Mock
|
| 28 |
Module</strong> will provide you mock objects which catches all method calls to disabled classes of that modules without breaking anything.</p>
|
| 29 |

|
| 30 |
+
<p><strong>Uninstalling payment modules</strong>: If you try to remove a payment module (which has already been used by customers in the checkout) you
|
| 31 |
+
cannot open anymore all orders associated with that module. The reason is that the tables sales_flat_*_payment contains in the column method
|
| 32 |
the method which referers to the model for loading payment relevant informations. Please see below how to uninstall your payment module without touching
|
| 33 |
database tables.</p>
|
| 34 |

|
| 43 |
<li>Mage_Rating</li>
|
| 44 |
<li>Mage_Tag</li>
|
| 45 |
<li>Mage_Tax</li>
|
| 46 |
+
<li>Mage_Shipping</li>
|
| 47 |
<li>Mage_Log</li>
|
| 48 |
<li>Mage_Backup</li>
|
| 49 |
<li>Mage_Customer</li>
|
| 60 |
<p>Also we can't delete the database tables from some disabled modules as e.g. CatalogIndex relies von customer_group tables
|
| 61 |
or Customer relies on some tax tables when tax is disabled.</p>
|
| 62 |

|
|
|
|
|
|
|
|
|
|
|
|
|
| 63 |
<h2>
|
| 64 |
How do I
|
| 65 |
disable a module?</h2>
|
| 66 |

|
| 67 |
<p>Add in your custom app/etc/modules/Vendor_NameSpace.xml</p>
|
| 68 |

|
| 69 |
+
<pre>
|
| 70 |
+
&lt;config&gt;
|
| 71 |
+
&lt;modules&gt;
|
| 72 |
+
&lt;Mage_ModuleName&gt;
|
| 73 |
+
&lt;active&gt;false&lt;/active&gt;
|
| 74 |
+
&lt;/Mage_ModuleName&gt;
|
| 75 |
+
&lt;/modules&gt;
|
| 76 |
+
&lt;/config&gt;
|
| 77 |
</pre>
|
|
|
|
| 78 |

|
| 79 |
<h2>
|
| 80 |
How do I uninstall a payment module?</h2>
|
| 85 |

|
| 86 |
<p>In one of your local modules add the following "backup" entry into the config.xml:</p>
|
| 87 |

|
| 88 |
+

|
| 89 |
+
<pre>
|
| 90 |
+
&lt;config&gt;
|
| 91 |
+
&lt;default&gt;
|
| 92 |
+
&lt;payment&gt;
|
| 93 |
+
&lt;paypal_standard&gt;
|
| 94 |
+
&lt;model&gt;zookal_mock/mocks_mage_payment&lt;/model&gt;
|
| 95 |
+
&lt;/paypal_standard&gt;
|
| 96 |
+
&lt;another_payment_method&gt;
|
| 97 |
+
&lt;model&gt;zookal_mock/mocks_mage_payment&lt;/model&gt;
|
| 98 |
+
&lt;/another_payment_method&gt;
|
| 99 |
+
&lt;/payment&gt;
|
| 100 |
+
&lt;/default&gt;
|
| 101 |
+
&lt;/config&gt;
|
| 102 |
</pre>
|
|
|
|
| 103 |

|
| 104 |
<p>The above xml contains the section where Mage_Paypal module has been disabled and previously used in orders.</p>
|
| 105 |

|
| 106 |
<p>No other database updates are required. Clear the caches and check in the backend some orders related to that payment method. You will now see a key/value
|
| 107 |
list of the payment details.</p>
|
| 108 |

|
| 109 |
+
<p>The backend mock payment block has an integrated event mock_payment_backend_block_to_html_before with which you can modify the output.</p>
|
| 110 |

|
| 111 |
+
<p>The frontend mock payment block uses the default block Mage_Core_Block_Abstract which allows you the usual modifications.</p>
|
| 112 |

|
| 113 |
<h2>
|
| 114 |
I've disabled and removed Mage_Adminhtml</h2>
|
| 115 |

|
| 116 |
<p>You rock!</p>
|
| 117 |

|
| 118 |
+
<p>Did you remove every Adminhtml area via $ find . -iname "adminhtml" -type d -exec rm -Rf {} + ?</p>
|
| 119 |

|
| 120 |
<p>Running a backend-less version of Magento saves you processor time, space, speeds up your store and improves security. All missing required adminhtml files
|
| 121 |
will be transparently mocked. Nothing to configure!</p>
|
| 122 |

|
| 123 |
+

|
| 124 |
+
But how do I maintain a backend-less store?
|
| 125 |

|
| 126 |
<p>You have two solutions:</p>
|
| 127 |

|
| 134 |
<p>(1) If having multiple servers: Make sure that you connect only via SSL encryption to your MySQL server. Someone is spying :-(``</p>
|
| 135 |

|
| 136 |
<p>(2) There is currently a feature missing in n98-magerun <a href="https://github.com/netz98/n98-magerun/issues/309">https://github.com/netz98/n98-magerun/issues/309</a>
|
| 137 |
+
that you cannot configure Mage:run() to use a custom configuration model as explained below.</p>
|
| 138 |

|
| 139 |
<h2>
|
| 140 |
I've disabled module
|
| 142 |

|
| 143 |
<p>Let's say you disabled Mage_Dataflow but enabled Mage_Catalog and the system is presenting you:</p>
|
| 144 |

|
| 145 |
+
<pre>
|
| 146 |
+
"Mage_Catalog" requires module "Mage_Dataflow"
|
| 147 |
+
</pre>
|
| 148 |
+

|
| 149 |

|
| 150 |
<p>You have two possibilities:</p>
|
| 151 |

|
| 152 |
<ol>
|
| 153 |
<li>Edit app/etc/modules/Mage_*.xml and remove the appropriate dependencies.</li>
|
| 154 |
+
<li>Edit your main index.php file and add this custom config model to Mage::run()
|
| 155 |
</li>
|
| 156 |
</ol>
|
| 157 |
+
<pre>
|
| 158 |
+
Mage::run($mageRunCode, $mageRunType, array(
|
| 159 |
+
'config_model' => 'Zookal_Mock_Model_Config'
|
| 160 |
+
));
|
|
|
|
| 161 |
</pre>
|
|
|
|
| 162 |

|
| 163 |
+
<p>The config model Zookal_Mock_Model_Config will automatically resolve invalid dependencies for disabled modules. But some dependency really make
|
| 164 |
sense ;-)</p>
|
| 165 |

|
| 166 |
<h2>I've disabled
|
| 167 |
Mage_[Bundle|Rating|Review|Wishlist|Usa] but getting a weird error!</h2>
|
| 168 |

|
| 169 |
+
<p>The error is: <pre>Notice: Trying to get property of non-object in app/code/core/Mage/Core/Model/Config.php on line 1239.</pre></p>
|
| 170 |

|
| 171 |
+
<p>Digging deeper Mage_Core_Model_Config would like to access Mage::helper('core')->__() to display you the error message that
|
| 172 |
Mage_[Bundle|Rating|Review|Wishlist|Usa] requires the module Mage_XmlConnect. The notice message appears because the core helper is not yet initialized.</p>
|
| 173 |

|
| 174 |
<p>So deactivating Mage_XmlConnect works out as the solution. It has many dependencies. Btw: Only if you have the Magento own mobile app you'll need the
|
| 183 |

|
| 184 |
<ol>
|
| 185 |
<li>Customize your theme in that way that no one can access (/).</li>
|
| 186 |
+
<li>Create your own front router by adding an observer to the event controller_front_init_routers.</li>
|
| 187 |
</ol>
|
| 188 |
<p>Blocks are also gone.</p>
|
| 189 |

|
| 190 |
+

|
| 191 |
+
<h2>I've disabled Mage_Shipping but the checkout still won't work</h2>
|
| 192 |
+

|
| 193 |
+
<p>You need to trick the Sales and the Checkout module. You have to place a rewrite of <code>Mage_Catalog_Model_Product</code> somewhere in your
|
| 194 |
+
codebase or disable the comment in the mocks modules config.xml file.</p>
|
| 195 |
+

|
| 196 |
+
<p>Add the following method to your <code>Mage_Catalog_Model_Product</code> rewrite:</p>
|
| 197 |
+

|
| 198 |
+
<pre><code> /**
|
| 199 |
+
* @return bool
|
| 200 |
+
*/
|
| 201 |
+
public function getIsVirtual()
|
| 202 |
+
{
|
| 203 |
+
return true;
|
| 204 |
+
}
|
| 205 |
+
</code></pre>
|
| 206 |
+

|
| 207 |
+
<p>Alternatively you can use the class <code>Zookal_Mock_Model_Catalog_Model_Product</code> provided by this module.</p>
|
| 208 |
+

|
| 209 |
+
<p>Do <em>not</em> change anything in the database as there are several columns and attributes whose name is <code>is_virtual</code> or <code>virtual</code>.</p>
|
| 210 |
+

|
| 211 |
+

|
| 212 |
<h2>
|
| 213 |
Can I remove the files of the disabled modules?</h2>
|
| 214 |

|
| 219 |
<li>Mage_Adminhtml</li>
|
| 220 |
<li>Mage_Log</li>
|
| 221 |
<li>Mage_Tag</li>
|
| 222 |
+
<li>Mage_shipping</li>
|
| 223 |
</ul>
|
| 224 |
<p>which have hardcoded dependencies through the whole Mage_Adminhtml code (if adminhtml has not been removed).</p>
|
| 225 |

|
| 229 |
Will there be a performance increase?</h2>
|
| 230 |

|
| 231 |
<p>Yes there will be a performance increase due to less loading of classes and xml files.</p>
|
| 232 |
+

|
| 233 |

|
| 234 |
<h2>
|
| 235 |
About</h2>
|
| 256 |

|
| 257 |
<p>Made in Sydney, Australia :-)</p>
|
| 258 |
</description>
|
| 259 |
+
<notes>1.0.3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 260 |

|
| 261 |
+
- Added Mage_Shipping mocks. Please read documentation how to properly disable this module.
|
| 262 |

|
| 263 |
+
https://github.com/Zookal/magento-mock
|
| 264 |
+
</notes>
|
| 265 |
<authors><author><name>Cyrill Schumacher</name><user>cyrills</user><email>cyrill@schumacher.fm</email></author></authors>
|
| 266 |
+
<date>2014-04-26</date>
|
| 267 |
+
<time>02:27:10</time>
|
| 268 |
+
<contents><target name="magecommunity"><dir name="Zookal"><dir name="Mock"><dir><dir name="Block"><dir name="Payment"><file name="Backend.php" hash="b9229921a72e19f692cb9d6924221564"/><file name="Frontend.php" hash="833bd12a2d8c3b8ed489e283189ed122"/></dir></dir><dir name="Helper"><file name="Data.php" hash="a2191e423cc4d2714ad7e4456ab62e1a"/></dir><dir name="Model"><dir name="Catalog"><dir name="Model"><file name="Product.php" hash="79987b4bb930753e791a0724d3a191ca"/></dir></dir><file name="Config.php" hash="afbeb63c5a19a6911ab508477586f5e3"/><dir name="Mocks"><file name="Abstract.php" hash="7062a0f8e5894d8e94caedc1ad41fc1f"/><dir name="Mage"><dir name="AdminNotification"><dir name="Model"><file name="Survey.php" hash="6321f6d417c4c2f414f7b29de62f4cc4"/></dir></dir><dir name="Adminhtml"><dir name="Helper"><file name="Data.php" hash="7ccc6666f4ef1421a88319510d782f43"/></dir></dir><file name="Block.php" hash="7a2adb47711b912fa320b60e0c3eb3d4"/><dir name="CatalogInventory"><dir name="Model"><dir name="Stock"><file name="Item.php" hash="356a4ec59f91478130a18c75a8794cee"/></dir></dir></dir><dir name="Category"><file name="Collection.php" hash="6c9ac375135ca5269a5f888f022f6399"/><file name="Tree.php" hash="a37ecbc65cd3780ed191ee913509ef06"/></dir><file name="Category.php" hash="3c09f3eea7c89678670d4adeb0c4f708"/><dir name="Class"><dir name="Source"><file name="Customer.php" hash="5567855c827e3c8e925a0716de21dd70"/></dir></dir><file name="Config.php" hash="161f0f71a007fd5c71385bc5862e3108"/><dir name="Customer"><file name="Collection.php" hash="0322cd4a4b062a8fecf6a72cd6d7cbbc"/></dir><file name="Customer.php" hash="18e4ea855de44b6b6b7faabd684fc080"/><file name="Data.php" hash="0ab93919414ae9ecf8ed72f2bf038878"/><dir name="Giftmessage"><dir name="Block"><dir name="Adminhtml"><dir name="Product"><dir name="Helper"><dir name="Form"><file name="Config.php" hash="692dc99836671966ad2ab6a3f1a38871"/></dir></dir></dir></dir></dir></dir><file name="Group.php" hash="fcf85c8c3b24affbd8f2f82456ac3907"/><file name="Item.php" hash="f692effa3010262bfea29b18359d3549"/><dir name="Log"><dir name="Model"><file name="Visitor.php" hash="b8a8343c57f79abd38780594581e9dde"/></dir></dir><file name="Log.php" hash="8371873b2365c863c07c0c0227326b34"/><file name="Message.php" hash="4c812d8f56122fb5290162d6304bd524"/><dir name="Order"><file name="Collection.php" hash="3e8262c4cdda6f710c9e3a40e2b76a94"/><dir name="Grid"><file name="Collection.php" hash="97371286529c7b2ced399a5a51fe9b72"/></dir></dir><file name="Payment.php" hash="9a873df5da7d716854ea52258209928e"/><dir name="Product"><file name="Collection.php" hash="8ab40ba5191188eed78bcab7dd76f558"/></dir><file name="Product.php" hash="f038a1450c4a18059df3239262084e0f"/><dir name="Profile"><file name="Collection.php" hash="931080d96e85927a77f77143b49dadf6"/></dir><dir name="Queue"><file name="Collection.php" hash="c4d7dd95a1a1918a99993484f82d9b3d"/></dir><file name="Quote.php" hash="de3724f95154de0707f47d40ff9a08a8"/><dir name="Rate"><file name="Request.php" hash="62fd4dc319dbbe6938e4f1eb0b7ff3f0"/></dir><file name="Review.php" hash="efd1a3f7dcf45e33f95fe2e76bdfbb5b"/><dir name="Sale"><file name="Collection.php" hash="aa228d612ae734749e9adc382e806cd4"/></dir><file name="Session.php" hash="e6f976be6bd82b367854842f385d1a4a"/><dir name="Shipping"><dir name="Carrier"><file name="Ups.php" hash="af82649c2872ee29583dd08e41d7bffd"/><dir name="Usps"><dir name="Source"><file name="Size.php" hash="3e73101013feb7732324f4b2cac32097"/></dir></dir></dir><dir name="Model"><file name="Config.php" hash="3529b080243f5fb19b1f47278c6aad3a"/><dir name="Rate"><file name="Abstract.php" hash="e923d03075ca9416234eea19b3ccbc0c"/></dir><file name="Shipping.php" hash="20ffbe3eca7e6a1903217edc2834025d"/></dir></dir><file name="Shipping.php" hash="66c75c05f119eabfad44f61a06ee60e1"/><file name="Subscriber.php" hash="908e105fa12c88e0f0a312b42bef35d3"/><dir name="Tag"><dir name="Model"><file name="Tag.php" hash="38a200df605197975e5e294081cf0663"/></dir></dir><file name="Tag.php" hash="bb059453e0978b12350581978b1931af"/><dir name="Tax"><file name="Class.php" hash="cb7a52951105cb7aa0bb9f2c566570a7"/></dir><dir name="Visitor"><file name="Online.php" hash="774df1f34ae162fa52db376afc415823"/></dir><file name="Visitor.php" hash="4c4eb14327dc35144203e28a646ad579"/><dir name="Weee"><dir name="Model"><file name="Tax.php" hash="8c57836668f3c9a3ce4632621ce4533a"/></dir></dir></dir></dir><file name="Observer.php" hash="e2b4ce5a1a438ba82cb3c743d4686644"/></dir><dir name="Test"><dir name="Config"><file name="ConfigTest.php" hash="9801ef844555a09a2189cb4e1916cf95"/><file name="SystemTest.php" hash="b72edbb351b923ccbc2543dc79d859ee"/></dir><dir name="Helper"><file name="DataTest.php" hash="57a4b15ca7d916d295fb95d1f621d6bd"/></dir><dir name="Model"><file name="ConfigTest.php" hash="6db11147c31fdf5ee8456610439e12cd"/><dir name="Mocks"><file name="AbstractTest.php" hash="84cb9162b6f5ee2b755c134ec7b5d765"/><dir name="Mage"><file name="AbstractPHPUnitTestCase.php" hash="a55c209378c6ff4e0785b38e2d61063c"/><dir name="AdminNotification"><dir name="Model"><file name="SurveyTest.php" hash="b96def6058ac4fe111b441791a7776cd"/></dir></dir><dir name="Adminhtml"><dir name="Helper"><file name="DataTest.php" hash="5b3979a82ed70277a1f9bd380628804c"/></dir></dir><file name="BlockTest.php" hash="7df2890ad281722b028b277ffe9f5aec"/><dir name="Category"><file name="CollectionTest.php" hash="30e4d976b5fdb4b4bd3ac27508ddc77f"/><file name="TreeTest.php" hash="5eea6b1f1eb7627b8be2467e9fc44715"/></dir><file name="CategoryTest.php" hash="8bb8f394ac0a6dec4c2c2927e897aa40"/><dir name="Class"><dir name="Source"><file name="CustomerTest.php" hash="9a4efa200d3a3a77517dd94c75b125ed"/></dir></dir><dir name="Customer"><file name="CollectionTest.php" hash="bedff17927077c41ebc2fdea25a9459f"/></dir><file name="CustomerTest.php" hash="6955de25f84e8ea0858b76a9ac84f4bc"/><file name="DataTest.php" hash="2084e46e1c693387e96f5ce5e563f67f"/><file name="GroupTest.php" hash="16dc75c4a737f286f03caab1deb3f539"/><file name="ItemTest.php" hash="6c6241a7c37dac90b6668558822bcfcd"/><dir name="Log"><dir name="Model"><file name="VisitorTest.php" hash="30a29b7af8019f104ce4f6f3184d5326"/></dir></dir><file name="LogTest.php" hash="1392e2f20815b47213e65b6992f85200"/><dir name="Order"><file name="CollectionTest.php" hash="be6ed09849c0ef7fc8d540b8c52de95b"/><dir name="Grid"><file name="CollectionTest.php" hash="f85cae1021ec016a74d6fe466a09db90"/></dir></dir><file name="PaymentTest.php" hash="0b699aaf2e0d93b5221d34269419c9dc"/><dir name="Product"><file name="CollectionTest.php" hash="290019047b0fa844037610b356adaea0"/></dir><file name="ProductTest.php" hash="fd63d2113ab9812d7df8c637961a4460"/><dir name="Profile"><file name="CollectionTest.php" hash="233e2ad2aa2e0dd3da750a827000433f"/></dir><dir name="Queue"><file name="CollectionTest.php" hash="b35aa9892b13e843a35129e004dc3bdb"/></dir><file name="QuoteTest.php" hash="751422cc0c634a2f0ed83029e2d4af03"/><file name="ReviewTest.php" hash="cad6eb2f598adcaba9531af5f2149701"/><dir name="Sale"><file name="CollectionTest.php" hash="0290b5ae630b013cb17f20bed56d856c"/></dir><file name="SessionTest.php" hash="68473113f4b839e57077dc8ec72454ea"/><file name="SubscriberTest.php" hash="c95eff8172514488f80be33e7a78819b"/><dir name="Tag"><dir name="Model"><file name="TagTest.php" hash="02ecb2c555704320e6172abf3aa8875a"/></dir></dir><file name="TagTest.php" hash="fcf844c4e6fa7cd943c5ed9ffcb24a09"/><dir name="Tax"><file name="ClassTest.php" hash="924eed52fe3d58d13acff30c2bfe62c4"/></dir><dir name="Visitor"><file name="OnlineTest.php" hash="467f0b0aa51e1fdd3e840438582a1c44"/></dir><file name="VisitorTest.php" hash="2168aa02549634a9fe1a1f6284fe7c6d"/></dir></dir><file name="ObserverTest.php" hash="3e2ad2bd8eda3e3a6a473ed70cc28b5d"/></dir></dir><dir name="etc"><file name="config.xml" hash="ee1d00461716607d4cfe31e7cdc8b2dd"/><file name="system.xml" hash="3174d8fb6f776dab5343ac6b23a7d347"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Zookal_Mock.xml" hash="4cd2a39bb78e3b877df0e1a6758a2b56"/></dir></target><target name="magelocale"><dir><dir name="en_US"><file name="Zookal_Mock.csv" hash="68b173d35123933bedae6743039dc81d"/></dir></dir></target></contents>
|
| 269 |
<compatible/>
|
| 270 |
<dependencies><required><php><min>5.3.0</min><max>6.0.0</max></php></required></dependencies>
|
| 271 |
</package>
|
