JourneyPage: Difference between revisions
From Dune Awakening DB
mNo edit summary |
mNo edit summary |
||
| (10 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
<includeonly><templatestyles src="Template:JourneyPage/styles.css" /> | <includeonly><templatestyles src="Template:JourneyPage/styles.css" />__NOTOC__ | ||
<!-- Main Journey Container --> | <!-- Main Journey Container --> | ||
<div class="journey-main-container"> | <div class="journey-main-container"> | ||
<!-- Journey Categories (Left Column - 60%) --> | <!-- Journey Categories (Left Column - 60%) --> | ||
<div class="journey-categories"> | <div class="journey-categories"> | ||
<!-- A New Beginning | <!-- A New Beginning --> | ||
{{#get_external_data:source=externaldb | <div class="journey-section" data-section="A New Beginning"> | ||
<div class="journey-section-header" style="padding-top:6px;"> | |||
<h3 class="section-title">A New Beginning</h3> | |||
</div> | |||
<div class="journey-grid"> | |||
{{#get_external_data: source=externaldb | |||
}} | |from=data_journeys | ||
{{#if:{{{ | |data=ID=id,Slug=slug,Name=name,Description=description,Tier=tier,Category=journey_category,Location=location,Icon=journey_icon | ||
<div class="journey-section" data- | |cache=yes | ||
|where=journey_group='A New Beginning' AND id IS NOT NULL AND name IS NOT NULL AND name != '' | |||
< | |order by=tier, id | ||
< | }} | ||
{{#for_external_table:|<div class="journey-card" data-journey-id="{{{ID}}}" data-name="{{{Name}}}" data-slug="{{{Slug}}}" data-description="{{{Description}}}" data-tier="{{{Tier}}}" data-category="{{{Category}}}" data-location="{{{Location}}}" data-group="A New Beginning" data-reward="{{{Reward}}}" data-icon="{{{Icon|}}}"> | |||
<div class="journey-card-inner"> | |||
<div class="journey-name">{{{Name}}}</div> | |||
<div class="journey-tier">TIER {{{Tier}}}</div> | |||
</div> | |||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | |||
</div> | |||
<!-- Vermillius Gap --> | |||
<div class="journey-section" data-section="Vermillius Gap"> | |||
<div class="journey-section-header"> | |||
<h3 class="section-title">Vermillius Gap</h3> | |||
</div> | |||
<div class="journey-grid"> | |||
{{#get_external_data: source=externaldb | |||
|from=data_journeys | |||
|data=ID=id,Slug=slug,Name=name,Description=description,Tier=tier,Category=journey_category,Location=location,Icon=journey_icon | |||
|cache=yes | |||
|where=journey_group='Vermillius Gap' AND id IS NOT NULL AND name IS NOT NULL AND name != '' | |||
|order by=tier, id | |||
}} | |||
{{#for_external_table:|<div class="journey-card" data-journey-id="{{{ID}}}" data-name="{{{Name}}}" data-slug="{{{Slug}}}" data-description="{{{Description}}}" data-tier="{{{Tier}}}" data-category="{{{Category}}}" data-location="{{{Location}}}" data-group="Vermillius Gap" data-reward="{{{Reward}}}" data-icon="{{{Icon|}}}"> | |||
<div class="journey-card-inner"> | |||
<div class="journey-name">{{{Name}}}</div> | |||
<div class="journey-tier">TIER {{{Tier}}}</div> | |||
</div> | |||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | |||
</div> | |||
<!-- Jabal Eifrit & Hagga Rift --> | |||
<div class="journey-section" data-section="Jabal Eifrit & Hagga Rift"> | |||
<div class="journey-section-header"> | |||
<h3 class="section-title">Jabal Eifrit & Hagga Rift</h3> | |||
</div> | |||
<div class="journey-grid"> | |||
{{#get_external_data: source=externaldb | |||
|from=data_journeys | |||
|data=ID=id,Slug=slug,Name=name,Description=description,Tier=tier,Category=journey_category,Location=location,Icon=journey_icon | |||
|cache=yes | |||
|where=journey_group='Jabal Eifrit & Hagga Rift' AND id IS NOT NULL AND name IS NOT NULL AND name != '' | |||
|order by=tier, id | |||
}} | |||
{{#for_external_table:|<div class="journey-card" data-journey-id="{{{ID}}}" data-name="{{{Name}}}" data-slug="{{{Slug}}}" data-description="{{{Description}}}" data-tier="{{{Tier}}}" data-category="{{{Category}}}" data-location="{{{Location}}}" data-group="Jabal Eifrit & Hagga Rift" data-reward="{{{Reward}}}" data-icon="{{{Icon|}}}"> | |||
<div class="journey-card-inner"> | |||
<div class="journey-name">{{{Name}}}</div> | |||
<div class="journey-tier">TIER {{{Tier}}}</div> | |||
</div> | |||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | |||
</div> | |||
<!-- Find The Fremen --> | |||
<div class="journey-section" data-section="Find The Fremen"> | |||
<div class="journey-section-header"> | |||
<h3 class="section-title">Find The Fremen</h3> | |||
</div> | |||
<div class="journey-grid"> | |||
{{#get_external_data: source=externaldb | |||
|from=data_journeys | |||
|data=ID=id,Slug=slug,Name=name,Description=description,Tier=tier,Category=journey_category,Location=location,Icon=journey_icon | |||
|cache=yes | |||
|where=journey_group='Find The Fremen' AND id IS NOT NULL AND name IS NOT NULL AND name != '' | |||
|order by=tier, id | |||
}} | |||
{{#for_external_table:|<div class="journey-card" data-journey-id="{{{ID}}}" data-name="{{{Name}}}" data-slug="{{{Slug}}}" data-description="{{{Description}}}" data-tier="{{{Tier}}}" data-category="{{{Category}}}" data-location="{{{Location}}}" data-group="Find The Fremen" data-reward="{{{Reward}}}" data-icon="{{{Icon|}}}"> | |||
<div class="journey-card-inner"> | |||
<div class="journey-name">{{{Name}}}</div> | |||
<div class="journey-tier">TIER {{{Tier}}}</div> | |||
</div> | </div> | ||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | |||
{{#if:{{{ | |||
</div> | </div> | ||
<!-- Miscellaneous --> | |||
<div class="journey-section" data-section="Miscellaneous"> | |||
<div class="journey-section-header"> | |||
<h3 class="section-title">Miscellaneous</h3> | |||
</div> | |||
<div class="journey-grid"> | |||
{{#get_external_data: source=externaldb | |||
|from=data_journeys | |||
|data=ID=id,Slug=slug,Name=name,Description=description,Tier=tier,Category=journey_category,Location=location,Icon=journey_icon | |||
|cache=yes | |||
|where=journey_group='Miscellaneous' AND id IS NOT NULL AND name IS NOT NULL AND name != '' | |||
|order by=tier, id | |||
}} | |||
{{#for_external_table:|<div class="journey-card" data-journey-id="{{{ID}}}" data-name="{{{Name}}}" data-slug="{{{Slug}}}" data-description="{{{Description}}}" data-tier="{{{Tier}}}" data-category="{{{Category}}}" data-location="{{{Location}}}" data-group="Miscellaneous" data-reward="{{{Reward}}}" data-icon="{{{Icon|}}}"> | |||
<div class="journey-card-inner"> | |||
<div class="journey-name">{{{Name}}}</div> | |||
<div class="journey-tier">TIER {{{Tier}}}</div> | |||
</div> | </div> | ||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | |||
{{#if:{{{ | |||
</div> | </div> | ||
<!-- Factions --> | |||
<div class="journey-section" data-section="Factions"> | |||
<div class="journey-section-header"> | |||
<h3 class="section-title">Factions</h3> | |||
</div> | |||
<div class="journey-grid"> | |||
{{#get_external_data: source=externaldb | |||
|from=data_journeys | |||
|data=ID=id,Slug=slug,Name=name,Description=description,Tier=tier,Category=journey_category,Location=location,Icon=journey_icon | |||
|cache=yes | |||
|where=journey_group='Factions' AND id IS NOT NULL AND name IS NOT NULL AND name != '' | |||
|order by=tier, id | |||
}} | |||
{{#for_external_table:|<div class="journey-card" data-journey-id="{{{ID}}}" data-name="{{{Name}}}" data-slug="{{{Slug}}}" data-description="{{{Description}}}" data-tier="{{{Tier}}}" data-category="{{{Category}}}" data-location="{{{Location}}}" data-group="Factions" data-reward="{{{Reward}}}" data-icon="{{{Icon|}}}"> | |||
<div class="journey-card-inner"> | |||
<div class="journey-name">{{{Name}}}</div> | |||
<div class="journey-tier">TIER {{{Tier}}}</div> | |||
</div> | </div> | ||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | |||
{{#if:{{{ | |||
</div> | </div> | ||
</div> | </div> | ||
| Line 132: | Line 152: | ||
<div class="journey-details-panel" id="journeyDetailsPanel"> | <div class="journey-details-panel" id="journeyDetailsPanel"> | ||
<div class="journey-details-header"> | <div class="journey-details-header"> | ||
<div class="journey-tier-badge"> | <div class="journey-tier-badge"><span class="tier-number">1</span></div> | ||
<h2 class="journey-title">SELECT A JOURNEY</h2><span class="completion-status">0% COMPLETE</span> | |||
</div><div class="journey-description">Click on any journey card to view objectives and track your progress.</div> | |||
<h2 class="journey-title">SELECT A JOURNEY</h2> | <div class="journey-rewards"><div class="rewards-header">REWARD</div><div class="rewards-content"><span class="xp-icon">XP</span><span class="xp-amount">--</span></div></div> | ||
<div class="journey-objectives"> | |||
</div> | |||
<div class="objectives-header">OBJECTIVES</div> | <div class="objectives-header">OBJECTIVES</div> | ||
<div class="objectives-list"> | <div class="objectives-list"> | ||
| Line 173: | Line 180: | ||
</div> | </div> | ||
<!-- | <!-- Popup container will be added by JavaScript --> | ||
< | </includeonly> | ||
<noinclude> | |||
{{Documentation}} | {{Documentation}} | ||
== Journey Page Template == | |||
This template displays the journey tracking system for Dune Awakening. | |||
=== Usage === | |||
Simply add <code><nowiki>{{JourneyPage}}</nowiki></code> to any page where you want the journey tracker to appear. | |||
=== Features === | |||
* Displays all journeys grouped by category | |||
* Interactive journey cards that show details when clicked | |||
* Progress tracking with checkboxes | |||
* Material prep list for each journey | |||
* Video guide links (when available) | |||
* Responsive design for different screen sizes | |||
=== Dependencies === | |||
* Template:JourneyPage/styles.css - Styling | |||
* MediaWiki:Common.js - JavaScript functionality | |||
=== Database Tables === | |||
This template pulls data from: | |||
* data_journeys - Main journey information | |||
* data_journey_objectives - Objectives for each journey | |||
* data_journey_tasks - Tasks within objectives | |||
* data_journey_task_components - Materials needed for tasks | |||
[[Category:Dune Templates]] | |||
[[Category:Interactive Templates]] | |||
</noinclude> | </noinclude> | ||
Latest revision as of 15:37, 31 May 2025
Journey Page Template
This template displays the journey tracking system for Dune Awakening.
Usage
Simply add {{JourneyPage}} to any page where you want the journey tracker to appear.
Features
- Displays all journeys grouped by category
- Interactive journey cards that show details when clicked
- Progress tracking with checkboxes
- Material prep list for each journey
- Video guide links (when available)
- Responsive design for different screen sizes
Dependencies
- Template:JourneyPage/styles.css - Styling
- MediaWiki:Common.js - JavaScript functionality
Database Tables
This template pulls data from:
- data_journeys - Main journey information
- data_journey_objectives - Objectives for each journey
- data_journey_tasks - Tasks within objectives
- data_journey_task_components - Materials needed for tasks
