$collection  = Mage::getModel("seller/seller")->getCollection()->addFieldToFilter('email',$email);
Wednesday, 18 February 2015
Friday, 23 January 2015
Dispatch event
Suppose I like to add an event on payment save
do not add code in core file add it in overwrite file this is just an example
then i will add this code
magento\app\code\core\Mage\Checkout\controllers\OnepageController.php"
on savePaymentAction function
Mage::dispatchEvent('on_payment_methode_save', array('data' => $data));
public function savePaymentAction()
{
if ($this->_expireAjax()) {
return;
}
try {
if (!$this->getRequest()->isPost()) {
$this->_ajaxRedirectResponse();
return;
}
$data = $this->getRequest()->getPost('payment', array());
$result = $this->getOnepage()->savePayment($data);
Mage::dispatchEvent('on_payment_methode_save', array('data' => $data));
// get section and redirect data
$redirectUrl = $this->getOnepage()->getQuote()->getPayment()->getCheckoutRedirectUrl();
if (empty($result['error']) && !$redirectUrl) {
$this->loadLayout('checkout_onepage_review');
$result['goto_section'] = 'review';
$result['update_section'] = array(
'name' => 'review',
'html' => $this->_getReviewHtml()
);
}
if ($redirectUrl) {
$result['redirect'] = $redirectUrl;
}
} catch (Mage_Payment_Exception $e) {
if ($e->getFields()) {
$result['fields'] = $e->getFields();
}
$result['error'] = $e->getMessage();
} catch (Mage_Core_Exception $e) {
$result['error'] = $e->getMessage();
} catch (Exception $e) {
Mage::logException($e);
$result['error'] = $this->__('Unable to set Payment Method.');
}
$this->getResponse()->setBody(Mage::helper('core')->jsonEncode($result));
}
now add an event in your config XML file
<events>
<on_payment_methode_save>
<observers>
<Company_Module_Model_Observer>
<class>Company_Module_Model_Observer</class>
<method>onPaymentSave</method>
</Company_Module_Model_Observer>
</observers>
</on_payment_methode_save>
</events>
and further in your Model/observer.php file
public function orderGridLodBefore(Varien_Event_Observer $observer){
$event = $observer->getEvent()->getData();
}
Thursday, 31 July 2014
override adminhtml block magento
Go to custom module config.xml
this will overrite Mage/adminhtml/block/customer/group/edit/form.php
<config>
<global>
<blocks>
<adminhtml>
<rewrite><customer_group_edit_form>Bill_Checked_Block_Adminhtml_Customer_Group_Edit_Form</customer_group_edit_form>
</rewrite>
</adminhtml>
</blocks>
</global>
</config>
then create file in app\code\local\Package\Module\Block\Adminhtml\Customer\Group\Edit\Form.php
use code
class Package_Module_Block_Adminhtml_Customer_Group_Edit_Form extends Mage_Adminhtml_Block_Customer_Group_Edit_Form
{
protected function _prepareLayout()
{
///Youre code is here
}
}
this will overrite Mage/adminhtml/block/customer/group/edit/form.php
<config>
<global>
<blocks>
<adminhtml>
<rewrite><customer_group_edit_form>Bill_Checked_Block_Adminhtml_Customer_Group_Edit_Form</customer_group_edit_form>
</rewrite>
</adminhtml>
</blocks>
</global>
</config>
then create file in app\code\local\Package\Module\Block\Adminhtml\Customer\Group\Edit\Form.php
use code
class Package_Module_Block_Adminhtml_Customer_Group_Edit_Form extends Mage_Adminhtml_Block_Customer_Group_Edit_Form
{
protected function _prepareLayout()
{
///Youre code is here
}
}
Wednesday, 30 July 2014
Add multiple product images Magento
$newProduct = Mage::getModel(''catalog/product'')->load(productid)
$artworkhid = "image1.jpg,image2.jpg,image3.jpg";
$newProduct->setMediaGallery (array('images'=>array (), 'values'=>array ()));
$imgs = explode(',',$artworkhid);
$i = 1;
foreach($imgs as $ims){
$previewImage = '/image_path/'.$ims;
if(file_exists($previewImage)){
if($i==1){
$newProduct->addImageToMediaGallery ($previewImage, array ('thumbnail','small_image','image'), false, false);
}else{
$newProduct->addImageToMediaGallery ($previewImage, null, false, false);
}
$i++;
}
}
$artworkhid = "image1.jpg,image2.jpg,image3.jpg";
$newProduct->setMediaGallery (array('images'=>array (), 'values'=>array ()));
$imgs = explode(',',$artworkhid);
$i = 1;
foreach($imgs as $ims){
$previewImage = '/image_path/'.$ims;
if(file_exists($previewImage)){
if($i==1){
$newProduct->addImageToMediaGallery ($previewImage, array ('thumbnail','small_image','image'), false, false);
}else{
$newProduct->addImageToMediaGallery ($previewImage, null, false, false);
}
$i++;
}
}
Tuesday, 3 June 2014
Sunday, 18 May 2014
magento basics concept
Magento built in zend framework on object orient concept in MVC architecture Based on EDA(Event Driven Architecture).
Whent an event happens element listen event and sent to event engine.
Whent an event happens element listen event and sent to event engine.
Thursday, 6 March 2014
Index management magento programmatically
get All Index process collection
$allIndex= Mage::getSingleton('index/indexer')->getProcessesCollection();
foreach ($allIndex as $index) {
if ($index->getStatus() == Mage_Index_Model_Process::STATUS_REQUIRE_REINDEX) {
$index->reindexEverything();
//echo "<pre>"; print_r($index->getProcess_id()); echo "</pre>";
}
}
Tuesday, 10 December 2013
get payment method in cart magento
for handling payment method display in cart we use event handling we use config.xml in module or in custom module
app/code/local/regitration/field/etc/config.xml
<?xml version="1.0"?>
<config>
<frontend>
<events>
<payment_method_is_active>
<observers>
<Regitration_Field_Model_observer>
<class>Regitration_Field_Model_observer</class>
<method>payment_method_is_active</method>
</Regitration_Field_Model_observer>
</observers>
</payment_method_is_active>
</events>
</frontend>
</config>
define action in observer file
app/code/local/regitration/field/model/observer.php
<?php
class Regitration_Field_Model_observer {
public function payment_method_is_active($observer){
$event = $observer->getEvent();
$method = $event->getMethodInstance();
$result = $event->getResult();
$session = Mage::getSingleton('checkout/session')->getQuote();
$shippiingcarriers = $session->getShippingAddress()->getShippingMethod();
if ($shippiingcarriers == 'flatrate_flatrate' ){
if($method->getCode() == 'cashondelivery' OR $method->getCode() == 'checkmo' OR $method->getCode() == 'paypal_standard' or $method->getCode()=='purchaseorder'){
$result->isAvailable = false;
}else{
$result->isAvailable = true;
}
}
}
}
?>
app/code/local/regitration/field/etc/config.xml
<?xml version="1.0"?>
<config>
<frontend>
<events>
<payment_method_is_active>
<observers>
<Regitration_Field_Model_observer>
<class>Regitration_Field_Model_observer</class>
<method>payment_method_is_active</method>
</Regitration_Field_Model_observer>
</observers>
</payment_method_is_active>
</events>
</frontend>
</config>
define action in observer file
app/code/local/regitration/field/model/observer.php
<?php
class Regitration_Field_Model_observer {
public function payment_method_is_active($observer){
$event = $observer->getEvent();
$method = $event->getMethodInstance();
$result = $event->getResult();
$session = Mage::getSingleton('checkout/session')->getQuote();
$shippiingcarriers = $session->getShippingAddress()->getShippingMethod();
if ($shippiingcarriers == 'flatrate_flatrate' ){
if($method->getCode() == 'cashondelivery' OR $method->getCode() == 'checkmo' OR $method->getCode() == 'paypal_standard' or $method->getCode()=='purchaseorder'){
$result->isAvailable = false;
}else{
$result->isAvailable = true;
}
}
}
}
?>
Wednesday, 27 November 2013
get cross cell product collection magento
$cart = Mage::getModel('checkout/cart')->getQuote();
$productid = array();
$crossc = array();
foreach ($cart->getAllItems() as $item) {
$productid[] = $item->getProduct()->getId();
foreach($item->getProduct()->getCrossSellProducts() as $crosscell){
$crossc[] = $crosscell['entity_id'];
}
}
$crossce = array_diff($crossc, $productid);
$collection = Mage::getResourceModel('catalog/product_collection')->addAttributeToSelect('*');
$collection->addIdFilter($crossce);
$collection->setPageSize(4);
$productid = array();
$crossc = array();
foreach ($cart->getAllItems() as $item) {
$productid[] = $item->getProduct()->getId();
foreach($item->getProduct()->getCrossSellProducts() as $crosscell){
$crossc[] = $crosscell['entity_id'];
}
}
$crossce = array_diff($crossc, $productid);
$collection = Mage::getResourceModel('catalog/product_collection')->addAttributeToSelect('*');
$collection->addIdFilter($crossce);
$collection->setPageSize(4);
upcell product collection magento
$pid = 2;
$product = Mage::getModel('catalog/product')->load($pid);
$collect = $this->getProduct()->getUpSellProductCollection();
$collect->getItems();
$product = Mage::getModel('catalog/product')->load($pid);
$collect = $this->getProduct()->getUpSellProductCollection();
$collect->getItems();
Subscribe to:
Posts (Atom)