Changes for page Plan Your Data Management
Last modified by Veronika Kocher on Friday, 04 Sep 2026 14:45
From version 4.3
edited by Veronika Kocher
on Friday, 28 Aug 2026 17:00
on Friday, 28 Aug 2026 17:00
Change comment:
Removed tag [review points]
To version 4.12
edited by Veronika Kocher
on Thursday, 03 Sep 2026 14:15
on Thursday, 03 Sep 2026 14:15
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- tags
-
... ... @@ -1,0 +1,1 @@ 1 +research data management|data management plan|data lifecycle|responsibilities|review - Content
-
... ... @@ -1,62 +1,1660 @@ 1 -Create and maintain a practical Data Management Plan that supports your project throughout its lifecycle. 1 +{{html clean="false"}} 2 +<!-- ARSN_FULL_PAGE_PLAN_DATA_MANAGEMENT_V1 --> 3 +<style> 4 +.dmp{max-width:1400px;margin:0 auto;color:#322f2b}.dmp *{box-sizing:border-box} 5 +.dmp-card{border:1px solid #e3ded6;border-radius:11px;background:#fcfbf8;box-shadow:0 1px 3px rgba(0,0,0,.035)} 6 +.dmp-eye{font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase} 7 +.dmp-hero{height:125px;overflow:hidden;background:#f1eee9}.dmp-hero img{width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block} 8 +.dmp-sec{margin:0 0 30px}.dmp-sec h3{font-size:22px;margin:0 0 7px;color:#35312d}.dmp-sec>p{color:#6a655e;line-height:1.58;max-width:1180px} 9 +.dmp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px} 10 +.dmp-box{padding:15px 16px;border:1px solid #e3ded6;border-radius:9px;background:#fcfbf8}.dmp-box h4{font-size:17px;margin:0 0 6px;color:#35312d}.dmp-box p{margin:0;color:#625d56;line-height:1.5}.dmp-box ul{margin:8px 0 0 19px;padding:0;color:#625d56;line-height:1.5} 11 +.dmp-check{position:relative;padding:12px 13px 12px 37px;border:1px solid #e3ded6;border-radius:8px;background:#fffdf9;color:#504a44;line-height:1.5}.dmp-check:before{content:"✓";position:absolute;left:13px;top:10px;color:#e94b13;font-weight:800} 12 +.dmp-info{padding:15px 17px;border:1px solid #c7e5ed;border-left:5px solid #21b6d7;background:#eaf6f9;border-radius:8px;color:#365e68;line-height:1.55}.dmp-info strong{color:#2d5661} 13 +.dmp-warn{padding:15px 17px;border:1px solid #efd9cc;border-left:5px solid #e94b13;background:#fff6f1;border-radius:8px;color:#67564e;line-height:1.55}.dmp-warn strong{color:#744531} 14 +.dmp-rights{padding:15px 17px;border:1px solid #efdca7;border-left:5px solid #f0aa00;background:#fff9e9;border-radius:8px;color:#665a38;line-height:1.55}.dmp-rights strong{color:#6d571c} 15 +.dmp-store{padding:15px 17px;border:1px solid #cfe8d8;border-left:5px solid #38b76a;background:#eff9f2;border-radius:8px;color:#45614e;line-height:1.55}.dmp-store strong{color:#35543f} 16 +.dmp-tablewrap{overflow-x:auto;border-radius:9px}.dmp-tbl{width:100%;border-collapse:collapse;background:#fffdf9;min-width:820px}.dmp-tbl th,.dmp-tbl td{border:1px solid #e3ded6;padding:10px 11px;vertical-align:top;text-align:left;line-height:1.45}.dmp-tbl th{background:#f3efe8;color:#403b36}.dmp-tbl td{color:#56504a} 17 +.dmp-step{padding:15px 16px;border:1px solid #e3ded6;border-top:4px solid #e94b13;border-radius:9px;background:#fcfbf8}.dmp-step .n{font-size:12px;font-weight:800;color:#8a4d36;letter-spacing:.06em}.dmp-step h4{font-size:17px;margin:3px 0 6px;color:#35312d}.dmp-step p{margin:0;color:#625d56;line-height:1.5} 18 +.dmp-service{display:block;padding:14px 15px;border:1px solid #e3ded6;border-radius:9px;background:#fcfbf8;color:#322f2b;text-decoration:none}.dmp-service:hover,.dmp-service:focus{background:#fffdf9;text-decoration:none}.dmp-service strong{display:block;margin-bottom:4px}.dmp-service span{display:block;color:#625d56;line-height:1.45;font-weight:400} 19 +.dmp-linkgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}.dmp-navlink{display:block;padding:10px 11px;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:6px;background:#fffdf9;color:#252321;text-decoration:none;font-weight:600;line-height:1.35}.dmp-navlink:hover,.dmp-navlink:focus{background:#fff7f1;text-decoration:none} 20 +.dmp-chip{display:inline-block;padding:4px 8px;margin:3px 4px 3px 0;border-radius:14px;background:#f3efe8;border:1px solid #e3ded6;color:#5c5650;font-size:12px;text-decoration:none} 21 +@media(max-width:680px){.dmp-hero{height:105px}.dmp-sec h3{font-size:20px}} 22 +</style> 2 2 3 - == Overview==24 +<div class="dmp"> 4 4 5 -Add a concise explanation of this topic and why it matters for Art & Research projects. 26 +<section class="dmp-card" style="margin-bottom:18px;overflow:hidden;border-left:6px solid #e94b13;"> 27 +<div class="dmp-hero"><img src="https://xwiki.uni-ak.ac.at/bin/download/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/WebHome/enable.png" alt="Planning research data, materials and outputs across the project lifecycle"></div> 28 +<div style="padding:18px 21px 20px"> 29 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:5px">ENABLE · DATA MANAGEMENT PLAN</div> 30 +<h2 style="font-size:27px;line-height:1.2;margin:0 0 8px;color:#2c2926">Turn data management into a working project routine — not a form you fill in once</h2> 31 +<p style="margin:0;color:#5e5953;line-height:1.6;max-width:1160px">A practical Data Management Plan (DMP) records how your project will organise, store, protect, document, share, preserve or dispose of its data and materials. For artistic and arts-based research, this can include physical objects, audiovisual material, software, performances, process documentation and artistic outputs as well as conventional research data.</p> 32 +</div> 33 +</section> 6 6 7 -== What you needtoknow==35 +<div class="dmp-info" style="margin-bottom:16px"><strong>Treat the DMP as a living working document.</strong> Start with what you know, record unresolved decisions, assign responsibility and update the plan when the project changes.</div> 8 8 9 -* Key concepts 10 -* Relevant requirements 11 -* Important distinctions 37 +<div class="dmp-rights" style="margin-bottom:16px"><strong>A DMP does not mean that everything must become open.</strong> It should make restrictions visible and explain why access, sharing or reuse may need to be limited because of personal data, consent, copyright, confidentiality, cultural sensitivity, contractual obligations, security or other legitimate constraints.</div> 12 12 13 -== What you need to do ==39 +<div class="dmp-store" style="margin-bottom:28px"><strong>Start from your material inventory.</strong> If you have not yet mapped the data, materials, documentation and outputs your project will create, collect or reuse, begin with <a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Identify%20Your%20Data%20%26%20Research%20Outputs/">Identify Your Data & Research Outputs</a>.</div> 14 14 15 -1. Identify what applies to your project. 16 -2. Document the relevant decisions. 17 -3. Use appropriate institutional services and support where needed. 41 +<!-- ARSN_DMP_TOOL_COMING_SOON_V1 --> 42 +<section id="dmp-tool-coming-soon" class="dmp-card" style="margin-bottom:28px;overflow:hidden;border-left:6px solid #21b6d7;"> 43 +<div style="padding:17px 20px 18px"> 44 +<div class="dmp-eye" style="color:#3f6871;margin-bottom:5px">DMP TOOL <span style="display:inline-block;margin-left:6px;padding:3px 7px;border-radius:12px;background:#fff4ee;border:1px solid #efd9cc;color:#8a4d36;font-size:10px;letter-spacing:.06em;vertical-align:1px">COMING SOON</span></div> 45 +<h3 style="font-size:21px;margin:0 0 7px;color:#35312d">Interactive Art & Research DMP Tool</h3> 46 +<p style="margin:0 0 11px;color:#625d56;line-height:1.55;max-width:1050px">A local form will connect the eleven core DMP questions with funder-specific requirements and export DMPs as PDF, JSON, YAML and Markdown. Funder profiles are maintained separately from the tool so that FWF, Horizon Europe, ERC or FFG requirements can be updated without reprogramming the form.</p> 47 +<a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Plan%20Your%20Data%20Management/DMP%20Tool/" aria-disabled="true" onclick="return false;" style="display:inline-block;padding:8px 11px;border:1px solid #c7e5ed;border-radius:6px;background:#f4fbfc;color:#3f6871;text-decoration:none;font-weight:700;cursor:not-allowed">Open DMP Tool ↗</a> 48 +<span style="display:inline-block;margin-left:8px;color:#8a4d36;font-size:12px;font-weight:700">COMING SOON</span> 49 +</div> 50 +</section> 51 +<!-- ARSN_DMP_TOOL_COMING_SOON_END --> 18 18 19 -== Key questions == 53 +<section class="dmp-sec"> 54 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:4px">STEP 1 · DEFINE THE SCOPE</div> 55 +<h3>Decide what your DMP needs to cover</h3> 56 +<p>Your DMP should follow the real project, not an abstract template. Begin with the project structure, funding requirements and the material types you have already identified.</p> 20 20 21 -* What needs to be decided? 22 -* Who is responsible? 23 -* What needs to be documented? 24 -* Are there legal, ethical or technical constraints? 25 -* What needs to happen before the next project phase? 58 +<div class="dmp-grid"> 59 +<div class="dmp-box" style="border-top:4px solid #21b6d7"> 60 +<h4>Project & plan identity</h4> 61 +<p>Project title, lead, host unit, partners, funding programme, project dates, DMP owner, DMP version and last review date.</p> 62 +</div> 63 +<div class="dmp-box" style="border-top:4px solid #21b6d7"> 64 +<h4>Data, materials & outputs</h4> 65 +<p>What will be created, collected, commissioned or reused; expected formats, physical carriers, scale, dependencies and master versions.</p> 66 +</div> 67 +<div class="dmp-box" style="border-top:4px solid #e94b13"> 68 +<h4>Roles & responsibilities</h4> 69 +<p>Who creates, documents, stores, backs up, controls access, approves sharing, deposits outputs and completes handover.</p> 70 +</div> 71 +<div class="dmp-box" style="border-top:4px solid #38b76a"> 72 +<h4>Storage, backup & access</h4> 73 +<p>Working locations, authoritative copies, backup routine, recovery, access groups, account ownership and security requirements.</p> 74 +</div> 75 +<div class="dmp-box" style="border-top:4px solid #e94b13"> 76 +<h4>Organisation & versioning</h4> 77 +<p>Folder structure, naming, version conventions, master files, working copies, export formats and change control.</p> 78 +</div> 79 +<div class="dmp-box" style="border-top:4px solid #21b6d7"> 80 +<h4>Metadata, provenance & documentation</h4> 81 +<p>What information is needed to understand origin, creator, context, method, transformation, relationships, software and versions.</p> 82 +</div> 83 +<div class="dmp-box" style="border-top:4px solid #f0aa00"> 84 +<h4>Rights, ethics & protection</h4> 85 +<p>Copyright, licences, consent, personal data, confidentiality, contracts, community or cultural protocols and restrictions.</p> 86 +</div> 87 +<div class="dmp-box" style="border-top:4px solid #f0aa00"> 88 +<h4>Sharing, publication & reuse</h4> 89 +<p>What can be shared, with whom, when, under which licence, through which repository/platform and with what documentation.</p> 90 +</div> 91 +<div class="dmp-box" style="border-top:4px solid #38b76a"> 92 +<h4>Retention, preservation & disposal</h4> 93 +<p>What should remain after project end, what can be deleted, retention periods, preservation formats, repository/archive and handover.</p> 94 +</div> 95 +<div class="dmp-box" style="border-top:4px solid #e94b13"> 96 +<h4>Resources & costs</h4> 97 +<p>Storage, specialist software, digitisation, transcription, metadata work, repository fees, preservation, staff time and other data-management costs.</p> 98 +</div> 99 +</div> 100 +</section> 26 26 27 -== Services & Tools == 102 +<section class="dmp-sec"> 103 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:4px">STEP 2 · CREATE THE MINIMUM WORKING DMP</div> 104 +<h3>Record decisions that the team can actually follow</h3> 105 +<p>A useful first DMP can be short. The important thing is that it names responsibilities and turns assumptions into explicit decisions.</p> 28 28 29 -Add links to relevant institutional services, infrastructure and tools. 107 +<div class="dmp-tablewrap"> 108 +<table class="dmp-tbl"> 109 +<thead><tr><th>Question</th><th>Minimum decision to record</th><th>Responsible / review point</th></tr></thead> 110 +<tbody> 111 +<tr><td><strong>What are we managing?</strong></td><td>Material/data/output types, origin, formats, physical carriers, approximate quantity or expected growth.</td><td>Project lead + person closest to the material.</td></tr> 112 +<tr><td><strong>Where is active work stored?</strong></td><td>Approved working location and location of the authoritative/master copy.</td><td>Data/documentation responsibility; review when infrastructure changes.</td></tr> 113 +<tr><td><strong>How is it backed up?</strong></td><td>Backup location, frequency, responsibility and how recovery is checked.</td><td>Named owner; test before critical production/publication stages.</td></tr> 114 +<tr><td><strong>Who can access what?</strong></td><td>Access groups, account ownership, restrictions and process for adding/removing people.</td><td>Project lead / system owner; review when staff or partners change.</td></tr> 115 +<tr><td><strong>How are files and versions organised?</strong></td><td>Folder structure, file naming, version convention, master/working/derivative distinction.</td><td>Team-wide rule; review when workflows become unclear.</td></tr> 116 +<tr><td><strong>What documentation is required?</strong></td><td>Minimum metadata, provenance, README/context documentation, technical dependencies and relationships.</td><td>Creator + documentation owner.</td></tr> 117 +<tr><td><strong>What is sensitive or restricted?</strong></td><td>Personal/confidential/culturally sensitive material, consent status, legal or contractual restrictions and required protection.</td><td>Project lead with specialist advice where needed.</td></tr> 118 +<tr><td><strong>What rights apply?</strong></td><td>Ownership, third-party material, licences, permissions and unresolved rights questions.</td><td>Project lead / rights responsibility; resolve before publication.</td></tr> 119 +<tr><td><strong>What will be shared or published?</strong></td><td>Outputs/materials to share, access level, timing, licence, repository/platform and exceptions.</td><td>Project lead + output owner.</td></tr> 120 +<tr><td><strong>What happens at project end?</strong></td><td>Keep, deposit, preserve, hand over or delete; final owner; access closure; retention period if applicable.</td><td>Named closure owner; confirm before final reporting.</td></tr> 121 +<tr><td><strong>When is the DMP reviewed?</strong></td><td>Planned review dates plus event-based triggers.</td><td>DMP owner.</td></tr> 122 +</tbody> 123 +</table> 124 +</div> 30 30 31 -== Info Sheets & Checklists == 126 +<div class="dmp-info" style="margin-top:14px"><strong>Simple rule:</strong> every important DMP statement should answer at least one of these: <em>what, where, who, how, when, under which conditions, and what happens at the end?</em></div> 127 +</section> 32 32 33 -Add links to related Info Sheets, checklists and templates. 129 +<section class="dmp-sec"> 130 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:4px">STEP 3 · PLAN FOR CHANGE</div> 131 +<h3>Review the DMP when a decision actually changes</h3> 132 +<p>Do not update the plan only because a calendar reminder appears. Use scheduled reviews, but also connect reviews to concrete project events.</p> 34 34 35 -== Tutorials == 134 +<div class="dmp-grid"> 135 +<div class="dmp-step"><div class="n">REVIEW 1</div><h4>Proposal / award / project start</h4><p>Align the working plan with the submitted proposal, funder requirements, approved budget, staffing, partners and actual infrastructure.</p></div> 136 +<div class="dmp-step"><div class="n">REVIEW 2</div><h4>New material or method</h4><p>Update the DMP when new datasets, media types, software, equipment, participants, collections or documentation workflows are introduced.</p></div> 137 +<div class="dmp-step"><div class="n">REVIEW 3</div><h4>People or partner changes</h4><p>Recheck access, account ownership, responsibilities, handover, agreements and where authoritative copies are held.</p></div> 138 +<div class="dmp-step"><div class="n">REVIEW 4</div><h4>Before publication / exhibition / sharing</h4><p>Confirm rights, consent, personal-data handling, metadata, file quality, access level, licence and repository/platform route.</p></div> 139 +<div class="dmp-step"><div class="n">REVIEW 5</div><h4>Before project closure</h4><p>Decide what is retained, deposited, preserved, deleted or transferred; close obsolete access and document final responsibilities.</p></div> 140 +</div> 141 +</section> 36 36 37 -Add links to step-by-step tutorials for this topic. 143 +<section class="dmp-sec"> 144 +<!-- ARSN_DMP_FUNDER_LINKS_SPECIFIC_V2 --> 145 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:4px">FUNDER REQUIREMENTS</div> 146 +<h3>Work from the actual template, call and binding project conditions</h3> 147 +<p>Your internal working DMP can be broader than the formal funder template. For a funded project, however, the current DMP template, the specific call or call guide, the funding agreement or Grant Agreement and the deadlines stated there are decisive. The links below therefore point directly to DMP-relevant documents or document areas.</p> 38 38 39 -== Related Topics == 149 +<div class="dmp-grid"> 150 +<div class="dmp-box" style="border-top:4px solid #e94b13"> 151 +<h4>FWF</h4> 152 +<p>For the relevant approved FWF projects, the DMP is required for project start, is submitted with the funding agreement, uses the same language as the proposal, is versioned throughout the project and is submitted in its final version with the final project report.</p> 153 +<ul style="margin:10px 0 0 18px;padding:0;line-height:1.55"> 154 +<li><a href="https://www.fwf.ac.at/fileadmin/Website/Dokumente/Ueber_uns/Aufgaben_und_Aktivitaeten/Open_Science/fwf_dmp_guidelines_template.docx" target="_blank" rel="noopener"><strong>DMP – Guidelines and template (EN, DOCX) ↗</strong></a></li> 155 +<li><a href="https://www.fwf.ac.at/fileadmin/Website/Dokumente/Ueber_uns/Aufgaben_und_Aktivitaeten/Open_Science/fwf_dmp_evaluierungsmatrix.pdf" target="_blank" rel="noopener">DMP evaluation matrix (PDF) ↗</a></li> 156 +<li><a href="https://www.fwf.ac.at/en/about-us/what-we-do/open-science/open-access-policy/open-access-policy-for-research-data" target="_blank" rel="noopener">Open-Access Policy for Research Data ↗</a></li> 157 +<li><a href="https://www.fwf.ac.at/en/about-us/what-we-do/open-science/research-data-management" target="_blank" rel="noopener">Research Data Management – workflow, funding & contact ↗</a></li> 158 +</ul> 159 +</div> 40 40 41 -Add links to related pages in Enable, Work & Manage, and Publish & Share. 161 +<div class="dmp-box" style="border-top:4px solid #21b6d7"> 162 +<h4>Horizon Europe</h4> 163 +<p>Research Data Management is a mandatory Open Science practice for projects generating or reusing research data. The detailed DMP is normally a deliverable by month 6 and is maintained as a living document.</p> 164 +<ul style="margin:10px 0 0 18px;padding:0;line-height:1.55"> 165 +<li><a href="https://ec.europa.eu/info/funding-tenders/opportunities/portal/screen/how-to-participate/reference-documents;programCode=HORIZON" target="_blank" rel="noopener"><strong>DMP Reporting Template – Funding & Tenders Reference Documents ↗</strong></a><br><small>Under “Templates & Forms” → “Project reporting templates”.</small></li> 166 +<li><a href="https://ec.europa.eu/info/funding-tenders/opportunities/docs/2021-2027/common/guidance/aga_en.pdf" target="_blank" rel="noopener">Annotated Grant Agreement – DMP and Open Science obligations ↗</a></li> 167 +<li><a href="https://rea.ec.europa.eu/open-science_en" target="_blank" rel="noopener">REA Open Science Q&A – DMP, repositories & access restrictions ↗</a></li> 168 +<li><a href="https://ec.europa.eu/info/funding-tenders/opportunities/docs/2021-2027/horizon/guidance/programme-guide_horizon_en.pdf" target="_blank" rel="noopener">Horizon Europe Programme Guide – Open Science / RDM ↗</a></li> 169 +</ul> 170 +</div> 42 42 43 -== Need help? == 172 +<div class="dmp-box" style="border-top:4px solid #21b6d7"> 173 +<h4>ERC · Horizon Europe</h4> 174 +<p>Horizon Europe-funded ERC projects include Research Data Management as a work package. The DMP is due no later than the end of project month 6; the ERC guidance also addresses dissemination level, FAIR, resources and data security.</p> 175 +<p style="margin-top:9px"><a href="https://erc.europa.eu/manage-your-project/open-science" target="_blank" rel="noopener"><strong>ERC – Open Science in ERC Projects: RDM work package, DMP deadline & template ↗</strong></a></p> 176 +</div> 44 44 45 -Not sure what applies to your project? Contact Art & Research Services for support. 178 +<div class="dmp-box" style="border-top:4px solid #f0aa00"> 179 +<h4>FFG · always check the specific call</h4> 180 +<p>For FFG funding, DMP rules are call- and instrument-specific. Record the URL of the actual call, the version/date of the guide and whether a DMP is mandatory at submission, mandatory during the project/reporting, recommended or not required.</p> 181 +<p style="margin-top:9px"><a href="https://www.ffg.at/content/ausschreibungsdokumente-der-basisprogramme" target="_blank" rel="noopener"><strong>FFG – current Basisprogramme call documents 2025/26 ↗</strong></a></p> 182 +<p style="margin-top:8px;color:#6a655e;font-size:13px">For other FFG programmes, always use the current programme/call page and the guide linked there.</p> 183 +</div> 184 +</div> 46 46 47 -TODO: Replace this line with the central contact-form link once the form is available. 186 +<div class="dmp-info" style="margin-top:14px"><strong>Other funders / partners:</strong> Do not record only the funder name. Store the <strong>exact URL of the binding requirement or template, its version/date and deadline</strong> in the DMP. For questions about the internal funding route or how funder requirements apply at the Angewandte: <a href="https://www.dieangewandte.at/universitaet/organisation/planung_service_und_verwaltung/support_kunst_und_forschung" target="_blank" rel="noopener">Support Kunst und Forschung ↗</a>.</div> 187 +<!-- ARSN_DMP_FUNDER_LINKS_SPECIFIC_END --> 188 +</section> 48 48 49 -{{html}} 50 -<!-- ARSN_SEARCH_TERMS_START --> 51 -<details class="arsn-search-terms" style="margin-top:28px;padding-top:10px;border-top:1px solid #eee;"> 52 -<summary style="cursor:pointer;color:#666;font-size:13px;">Search terms & related topics</summary> 53 -<div style="margin-top:9px;color:#555;font-size:13px;"> 54 -<p style="margin:0 0 8px 0;"> 55 -This topic can also be found through related terms, synonyms and common search queries. 56 -Select a term to search the Art & Research Services Navigator. 57 -</p> 58 -<p style="margin:0;"><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=art%20and%20research#arsn-search-input" class="arsn-search-term" data-search-term="art and research" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">art and research</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=enable#arsn-search-input" class="arsn-search-term" data-search-term="enable" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">enable</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=data%20management%20plan#arsn-search-input" class="arsn-search-term" data-search-term="data management plan" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">data management plan</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=dmp#arsn-search-input" class="arsn-search-term" data-search-term="dmp" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">dmp</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=data%20lifecycle#arsn-search-input" class="arsn-search-term" data-search-term="data lifecycle" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">data lifecycle</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=data%20management#arsn-search-input" class="arsn-search-term" data-search-term="data management" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">data management</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=responsibilities#arsn-search-input" class="arsn-search-term" data-search-term="responsibilities" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">responsibilities</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=review%20points#arsn-search-input" class="arsn-search-term" data-search-term="review points" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">review points</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=research%20data%20management#arsn-search-input" class="arsn-search-term" data-search-term="research data management" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">research data management</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=rdm#arsn-search-input" class="arsn-search-term" data-search-term="rdm" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">rdm</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=data%20management%20planning#arsn-search-input" class="arsn-search-term" data-search-term="data management planning" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">data management planning</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=datenmanagementplan#arsn-search-input" class="arsn-search-term" data-search-term="datenmanagementplan" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">datenmanagementplan</a><a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/?q=forschungsdatenmanagement#arsn-search-input" class="arsn-search-term" data-search-term="forschungsdatenmanagement" style="display:inline-block;margin:3px 5px 3px 0;padding:3px 8px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;color:#333;text-decoration:none;font-size:12px;">forschungsdatenmanagement</a></p> 190 +<section class="dmp-sec"> 191 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:4px">STEP 4 · CONNECT THE DMP TO REAL WORKFLOWS</div> 192 +<h3>A plan is useful only if it points to actual places, rules and people</h3> 193 + 194 +<div class="dmp-grid"> 195 +<div class="dmp-check"><strong>Storage:</strong> name the actual working environment, not “university server”.</div> 196 +<div class="dmp-check"><strong>Backup:</strong> state what is backed up, where, how often and by whom.</div> 197 +<div class="dmp-check"><strong>Access:</strong> use named groups/roles and define what happens when someone leaves.</div> 198 +<div class="dmp-check"><strong>Files:</strong> document folder, naming and version rules where the team can find them.</div> 199 +<div class="dmp-check"><strong>Metadata:</strong> specify the fields or README information required for each important material type.</div> 200 +<div class="dmp-check"><strong>Rights:</strong> link permissions, licences and consent records to the material they govern.</div> 201 +<div class="dmp-check"><strong>Sharing:</strong> identify the target repository/platform before the final week of the project.</div> 202 +<div class="dmp-check"><strong>Preservation:</strong> distinguish active storage, backup, repository deposit and long-term preservation.</div> 59 59 </div> 204 + 205 +<div class="dmp-warn" style="margin-top:14px"><strong>Red flag:</strong> “We will decide at the end” is not a data-management strategy. Decisions that affect consent, rights, file formats, metadata, storage, documentation or preservation often have to be made while the material is being created.</div> 206 +</section> 207 + 208 +<section class="dmp-sec"> 209 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:4px">SERVICES & SUPPORT</div> 210 +<h3>Who to involve at the Angewandte</h3> 211 +<p>Use specialist support where the DMP reveals a real requirement. Not every project needs every service.</p> 212 + 213 +<div class="dmp-grid"> 214 +<a class="dmp-service" href="https://www.dieangewandte.at/university_library" target="_blank" rel="noopener"><strong>University Library · Research Data Management & Support ↗</strong><span>For research-data management, metadata, repository and preservation-oriented questions. The Library currently lists Research Data Management & Support as part of its team expertise.</span></a> 215 + 216 +<a class="dmp-service" href="mailto:veronika.kocher@uni-ak.ac.at"><strong>Research Data Management & Support</strong><span>Current University Library contact for RDM support: veronika.kocher@uni-ak.ac.at</span></a> 217 + 218 +<a class="dmp-service" href="mailto:repositorium@uni-ak.ac.at"><strong>Angewandte Repository</strong><span>Repository questions and deposit planning: repositorium@uni-ak.ac.at</span></a> 219 + 220 +<a class="dmp-service" href="https://www.dieangewandte.at/universitaet/organisation/planung_service_und_verwaltung/support_kunst_und_forschung" target="_blank" rel="noopener"><strong>Support Kunst und Forschung ↗</strong><span>For funded artistic/scientific research, funder requirements, proposal/project coordination and the administrative funding route.</span></a> 221 + 222 +<a class="dmp-service" href="mailto:projektsupport@uni-ak.ac.at"><strong>Project Support ticket contact</strong><span>projektsupport@uni-ak.ac.at</span></a> 223 + 224 +<a class="dmp-service" href="https://www.dieangewandte.at/en/data_protection" target="_blank" rel="noopener"><strong>Data Protection ↗</strong><span>For specialist review where personal-data processing, data sharing, external processors/platforms or privacy risks require clarification. Data Protection Officer: dsb@uni-ak.ac.at</span></a> 225 +</div> 226 +</section> 227 + 228 +<section class="dmp-sec"> 229 +<div class="dmp-eye" style="color:#8a4d36;margin-bottom:4px">RELATED NAVIGATOR TOPICS</div> 230 +<h3>Turn each DMP decision into the next practical step</h3> 231 + 232 +<div class="dmp-linkgrid"> 233 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Identify%20Your%20Data%20%26%20Research%20Outputs/">Identify Your Data & Research Outputs</a> 234 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/File%20Organisation%20%26%20Naming/">File Organisation & Naming</a> 235 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Storage%2C%20Backup%20%26%20Security/">Storage, Backup & Security</a> 236 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Data%20Protection%20%26%20Ethics/">Data Protection & Ethics</a> 237 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Copyright%2C%20Rights%20%26%20Licences/">Copyright, Rights & Licences</a> 238 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Collaboration%20Setup/">Collaboration Setup</a> 239 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/Document%20Metadata%20%26%20Provenance/">Document Processes, Metadata & Provenance</a> 240 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/Review%20Your%20Data%20Management/">Review Your Data Management</a> 241 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Decide%20What%20to%20Share/">Decide What to Share</a> 242 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/FAIR%2C%20CARE%20%26%20Open%20Science/">FAIR, CARE & Open Science</a> 243 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Choose%20a%20Repository%20or%20Publication%20Platform/">Choose a Repository or Publication Platform</a> 244 +<a class="dmp-navlink" href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Preserve%20Data%20%26%20Artistic%20Outputs/">Preserve Data & Artistic Outputs</a> 245 +</div> 246 +</section> 247 + 248 +<div class="dmp-info" style="margin-bottom:14px"><strong>Need help reviewing a DMP?</strong> Bring the current funder template or internal draft, your material/output inventory, planned storage locations, project partners and the main questions that are still unresolved. This makes support much faster and more concrete.</div> 249 + 250 +<!-- ARSN_SEARCH_TERMS_START --> 251 +<details style="margin-top:24px;padding-top:10px;border-top:1px solid #e3ded6"> 252 +<summary style="cursor:pointer;color:#6a655e;font-size:13px">Search terms & related topics</summary> 253 +<div style="margin-top:9px;color:#5c5650;font-size:12px;line-height:1.7">data management plan · DMP · research data management · RDM · data lifecycle · data stewardship · data inventory · research materials · artistic research data · data types · file formats · storage · backup · access control · file naming · versioning · metadata · provenance · documentation · personal data · data protection · ethics · consent · copyright · licences · sensitive data · data sharing · open data · FAIR · CARE · repository · preservation · retention · deletion · funder requirements · FWF DMP · Horizon Europe DMP · project closure · handover · Datenmanagementplan · Forschungsdatenmanagement</div> 60 60 </details> 61 61 <!-- ARSN_SEARCH_TERMS_END --> 256 + 257 +</div> 62 62 {{/html}} 259 + 260 +{{html clean="false"}} 261 +<!-- SN_SERVICE_NAVIGATOR_MASTER_STYLE_START --> 262 + 263 +<style data-sn-service-navigator-master="1"> 264 +/* ========================================================= 265 + MASTER TYPOGRAPHY 266 + ========================================================= */ 267 +#xwikicontent h1, 268 +#xwikicontent h2, 269 +#xwikicontent h3, 270 +#xwikicontent h4, 271 +#xwikicontent h5, 272 +#xwikicontent h6, 273 +#xwikicontent .box-title, 274 +#xwikicontent [role="heading"], 275 +#xwikicontent h1 a, 276 +#xwikicontent h2 a, 277 +#xwikicontent h3 a, 278 +#xwikicontent h4 a, 279 +#xwikicontent h5 a, 280 +#xwikicontent h6 a, 281 +#xwikicontent .box-title a, 282 +#xwikicontent [role="heading"] a{ 283 + text-align:left!important; 284 + text-justify:auto!important; 285 + word-spacing:normal!important; 286 +} 287 + 288 +/* ========================================================= 289 + COMING SOON / IN VORBEREITUNG 290 + ========================================================= */ 291 +.sn-coming-soon-badge{ 292 + display:inline-block; 293 + vertical-align:middle; 294 + margin-left:10px; 295 + padding:4px 8px; 296 + border-radius:14px; 297 + border:1px solid #efd9cc; 298 + background:#fff4ee; 299 + color:#8a4d36; 300 + font-size:11px; 301 + font-weight:700; 302 + letter-spacing:.055em; 303 + line-height:1.2; 304 + white-space:nowrap; 305 +} 306 + 307 +/* ========================================================= 308 + NATIVE / DETAIL CALLOUT GEOMETRY 309 + Preserve existing backgrounds. 310 + ========================================================= */ 311 +#xwikicontent .arsn-info, 312 +#xwikicontent .dmp-info, 313 +#xwikicontent .ido-info, 314 +#xwikicontent .pp-info, 315 +#xwikicontent .infomessage{ 316 + box-sizing:border-box!important; 317 + border-left:4px solid #21b6d7!important; 318 + border-radius:8px; 319 + text-align:left!important; 320 + word-spacing:normal!important; 321 +} 322 + 323 +#xwikicontent .arsn-warn, 324 +#xwikicontent .dmp-warn, 325 +#xwikicontent .ido-warn, 326 +#xwikicontent .pp-warn, 327 +#xwikicontent .warn, 328 +#xwikicontent .warning, 329 +#xwikicontent .warningmessage, 330 +#xwikicontent .errormessage{ 331 + box-sizing:border-box!important; 332 + border-left:4px solid #e94b13!important; 333 + border-radius:8px; 334 + text-align:left!important; 335 + word-spacing:normal!important; 336 +} 337 + 338 +[data-sn-master-equal-height], 339 +[data-sn-master-first-row]{ 340 + box-sizing:border-box; 341 +} 342 + 343 +/* ========================================================= 344 + FULL-WIDTH THREE-LINE NUMBER / TITLE / SUBTITLE BLOCKS 345 + ========================================================= */ 346 +#xwikicontent .arsn-area-label[data-sn-three-line="1"]{ 347 + display:grid!important; 348 + grid-template-columns:minmax(0,1fr)!important; 349 + grid-auto-rows:auto!important; 350 + width:100%!important; 351 + max-width:none!important; 352 + box-sizing:border-box!important; 353 + justify-items:start!important; 354 + align-items:start!important; 355 + gap:2px!important; 356 + text-align:left!important; 357 + text-align-last:left!important; 358 + text-justify:auto!important; 359 + word-spacing:normal!important; 360 + white-space:normal!important; 361 +} 362 +#xwikicontent .arsn-area-label[data-sn-three-line="1"] > .arsn-area-number, 363 +#xwikicontent .arsn-area-label[data-sn-three-line="1"] > .sn-area-label-title, 364 +#xwikicontent .arsn-area-label[data-sn-three-line="1"] > .arsn-area-action{ 365 + display:block!important; 366 + width:100%!important; 367 + margin:0!important; 368 + text-align:left!important; 369 + text-align-last:left!important; 370 + text-justify:auto!important; 371 + word-spacing:normal!important; 372 + white-space:normal!important; 373 +} 374 +</style> 375 + 376 +<script data-sn-service-navigator-master="1"> 377 +(function(){ 378 + "use strict"; 379 + 380 + var PAGE_KIND="detail"; 381 + var PLACEHOLDER=false; 382 + var PLACEHOLDER_LABEL="COMING SOON"; 383 + 384 + var MOBILE_MAX=767; 385 + var ROW_TOLERANCE=6; 386 + var RESIZE_DEBOUNCE=220; 387 + 388 + var root= 389 + document.getElementById("xwikicontent")|| 390 + document.querySelector(".xwiki-rendering-content")|| 391 + document.querySelector("main")|| 392 + document.body; 393 + 394 + if(!root)return; 395 + 396 + var managedHeight=new Set(); 397 + var managedMargin=new Set(); 398 + var originalHeight=new WeakMap(); 399 + var originalMargin=new WeakMap(); 400 + 401 + var resizeTimer=0; 402 + var running=false; 403 + 404 + var THEMES=[ 405 + { 406 + name:"BLUE", 407 + accent:"#21b6d7", 408 + bg:"#eaf7fb", 409 + text:"#315d68", 410 + labels:[ 411 + "HIER STARTEN", 412 + "ENTSCHEIDEN", 413 + "ÜBERPRÜFEN & ANPASSEN", 414 + "START HERE", 415 + "DECIDE", 416 + "REVIEW & ADAPT" 417 + ] 418 + }, 419 + { 420 + name:"RED", 421 + accent:"#e94b13", 422 + bg:"#fff1ec", 423 + text:"#8a4d36", 424 + labels:[ 425 + "PLANEN & ORGANISIEREN", 426 + "ORGANISIEREN & DOKUMENTIEREN", 427 + "PUBLIZIEREN & PRÄSENTIEREN", 428 + "PLAN & ORGANISE", 429 + "PLAN & ORGANIZE", 430 + "ORGANISE & DOCUMENT", 431 + "ORGANIZE & DOCUMENT", 432 + "PUBLISH & PRESENT" 433 + ] 434 + }, 435 + { 436 + name:"YELLOW", 437 + accent:"#f0aa00", 438 + bg:"#fff8e7", 439 + text:"#785b17", 440 + labels:[ 441 + "SCHÜTZEN & KLÄREN", 442 + "STANDARDISIEREN & IDENTIFIZIEREN", 443 + "ÖFFNEN, NACHNUTZEN & AUFFINDBAR MACHEN", 444 + "PROTECT & CLARIFY", 445 + "STANDARDISE & IDENTIFY", 446 + "STANDARDIZE & IDENTIFY", 447 + "OPEN, REUSE & MAKE FINDABLE" 448 + ] 449 + }, 450 + { 451 + name:"GREEN", 452 + accent:"#38b76a", 453 + bg:"#edf9f1", 454 + text:"#3f7451", 455 + labels:[ 456 + "INFRASTRUKTUR EINRICHTEN", 457 + "INFRASTRUKTUR & ZUSAMMENARBEIT EINRICHTEN", 458 + "SPEICHERN & ZUGRIFF STEUERN", 459 + "REPOSITORIUM, ERHALTEN & ÜBERGEBEN", 460 + "SET UP INFRASTRUCTURE", 461 + "SET UP INFRASTRUCTURE & COLLABORATION", 462 + "STORE & CONTROL ACCESS", 463 + "REPOSITORY, PRESERVE & HAND OVER" 464 + ] 465 + } 466 + ]; 467 + 468 + function num(value){ 469 + var n=parseFloat(value); 470 + return Number.isFinite(n)?n:0; 471 + } 472 + 473 + function norm(value){ 474 + return String(value||"") 475 + .replace(/\s+/g," ") 476 + .trim() 477 + .toUpperCase(); 478 + } 479 + 480 + function visible(el){ 481 + if(!el||el.nodeType!==1)return false; 482 + 483 + var style=getComputedStyle(el); 484 + var rect=el.getBoundingClientRect(); 485 + 486 + return ( 487 + style.display!=="none"&& 488 + style.visibility!=="hidden"&& 489 + rect.width>20&& 490 + rect.height>4 491 + ); 492 + } 493 + 494 + function saveStyle(el,map,property){ 495 + if(map.has(el))return; 496 + 497 + map.set(el,{ 498 + value:el.style.getPropertyValue(property), 499 + priority:el.style.getPropertyPriority(property) 500 + }); 501 + } 502 + 503 + function restoreStyle(el,map,property){ 504 + var original=map.get(el); 505 + 506 + if(original&&original.value){ 507 + el.style.setProperty( 508 + property, 509 + original.value, 510 + original.priority||"" 511 + ); 512 + }else{ 513 + el.style.removeProperty(property); 514 + } 515 + } 516 + 517 + function resetRuntime(){ 518 + managedHeight.forEach(function(el){ 519 + restoreStyle( 520 + el, 521 + originalHeight, 522 + "min-height" 523 + ); 524 + el.removeAttribute( 525 + "data-sn-master-equal-height" 526 + ); 527 + }); 528 + 529 + managedMargin.forEach(function(el){ 530 + restoreStyle( 531 + el, 532 + originalMargin, 533 + "margin-top" 534 + ); 535 + el.removeAttribute( 536 + "data-sn-master-first-row" 537 + ); 538 + }); 539 + 540 + managedHeight.clear(); 541 + managedMargin.clear(); 542 + } 543 + 544 + function themeFor(text){ 545 + var value=norm(text); 546 + 547 + for(var i=0;i<THEMES.length;i++){ 548 + for(var j=0;j<THEMES[i].labels.length;j++){ 549 + var label=THEMES[i].labels[j]; 550 + 551 + if( 552 + value===label|| 553 + value.indexOf(label+" ")===0|| 554 + value.indexOf(label+" -")===0|| 555 + value.indexOf(label+" ·")===0 556 + ){ 557 + return THEMES[i]; 558 + } 559 + } 560 + } 561 + 562 + return null; 563 + } 564 + 565 + /* ======================================================= 566 + BORDERLESS FILLED RED/ORANGE CTA BUTTONS 567 + ======================================================= */ 568 + 569 + function colourDistance(a,b){ 570 + return Math.sqrt( 571 + Math.pow(a[0]-b[0],2)+ 572 + Math.pow(a[1]-b[1],2)+ 573 + Math.pow(a[2]-b[2],2) 574 + ); 575 + } 576 + 577 + function makeFilledRedOrangeCTAsBorderless(){ 578 + var RED_ORANGE=[233,75,19]; 579 + 580 + Array.from( 581 + root.querySelectorAll( 582 + 'a,button,[role="button"],input[type="submit"],input[type="button"]' 583 + ) 584 + ).forEach(function(el){ 585 + if(!visible(el))return; 586 + 587 + var style=getComputedStyle(el); 588 + var rgb=parseRGB(style.backgroundColor); 589 + 590 + if(!rgb)return; 591 + 592 + if( 593 + colourDistance( 594 + rgb, 595 + RED_ORANGE 596 + )>55 597 + ){ 598 + return; 599 + } 600 + 601 + var rect=el.getBoundingClientRect(); 602 + 603 + if( 604 + rect.width<80|| 605 + rect.height<24 606 + ){ 607 + return; 608 + } 609 + 610 + el.style.setProperty( 611 + "border", 612 + "none", 613 + "important" 614 + ); 615 + 616 + el.style.setProperty( 617 + "border-left", 618 + "none", 619 + "important" 620 + ); 621 + 622 + el.style.setProperty( 623 + "border-top", 624 + "none", 625 + "important" 626 + ); 627 + 628 + el.style.setProperty( 629 + "border-right", 630 + "none", 631 + "important" 632 + ); 633 + 634 + el.style.setProperty( 635 + "border-bottom", 636 + "none", 637 + "important" 638 + ); 639 + 640 + el.style.setProperty( 641 + "box-shadow", 642 + "none", 643 + "important" 644 + ); 645 + }); 646 + } 647 + 648 + /* ======================================================= 649 + FULL-WIDTH THREE-LINE AREA LABELS 650 + ======================================================= */ 651 + 652 + function compactText(value){ 653 + return String(value||"") 654 + .replace(/\s+/g," ") 655 + .trim(); 656 + } 657 + 658 + function makeThreeLineAreaLabels(){ 659 + Array.from( 660 + root.querySelectorAll( 661 + ".arsn-area-label" 662 + ) 663 + ).forEach(function(label){ 664 + if( 665 + label.getAttribute( 666 + "data-sn-three-line" 667 + )==="1" 668 + ){ 669 + return; 670 + } 671 + 672 + var number= 673 + label.querySelector( 674 + ":scope > .arsn-area-number" 675 + ); 676 + 677 + var action= 678 + label.querySelector( 679 + ":scope > .arsn-area-action" 680 + ); 681 + 682 + if( 683 + !number|| 684 + !action 685 + ){ 686 + return; 687 + } 688 + 689 + var clone= 690 + label.cloneNode(true); 691 + 692 + var cloneNumber= 693 + clone.querySelector( 694 + ":scope > .arsn-area-number" 695 + ); 696 + 697 + var cloneAction= 698 + clone.querySelector( 699 + ":scope > .arsn-area-action" 700 + ); 701 + 702 + if(cloneNumber){ 703 + cloneNumber.remove(); 704 + } 705 + 706 + if(cloneAction){ 707 + cloneAction.remove(); 708 + } 709 + 710 + var titleText= 711 + compactText( 712 + clone.textContent 713 + ); 714 + 715 + if(!titleText){ 716 + return; 717 + } 718 + 719 + var numberNode= 720 + number.cloneNode(true); 721 + 722 + var actionNode= 723 + action.cloneNode(true); 724 + 725 + var titleNode= 726 + document.createElement( 727 + "span" 728 + ); 729 + 730 + titleNode.className= 731 + "sn-area-label-title"; 732 + 733 + titleNode.textContent= 734 + titleText; 735 + 736 + while(label.firstChild){ 737 + label.removeChild( 738 + label.firstChild 739 + ); 740 + } 741 + 742 + label.appendChild( 743 + numberNode 744 + ); 745 + 746 + label.appendChild( 747 + titleNode 748 + ); 749 + 750 + label.appendChild( 751 + actionNode 752 + ); 753 + 754 + label.setAttribute( 755 + "data-sn-three-line", 756 + "1" 757 + ); 758 + 759 + var head= 760 + label.closest( 761 + ".arsn-area-head" 762 + ); 763 + 764 + if(head){ 765 + head.style.setProperty( 766 + "width", 767 + "100%", 768 + "important" 769 + ); 770 + 771 + head.style.setProperty( 772 + "max-width", 773 + "100%", 774 + "important" 775 + ); 776 + 777 + head.style.setProperty( 778 + "box-sizing", 779 + "border-box", 780 + "important" 781 + ); 782 + } 783 + }); 784 + } 785 + 786 + /* ======================================================= 787 + PLACEHOLDER BADGE 788 + ======================================================= */ 789 + 790 + function applyPlaceholderBadge(){ 791 + if(!PLACEHOLDER)return; 792 + 793 + if( 794 + document.querySelector( 795 + ".sn-coming-soon-badge" 796 + ) 797 + ){ 798 + return; 799 + } 800 + 801 + var title= 802 + document.querySelector( 803 + "#document-title" 804 + )|| 805 + document.querySelector( 806 + "h1" 807 + ); 808 + 809 + if(!title)return; 810 + 811 + var badge= 812 + document.createElement( 813 + "span" 814 + ); 815 + 816 + badge.className= 817 + "sn-coming-soon-badge"; 818 + 819 + badge.textContent= 820 + PLACEHOLDER_LABEL; 821 + 822 + badge.setAttribute( 823 + "aria-label", 824 + PLACEHOLDER_LABEL 825 + ); 826 + 827 + title.appendChild( 828 + badge 829 + ); 830 + } 831 + 832 + /* ======================================================= 833 + DETAIL PAGE OWN-ACCENT PROPAGATION 834 + ======================================================= */ 835 + 836 + function parseRGB(value){ 837 + var match=String(value||"").match( 838 + /rgba?\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)/i 839 + ); 840 + 841 + if(!match)return null; 842 + 843 + return [ 844 + Number(match[1]), 845 + Number(match[2]), 846 + Number(match[3]) 847 + ]; 848 + } 849 + 850 + function distance(a,b){ 851 + return Math.sqrt( 852 + Math.pow(a[0]-b[0],2)+ 853 + Math.pow(a[1]-b[1],2)+ 854 + Math.pow(a[2]-b[2],2) 855 + ); 856 + } 857 + 858 + function paletteMatch(cssColor){ 859 + var rgb=parseRGB(cssColor); 860 + 861 + if(!rgb)return null; 862 + 863 + var palette=[ 864 + {hex:"#21b6d7",rgb:[33,182,215]}, 865 + {hex:"#e94b13",rgb:[233,75,19]}, 866 + {hex:"#f0aa00",rgb:[240,170,0]}, 867 + {hex:"#38b76a",rgb:[56,183,106]} 868 + ]; 869 + 870 + var best=null; 871 + var bestDistance=Infinity; 872 + 873 + palette.forEach(function(item){ 874 + var d=distance(rgb,item.rgb); 875 + 876 + if(d<bestDistance){ 877 + best=item; 878 + bestDistance=d; 879 + } 880 + }); 881 + 882 + return bestDistance<=30 883 + ?best 884 + :null; 885 + } 886 + 887 + function propagateDetailAccents(){ 888 + if(PAGE_KIND!=="detail")return; 889 + 890 + Array.from( 891 + root.querySelectorAll( 892 + ".arsn-call,.dmp-call,.ido-call,.pp-call,"+ 893 + ".arsn-source,.dmp-source,.ido-source,.pp-source" 894 + ) 895 + ).forEach(function(el){ 896 + if(!visible(el))return; 897 + 898 + var style=getComputedStyle(el); 899 + 900 + if( 901 + num(style.borderTopWidth)>=2 902 + ){ 903 + var match= 904 + paletteMatch( 905 + style.borderTopColor 906 + ); 907 + 908 + if(match){ 909 + el.style.setProperty( 910 + "border-left", 911 + "4px solid "+match.hex, 912 + "important" 913 + ); 914 + } 915 + } 916 + }); 917 + 918 + // Warning families: explicit safety override. 919 + Array.from( 920 + root.querySelectorAll( 921 + ".arsn-warn,.dmp-warn,.ido-warn,.pp-warn,"+ 922 + ".warn,.warning,.warningmessage,.errormessage" 923 + ) 924 + ).forEach(function(el){ 925 + if(!visible(el))return; 926 + 927 + el.style.setProperty( 928 + "border-left", 929 + "4px solid #e94b13", 930 + "important" 931 + ); 932 + }); 933 + 934 + // Info families: explicit orientation override. 935 + Array.from( 936 + root.querySelectorAll( 937 + ".arsn-info,.dmp-info,.ido-info,.pp-info,.infomessage" 938 + ) 939 + ).forEach(function(el){ 940 + if(!visible(el))return; 941 + 942 + el.style.setProperty( 943 + "border-left", 944 + "4px solid #21b6d7", 945 + "important" 946 + ); 947 + }); 948 + } 949 + 950 + /* ======================================================= 951 + OVERVIEW SEMANTIC THEME PALETTE 952 + ======================================================= */ 953 + 954 + function smallestThemeHeaders(){ 955 + return Array.from( 956 + root.querySelectorAll( 957 + "div,span,p,strong,h3,h4,h5,h6" 958 + ) 959 + ).filter(function(el){ 960 + if(!visible(el))return false; 961 + if(!themeFor(el.textContent))return false; 962 + 963 + return !Array.from( 964 + el.children||[] 965 + ).some(function(child){ 966 + return !!themeFor( 967 + child.textContent 968 + ); 969 + }); 970 + }); 971 + } 972 + 973 + function findOverviewCard(header){ 974 + var node=header.parentElement; 975 + var candidates=[]; 976 + 977 + while(node&&node!==root){ 978 + var rect=node.getBoundingClientRect(); 979 + var style=getComputedStyle(node); 980 + 981 + var border= 982 + num(style.borderTopWidth)+ 983 + num(style.borderRightWidth)+ 984 + num(style.borderBottomWidth)+ 985 + num(style.borderLeftWidth); 986 + 987 + if( 988 + rect.width>=220&& 989 + rect.width<=800&& 990 + rect.height>=120&& 991 + border>=1 992 + ){ 993 + candidates.push(node); 994 + } 995 + 996 + node=node.parentElement; 997 + } 998 + 999 + if(!candidates.length)return null; 1000 + 1001 + candidates.sort(function(a,b){ 1002 + return ( 1003 + b.getBoundingClientRect().height- 1004 + a.getBoundingClientRect().height 1005 + ); 1006 + }); 1007 + 1008 + return candidates[0]; 1009 + } 1010 + 1011 + function rowCandidates(link,card){ 1012 + var result=[]; 1013 + var cardRect= 1014 + card.getBoundingClientRect(); 1015 + 1016 + var node=link; 1017 + 1018 + while(node&&node!==card){ 1019 + if(visible(node)){ 1020 + var rect= 1021 + node.getBoundingClientRect(); 1022 + 1023 + if( 1024 + rect.height<=105&& 1025 + rect.width>= 1026 + cardRect.width*.50&& 1027 + rect.width<= 1028 + cardRect.width*1.03 1029 + ){ 1030 + result.push(node); 1031 + } 1032 + } 1033 + 1034 + node=node.parentElement; 1035 + } 1036 + 1037 + return result; 1038 + } 1039 + 1040 + function chooseOuterRow( 1041 + candidates, 1042 + link 1043 + ){ 1044 + if(!candidates.length){ 1045 + return link; 1046 + } 1047 + 1048 + var bordered= 1049 + candidates.filter(function(el){ 1050 + return ( 1051 + num( 1052 + getComputedStyle(el) 1053 + .borderLeftWidth 1054 + )>=1 1055 + ); 1056 + }); 1057 + 1058 + var pool= 1059 + bordered.length 1060 + ?bordered 1061 + :candidates; 1062 + 1063 + pool.sort(function(a,b){ 1064 + var ar= 1065 + a.getBoundingClientRect(); 1066 + 1067 + var br= 1068 + b.getBoundingClientRect(); 1069 + 1070 + return ( 1071 + ar.left-br.left|| 1072 + br.width-ar.width 1073 + ); 1074 + }); 1075 + 1076 + return pool[0]||link; 1077 + } 1078 + 1079 + function applyOverviewPalette(){ 1080 + if(PAGE_KIND!=="overview"){ 1081 + return []; 1082 + } 1083 + 1084 + var headers= 1085 + smallestThemeHeaders() 1086 + .map(function(el){ 1087 + return { 1088 + el:el, 1089 + theme: 1090 + themeFor( 1091 + el.textContent 1092 + ), 1093 + card: 1094 + findOverviewCard( 1095 + el 1096 + ) 1097 + }; 1098 + }) 1099 + .filter(function(row){ 1100 + return !!row.card; 1101 + }); 1102 + 1103 + var unique=[]; 1104 + var seenHeaders=new Set(); 1105 + 1106 + headers.forEach(function(row){ 1107 + var key= 1108 + row.theme.name+ 1109 + "|"+ 1110 + Math.round( 1111 + row.card 1112 + .getBoundingClientRect() 1113 + .left 1114 + )+ 1115 + "|"+ 1116 + Math.round( 1117 + row.el 1118 + .getBoundingClientRect() 1119 + .top 1120 + ); 1121 + 1122 + if(!seenHeaders.has(key)){ 1123 + seenHeaders.add(key); 1124 + unique.push(row); 1125 + } 1126 + }); 1127 + 1128 + unique.forEach(function(row){ 1129 + var headerRect= 1130 + row.el 1131 + .getBoundingClientRect(); 1132 + 1133 + row.el.style.setProperty( 1134 + "background", 1135 + row.theme.bg, 1136 + "important" 1137 + ); 1138 + 1139 + row.el.style.setProperty( 1140 + "color", 1141 + row.theme.text, 1142 + "important" 1143 + ); 1144 + 1145 + row.el.style.setProperty( 1146 + "text-align", 1147 + "left", 1148 + "important" 1149 + ); 1150 + 1151 + row.el.style.setProperty( 1152 + "word-spacing", 1153 + "normal", 1154 + "important" 1155 + ); 1156 + 1157 + var later= 1158 + unique 1159 + .filter(function(other){ 1160 + return ( 1161 + other.card===row.card&& 1162 + other.el 1163 + .getBoundingClientRect() 1164 + .top> 1165 + headerRect.top+2 1166 + ); 1167 + }) 1168 + .sort(function(a,b){ 1169 + return ( 1170 + a.el 1171 + .getBoundingClientRect() 1172 + .top- 1173 + b.el 1174 + .getBoundingClientRect() 1175 + .top 1176 + ); 1177 + }); 1178 + 1179 + var stopTop= 1180 + later.length 1181 + ?later[0].el 1182 + .getBoundingClientRect() 1183 + .top 1184 + :Infinity; 1185 + 1186 + Array.from( 1187 + row.card.querySelectorAll("a") 1188 + ).forEach(function(link){ 1189 + if(!visible(link))return; 1190 + 1191 + var rect= 1192 + link.getBoundingClientRect(); 1193 + 1194 + if( 1195 + rect.top<= 1196 + headerRect.bottom-2|| 1197 + rect.top>= 1198 + stopTop-2 1199 + ){ 1200 + return; 1201 + } 1202 + 1203 + var candidates= 1204 + rowCandidates( 1205 + link, 1206 + row.card 1207 + ); 1208 + 1209 + var target= 1210 + chooseOuterRow( 1211 + candidates, 1212 + link 1213 + ); 1214 + 1215 + candidates.forEach(function(el){ 1216 + el.style.setProperty( 1217 + "border-left", 1218 + "0 solid transparent", 1219 + "important" 1220 + ); 1221 + }); 1222 + 1223 + target.style.setProperty( 1224 + "border-left", 1225 + "3px solid "+ 1226 + row.theme.accent, 1227 + "important" 1228 + ); 1229 + 1230 + target.style.setProperty( 1231 + "box-sizing", 1232 + "border-box", 1233 + "important" 1234 + ); 1235 + }); 1236 + }); 1237 + 1238 + return unique; 1239 + } 1240 + 1241 + /* ======================================================= 1242 + OVERVIEW CARD HEIGHT + FIRST THEMATIC ROW 1243 + ======================================================= */ 1244 + 1245 + function alignOverviewCards(headers){ 1246 + if( 1247 + PAGE_KIND!=="overview"|| 1248 + window.innerWidth<=MOBILE_MAX 1249 + ){ 1250 + return; 1251 + } 1252 + 1253 + var cards=[]; 1254 + var seen=new Set(); 1255 + 1256 + headers.forEach(function(row){ 1257 + if(!seen.has(row.card)){ 1258 + seen.add(row.card); 1259 + cards.push(row.card); 1260 + } 1261 + }); 1262 + 1263 + if(cards.length<2){ 1264 + return; 1265 + } 1266 + 1267 + // Group cards by actual top position. 1268 + var groups=[]; 1269 + 1270 + cards.forEach(function(card){ 1271 + var top= 1272 + card.getBoundingClientRect().top; 1273 + 1274 + var group=null; 1275 + 1276 + for(var i=0;i<groups.length;i++){ 1277 + if( 1278 + Math.abs( 1279 + groups[i].top-top 1280 + )<=ROW_TOLERANCE 1281 + ){ 1282 + group=groups[i]; 1283 + break; 1284 + } 1285 + } 1286 + 1287 + if(!group){ 1288 + group={ 1289 + top:top, 1290 + cards:[] 1291 + }; 1292 + groups.push(group); 1293 + } 1294 + 1295 + group.cards.push(card); 1296 + }); 1297 + 1298 + groups.forEach(function(group){ 1299 + if(group.cards.length<2){ 1300 + return; 1301 + } 1302 + 1303 + var firstHeaders= 1304 + group.cards.map(function(card){ 1305 + var candidates= 1306 + headers 1307 + .filter(function(row){ 1308 + return row.card===card; 1309 + }) 1310 + .sort(function(a,b){ 1311 + return ( 1312 + a.el 1313 + .getBoundingClientRect() 1314 + .top- 1315 + b.el 1316 + .getBoundingClientRect() 1317 + .top 1318 + ); 1319 + }); 1320 + 1321 + return candidates.length 1322 + ?candidates[0] 1323 + :null; 1324 + }); 1325 + 1326 + if( 1327 + !firstHeaders.some(function(row){ 1328 + return !row; 1329 + }) 1330 + ){ 1331 + var targetTop= 1332 + Math.max.apply( 1333 + Math, 1334 + firstHeaders.map(function(row){ 1335 + return ( 1336 + row.el 1337 + .getBoundingClientRect() 1338 + .top- 1339 + row.card 1340 + .getBoundingClientRect() 1341 + .top 1342 + ); 1343 + }) 1344 + ); 1345 + 1346 + firstHeaders.forEach(function(row){ 1347 + var relativeTop= 1348 + row.el 1349 + .getBoundingClientRect() 1350 + .top- 1351 + row.card 1352 + .getBoundingClientRect() 1353 + .top; 1354 + 1355 + var delta= 1356 + targetTop-relativeTop; 1357 + 1358 + if(delta>1){ 1359 + saveStyle( 1360 + row.el, 1361 + originalMargin, 1362 + "margin-top" 1363 + ); 1364 + 1365 + var current= 1366 + num( 1367 + getComputedStyle( 1368 + row.el 1369 + ).marginTop 1370 + ); 1371 + 1372 + row.el.style.setProperty( 1373 + "margin-top", 1374 + ( 1375 + current+delta 1376 + )+"px" 1377 + ); 1378 + 1379 + row.el.setAttribute( 1380 + "data-sn-master-first-row", 1381 + "1" 1382 + ); 1383 + 1384 + managedMargin.add( 1385 + row.el 1386 + ); 1387 + } 1388 + }); 1389 + } 1390 + 1391 + var maxHeight=0; 1392 + 1393 + group.cards.forEach(function(card){ 1394 + maxHeight= 1395 + Math.max( 1396 + maxHeight, 1397 + card 1398 + .getBoundingClientRect() 1399 + .height 1400 + ); 1401 + }); 1402 + 1403 + maxHeight= 1404 + Math.ceil(maxHeight); 1405 + 1406 + group.cards.forEach(function(card){ 1407 + saveStyle( 1408 + card, 1409 + originalHeight, 1410 + "min-height" 1411 + ); 1412 + 1413 + card.style.setProperty( 1414 + "min-height", 1415 + maxHeight+"px" 1416 + ); 1417 + 1418 + card.setAttribute( 1419 + "data-sn-master-equal-height", 1420 + "1" 1421 + ); 1422 + 1423 + managedHeight.add( 1424 + card 1425 + ); 1426 + }); 1427 + }); 1428 + } 1429 + 1430 + /* ======================================================= 1431 + DETAIL GRID EQUAL HEIGHT, DESKTOP ONLY 1432 + ======================================================= */ 1433 + 1434 + function equaliseDetailGrids(){ 1435 + if( 1436 + PAGE_KIND!=="detail"|| 1437 + window.innerWidth<=MOBILE_MAX 1438 + ){ 1439 + return; 1440 + } 1441 + 1442 + var selectors=[ 1443 + ".arsn-grid", 1444 + ".arsn-grid-2", 1445 + ".arsn-grid-3", 1446 + ".dmp-grid", 1447 + ".ido-grid", 1448 + ".pp-grid" 1449 + ]; 1450 + 1451 + selectors.forEach(function(selector){ 1452 + Array.from( 1453 + root.querySelectorAll(selector) 1454 + ).forEach(function(grid){ 1455 + var children= 1456 + Array.from( 1457 + grid.children||[] 1458 + ).filter(visible); 1459 + 1460 + if(children.length<2){ 1461 + return; 1462 + } 1463 + 1464 + var groups=[]; 1465 + 1466 + children.forEach(function(child){ 1467 + var top= 1468 + child 1469 + .getBoundingClientRect() 1470 + .top; 1471 + 1472 + var group=null; 1473 + 1474 + for(var i=0;i<groups.length;i++){ 1475 + if( 1476 + Math.abs( 1477 + groups[i].top-top 1478 + )<=ROW_TOLERANCE 1479 + ){ 1480 + group=groups[i]; 1481 + break; 1482 + } 1483 + } 1484 + 1485 + if(!group){ 1486 + group={ 1487 + top:top, 1488 + items:[] 1489 + }; 1490 + groups.push(group); 1491 + } 1492 + 1493 + group.items.push(child); 1494 + }); 1495 + 1496 + groups.forEach(function(group){ 1497 + if(group.items.length<2){ 1498 + return; 1499 + } 1500 + 1501 + var maxHeight=0; 1502 + 1503 + group.items.forEach(function(item){ 1504 + maxHeight= 1505 + Math.max( 1506 + maxHeight, 1507 + item 1508 + .getBoundingClientRect() 1509 + .height 1510 + ); 1511 + }); 1512 + 1513 + maxHeight= 1514 + Math.ceil(maxHeight); 1515 + 1516 + group.items.forEach(function(item){ 1517 + saveStyle( 1518 + item, 1519 + originalHeight, 1520 + "min-height" 1521 + ); 1522 + 1523 + item.style.setProperty( 1524 + "min-height", 1525 + maxHeight+"px" 1526 + ); 1527 + 1528 + item.setAttribute( 1529 + "data-sn-master-equal-height", 1530 + "1" 1531 + ); 1532 + 1533 + managedHeight.add(item); 1534 + }); 1535 + }); 1536 + }); 1537 + }); 1538 + } 1539 + 1540 + /* ======================================================= 1541 + RUN / RESPONSIVE SCHEDULING 1542 + ======================================================= */ 1543 + 1544 + function run(){ 1545 + if(running)return; 1546 + 1547 + running=true; 1548 + 1549 + try{ 1550 + resetRuntime(); 1551 + applyPlaceholderBadge(); 1552 + propagateDetailAccents(); 1553 + 1554 + var headers= 1555 + applyOverviewPalette(); 1556 + 1557 + makeThreeLineAreaLabels(); 1558 + makeFilledRedOrangeCTAsBorderless(); 1559 + 1560 + if( 1561 + window.innerWidth> 1562 + MOBILE_MAX 1563 + ){ 1564 + alignOverviewCards( 1565 + headers 1566 + ); 1567 + 1568 + equaliseDetailGrids(); 1569 + } 1570 + }finally{ 1571 + running=false; 1572 + } 1573 + } 1574 + 1575 + function onResize(){ 1576 + if(resizeTimer){ 1577 + clearTimeout( 1578 + resizeTimer 1579 + ); 1580 + } 1581 + 1582 + resizeTimer= 1583 + setTimeout( 1584 + function(){ 1585 + resizeTimer=0; 1586 + run(); 1587 + }, 1588 + RESIZE_DEBOUNCE 1589 + ); 1590 + } 1591 + 1592 + async function waitForReady(){ 1593 + if( 1594 + document.readyState!=="complete" 1595 + ){ 1596 + await new Promise(function(resolve){ 1597 + window.addEventListener( 1598 + "load", 1599 + resolve, 1600 + {once:true} 1601 + ); 1602 + }); 1603 + } 1604 + 1605 + if( 1606 + document.fonts&& 1607 + document.fonts.ready 1608 + ){ 1609 + try{ 1610 + await document.fonts.ready; 1611 + }catch(error){} 1612 + } 1613 + 1614 + var images= 1615 + Array.from( 1616 + root.querySelectorAll("img") 1617 + ); 1618 + 1619 + await Promise.all( 1620 + images.map(function(img){ 1621 + if(img.complete){ 1622 + return Promise.resolve(); 1623 + } 1624 + 1625 + return new Promise(function(resolve){ 1626 + var done=function(){ 1627 + resolve(); 1628 + }; 1629 + 1630 + img.addEventListener( 1631 + "load", 1632 + done, 1633 + {once:true} 1634 + ); 1635 + 1636 + img.addEventListener( 1637 + "error", 1638 + done, 1639 + {once:true} 1640 + ); 1641 + }); 1642 + }) 1643 + ); 1644 + 1645 + run(); 1646 + } 1647 + 1648 + window.addEventListener( 1649 + "resize", 1650 + onResize, 1651 + {passive:true} 1652 + ); 1653 + 1654 + waitForReady(); 1655 +})(); 1656 +</script> 1657 + 1658 +<!-- SN_SERVICE_NAVIGATOR_MASTER_STYLE_END --> 1659 +{{/html}} 1660 +