JourneyPage: Difference between revisions
From Dune Awakening DB
Created page with "<templatestyles src="Template:JourneysPage/styles.css" /> <div class="journeys-page-container"> <div class="journeys-main-content"> <div class="journeys-tabs"> <span class="journeys-tab">{{{tab_z_name|Z}}}</span> <span class="journeys-tab">{{{tab_c_name|C}}}</span> <span class="journeys-tab active">{{{tab_story_name|STORY}}}</span> </div> {{#get_external_data:source=externaldb |from=data_journ..." |
mNo edit summary |
||
| (12 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
<templatestyles src="Template: | <includeonly><templatestyles src="Template:JourneyPage/styles.css" />__NOTOC__ | ||
<!-- Main Journey Container --> | |||
<div class="journey-main-container"> | |||
<!-- Journey Categories (Left Column - 60%) --> | |||
<div class="journey-categories"> | |||
<!-- A New Beginning --> | |||
<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 | |||
|data=ID=id,Slug=slug,Name=name,Description=description,Tier=tier,Category=journey_category,Location=location,Icon=journey_icon | |||
|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> | |||
<div class=" | <!-- 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> | |||
<div class=" | <!-- Jabal Eifrit & Hagga Rift --> | ||
<div class=" | <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> | ||
</div> | |||
{{#get_external_data:source=externaldb | <!-- 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> | |||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | </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> | |||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | |||
</div> | |||
<div class="journey-section- | <!-- 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> | |||
{{#if:{{{Icon|}}}|<div class="journey-bg-source">[[File:{{{Icon}}}|link=]]</div>|}} | |||
</div> | |||
}} | |||
</div> | </div> | ||
</div> | |||
</div> | |||
<!-- Journey Details Panel (Right Column - 40%) --> | |||
<div class="journey-details-panel" id="journeyDetailsPanel"> | |||
<div class="journey-details-header"> | |||
<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> | |||
<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 class="objectives-header">OBJECTIVES</div> | |||
<div class="objectives-list"> | |||
<div class="objective-item"> | |||
<div class="objective-header"> | |||
<div class="objective-title" style="color: var(--color-secondary);">Select a journey to view objectives</div> | |||
</div> | |||
</div> | </div> | ||
</div> | |||
</div> | |||
<div class="journey-actions"> | |||
<button class="action-button view-items" disabled> | |||
<span class="button-icon">📋</span> | |||
View Item Prep List | |||
</button> | |||
<button class="action-button view-guide" disabled> | |||
<span class="button-icon">▶️</span> | |||
View Guide | |||
</button> | |||
</div> | </div> | ||
</div> | |||
</div> | |||
<!-- Popup container will be added by JavaScript --> | |||
</includeonly> | |||
<noinclude> | |||
{{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> | |||
</ | |||
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
