66 < base href ="/ ">
77 < meta name ="viewport " content ="width=device-width, initial-scale=1 ">
88 < title > Platform Settings - GameFoundryStudio</ title >
9- < meta name ="description " content ="Admin wireframe for platform settings, feature flags, and publishing defaults . ">
9+ < meta name ="description " content ="Admin controls for platform settings and operational notice banners . ">
1010 < link rel ="icon " href ="/favicon.svg ">
1111 < link rel ="stylesheet " href ="assets/theme-v2/css/theme.css ">
1212</ head >
1313
1414< body class ="meaning-molten-orange ">
1515 < div data-partial ="header-nav "> </ div >
16- < main data-admin-only ="true " data-admin-wireframe ="platform-settings ">
16+ < main data-admin-only ="true " data-admin-platform-settings data-admin- wireframe ="platform-settings ">
1717 < section class ="page-title ">
1818 < div class ="container ">
19- < div class ="kicker "> Admin Wireframe </ div >
19+ < div class ="kicker "> Admin</ div >
2020 < h1 > Platform Settings</ h1 >
21- < p class ="lede "> Plan platform-wide settings, flags, and release controls without connecting settings persistence .</ p >
21+ < p class ="lede "> Manage platform-wide settings, flags, and operational notice banners .</ p >
2222 </ div >
2323 </ section >
2424 < section class ="section ">
@@ -40,11 +40,26 @@ <h2>Admin</h2>
4040 </ nav >
4141 </ details >
4242 < details class ="vertical-accordion " open >
43- < summary > Setting Preview </ summary >
43+ < summary > Banner Controls </ summary >
4444 < div class ="accordion-body content-stack ">
45- < label > Setting Area < select disabled > < option > Feature flags</ option > < option > Publishing defaults</ option > < option > Maintenance notices</ option > </ select > </ label >
46- < label > Visibility < select disabled > < option > Admin only</ option > < option > Creator visible</ option > < option > Public notice</ option > </ select > </ label >
47- < button class ="btn btn--compact " type ="button " disabled > Preview Setting</ button >
45+ < label class ="field-inline ">
46+ < input type ="checkbox " data-platform-banner-enabled >
47+ < span > Show banner</ span >
48+ </ label >
49+ < label class ="field-group "> Notice kind
50+ < select data-platform-banner-kind >
51+ < option value ="general "> General notice</ option >
52+ < option value ="temporary-data "> Temporary data notice</ option >
53+ < option value ="outage "> Outage notice</ option >
54+ </ select >
55+ </ label >
56+ < label class ="field-group "> Tone
57+ < select data-platform-banner-tone >
58+ < option value ="info "> Info</ option >
59+ < option value ="warning "> Warning</ option >
60+ < option value ="danger "> Urgent</ option >
61+ </ select >
62+ </ label >
4863 </ div >
4964 </ details >
5065 </ div >
@@ -53,25 +68,15 @@ <h2>Admin</h2>
5368 < section class ="tool-center-panel content-stack " aria-labelledby ="admin-platform-settings-title ">
5469 < div >
5570 < div class ="kicker "> Work Surface</ div >
56- < h2 id ="admin-platform-settings-title "> Settings Board </ h2 >
71+ < h2 id ="admin-platform-settings-title "> Platform Banner </ h2 >
5772 </ div >
58- < p > This wireframe reserves the future board for platform defaults, release toggles, and operational notices.</ p >
59- < div class ="table-wrapper ">
60- < table class ="data-table " aria-label ="Platform settings wireframe ">
61- < caption > Platform Settings Planning</ caption >
62- < thead >
63- < tr >
64- < th scope ="col "> Area</ th >
65- < th scope ="col "> Example Control</ th >
66- < th scope ="col "> Current State</ th >
67- </ tr >
68- </ thead >
69- < tbody >
70- < tr > < td > Feature Flags</ td > < td > Enable beta tools</ td > < td > Wireframe</ td > </ tr >
71- < tr > < td > Publishing Defaults</ td > < td > Default public visibility</ td > < td > Wireframe</ td > </ tr >
72- < tr > < td > Maintenance</ td > < td > Notice banner</ td > < td > Wireframe</ td > </ tr >
73- </ tbody >
74- </ table >
73+ < p > Publish a platform banner from the shared settings contract.</ p >
74+ < label class ="field-group "> Banner message
75+ < textarea data-platform-banner-message maxlength ="240 " rows ="5 "> </ textarea >
76+ </ label >
77+ < div class ="callout " data-platform-banner-preview role ="status "> No active banner.</ div >
78+ < div class ="content-cluster ">
79+ < button class ="btn primary " type ="button " data-platform-banner-save > Save Banner</ button >
7580 </ div >
7681 </ section >
7782 < aside class ="tool-column tool-group-platform ">
@@ -82,13 +87,13 @@ <h2>Inspector</h2>
8287 < details class ="vertical-accordion " open >
8388 < summary > Status</ summary >
8489 < div class ="accordion-body content-stack ">
85- < p class ="status " role ="status "> Wireframe only. Platform settings are not read or written .</ p >
90+ < p class ="status " role ="status " data-platform- settings-status > Loading platform banner settings.. .</ p >
8691 </ div >
8792 </ details >
8893 < details class ="vertical-accordion " open >
8994 < summary > Logging</ summary >
9095 < div class ="accordion-body content-stack ">
91- < p > Future logs will show setting previews, publish gate changes, and audit review entries .</ p >
96+ < p > Banner updates are saved through the server settings contract .</ p >
9297 </ div >
9398 </ details >
9499 </ div >
@@ -100,6 +105,7 @@ <h2>Inspector</h2>
100105 < div data-partial ="footer "> </ div >
101106 < script src ="assets/theme-v2/js/gamefoundry-partials.js " defer > </ script >
102107 < script src ="assets/theme-v2/js/tool-display-mode.js " defer > </ script >
108+ < script type ="module " src ="assets/theme-v2/js/admin-platform-settings.js "> </ script >
103109</ body >
104110
105111</ html >
0 commit comments