Пример #1
0
 /**
  * Register any other events for your application.
  *
  * @param \Illuminate\Contracts\Events\Dispatcher $events
  */
 public function boot(DispatcherContract $events)
 {
     parent::boot($events);
     Article::observe(DetachCategoriesBeforeArticleDelete::class);
     Media::observe(UploadFileWhenAddingMedia::class);
     Media::observe(RemoveFileWhenDeletingMedia::class);
     Series::observe(RemoveArticlesWhenDeletingSeries::class);
     Category::observe(DetachArticlesWhenDeletingCategory::class);
 }
Пример #2
0
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function handle()
 {
     $filePath = $this->argument('path');
     $exportData = json_decode(file_get_contents($filePath), true);
     foreach ($exportData as $singleArticle) {
         $user = $this->findOrCreateUserFor($singleArticle);
         $series = $this->findOrCreateSeriesFor($singleArticle);
         $categories = $this->findOrCreateCategoriesFor($singleArticle);
         $article = Article::createFromData($singleArticle['title'], $singleArticle['digest'], $singleArticle['body'], $singleArticle['metadescription']);
         $article->publish(new Carbon($singleArticle['published_at']));
         $this->dispatch(new SaveArticleCommand($article, $user, $categories, $series));
     }
     $this->info('Import procedure completed.');
 }
Пример #3
0
 /**
  * Cancella dal database l'articolo $article.
  *
  * @param Article $article
  * @throws NotDeletedException
  * @throws \Exception
  */
 public function delete(Article $article)
 {
     if (!$article->delete()) {
         throw new NotDeletedException();
     }
 }
Пример #4
0
 public function assignTestSeriesToArticle(Series $series, Article $article)
 {
     $article->series()->associate($series);
     $article->save();
 }
 public function deleting(Article $article)
 {
     $article->categories()->detach();
 }