예제 #1
0
 /**
  * Creates a new edition on
  * the passed article ID.
  *
  * @param int  $articleID
  * @param str  $editionContent
  * @param User $user
  *
  * @throws ModelNotFoundException
  *
  * @return Edition
  **/
 public function createEdition($articleID, $editionContent, User $user)
 {
     // TODO: Use a repository static method for this
     if (method_exists(Article::class, 'newQuery')) {
         Article::findOrFail($articleID);
     }
     $edition = new Edition();
     $edition->article_id = $articleID;
     $edition->content = $editionContent;
     $edition->created_by = $user->id;
     $edition->save();
     return $edition;
 }
예제 #2
0
 /**
  * Creates an edition and stores
  * it into the DB.
  *
  * @param User $user
  * @param Article $article
  * @param str $content
  * @param int $count
  *
  * @return Edition
  */
 public function createEdition(User $user, Article $article, $content = null, $count = 1)
 {
     $editions = [];
     if (!$content) {
         $content = static::$defaultContent;
     }
     for ($i = 0; $i < $count; $i++) {
         $editionsCount = count($editions);
         $newContent = $editionsCount > 1 ? $content . $editionsCount : $content;
         $edition = new Edition();
         $edition->content = $newContent;
         $edition->article_id = $article->id;
         $edition->created_by = $user->id;
         $edition->save();
         $editions[] = $edition;
     }
     return count($editions) > 1 ? $editions : $editions[0];
 }