use Backpack\CRUD\app\Http\Controllers\CrudController;
use Backpack\CRUD\app\Http\Controllers\Operations\BulkCloneOperation;
use Backpack\CRUD\app\Http\Controllers\Operations\BulkDeleteOperation;
+use Cubist\Backpack\app\Http\Controllers\Operations\BulkPublishOperation;
use Backpack\CRUD\app\Http\Controllers\Operations\CloneOperation;
use Backpack\CRUD\app\Http\Controllers\Operations\CreateOperation;
use Backpack\CRUD\app\Http\Controllers\Operations\DeleteOperation;
use Backpack\CRUD\app\Http\Controllers\Operations\ListOperation;
use Backpack\CRUD\app\Http\Controllers\Operations\RevisionsOperation;
use Backpack\CRUD\app\Http\Controllers\Operations\UpdateOperation;
+
+
use Cubist\Backpack\CubistCrudPanel;
class CubistCrudController extends CrudController
use CloneOperation;
use BulkCloneOperation;
use RevisionsOperation;
+ use BulkPublishOperation;
public function __construct()
{
--- /dev/null
+<?php
+
+namespace Cubist\Backpack\app\Http\Controllers\Operations;
+
+use Cubist\Backpack\CubistBackpackServiceProvider;
+use Illuminate\Support\Facades\Route;
+
+trait BulkPublishOperation
+{
+ /**
+ * Define which routes are needed for this operation.
+ *
+ * @param string $segment Name of the current entity (singular). Used as first URL segment.
+ * @param string $routeName Prefix of the route name.
+ * @param string $controller Name of the current CrudController.
+ */
+ protected function setupBulkPublishRoutes($segment, $routeName, $controller)
+ {
+ Route::post($segment . '/bulk-publish', [
+ 'as' => 'crud.' . $routeName . '.bulkPublish',
+ 'uses' => $controller . '@bulkPublish',
+ ]);
+
+ Route::post($segment . '/bulk-offline', [
+ 'as' => 'crud.' . $routeName . '.bulkOffline',
+ 'uses' => $controller . '@bulkOffline',
+ ]);
+ }
+
+ protected function setupBulkPublishDefaults()
+ {
+ if ($this->_bulk) {
+ $this->crud->enableBulkActions();
+ $this->crud->addButton('bottom', 'bulk_publish', 'view', CubistBackpackServiceProvider::NAMESPACE . '::buttons.bulk_publish', 'begining');
+ $this->crud->addButton('bottom', 'bulk_offline', 'view', CubistBackpackServiceProvider::NAMESPACE . '::buttons.bulk_offline', 'begining');
+ }
+ }
+}
$model = $this->getModelInstance();
if ($this->_bulk) {
- $this->crud->enableBulkActions();
- $this->crud->addButton('bottom', 'bulk_publish', 'view', CubistBackpackServiceProvider::NAMESPACE . '::buttons.bulk_publish', 'begining');
- $this->crud->addButton('bottom', 'bulk_offline', 'view', CubistBackpackServiceProvider::NAMESPACE . '::buttons.bulk_offline', 'begining');
+
if ($this->_clonable) {
$this->crud->addButton('bottom', 'bulk_clone', 'view', 'crud::buttons.bulk_clone', 'beginning');
}