示例#1
0
 private function showPattern($prefix, $view)
 {
     try {
         $journal = JournalDao::findByPrefix($prefix);
     } catch (NoElementException $e) {
         App::abort(404, 'Journal not found');
     }
     $issueYears = EditionDao::listYears($journal->journal_id);
     return view($view)->with(array('journal' => $journal, 'issueYears' => $issueYears));
 }
示例#2
0
 public static function importEdition($line)
 {
     $line = trim($line);
     $parsedEdition = self::parseEditionLine($line);
     $edition = self::createEdition($parsedEdition);
     $editionId = null;
     try {
         $editionId = EditionDao::persist($edition);
     } catch (Exception $e) {
         if (strrpos($e->getMessage(), 'Duplicate entry')) {
             throw new Exception('Номер данного журнала уже имортирован');
         }
         throw $e;
     }
     return $editionId;
 }
示例#3
0
 public function download($articleId, $fileName)
 {
     try {
         $articleRow = ArticleDao::findById($articleId);
     } catch (NoElementException $e) {
         App::abort(404, 'Article not found');
     }
     $article = ArticleService::getEnrichedArticle($articleRow);
     $edition = EditionDao::findById($articleRow->journal_edition_id);
     $journal = JournalDao::findById($edition->journal_id);
     $original_filename = ArticleService::getFilePath($article, $journal, $edition);
     $new_filename = ArticleService::getArticleFileName($journal->prefix, $edition->issue_year, $edition->number_in_year, $article->sort_order);
     if ($fileName != $new_filename) {
         return redirect(route('article.download', [$articleId, $new_filename]), 301);
     }
     $headers = array("Content-Type: application/pdf");
     return response()->download($original_filename, $new_filename, $headers);
 }
示例#4
0
 public function index()
 {
     $years = EditionDao::listAllYears();
     return view('year.index')->with(array('years' => $years));
 }
示例#5
0
 private function byYearPattern($prefix, $selectedYear, $view)
 {
     $editions = EditionDao::listNumbersInYear($prefix, $selectedYear);
     return view($view)->with(array('prefix' => $prefix, 'editions' => $editions, 'selectedYear' => $selectedYear));
 }