public function misc() { $topics = TopicDao::findAll(); $editions = EditionWithJournalInfoService::findAll(); $journals = JournalDao::findAll(); return Response::view('sitemap.misc', compact('topics', 'editions', "journals"))->header('Content-Type', 'application/xml'); }
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)); }
private static function createEdition(stdClass $parsedEdition) { $journal = JournalDao::findByName($parsedEdition->journal_name); if (!isset($journal)) { throw new Exception('Журнал с таким именем в базе не существует: ' . $parsedEdition->journal_name); } $edition = new stdClass(); $edition->journal_id = $journal->journal_id; $edition->number = $parsedEdition->number; $edition->number_in_year = $parsedEdition->number_in_year; $edition->issue_year = $parsedEdition->issue_year; return $edition; }
public function raw($prefix, $selectedYear, $number) { try { $journal = JournalDao::findByPrefix($prefix); $edition = EditionDao::findByJournalIdAndYearNumber($journal->journal_id, $selectedYear, $number); } catch (NoElementException $e) { App::abort(404, 'Edition not found'); } $articles = ArticleDao::findByEdition($edition->journal_edition_id); foreach ($articles as $article) { $fileName = ArticleService::getArticleFileName($prefix, $selectedYear, $number, $article->sort_order); $article->fileName = $fileName; } return Response::view('edition.raw', compact('articles'))->header('Content-Type', 'text/plain'); }
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); }