コード例 #1
0
ファイル: BookService.php プロジェクト: owemus/personal_be
 public function update($id, $data)
 {
     // Checking if book exists
     $book = Book::find($id);
     // If book exists
     if (!empty($book)) {
         // Validating data
         $validator = Validator::make($data, Book::updaterules($id));
         // If there are no errors in data
         if (!$validator->fails()) {
             // Update book
             $book->update($data);
             // Checking if there are any chapters
             if (isset($data['chapters']) && sizeof($data['chapters']) > 0) {
                 // Looping through chapters
                 foreach ($data['chapters'] as $chapter) {
                     if (isset($chapter['id'])) {
                         // Getting the chapter
                         $findchapter = $this->chaptersService->find($book->id, $chapter['id']);
                         // Checking if chapter exists
                         if ($findchapter['success']) {
                             // Updating the chapter
                             $this->chaptersService->update($book->id, $chapter['id'], $chapter);
                         }
                     } else {
                         // Creating the workflow part
                         $this->chaptersService->insert($book->id, $chapter);
                     }
                 }
             }
             // Passing data to response service
             return $this->responseService->returnMessage($book, 'Book was not Updated.');
         } else {
             // Data has errors
             // Passing errors to response service
             return $this->responseService->errorMessage($validator->errors()->all());
         }
     } else {
         // Book not found
         // Returning error message
         return $this->responseService->errorMessage('Book was not Found.');
     }
 }