*/ class Mage_Adminhtml_Block_Backup_Grid extends Mage_Adminhtml_Block_Widget_Grid { protected function _construct() { $this->setSaveParametersInSession(true); $this->setId('backupsGrid'); $this->setDefaultSort('time', 'desc'); } /** * Init backups collection */ protected function _prepareCollection() { $collection = Mage::getSingleton('backup/fs_collection'); $this->setCollection($collection); return parent::_prepareCollection(); } /** * Prepare mass action controls * * @return Mage_Adminhtml_Block_Backup_Grid */ protected function _prepareMassaction() { $this->setMassactionIdField('id'); $this->getMassactionBlock()->setFormFieldName('ids'); $this->getMassactionBlock()->addItem('delete', array( 'label'=> Mage::helper('adminhtml')->__('Delete'), 'url' => $this->getUrl('*/*/massDelete'), 'confirm' => Mage::helper('backup')->__('Are you sure you want to delete the selected backup(s)?') )); return $this; } /** * Configuration of grid * * @return Mage_Adminhtml_Block_Backup_Grid */ protected function _prepareColumns() { $url7zip = Mage::helper('adminhtml')->__('The archive can be uncompressed with %s on Windows systems', 'http://www.7-zip.org/', '7-Zip'); $this->addColumn('time', array( 'header' => Mage::helper('backup')->__('Time'), 'index' => 'date_object', 'type' => 'datetime', 'width' => 200 )); $this->addColumn('display_name', array( 'header' => Mage::helper('backup')->__('Name'), 'index' => 'display_name', 'filter' => false, 'sortable' => true, 'width' => 350 )); $this->addColumn('size', array( 'header' => Mage::helper('backup')->__('Size, Bytes'), 'index' => 'size', 'type' => 'number', 'sortable' => true, 'filter' => false )); $this->addColumn('type', array( 'header' => Mage::helper('backup')->__('Type'), 'type' => 'options', 'options' => Mage::helper('backup')->getBackupTypes(), 'index' => 'type', 'width' => 300 )); $this->addColumn('download', array( 'header' => Mage::helper('backup')->__('Download'), 'format' => '$extension   ('.$url7zip.')', 'index' => 'type', 'sortable' => false, 'filter' => false )); if (Mage::helper('backup')->isRollbackAllowed()){ $this->addColumn('action', array( 'header' => Mage::helper('backup')->__('Action'), 'type' => 'action', 'width' => '80px', 'filter' => false, 'sortable' => false, 'actions' => array(array( 'url' => '#', 'caption' => Mage::helper('backup')->__('Rollback'), 'onclick' => 'return backup.rollback(\'$type\', \'$time\');' )), 'index' => 'type', 'sortable' => false )); } return $this; } }