public function __construct($itemsPerPage = null, $sort = true)
 {
     parent::__construct($itemsPerPage);
     if ($sort) {
         if (class_exists('GridFieldSortableRows')) {
             $this->addComponent(new GridFieldSortableRows('SortOrder'));
         } elseif (class_exists('GridFieldOrderableRows')) {
             $this->addComponent(new GridFieldOrderableRows('SortOrder'));
         }
     }
     if (class_exists('GridFieldBulkManager')) {
         $this->addComponent(new GridFieldBulkManager());
     }
 }
 /**
  * @param int $itemsPerPage
  * @param array|SS_List $mergeRecords
  * @param string $parentType
  * @param string $parentMethod
  * @param string $childMethod
  */
 public function __construct($itemsPerPage = 15, $mergeRecords, $parentType, $parentMethod, $childMethod)
 {
     parent::__construct($itemsPerPage);
     $this->removeComponentsByType('GridFieldAddNewButton');
     $this->addComponent(new GridFieldAddByDBField('buttons-before-left'));
     $this->addComponent(new GridFieldMergeAction($mergeRecords, $parentType, $parentMethod, $childMethod));
     /**
      * @var GridFieldDataColumns $columns
      */
     $columns = $this->getComponentByType('GridFieldDataColumns');
     $columns->setFieldFormatting(array('BlogPostsCount' => function ($value, CategorisationObject $item) {
         return $item->BlogPosts()->Count();
     }));
     $this->changeColumnOrder();
 }
 public function __construct($itemsPerPage = 25)
 {
     parent::__construct($itemsPerPage);
     // $this->addComponent(new GridFieldExportButton());
     $this->addComponent(new CommentsGridFieldAction());
     // Format column
     $columns = $this->getComponentByType('GridFieldDataColumns');
     $columns->setFieldFormatting(array('ParentTitle' => function ($value, &$item) {
         return sprintf('<a href="%s" class="cms-panel-link external-link action" target="_blank">%s</a>', Convert::raw2att($item->Link()), $item->obj('ParentTitle')->forTemplate());
     }));
     // Add bulk option
     $manager = new GridFieldBulkManager();
     $manager->addBulkAction('spam', 'Spam', 'CommentsGridFieldBulkAction_Handlers', array('isAjax' => true, 'icon' => 'cross', 'isDestructive' => false));
     $manager->addBulkAction('approve', 'Approve', 'CommentsGridFieldBulkAction_Handlers', array('isAjax' => true, 'icon' => 'cross', 'isDestructive' => false));
     $manager->removeBulkAction('bulkEdit');
     $manager->removeBulkAction('unLink');
     $this->addComponent($manager);
 }
 /**
  * @param {int} $itemsPerPage How many items per page should show up
  */
 public function __construct($itemsPerPage = null)
 {
     parent::__construct($itemsPerPage);
     $this->removeComponentsByType('GridFieldDetailForm')->addComponent(new FrontEndGridFieldDetailForm());
 }
 public function __construct($itemsPerPage = null, $numberToLimitTo = null)
 {
     parent::__construct($itemsPerPage);
     $this->removeComponentsByType('GridFieldDetailForm');
     $this->addComponent(new LRGridFieldDetailForm('DetailForm', $numberToLimitTo));
 }
 function __construct($itemsPerPage = null)
 {
     parent::__construct($itemsPerPage);
     $this->addComponent(new GridFieldUserColumns());
 }