Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Company_Banner_Block_Adminhtml_Homepage_Grid extends Mage_Adminhtml_Block_Widget_Grid {
- public function __construct() {
- parent::__construct();
- $this->setId("homepageGrid");
- $this->setDefaultSort("order");
- $this->setDefaultDir("DESC");
- $this->setSaveParametersInSession(true);
- }
- public function initForm()
- {
- return $this;
- }
- protected function _prepareCollection()
- {
- $collection = Mage::getModel("company_banner/homepage")
- ->getCollection();
- $collection->getSelect();
- foreach ($collection as $view) {
- if ( $view->getStores() && $view->getStores() != 0 ) {
- $view->setStores(explode(',',$view->getStores()));
- } else {
- $view->setStores(array('0'));
- }
- }
- $this->setCollection($collection);
- return parent::_prepareCollection();
- }
- protected function _prepareColumns()
- {
- $this->addColumn("entity_id", array(
- "header" => Mage::helper("company_banner")->__("ID"),
- "align" => "right",
- "width" => "50px",
- "type" => "number",
- "index" => "entity_id",
- ))
- ->addColumn("title", array(
- "header" => Mage::helper("company_banner")->__("Title"),
- "align" => "left",
- "type" => "text",
- "index" => "title",
- ))
- ->addColumn("subtitle", array(
- "header" => Mage::helper("company_banner")->__("Subtitle"),
- "align" => "left",
- "type" => "text",
- "index" => "subtitle",
- ));
- $this->addColumn('store_id', array(
- 'header' => Mage::helper('company_banner')->__('Store View'),
- 'index' => 'stores',
- 'type' => 'store',
- 'store_all' => true,
- 'store_view' => true,
- 'sortable' => false,
- 'filter_condition_callback' => array($this, '_filterStoreCondition'),
- ));
- return parent::_prepareColumns();
- }
- protected function _filterStoreCondition($collection, $column)
- {
- if (!$value = $column->getFilter()->getValue()) {
- return;
- }
- $this->getCollection()->addFieldToFilter('stores', array('finset' => $value));
- }
- }
- foreach ($collection as $view) {
- if ( $view->getStores() && $view->getStores() != 0 ) {
- $view->setStores(explode(',',$view->getStores()));
- } else {
- $view->setStores(array('0'));
- }
- }
- $this->addColumn('store', array(
- 'header' => 'Website',
- 'index' => 'store',
- 'type' => 'store',
- 'width' => '100px',
- 'store_view'=> true,
- 'display_deleted' => false,
- 'renderer' => 'Namespace_Modulename_Block_Adminhtml_Store',
- ));
- <?php
- class Namespcae_Modulename_Block_Adminhtml_Store
- extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
- {
- public function render(Varien_Object $row)
- { $store=explode(',',$row->getStore());
- $data="";
- if($row->getStore()!="" and $row->getStore()==0)
- {
- $allstore=Mage::app()->getStores();
- foreach($allstore as $astore)
- {
- $data.=$astore->getName().'<br />';
- }
- } else {
- $data="";
- $a=0;
- foreach ($store as $sto)
- {
- $data= $data.Mage::getModel('core/store')->load($sto[$a])->getName().'<br>';
- $a+1;}
- }
- return $data;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement