public static function fetchByName($title, $fund, $period, $type, $author, $accountno, $preparedby1, $preparedby2, $certifiedby1, $certifiedby2)
 {
     if (!$title) {
         return;
     }
     //remove "page 1" from title
     $start = strpos($title, " page ");
     if ($start === false) {
         $journaltitle = $title;
     } else {
         $journaltitle = substr($title, 0, $start);
     }
     //search journal with title in database
     //if not found, create
     $journal = Doctrine::getTable('Journal')->findOneByName($journaltitle);
     if (!$journal) {
         //create one
         $journal = new Journal();
         $journal->setName($journaltitle);
         $journal->setFundId($fund->getId());
         $journal->setPeriodId($period->getId());
         $journal->setType($type);
         $journal->setAuthor($author);
         $journal->setAccountno($accountno);
         $journal->setPreparedby1($preparedby1);
         $journal->setPreparedby2($preparedby2);
         $journal->setCertifiedby1($certifiedby1);
         $journal->setCertifiedby2($certifiedby2);
         $journal->save();
     }
     return $journal;
 }