Example #1
0
 /**
  * Schreibt das Objekt als eine Word2007 Datei
  *
  * setzt die Extension für $file korrekt
  */
 public function write(File $file)
 {
     if (!$this->isRoot()) {
         throw new \Psc\Exception('Kein write() für nicht-Root-Elemente!');
     }
     try {
         $objWriter = PHPWord_IOFactory::createWriter($this->word, 'Word2007');
         $file->setExtension('docx');
         $objWriter->save((string) $file);
     } catch (\Exception $e) {
         throw $e;
         //throw new \Psc\Exception(sprintf("Fehler '%s' beim Schreiben der Datei '%s'.", $e->getMessage(), $file), 0, $e);
     }
     return $file;
 }
Example #2
0
 /**
  * @return Webforge\Common\System\File
  */
 public function getTestFile()
 {
     /* zuerst setzen wir den ns in einen relativen pfad um */
     $file = Code::mapClassToFile($this->class->getName(), NULL);
     /* entfernt das erste und zweite verzeichnis (das erste ist der .)*/
     $file->getDirectory()->slice(2);
     /* wir fügen den rest des relativen Verzeichnisses an das tests-Verzeichnis an */
     $dir = clone $this->dir;
     $dir->append($file->getDirectory());
     $file = new File($dir, $this->class->getClassName() . 'Test');
     $file->setExtension('.php');
     return $file;
 }
 public function getTargetFile($episode)
 {
     $lang = current($episode->getLanguages());
     /* Serien/<TvShow.title>/Season x|Staffel x/<packagename>.mkv|avi */
     $targetDir = $this->targetDir->sub($episode->getTvShow()->getTitle() . '/' . sprintf($lang == 'de' ? 'Staffel %d' : 'Season %d', $episode->getSeason()->getNum()) . '/');
     $targetFile = new File($targetDir, str_replace(' ', '.', $episode->getPackageName() . '.' . $episode->getRelease()));
     if ($episode->getExtension() !== NULL) {
         $targetFile->setExtension($episode->getExtension());
     } else {
         /* suchen */
         foreach (array('mkv', 'avi') as $format) {
             if ($targetFile->setExtension($format)->exists()) {
                 break;
             }
         }
     }
     return $targetFile;
 }