示例#1
0
 /**
  * @param \SimpleXMLElement $item
  * @return bool
  */
 public function saveDmmItem(\SimpleXMLElement $item)
 {
     $item = json_decode(json_encode($item));
     $movie = new Movies();
     $movie->id = self::dmmMovieIDToYinxingID($item->product_id);
     $movie->title = $item->title;
     $movie->banngo = $item->product_id;
     $movie->subBanngo = $item->content_id;
     $movie->alt = $item->URL;
     $movie->subtype = $item->service_name;
     $movie->pubdate = $item->date;
     $movie->year = $item->date;
     $movie->images = implode(',', (array) $item->imageURL);
     $movie->previews = implode(',', (array) $item->sampleImageURL->sample_s->image);
     if (!empty($item->iteminfo->keyword)) {
         $tags = [];
         foreach ($item->iteminfo->keyword as $keyword) {
             if (empty($keyword->name)) {
                 continue;
             }
             $tags[] = $keyword->name;
         }
         $movie->tags = implode(',', $tags);
     }
     if (!empty($item->iteminfo->series->id)) {
         $series = new Series();
         $series->id = self::dmmOtherIDConvert($item->iteminfo->series->id);
         $series->name = $item->iteminfo->series->name;
         $movie->series = $series;
     }
     if (!empty($item->iteminfo->maker->id)) {
         $maker = new Makers();
         $maker->id = self::dmmOtherIDConvert($item->iteminfo->maker->id);
         $maker->name = $item->iteminfo->maker->name;
         $movie->maker = $maker;
     }
     if (!empty($item->iteminfo->actress)) {
         $casts = $this->getStaffs($item->iteminfo->actress);
         $casts = $this->processActress($casts);
         if ($casts) {
             $movie->casts = $casts;
         }
     }
     /*
     //Not correct, id convert need fix
     if (!empty($item->iteminfo->director)) {
         $directors = $this->getStaffs($item->iteminfo->director);
         $directors = $this->processDirectors($directors);
         if ($directors) {
             $movie->directors = $directors;
         }
     }
     */
     $res = $movie->save();
     if (!$res) {
         $this->lastDbMessage = $movie->getMessages();
     }
     return $res;
 }