/**
  * 
  * Lädt ein ePaper und liefert das Objekt YumpuEpaper zurück. Bei Fehler wird eine Exception geworfen.
  * @param integer $id
  * @return YumpuEpaper
  * @throws YumpuEpaper_repository_exception
  */
 public static function loadById($id)
 {
     global $wpdb;
     $table_name = $wpdb->prefix . 'yumpu_documents';
     $qry = "SELECT * FROM " . $table_name . " WHERE id='" . intval($id) . "'";
     $row = $wpdb->get_row($qry);
     if (!$row) {
         throw new YumpuEpaper_repository_exception("item not found " . $id);
     }
     $ePaper = new YumpuEpaper();
     $ePaper->setId($row->id);
     $ePaper->setProgress_id($row->progress_id);
     $ePaper->setEpaper_id($row->epaper_id);
     $ePaper->setUrl($row->url);
     $ePaper->setShort_url($row->short_url);
     $ePaper->setTitle($row->title);
     $ePaper->setDescription($row->description);
     $ePaper->setSource_filename($row->source_filename);
     $ePaper->setStatus($row->status);
     $ePaper->setEmbed_code($row->embed_code);
     $YAPI = new YumpuAPI(WP_Yumpu::$API_TOKEN);
     if ($ePaper->getStatus() == "progress") {
         $result = $YAPI->verify_status($ePaper->getProgress_id());
         if ($result['state'] == "ready") {
             //Wenn das Dokument erstellt ist
             $ePaper->setStatus('ready');
             $ePaper->setEpaper_id($result['ePaper_id']);
             $ePaper->setUrl($result['url']);
             $ePaper->setShort_url($result['short_url']);
             $ePaper->setEmbed_code($result['embed_code']);
             YumpuEpaper_repository::store($ePaper);
         }
     }
     return $ePaper;
 }