# Station Blueprint # Defines a content module/station for the media guide # /user/blueprints/station.yaml title: Station '@extends': type: default context: blueprints://pages form: fields: tabs: type: tabs active: 1 fields: # Station Info Tab station_info: type: tab title: Station Info fields: header.station_id: type: text label: Station ID help: Unique identifier for this station (used in QR codes) validate: required: true pattern: '^[a-z0-9-]+$' header.station_type: type: select label: Station Type options: intro: Introduction exhibit: Exhibit information: Information Point navigation: Navigation default: exhibit header.exhibition_ref: type: text label: Exhibition Reference help: Reference to parent exhibition header.active: type: toggle label: Active highlight: 1 default: 1 options: 1: Yes 0: No header.order: type: number label: Display Order default: 0 # Multilingual Content Tab content_tab: type: tab title: Content fields: header.title: type: multilang label: Title languages: true header.description: type: multilang label: Short Description type: textarea languages: true # Components Tab components_tab: type: tab title: Components fields: header.components: type: list label: Content Components style: vertical btnLabel: Add Component collapsed: true fields: .type: type: select label: Component Type options: heading: Heading text: Text Block video: Video Player audio: Audio Player tabs: Tabbed Content slideshow: Slideshow .id: type: text label: Component ID help: Unique ID for this component # Heading specific .level: type: select label: Heading Level options: h1: H1 h2: H2 h3: H3 # Text/Heading content (multilingual) .content: type: editor label: Content # Video specific .video_src: type: filepicker label: Video File folder: 'user://media/videos' accept: - video/* .video_poster: type: filepicker label: Video Poster folder: 'user://media/images' accept: - image/* # Audio specific .audio_src: type: filepicker label: Audio File folder: 'user://media/audio' accept: - audio/* .caption: type: text label: Caption # Tabs specific .tabs: type: list label: Tabs fields: .title: type: text label: Tab Title .content: type: editor label: Tab Content # Slideshow specific .slides: type: list label: Slides fields: .image: type: filepicker label: Slide Image folder: 'user://media/images' accept: - image/* .caption: type: text label: Slide Caption # Media Tab media_tab: type: tab title: Media Files fields: header.media_folder: type: text label: Media Folder help: Folder containing media files for this station placeholder: /media/station-id