Dynamic HTML title

This commit is contained in:
Alex Ling 2020-12-31 14:07:10 +00:00
parent 5685dd1cc5
commit af0913df64
5 changed files with 37 additions and 32 deletions

View File

@ -10,12 +10,12 @@ struct ReaderRouter
next layout "reader-error" if entry.err_msg next layout "reader-error" if entry.err_msg
# load progress # load progress
page = [1, entry.load_progress username].max page_idx = [1, entry.load_progress username].max
# start from page 1 if the user has finished reading the entry # start from page 1 if the user has finished reading the entry
page = 1 if entry.finished? username page_idx = 1 if entry.finished? username
redirect env, "/reader/#{title.id}/#{entry.id}/#{page}" redirect env, "/reader/#{title.id}/#{entry.id}/#{page_idx}"
rescue e rescue e
Logger.error e Logger.error e
env.response.status_code = 404 env.response.status_code = 404
@ -30,8 +30,10 @@ struct ReaderRouter
title = (Library.default.get_title env.params.url["title"]).not_nil! title = (Library.default.get_title env.params.url["title"]).not_nil!
entry = (title.get_entry env.params.url["entry"]).not_nil! entry = (title.get_entry env.params.url["entry"]).not_nil!
page = env.params.url["page"].to_i page_idx = env.params.url["page"].to_i
raise "" if page > entry.pages || page <= 0 if page_idx > entry.pages || page_idx <= 0
raise "Page #{page_idx} not found."
end
exit_url = "#{base_url}book/#{title.id}" exit_url = "#{base_url}book/#{title.id}"

View File

@ -19,6 +19,7 @@ macro layout(name)
rescue e rescue e
message = e.to_s message = e.to_s
Logger.error message Logger.error message
page = "Error"
render "src/views/message.html.ecr", "src/views/layout.html.ecr" render "src/views/message.html.ecr", "src/views/layout.html.ecr"
end end
end end

View File

@ -1,7 +1,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="X-UA-Compatible" content="IE=edge"> <meta name="X-UA-Compatible" content="IE=edge">
<title>Mango</title> <title>Mango - <%= page.split("-").map(&.capitalize).join(" ") %></title>
<meta name="description" content="Mango - Manga Server and Web Reader"> <meta name="description" content="Mango - Manga Server and Web Reader">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="<%= base_url %>css/uikit.css" /> <link rel="stylesheet" href="<%= base_url %>css/uikit.css" />

View File

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<% page = "Login" %>
<%= render_component "head" %> <%= render_component "head" %>
<body> <body>

View File

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<html class="reader-bg"> <html class="reader-bg">
<% page = "Reader" %>
<%= render_component "head" %> <%= render_component "head" %>
<body style="position:relative;"> <body style="position:relative;">
@ -107,7 +108,7 @@
<script> <script>
const base_url = "<%= base_url %>"; const base_url = "<%= base_url %>";
const page = <%= page %>; const page = <%= page_idx %>;
const tid = "<%= title.id %>"; const tid = "<%= title.id %>";
const eid = "<%= entry.id %>"; const eid = "<%= entry.id %>";
</script> </script>