Compare commits
3 Commits
7f8d171825
...
fa55c8dc17
Author | SHA1 | Date |
---|---|---|
Bauke | fa55c8dc17 | |
Bauke | 9e64b06c12 | |
Bauke | 3beb305cdf |
|
@ -0,0 +1,9 @@
|
|||
<h2>Mods</h2>
|
||||
<ul>
|
||||
{% for mod_id in mods %}
|
||||
{% let (mod_link, mod_title) = mod_id|drg_mod %}
|
||||
<li>
|
||||
<a href="{{ mod_link }}" target="_blank">{{ mod_title }}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
|
@ -24,15 +24,7 @@
|
|||
</ul>
|
||||
|
||||
{% if let Some(mods) = speedrun.mods %}
|
||||
<h2>Mods</h2>
|
||||
<ul>
|
||||
{% for mod_id in mods %}
|
||||
{% let (mod_link, mod_title) = mod_id|drg_mod %}
|
||||
<li>
|
||||
<a href="{{ mod_link }}" target="_blank">{{ mod_title }}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% include "drg-mods.html" %}
|
||||
{% endif %}
|
||||
|
||||
{% if let Some(chapters) = speedrun.chapters %}
|
||||
|
@ -54,6 +46,12 @@
|
|||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if let Some(drg) = drg %}
|
||||
{% if let Some(mods) = drg.mods %}
|
||||
{% include "drg-mods.html" %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
<iframe
|
||||
src="https://www.youtube-nocookie.com/embed/{{ video_id }}"
|
||||
title="Embedded YouTube video player"
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
id = "_9xtYCGWtn4"
|
||||
page_title = "No HUD Hazard 5 Mining Expedition"
|
||||
tags = ["Deep Rock Galactic", "No HUD"]
|
||||
|
||||
[drg]
|
||||
mods = ["brighter-objects"]
|
||||
---
|
||||
|
||||
## Description
|
||||
|
|
|
@ -7,6 +7,7 @@ Get the DRG mod link and title from a given ID.
|
|||
*/
|
||||
pub fn drg_mod(mod_id: &str) -> askama::Result<(String, &str)> {
|
||||
let mods = std::collections::HashMap::<_, _>::from_iter([
|
||||
("brighter-objects", "Brighter Objects"),
|
||||
("drglib", "DRGLib"),
|
||||
("simplemissiontimer", "SimpleMissionTimer"),
|
||||
]);
|
||||
|
|
|
@ -11,6 +11,9 @@ mod filters;
|
|||
#[derive(Debug, Template)]
|
||||
#[template(path = "video.html")]
|
||||
pub struct VideoTemplate {
|
||||
/// Deep Rock Galactic data.
|
||||
pub drg: Option<DeepRockGalacticData>,
|
||||
|
||||
/// The title of the page.
|
||||
pub page_title: String,
|
||||
|
||||
|
@ -26,6 +29,9 @@ pub struct VideoTemplate {
|
|||
|
||||
#[derive(Debug, Deserialize)]
|
||||
pub struct VideoData {
|
||||
/// Deep Rock Galactic data.
|
||||
pub drg: Option<DeepRockGalacticData>,
|
||||
|
||||
/// The YouTube video ID.
|
||||
pub id: String,
|
||||
|
||||
|
@ -55,6 +61,12 @@ pub struct SpeedrunData {
|
|||
pub mods: Option<Vec<String>>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
pub struct DeepRockGalacticData {
|
||||
/// Deep Rock Galactic mods used in the run.
|
||||
pub mods: Option<Vec<String>>,
|
||||
}
|
||||
|
||||
pub fn write_all(public_dir: &Path) -> Result<()> {
|
||||
let video_datas = {
|
||||
let mut data = vec![];
|
||||
|
@ -90,6 +102,7 @@ pub fn write_all(public_dir: &Path) -> Result<()> {
|
|||
fs::create_dir_all(&video_dir)?;
|
||||
|
||||
let template = VideoTemplate {
|
||||
drg: video_data.drg,
|
||||
page_title: video_data.page_title,
|
||||
rendered_markdown: comrak::markdown_to_html(
|
||||
&markdown,
|
||||
|
|
Loading…
Reference in New Issue