namespace App\Http\Controllers\Admin\Operations\FluidbookPublication;
+use Illuminate\Http\Client\Response;
use Illuminate\Support\Facades\Route;
trait CloneOperation
* Create a duplicate of the current entry in the datatabase.
*
* @param int $id
- * @return Response
+ * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function clone($id, $action)
{
$this->crud->hasAccessOrFail('clone');
-
- $entry=$this->crud->model->findOrFail($id);
+ $entry = $this->crud->model->findOrFail($id);
if ($action === 'complete') {
$clonedEntry = $entry->replicate();
} else {
$clonedEntry = $entry->replicateSettings();
}
-
- return (string)$clonedEntry->push();
+ return redirect('/fluidbook-publication/' . $clonedEntry->id . '/edit');
}
}
use App\Console\Commands\WorkshopMigration;
use App\Models\FluidbookPublication;
use Illuminate\Support\Facades\Route;
+
// __('!!Paramètres des fluidbooks')
trait DeletefbOperation
{
});
}
- public function _allowsDelete($entry=null)
+ public function _allowsDelete($entry = null)
{
- if(null===$entry){
- $entry=$this->crud->getEntry();
+ if (null === $entry) {
+ $entry = $this->crud->getEntry();
+ }
+ if (is_numeric($entry)) {
+ $entry = FluidbookPublication::withoutGlobalScopes()->find($entry);
}
- if(!$entry->allowsDelete()){
+ if (!$entry->allowsDelete()) {
return false;
}
- if (!FluidbookPublication::hasPermission($entry)) {
+ if (!FluidbookPublication::hasPermission($entry->id)) {
return false;
}
return true;
*/
public function destroyfb($id)
{
- if (self::_allowsDelete($id)) {
+ if (!$this->_allowsDelete($id)) {
abort(401);
}
if (null === $user) {
return false;
}
+
if ($user->hasPermissionTo(static::$_permissionBase . ':admin')) {
return true;
}
if ($this->id < WorkshopMigration::WS3_BOOK_ID) {
return false;
}
- if ($this->status >= 1) {
+ if ($this->status >= 0) {
return false;
}
return true;
}
}
}
-
-
}