REFACTORING: move part of content business logic into repository
This commit is contained in:
@@ -3,15 +3,33 @@ namespace App\Cms\Interactions\Admin\Content;
|
||||
|
||||
use App\CMS\Contracts\Interaction;
|
||||
use App\CMS\Helpers\CurrentTemplate;
|
||||
use App\Events\CreateNewContent;
|
||||
use App\Http\Requests\Request;
|
||||
use App\Models\Content\Content;
|
||||
use Illuminate\Support\Facades\App;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Illuminate\Support\Str;
|
||||
use Mcamara\LaravelLocalization\Facades\LaravelLocalization;
|
||||
|
||||
class NewContent implements Interaction
|
||||
{
|
||||
protected $content;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->content = App::make(\App\CMS\Contracts\Repositories\Content::class);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Request $request
|
||||
* @param $parameters
|
||||
*
|
||||
* @return Content
|
||||
*/
|
||||
public function handle(Request $request, $parameters)
|
||||
{
|
||||
list($moduleHandler) = $parameters;
|
||||
|
||||
// create new page
|
||||
$page = new Content();
|
||||
$page->template = $request->template;
|
||||
@@ -27,7 +45,7 @@ class NewContent implements Interaction
|
||||
$page->meta_description = $request->metaDescription;
|
||||
$page->content = $request->pageContent;
|
||||
$page->status = $request->status;
|
||||
$page->module_handler = $request->handler;
|
||||
$page->module_handler = $moduleHandler;
|
||||
$page->category_id = (int)$request->category > 0 ? $request->category : null;
|
||||
$page->parent_id = $request->parentPage ? $request->parentPage : null;
|
||||
|
||||
@@ -48,6 +66,9 @@ class NewContent implements Interaction
|
||||
// upload files assigned to content page
|
||||
$page->uploadRelatedFiles($request);
|
||||
|
||||
Event::fire(new CreateNewContent($this));
|
||||
|
||||
|
||||
return $page;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user