Monday, August 26, 2013

magento remove Product Type virtual product,bundle product and downloadable product.

app/code/core/mage/catalog/model/product/type.php

static public function getOptionArray()
    {
        $options = array();
        foreach(self::getTypes() as $typeId=>$type)
        {
            if($type['label'] != "Virtual Product" && $type["label"] != "Grouped Product" && $type["label"] != "Downloadable Product" && $type["label"] != "Bundle Product")
            {
                $options[$typeId] = Mage::helper('catalog')->__($type['label']);
            }
        }

        return $options;
    }

Wednesday, August 7, 2013

Magento display all categories from product id (product listing page and search product listing page).

$product_model = Mage::getModel('catalog/product');
$product_model->reset();
$_product = $product_model->load($_product->getId());
$all_cats = $product_model->getCategoryIds($_product);
foreach($all_cats as $key => $_categoryId)
{
$category = Mage::getModel('catalog/category')->load($_categoryId);
echo "<br />".$category->getName();
}

Monday, August 5, 2013

PHP Script to calculate time from specific date(Like Facebook)

function time_passed($timestamp)

    $timestamp      = (int) $timestamp;
    $current_time   = time();
    $diff           = $current_time - $timestamp;
  
    $intervals      = array ('year' => 31556926, 'month' => 2629744, 'week' => 604800, 'day' => 86400, 'hour' => 3600, 'minute'=> 60);
  
    if ($diff == 0)
    {
        return 'just now';
    }  

    if ($diff < 60)
    {
        return $diff == 1 ? $diff . ' second ago' : $diff . ' seconds ago';
    }      

    if ($diff >= 60 && $diff < $intervals['hour'])
    {
        $diff = floor($diff/$intervals['minute']);
        return $diff == 1 ? $diff . ' minute ago' : $diff . ' minutes ago';
    }      

    if ($diff >= $intervals['hour'] && $diff < $intervals['day'])
    {
        $diff = floor($diff/$intervals['hour']);
        return $diff == 1 ? $diff . ' hour ago' : $diff . ' hours ago';
    }  

    if ($diff >= $intervals['day'] && $diff < $intervals['week'])
    {
        $diff = floor($diff/$intervals['day']);
        return $diff == 1 ? $diff . ' day ago' : $diff . ' days ago';
    }  

    if ($diff >= $intervals['week'] && $diff < $intervals['month'])
    {
        $diff = floor($diff/$intervals['week']);
        return $diff == 1 ? $diff . ' week ago' : $diff . ' weeks ago';
    }  

    if ($diff >= $intervals['month'] && $diff < $intervals['year'])
    {
        $diff = floor($diff/$intervals['month']);
        return $diff == 1 ? $diff . ' month ago' : $diff . ' months ago';
    }  

    if ($diff >= $intervals['year'])
    {
        $diff = floor($diff/$intervals['year']);
        return $diff == 1 ? $diff . ' year ago' : $diff . ' years ago';
    }
}
echo time_passed(strtotime('2012-08-05')) . '<br />';