Version 39.25 by Veronika Kocher on Thursday, 03 Sep 2026 14:15

Show last authors
1 Artistic and research projects involve many different tasks, decisions and responsibilities — from developing an initial idea and securing funding to organising materials, collaborating with others, publishing results and preserving them for future use.
2
3 The **Art & Research Services Navigator** helps you find the right guidance, services and resources for each stage of your project.
4
5 {{info title="How responsibilities work"}}
6 The navigator brings services together around the project lifecycle and the researcher's task. It is a navigation layer across university services, not a separate organisational unit.
7
8 **Support Kunst und Forschung (SKF)** supports project and funding activities — especially project development, funding and calls, proposals, and coordination of funded projects — and, where useful, connects them with the University's relevant services.
9
10 Depending on the question, these may include the **University Library / Research Data Management & Repository**, **IT**, **Legal and Data Protection**, **Finance and Personnel**, **Publications and Communication**, **Event Management**, the **International Office** and other services.
11
12 The **institute, department or other host unit** remains the artistic or academic home of the project. The navigator brings these offers together along the project stages so you can start from your need rather than from the organisational chart.
13 {{/info}}
14
15
16
17 {{html clean="false"}}
18 <section data-arsn-search-block-fix="v5" style="margin:20px 0 26px 0;padding:16px 18px;border:1px solid #e3ded6;border-radius:10px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);">
19 <h2 style="font-size:20px;margin:0 0 6px 0;color:#35312d;">Search the Art &amp; Research Services Navigator</h2>
20 <p style="margin:0 0 12px 0;color:#6a655e;">Type a topic, synonym or common query. Matching pages are suggested immediately. Search-term links on the topic pages use the same controlled vocabulary.</p>
21 <form
22 id="arsn-search-form"
23 action="https://xwiki.uni-ak.ac.at/bin/view/Main/SolrSearch"
24 method="get"
25 role="search"
26 style="margin:0;"
27 >
28 <div style="display:flex;gap:10px;align-items:center;flex-wrap:wrap;">
29 <label for="arsn-search-input" style="position:absolute;left:-10000px;">
30 Search the Art &amp; Research Services Navigator
31 </label>
32
33 <input
34 id="arsn-search-input"
35 name="text"
36 type="search"
37 placeholder="Try: DOI, backup, copyright, GDPR, repository..."
38 autocomplete="off"
39 aria-autocomplete="list"
40 aria-controls="arsn-search-results"
41 aria-expanded="false"
42 style="flex:1 1 520px;min-width:260px;padding:11px 13px;border:1px solid #bbb;border-radius:6px;font-size:16px;"
43 />
44
45 <input type="hidden" name="f_type" value="DOCUMENT" />
46 <input type="hidden" name="sort" value="score" />
47 <input type="hidden" name="sortOrder" value="desc" />
48 <input type="hidden" name="facet" value="true" />
49 <input type="hidden" name="highlight" value="true" />
50 <input type="hidden" name="r" value="1" />
51
52 <button type="submit" class="btn btn-primary" style="padding:11px 22px;">
53 Search
54 </button>
55 </div>
56
57 <div
58 id="arsn-search-results"
59 role="listbox"
60 aria-label="Suggested pages"
61 hidden
62 style="margin-top:8px;border:1px solid #d4d4d4;border-radius:7px;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.10);overflow:hidden;"
63 ></div>
64
65 <p
66 id="arsn-search-status"
67 style="position:absolute;left:-10000px;"
68 aria-live="polite"
69 ></p>
70 </form>
71
72 <script>
73 (function () {
74 "use strict";
75
76 var encodedIndex = "W3sidGl0bGUiOiJBcnQgJiBSZXNlYXJjaCBTZXJ2aWNlcyBOYXZpZ2F0b3IiLCJwaGFzZSI6Ik92ZXJ2aWV3IiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yLy8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwiYXJ0aXN0aWMgcmVzZWFyY2giLCJyZXNlYXJjaCBzZXJ2aWNlcyIsInJlc2VhcmNoIHN1cHBvcnQiLCJzZXJ2aWNlIG5hdmlnYXRvciIsInByb2plY3QgbGlmZWN5Y2xlIiwicmVzZWFyY2ggZGF0YSBtYW5hZ2VtZW50Iiwib3BlbiBzY2llbmNlIiwicmVzZWFyY2ggcHJvamVjdCIsImFydCByZXNlYXJjaCBzdXBwb3J0IiwicmVzZWFyY2ggc3VwcG9ydCBzZXJ2aWNlcyIsInJlc2VhcmNoIHdvcmtmbG93IiwicHJvamVjdCBzdXBwb3J0Il19LHsidGl0bGUiOiJFbmFibGUiLCJwaGFzZSI6IkVuYWJsZSIsInVybCI6Imh0dHBzOi8veHdpa2kudW5pLWFrLmFjLmF0L2Jpbi92aWV3L1NlcnZpY2UlMjBOYXZpZ2F0b3IvQXJ0JTIwJTI2JTIwUmVzZWFyY2glMjBTZXJ2aWNlcyUyME5hdmlnYXRvci9FbmFibGUvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsImVuYWJsZSIsInByb2plY3Qgc2V0dXAiLCJwcm9qZWN0IHBsYW5uaW5nIiwicmVzZWFyY2ggZnVuZGluZyIsImRhdGEgbWFuYWdlbWVudCIsInJpZ2h0cyBhbmQgZXRoaWNzIiwic3RhcnRpbmcgYSBwcm9qZWN0IiwibmV3IHByb2plY3QiLCJwcm9qZWN0IHByZXBhcmF0aW9uIiwicHJvamVrdHBsYW51bmciXX0seyJ0aXRsZSI6IkdldCBTdGFydGVkIiwicGhhc2UiOiJFbmFibGUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvRW5hYmxlL0dldCUyMFN0YXJ0ZWQvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsImVuYWJsZSIsImdldCBzdGFydGVkIiwicHJvamVjdCBzZXR1cCIsImRhdGEgbWFuYWdlbWVudCIsInJlc2VhcmNoIGRhdGEiLCJwcm9qZWN0IGxpZmVjeWNsZSIsIm5ldyBwcm9qZWN0Iiwic3RhcnRpbmcgYSBwcm9qZWN0IiwicmVzZWFyY2ggcHJvamVjdCIsImVpbnN0aWVnIiwicHJvamVrdHN0YXJ0Il19LHsidGl0bGUiOiJQcm9qZWN0IFBsYW5uaW5nICYgT3JnYW5pc2F0aW9uIiwicGhhc2UiOiJFbmFibGUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvRW5hYmxlL1Byb2plY3QlMjBQbGFubmluZyUyMCUyNiUyME9yZ2FuaXNhdGlvbi8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwiZW5hYmxlIiwicHJvamVjdCBwbGFubmluZyIsInByb2plY3Qgb3JnYW5pc2F0aW9uIiwicm9sZXMgYW5kIHJlc3BvbnNpYmlsaXRpZXMiLCJyZXNvdXJjZXMiLCJ0aW1lbGluZSIsImJ1ZGdldCIsInJpc2sgbWFuYWdlbWVudCIsInByb2plY3Qgcm9sZXMiLCJwcm9qZWN0IHJlc3BvbnNpYmlsaXRpZXMiLCJwcm9qZWN0IGJ1ZGdldCIsInByb2plY3QgdGltZWxpbmUiLCJwcm9qZWN0IHJlc291cmNlcyIsInByb2pla3RwbGFudW5nIiwicHJvamVrdG9yZ2FuaXNhdGlvbiIsInp1c3TDpG5kaWdrZWl0ZW4iXX0seyJ0aXRsZSI6IkZ1bmRpbmcgJiBGdW5kZXIgUmVxdWlyZW1lbnRzIiwicGhhc2UiOiJFbmFibGUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvRW5hYmxlL0Z1bmRpbmclMjAlMjYlMjBGdW5kZXIlMjBSZXF1aXJlbWVudHMvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsImVuYWJsZSIsInJlc2VhcmNoIGZ1bmRpbmciLCJmdW5kZXIgcmVxdWlyZW1lbnRzIiwiZ3JhbnQgcmVxdWlyZW1lbnRzIiwiZGF0YSBtYW5hZ2VtZW50IHBsYW4iLCJvcGVuIHNjaWVuY2UgcmVxdWlyZW1lbnRzIiwiZWxpZ2libGUgY29zdHMiLCJmdW5kaW5nIiwiZ3JhbnQiLCJncmFudCBhcHBsaWNhdGlvbiIsImZ1bmRlciIsImZ1bmRpbmcgcmVxdWlyZW1lbnRzIiwiZsO2cmRlcnVuZyIsImbDtnJkZXJnZWJlciIsImbDtnJkZXJiZWRpbmd1bmdlbiJdfSx7InRpdGxlIjoiSWRlbnRpZnkgWW91ciBEYXRhICYgUmVzZWFyY2ggT3V0cHV0cyIsInBoYXNlIjoiRW5hYmxlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL0VuYWJsZS9JZGVudGlmeSUyMFlvdXIlMjBEYXRhJTIwJTI2JTIwUmVzZWFyY2glMjBPdXRwdXRzLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJlbmFibGUiLCJyZXNlYXJjaCBkYXRhIiwiYXJ0aXN0aWMgb3V0cHV0cyIsInJlc2VhcmNoIG91dHB1dHMiLCJkYXRhIGludmVudG9yeSIsIm1hdGVyaWFsIHR5cGVzIiwiZGF0YSBjbGFzc2lmaWNhdGlvbiIsImRhdGEgdHlwZXMiLCJyZXNlYXJjaCBtYXRlcmlhbHMiLCJvdXRwdXRzIiwiYXJ0aXN0aWMgcmVzZWFyY2ggb3V0cHV0cyIsInJlc2VhcmNoIG9iamVjdHMiLCJmb3JzY2h1bmdzZGF0ZW4iLCJmb3JzY2h1bmdzb3V0cHV0cyJdfSx7InRpdGxlIjoiUGxhbiBZb3VyIERhdGEgTWFuYWdlbWVudCIsInBoYXNlIjoiRW5hYmxlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL0VuYWJsZS9QbGFuJTIwWW91ciUyMERhdGElMjBNYW5hZ2VtZW50LyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJlbmFibGUiLCJkYXRhIG1hbmFnZW1lbnQgcGxhbiIsImRtcCIsImRhdGEgbGlmZWN5Y2xlIiwiZGF0YSBtYW5hZ2VtZW50IiwicmVzcG9uc2liaWxpdGllcyIsInJldmlldyBwb2ludHMiLCJyZXNlYXJjaCBkYXRhIG1hbmFnZW1lbnQiLCJyZG0iLCJkYXRhIG1hbmFnZW1lbnQgcGxhbm5pbmciLCJkYXRlbm1hbmFnZW1lbnRwbGFuIiwiZm9yc2NodW5nc2RhdGVubWFuYWdlbWVudCJdfSx7InRpdGxlIjoiQ29weXJpZ2h0LCBSaWdodHMgJiBMaWNlbmNlcyIsInBoYXNlIjoiRW5hYmxlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL0VuYWJsZS9Db3B5cmlnaHQlMkMlMjBSaWdodHMlMjAlMjYlMjBMaWNlbmNlcy8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwiZW5hYmxlIiwiY29weXJpZ2h0IiwicmlnaHRzIiwibGljZW5zaW5nIiwibGljZW5jZXMiLCJ0aGlyZC1wYXJ0eSByaWdodHMiLCJjcmVhdGl2ZSBjb21tb25zIiwicGVybWlzc2lvbnMiLCJ1cmhlYmVycmVjaHQiLCJyaWdodHMgY2xlYXJhbmNlIiwiY2MgbGljZW5jZSIsImNjIGxpY2Vuc2UiLCJ1c2FnZSByaWdodHMiLCJudXR6dW5nc3JlY2h0ZSIsInJlY2h0ZWtsw6RydW5nIl19LHsidGl0bGUiOiJEYXRhIFByb3RlY3Rpb24gJiBFdGhpY3MiLCJwaGFzZSI6IkVuYWJsZSIsInVybCI6Imh0dHBzOi8veHdpa2kudW5pLWFrLmFjLmF0L2Jpbi92aWV3L1NlcnZpY2UlMjBOYXZpZ2F0b3IvQXJ0JTIwJTI2JTIwUmVzZWFyY2glMjBTZXJ2aWNlcyUyME5hdmlnYXRvci9FbmFibGUvRGF0YSUyMFByb3RlY3Rpb24lMjAlMjYlMjBFdGhpY3MvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsImVuYWJsZSIsImRhdGEgcHJvdGVjdGlvbiIsInBlcnNvbmFsIGRhdGEiLCJnZHByIiwiZXRoaWNzIiwiY29uc2VudCIsInNlbnNpdGl2ZSBkYXRhIiwiY29uZmlkZW50aWFsaXR5IiwiZGF0YSBwcml2YWN5IiwiZHNndm8iLCJhbm9ueW1pc2F0aW9uIiwiYW5vbnltaXphdGlvbiIsInBzZXVkb255bWlzYXRpb24iLCJwc2V1ZG9ueW1pemF0aW9uIiwiZGF0ZW5zY2h1dHoiLCJlaW53aWxsaWd1bmciXX0seyJ0aXRsZSI6IkZpbGUgT3JnYW5pc2F0aW9uICYgTmFtaW5nIiwicGhhc2UiOiJFbmFibGUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvRW5hYmxlL0ZpbGUlMjBPcmdhbmlzYXRpb24lMjAlMjYlMjBOYW1pbmcvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsImVuYWJsZSIsImZpbGUgb3JnYW5pc2F0aW9uIiwiZm9sZGVyIHN0cnVjdHVyZSIsImZpbGUgbmFtaW5nIiwibmFtaW5nIGNvbnZlbnRpb25zIiwicHJvamVjdCBmaWxlcyIsImlkZW50aWZpZXJzIiwiZmlsZW5hbWUiLCJmaWxlbmFtZXMiLCJmb2xkZXIgbmFtaW5nIiwiZmlsZSBzdHJ1Y3R1cmUiLCJkYXRlaW9yZ2FuaXNhdGlvbiIsImRhdGVpYmVuZW5udW5nIiwib3JkbmVyc3RydWt0dXIiXX0seyJ0aXRsZSI6IlN0b3JhZ2UsIEJhY2t1cCAmIFNlY3VyaXR5IiwicGhhc2UiOiJFbmFibGUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvRW5hYmxlL1N0b3JhZ2UlMkMlMjBCYWNrdXAlMjAlMjYlMjBTZWN1cml0eS8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwiZW5hYmxlIiwic3RvcmFnZSIsImJhY2t1cCIsInNlY3VyaXR5IiwiYWNjZXNzIGNvbnRyb2wiLCIzLTItMSBiYWNrdXAiLCJpbnN0aXR1dGlvbmFsIHN0b3JhZ2UiLCJiYWNrdXAgcmVzdG9yZSIsInJlc3RvcmUiLCJjbG91ZCBzdG9yYWdlIiwiZGF0YSBzZWN1cml0eSIsImRhdGVuc2ljaGVydW5nIiwic3BlaWNoZXIiLCJ6dWdyaWZmc3NjaHV0eiJdfSx7InRpdGxlIjoiSW5mcmFzdHJ1Y3R1cmUsIFNlcnZpY2VzICYgVG9vbHMiLCJwaGFzZSI6IkVuYWJsZSIsInVybCI6Imh0dHBzOi8veHdpa2kudW5pLWFrLmFjLmF0L2Jpbi92aWV3L1NlcnZpY2UlMjBOYXZpZ2F0b3IvQXJ0JTIwJTI2JTIwUmVzZWFyY2glMjBTZXJ2aWNlcyUyME5hdmlnYXRvci9FbmFibGUvSW5mcmFzdHJ1Y3R1cmUlMkMlMjBTZXJ2aWNlcyUyMCUyNiUyMFRvb2xzLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJlbmFibGUiLCJpbmZyYXN0cnVjdHVyZSIsInNlcnZpY2VzIiwidG9vbHMiLCJpbnN0aXR1dGlvbmFsIHNlcnZpY2VzIiwic29mdHdhcmUiLCJyZXBvc2l0b3JpZXMiLCJyZXNlYXJjaCBpbmZyYXN0cnVjdHVyZSIsIml0IHNlcnZpY2VzIiwiZGlnaXRhbCB0b29scyIsImluZnJhc3RydWt0dXIiLCJkaWVuc3RlIiwid2Vya3pldWdlIl19LHsidGl0bGUiOiJDb2xsYWJvcmF0aW9uIFNldHVwIiwicGhhc2UiOiJFbmFibGUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvRW5hYmxlL0NvbGxhYm9yYXRpb24lMjBTZXR1cC8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwiZW5hYmxlIiwiY29sbGFib3JhdGlvbiIsImRhdGEgZXhjaGFuZ2UiLCJzaGFyZWQgd29ya3NwYWNlIiwiYWNjb3VudHMiLCJhY2Nlc3MgZ3JvdXBzIiwicm9sZXMgYW5kIHJlc3BvbnNpYmlsaXRpZXMiLCJoYW5kb3ZlciIsInRlYW0gY29sbGFib3JhdGlvbiIsInByb2plY3QgcGFydG5lcnMiLCJzaGFyZWQgZm9sZGVyIiwic2hhcmVkIGFjY291bnRzIiwiY29sbGFib3JhdGl2ZSB3b3JraW5nIiwienVzYW1tZW5hcmJlaXQiLCJkYXRlbmF1c3RhdXNjaCJdfSx7InRpdGxlIjoiUXVpY2sgU3RhcnQgZm9yIFNtYWxsIFByb2plY3RzIiwicGhhc2UiOiJFbmFibGUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvRW5hYmxlL1F1aWNrJTIwU3RhcnQlMjBmb3IlMjBTbWFsbCUyMFByb2plY3RzLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJlbmFibGUiLCJxdWljayBzdGFydCIsInNtYWxsIHByb2plY3RzIiwibWluaW11bSBzdGFuZGFyZCIsInByb2plY3QgY2hlY2tsaXN0IiwicHJvamVjdCBzZXR1cCIsImRhdGEgbWFuYWdlbWVudCBjaGVja2xpc3QiLCJxdWljayBndWlkZSIsIm1pbmltdW0gcmVxdWlyZW1lbnRzIiwic21hbGwgcHJvamVjdCBjaGVja2xpc3QiLCJjaGVja2xpc3RlIiwibWluZGVzdHN0YW5kYXJkIl19LHsidGl0bGUiOiJXb3JrICYgTWFuYWdlIiwicGhhc2UiOiJXb3JrICYgTWFuYWdlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL1dvcmslMjAlMjYlMjBNYW5hZ2UvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsIndvcmsgYW5kIG1hbmFnZSIsInByb2plY3QgbWFuYWdlbWVudCIsInJlc2VhcmNoIHdvcmtmbG93IiwiZG9jdW1lbnRhdGlvbiIsImRhdGEgbWFuYWdlbWVudCIsInF1YWxpdHkgYXNzdXJhbmNlIiwib25nb2luZyBwcm9qZWN0IiwicHJvamVjdCB3b3JrZmxvdyIsImxhdWZlbmRlcyBwcm9qZWt0IiwicHJvamVrdG1hbmFnZW1lbnQiXX0seyJ0aXRsZSI6Ik9yZ2FuaXNlIEZpbGVzICYgRm9sZGVycyIsInBoYXNlIjoiV29yayAmIE1hbmFnZSIsInVybCI6Imh0dHBzOi8veHdpa2kudW5pLWFrLmFjLmF0L2Jpbi92aWV3L1NlcnZpY2UlMjBOYXZpZ2F0b3IvQXJ0JTIwJTI2JTIwUmVzZWFyY2glMjBTZXJ2aWNlcyUyME5hdmlnYXRvci9Xb3JrJTIwJTI2JTIwTWFuYWdlL09yZ2FuaXNlJTIwRmlsZXMlMjAlMjYlMjBGb2xkZXJzLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJ3b3JrIGFuZCBtYW5hZ2UiLCJmaWxlIG9yZ2FuaXNhdGlvbiIsImZvbGRlciBzdHJ1Y3R1cmUiLCJwcm9qZWN0IGZpbGVzIiwibmFtaW5nIGNvbnZlbnRpb25zIiwidGVhbSB3b3JrZmxvdyIsImRhdGEgb3JnYW5pc2F0aW9uIiwiZmlsZSBzdHJ1Y3R1cmUiLCJmb2xkZXIgb3JnYW5pc2F0aW9uIiwiZGF0ZWlvcmdhbmlzYXRpb24iLCJvcmRuZXJzdHJ1a3R1ciJdfSx7InRpdGxlIjoiTWFuYWdlIFZlcnNpb25zICYgTWFzdGVyIEZpbGVzIiwicGhhc2UiOiJXb3JrICYgTWFuYWdlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL1dvcmslMjAlMjYlMjBNYW5hZ2UvTWFuYWdlJTIwVmVyc2lvbnMlMjAlMjYlMjBNYXN0ZXIlMjBGaWxlcy8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwid29yayBhbmQgbWFuYWdlIiwidmVyc2lvbiBjb250cm9sIiwidmVyc2lvbnMiLCJtYXN0ZXIgZmlsZXMiLCJ3b3JraW5nIGNvcGllcyIsInB1Ymxpc2hlZCB2ZXJzaW9ucyIsInRyYWNlYWJpbGl0eSIsImdpdCIsInZlcnNpb25pbmciLCJtYXN0ZXIiLCJtYXN0ZXIgZmlsZSIsImZpbmFsIHZlcnNpb24iLCJ2ZXJzaW9uIGhpc3RvcnkiLCJ2ZXJzaW9uc3ZlcndhbHR1bmciLCJtYXN0ZXJkYXRlaSJdfSx7InRpdGxlIjoiU3RvcmUsIEJhY2sgVXAgJiBDb250cm9sIEFjY2VzcyIsInBoYXNlIjoiV29yayAmIE1hbmFnZSIsInVybCI6Imh0dHBzOi8veHdpa2kudW5pLWFrLmFjLmF0L2Jpbi92aWV3L1NlcnZpY2UlMjBOYXZpZ2F0b3IvQXJ0JTIwJTI2JTIwUmVzZWFyY2glMjBTZXJ2aWNlcyUyME5hdmlnYXRvci9Xb3JrJTIwJTI2JTIwTWFuYWdlL1N0b3JlJTJDJTIwQmFjayUyMFVwJTIwJTI2JTIwQ29udHJvbCUyMEFjY2Vzcy8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwid29yayBhbmQgbWFuYWdlIiwic3RvcmFnZSIsImJhY2t1cCIsImFjY2VzcyBjb250cm9sIiwic2VjdXJpdHkiLCJwZXJtaXNzaW9ucyIsInNlbnNpdGl2ZSBkYXRhIiwiaW5zdGl0dXRpb25hbCBzdG9yYWdlIiwiYmFja3VwIHJlc3RvcmUiLCJhY2Nlc3MgcGVybWlzc2lvbnMiLCJzZWN1cmUgc3RvcmFnZSIsImRhdGEgYWNjZXNzIiwienVncmlmZnNyZWNodGUiLCJkYXRlbnNpY2hlcnVuZyJdfSx7InRpdGxlIjoiRG9jdW1lbnQgUHJvY2Vzc2VzLCBNZXRhZGF0YSAmIFByb3ZlbmFuY2UiLCJwaGFzZSI6IldvcmsgJiBNYW5hZ2UiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvV29yayUyMCUyNiUyME1hbmFnZS9Eb2N1bWVudCUyME1ldGFkYXRhJTIwJTI2JTIwUHJvdmVuYW5jZS8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwid29yayBhbmQgbWFuYWdlIiwiZG9jdW1lbnRhdGlvbiIsInJlc2VhcmNoIHByb2Nlc3MiLCJtZXRhZGF0YSIsInByb3ZlbmFuY2UiLCJjb250ZXh0IiwidHJhY2VhYmlsaXR5IiwicmVsYXRpb25zaGlwcyIsInRlY2huaWNhbCBkb2N1bWVudGF0aW9uIiwicHJvY2VzcyBkb2N1bWVudGF0aW9uIiwicmVzZWFyY2ggZG9jdW1lbnRhdGlvbiIsImRhdGEgbGluZWFnZSIsIm9yaWdpbiIsImhpc3Rvcnkgb2YgY2hhbmdlcyIsIm1ldGFkYXRlbiIsInByb3ZlbmllbnoiLCJwcm96ZXNzZG9rdW1lbnRhdGlvbiJdfSx7InRpdGxlIjoiVXNlIFN0YW5kYXJkcywgVm9jYWJ1bGFyaWVzICYgSWRlbnRpZmllcnMiLCJwaGFzZSI6IldvcmsgJiBNYW5hZ2UiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvV29yayUyMCUyNiUyME1hbmFnZS9Vc2UlMjBTdGFuZGFyZHMlMkMlMjBWb2NhYnVsYXJpZXMlMjAlMjYlMjBJZGVudGlmaWVycy8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwid29yayBhbmQgbWFuYWdlIiwibWV0YWRhdGEgc3RhbmRhcmRzIiwiY29udHJvbGxlZCB2b2NhYnVsYXJpZXMiLCJhdXRob3JpdHkgZGF0YSIsImlkZW50aWZpZXJzIiwicGVyc2lzdGVudCBpZGVudGlmaWVycyIsImduZCIsImNpZG9jIGNybSIsImludGVyb3BlcmFiaWxpdHkiLCJnZXR0eSB2b2NhYnVsYXJpZXMiLCJub3JtZGF0YSIsIm5vcm1kYXRlbiIsImNvbnRyb2xsZWQgdm9jYWJ1bGFyeSIsInBlcnNpc3RlbnQgaWRlbnRpZmllciIsInBpZCIsIm1ldGFkYXRhIHNjaGVtYSIsIm9udG9sb2d5Iiwib250b2xvZ2llcyJdfSx7InRpdGxlIjoiUmV2aWV3IFlvdXIgRGF0YSBNYW5hZ2VtZW50IiwicGhhc2UiOiJXb3JrICYgTWFuYWdlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL1dvcmslMjAlMjYlMjBNYW5hZ2UvUmV2aWV3JTIwWW91ciUyMERhdGElMjBNYW5hZ2VtZW50LyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJ3b3JrIGFuZCBtYW5hZ2UiLCJkYXRhIG1hbmFnZW1lbnQgcmV2aWV3IiwiZG1wIHVwZGF0ZSIsInF1YWxpdHkgYXNzdXJhbmNlIiwicHJvamVjdCByZXZpZXciLCJyZXNwb25zaWJpbGl0aWVzIiwicmlzayByZXZpZXciLCJwcm9qZWN0IGNoYW5nZXMiLCJyZXZpZXcgZG1wIiwidXBkYXRlIGRtcCIsImRhdGEgbWFuYWdlbWVudCB1cGRhdGUiLCJxdWFsaXR5IHJldmlldyIsImRhdGVubWFuYWdlbWVudCDDvGJlcnByw7xmZW4iLCJkbXAgYWt0dWFsaXNpZXJlbiJdfSx7InRpdGxlIjoiUHVibGlzaCAmIFNoYXJlIiwicGhhc2UiOiJQdWJsaXNoICYgU2hhcmUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvUHVibGlzaCUyMCUyNiUyMFNoYXJlLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJwdWJsaXNoIGFuZCBzaGFyZSIsInJlc2VhcmNoIHB1YmxpY2F0aW9uIiwiZGlzc2VtaW5hdGlvbiIsIm9wZW4gc2NpZW5jZSIsInJlcG9zaXRvcmllcyIsInByZXNlcnZhdGlvbiIsInB1YmxpY2F0aW9uIiwic2hhcmluZyIsInJlc2VhcmNoIGRpc3NlbWluYXRpb24iLCJ2aXNpYmlsaXR5IiwicHVibGl6aWVyZW4iLCJ0ZWlsZW4iLCJzaWNodGJhcmtlaXQiXX0seyJ0aXRsZSI6IkRlY2lkZSBXaGF0IHRvIFNoYXJlIiwicGhhc2UiOiJQdWJsaXNoICYgU2hhcmUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvUHVibGlzaCUyMCUyNiUyMFNoYXJlL0RlY2lkZSUyMFdoYXQlMjB0byUyMFNoYXJlLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJwdWJsaXNoIGFuZCBzaGFyZSIsInNoYXJpbmciLCJwdWJsaWNhdGlvbiBkZWNpc2lvbiIsImRpc2NvdmVyeSIsImFjY2VzcyIsInJldXNlIiwicHJlc2VydmF0aW9uIiwic2Vuc2l0aXZpdHkiLCJ3aGF0IHRvIHB1Ymxpc2giLCJ3aGF0IHRvIHNoYXJlIiwiZGlzY292ZXJ5IGFjY2VzcyByZXVzZSBwcmVzZXJ2YXRpb24iLCJmcmVpZ2FiZSIsInZlcsO2ZmZlbnRsaWNodW5nc2VudHNjaGVpZHVuZyJdfSx7InRpdGxlIjoiRkFJUiwgQ0FSRSAmIE9wZW4gU2NpZW5jZSIsInBoYXNlIjoiUHVibGlzaCAmIFNoYXJlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL1B1Ymxpc2glMjAlMjYlMjBTaGFyZS9GQUlSJTJDJTIwQ0FSRSUyMCUyNiUyME9wZW4lMjBTY2llbmNlLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJwdWJsaXNoIGFuZCBzaGFyZSIsImZhaXIiLCJjYXJlIiwib3BlbiBzY2llbmNlIiwib3BlbiBhY2Nlc3MiLCJvcGVuIGRhdGEiLCJpbmRpZ2Vub3VzIGRhdGEgZ292ZXJuYW5jZSIsInJlc3BvbnNpYmxlIG9wZW5uZXNzIiwiZmluZGFibGUgYWNjZXNzaWJsZSBpbnRlcm9wZXJhYmxlIHJldXNhYmxlIiwiY29sbGVjdGl2ZSBiZW5lZml0IiwiYXV0aG9yaXR5IHRvIGNvbnRyb2wiLCJyZXNwb25zaWJpbGl0eSBldGhpY3MiLCJvZmZlbmUgd2lzc2Vuc2NoYWZ0Iiwib3BlbiByZXNlYXJjaCJdfSx7InRpdGxlIjoiTWFuYWdlIEFjY2VzcywgUmV1c2UgJiBMaWNlbnNpbmciLCJwaGFzZSI6IlB1Ymxpc2ggJiBTaGFyZSIsInVybCI6Imh0dHBzOi8veHdpa2kudW5pLWFrLmFjLmF0L2Jpbi92aWV3L1NlcnZpY2UlMjBOYXZpZ2F0b3IvQXJ0JTIwJTI2JTIwUmVzZWFyY2glMjBTZXJ2aWNlcyUyME5hdmlnYXRvci9QdWJsaXNoJTIwJTI2JTIwU2hhcmUvTWFuYWdlJTIwQWNjZXNzJTJDJTIwUmV1c2UlMjAlMjYlMjBMaWNlbnNpbmcvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsInB1Ymxpc2ggYW5kIHNoYXJlIiwiYWNjZXNzIiwicmV1c2UiLCJsaWNlbnNpbmciLCJsaWNlbmNlcyIsInBlcm1pc3Npb25zIiwiZW1iYXJnbyIsImNvbnRyb2xsZWQgYWNjZXNzIiwiY3JlYXRpdmUgY29tbW9ucyIsInJldXNlIHJpZ2h0cyIsIm9wZW4gbGljZW5jZSIsIm9wZW4gbGljZW5zZSIsImFjY2VzcyByZXN0cmljdGlvbiIsInp1Z2FuZyIsIm5hY2hudXR6dW5nIiwibGl6ZW56aWVydW5nIl19LHsidGl0bGUiOiJDaG9vc2UgYSBSZXBvc2l0b3J5IG9yIFB1YmxpY2F0aW9uIFBsYXRmb3JtIiwicGhhc2UiOiJQdWJsaXNoICYgU2hhcmUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvUHVibGlzaCUyMCUyNiUyMFNoYXJlL0Nob29zZSUyMGElMjBSZXBvc2l0b3J5JTIwb3IlMjBQdWJsaWNhdGlvbiUyMFBsYXRmb3JtLyIsInRlcm1zIjpbImFydCBhbmQgcmVzZWFyY2giLCJwdWJsaXNoIGFuZCBzaGFyZSIsInJlcG9zaXRvcnkiLCJwdWJsaWNhdGlvbiBwbGF0Zm9ybSIsImRhdGEgcmVwb3NpdG9yeSIsImFyY2hpdmUiLCJ0cnVzdGVkIHJlcG9zaXRvcnkiLCJjb3JldHJ1c3RzZWFsIiwiaW5zdGl0dXRpb25hbCByZXBvc2l0b3J5IiwicmVzZWFyY2ggcmVwb3NpdG9yeSIsInB1YmxpY2F0aW9uIHZlbnVlIiwicmVwb3NpdG9yeSBzZWxlY3Rpb24iLCJyZXBvc2l0b3JpdW0iLCJwdWJsaWthdGlvbnNwbGF0dGZvcm0iLCJhcmNoaXYiXX0seyJ0aXRsZSI6Ik1ha2UgT3V0cHV0cyBGaW5kYWJsZSAmIENpdGFibGUiLCJwaGFzZSI6IlB1Ymxpc2ggJiBTaGFyZSIsInVybCI6Imh0dHBzOi8veHdpa2kudW5pLWFrLmFjLmF0L2Jpbi92aWV3L1NlcnZpY2UlMjBOYXZpZ2F0b3IvQXJ0JTIwJTI2JTIwUmVzZWFyY2glMjBTZXJ2aWNlcyUyME5hdmlnYXRvci9QdWJsaXNoJTIwJTI2JTIwU2hhcmUvTWFrZSUyME91dHB1dHMlMjBGaW5kYWJsZSUyMCUyNiUyMENpdGFibGUvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsInB1Ymxpc2ggYW5kIHNoYXJlIiwiZmluZGFiaWxpdHkiLCJjaXRhdGlvbiIsInBlcnNpc3RlbnQgaWRlbnRpZmllcnMiLCJwaWQiLCJkb2kiLCJvcmNpZCIsInJvciIsIm1ldGFkYXRhIiwidmVyc2lvbmluZyIsImRpZ2l0YWwgb2JqZWN0IGlkZW50aWZpZXIiLCJkb2kgbnVtYmVyIiwicGVyc2lzdGVudCBpZGVudGlmaWVyIiwicGVyc2lzdGVudCBpZCIsImRhdGEgY2l0YXRpb24iLCJjaXRlIGRhdGEiLCJjaXRlIGRhdGFzZXQiLCJjaXRhdGlvbiBtZXRhZGF0YSIsInppdGllcmVuIiwieml0aWVyYmFya2VpdCIsImF1ZmZpbmRiYXJrZWl0Il19LHsidGl0bGUiOiJEaXNzZW1pbmF0ZSAmIFByZXNlbnQgWW91ciBSZXNlYXJjaCIsInBoYXNlIjoiUHVibGlzaCAmIFNoYXJlIiwidXJsIjoiaHR0cHM6Ly94d2lraS51bmktYWsuYWMuYXQvYmluL3ZpZXcvU2VydmljZSUyME5hdmlnYXRvci9BcnQlMjAlMjYlMjBSZXNlYXJjaCUyMFNlcnZpY2VzJTIwTmF2aWdhdG9yL1B1Ymxpc2glMjAlMjYlMjBTaGFyZS9EaXNzZW1pbmF0ZSUyMCUyNiUyMFByZXNlbnQlMjBZb3VyJTIwUmVzZWFyY2gvIiwidGVybXMiOlsiYXJ0IGFuZCByZXNlYXJjaCIsInB1Ymxpc2ggYW5kIHNoYXJlIiwiZGlzc2VtaW5hdGlvbiIsInZpc2liaWxpdHkiLCJwcmVzZW50YXRpb24iLCJhdWRpZW5jZXMiLCJzY2llbmNlIGNvbW11bmljYXRpb24iLCJleGhpYml0aW9uIiwicHJvamVjdCB3ZWJzaXRlIiwicmVzZWFyY2ggY29tbXVuaWNhdGlvbiIsImNvbW11bmljYXRpb24iLCJwdWJsaWMgZW5nYWdlbWVudCIsImF1c3N0ZWxsdW5nIiwidmVybWl0dGx1bmciXX0seyJ0aXRsZSI6IlByZXNlcnZlIERhdGEgJiBBcnRpc3RpYyBPdXRwdXRzIiwicGhhc2UiOiJQdWJsaXNoICYgU2hhcmUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvUHVibGlzaCUyMCUyNiUyMFNoYXJlL1ByZXNlcnZlJTIwRGF0YSUyMCUyNiUyMEFydGlzdGljJTIwT3V0cHV0cy8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwicHVibGlzaCBhbmQgc2hhcmUiLCJwcmVzZXJ2YXRpb24iLCJsb25nLXRlcm0gcHJlc2VydmF0aW9uIiwiYXJjaGl2aW5nIiwibWFzdGVyIGZpbGVzIiwiZmlsZSBmb3JtYXRzIiwidGVjaG5pY2FsIGRlcGVuZGVuY2llcyIsImVtdWxhdGlvbiIsImFydGlzdGljIG91dHB1dHMiLCJkaWdpdGFsIHByZXNlcnZhdGlvbiIsImxvbmcgdGVybSBhcmNoaXZlIiwicHJlc2VydmF0aW9uIG1hc3RlciIsImZvcm1hdCBtaWdyYXRpb24iLCJzb2Z0d2FyZSBwcmVzZXJ2YXRpb24iLCJsYW5nemVpdGFyY2hpdmllcnVuZyIsImFyY2hpdmllcnVuZyIsImVyaGFsdHVuZyJdfSx7InRpdGxlIjoiQ2xvc2UgJiBIYW5kIE92ZXIgWW91ciBQcm9qZWN0IiwicGhhc2UiOiJQdWJsaXNoICYgU2hhcmUiLCJ1cmwiOiJodHRwczovL3h3aWtpLnVuaS1hay5hYy5hdC9iaW4vdmlldy9TZXJ2aWNlJTIwTmF2aWdhdG9yL0FydCUyMCUyNiUyMFJlc2VhcmNoJTIwU2VydmljZXMlMjBOYXZpZ2F0b3IvUHVibGlzaCUyMCUyNiUyMFNoYXJlL0Nsb3NlJTIwJTI2JTIwSGFuZCUyME92ZXIlMjBZb3VyJTIwUHJvamVjdC8iLCJ0ZXJtcyI6WyJhcnQgYW5kIHJlc2VhcmNoIiwicHVibGlzaCBhbmQgc2hhcmUiLCJwcm9qZWN0IGNsb3N1cmUiLCJoYW5kb3ZlciIsImFyY2hpdmUgZGVwb3NpdCIsImRlbGV0aW9uIiwiZmluYWwgZG9jdW1lbnRhdGlvbiIsInBvc3QtcHJvamVjdCByZXNwb25zaWJpbGl0eSIsInJldGVudGlvbiIsInByb2plY3QgZW5kIiwicHJvamVjdCBjb21wbGV0aW9uIiwiZmluYWwgaGFuZG92ZXIiLCJwcm9qZWN0IGFyY2hpdmUiLCJwcm9qZWt0YWJzY2hsdXNzIiwiw7xiZXJnYWJlIiwibMO2c2NodW5nIl19XQ==";
77 var pageIndex;
78
79 try {
80 var binary = window.atob(encodedIndex);
81 var bytes = Uint8Array.from(binary, function (character) {
82 return character.charCodeAt(0);
83 });
84
85 pageIndex = JSON.parse(
86 new TextDecoder("utf-8").decode(bytes)
87 );
88 } catch (error) {
89 console.error("Art & Research search index could not be loaded.", error);
90 return;
91 }
92
93 var form = document.getElementById("arsn-search-form");
94 var input = document.getElementById("arsn-search-input");
95 var resultsBox = document.getElementById("arsn-search-results");
96 var status = document.getElementById("arsn-search-status");
97 var currentResults = [];
98 var activeIndex = -1;
99
100 function normalise(value) {
101 return String(value || "")
102 .normalize("NFD")
103 .replace(/[\u0300-\u036f]/g, "")
104 .toLowerCase()
105 .replace(/[^a-z0-9]+/g, " ")
106 .trim();
107 }
108
109 function scorePage(page, query) {
110 var title = normalise(page.title);
111 var phase = normalise(page.phase);
112 var terms = page.terms.map(normalise);
113 var tokens = query.split(/\s+/).filter(Boolean);
114 var score = 0;
115
116 if (title === query) score += 500;
117 if (terms.indexOf(query) !== -1) score += 450;
118
119 if (title.indexOf(query) === 0) score += 300;
120 if (terms.some(function (term) {
121 return term.indexOf(query) === 0;
122 })) score += 260;
123
124 if (title.indexOf(query) !== -1) score += 180;
125 if (terms.some(function (term) {
126 return term.indexOf(query) !== -1;
127 })) score += 160;
128
129 if (phase.indexOf(query) !== -1) score += 40;
130
131 tokens.forEach(function (token) {
132 if (title.indexOf(token) !== -1) score += 35;
133
134 if (terms.some(function (term) {
135 return term.indexOf(token) !== -1;
136 })) score += 30;
137 });
138
139 return score;
140 }
141
142 function matchingTerms(page, query) {
143 return page.terms
144 .filter(function (term) {
145 return normalise(term).indexOf(query) !== -1;
146 })
147 .slice(0, 4);
148 }
149
150 function search(queryText) {
151 var query = normalise(queryText);
152
153 if (!query) return [];
154
155 return pageIndex
156 .map(function (page) {
157 return {
158 page: page,
159 score: scorePage(page, query)
160 };
161 })
162 .filter(function (entry) {
163 return entry.score > 0;
164 })
165 .sort(function (a, b) {
166 return (
167 b.score - a.score ||
168 a.page.title.localeCompare(b.page.title)
169 );
170 })
171 .slice(0, 8)
172 .map(function (entry) {
173 return entry.page;
174 });
175 }
176
177 function escapeHTML(value) {
178 return String(value)
179 .replace(/&/g, "&amp;")
180 .replace(/</g, "&lt;")
181 .replace(/>/g, "&gt;")
182 .replace(/"/g, "&quot;");
183 }
184
185 function setActive(index) {
186 var links = resultsBox.querySelectorAll("[role=option]");
187
188 if (!links.length) {
189 activeIndex = -1;
190 return;
191 }
192
193 activeIndex = Math.max(
194 0,
195 Math.min(index, links.length - 1)
196 );
197
198 links.forEach(function (link, itemIndex) {
199 var active = itemIndex === activeIndex;
200
201 link.setAttribute(
202 "aria-selected",
203 active ? "true" : "false"
204 );
205
206 link.style.background =
207 active ? "#f3f5f6" : "#fff";
208 });
209 }
210
211 function render() {
212 var query = normalise(input.value);
213 currentResults = search(input.value);
214 activeIndex = -1;
215
216 if (!query) {
217 resultsBox.hidden = true;
218 input.setAttribute("aria-expanded", "false");
219 resultsBox.innerHTML = "";
220 status.textContent = "";
221 return;
222 }
223
224 if (!currentResults.length) {
225 resultsBox.hidden = false;
226 input.setAttribute("aria-expanded", "true");
227 resultsBox.innerHTML =
228 '<div style="padding:12px 14px;color:#666;">' +
229 'No direct topic match. Press Search for XWiki full-text results.' +
230 '</div>';
231
232 status.textContent = "No direct topic suggestions.";
233 return;
234 }
235
236 resultsBox.innerHTML =
237 currentResults.map(function (page, index) {
238 var terms = matchingTerms(page, query);
239
240 var detail =
241 page.phase && page.phase !== "Overview"
242 ? page.phase
243 : "Art & Research Services Navigator";
244
245 if (terms.length) {
246 detail += " · " + terms.join(", ");
247 }
248
249 return (
250 '<a href="' +
251 escapeHTML(page.url) +
252 '" role="option" aria-selected="false"' +
253 ' data-index="' + index + '"' +
254 ' style="display:block;padding:11px 14px;border-bottom:1px solid #eee;color:#111;text-decoration:none;">' +
255 '<strong style="display:block;">' +
256 escapeHTML(page.title) +
257 '</strong>' +
258 '<span style="display:block;margin-top:2px;color:#6a655e;font-size:13px;">' +
259 escapeHTML(detail) +
260 '</span>' +
261 '</a>'
262 );
263 }).join("");
264
265 resultsBox.hidden = false;
266 input.setAttribute("aria-expanded", "true");
267
268 status.textContent =
269 currentResults.length +
270 " suggested page" +
271 (currentResults.length === 1 ? "" : "s") +
272 ".";
273 }
274
275 input.addEventListener("input", render);
276 input.addEventListener("focus", render);
277
278 input.addEventListener("keydown", function (event) {
279 if (resultsBox.hidden || !currentResults.length) return;
280
281 if (event.key === "ArrowDown") {
282 event.preventDefault();
283 setActive(activeIndex + 1);
284 } else if (event.key === "ArrowUp") {
285 event.preventDefault();
286
287 setActive(
288 activeIndex <= 0
289 ? currentResults.length - 1
290 : activeIndex - 1
291 );
292 } else if (event.key === "Enter" && activeIndex >= 0) {
293 event.preventDefault();
294 window.location.href = currentResults[activeIndex].url;
295 } else if (event.key === "Escape") {
296 resultsBox.hidden = true;
297 input.setAttribute("aria-expanded", "false");
298 }
299 });
300
301 form.addEventListener("submit", function (event) {
302 currentResults = search(input.value);
303
304 if (currentResults.length) {
305 event.preventDefault();
306 window.location.href = currentResults[0].url;
307 }
308 });
309
310 document.addEventListener("click", function (event) {
311 if (!form.contains(event.target)) {
312 resultsBox.hidden = true;
313 input.setAttribute("aria-expanded", "false");
314 }
315 });
316
317 // Search-term links on nested pages use ?q=<term>.
318 // Load that query into the search box automatically.
319 try {
320 var params = new URLSearchParams(window.location.search);
321 var linkedQuery = params.get("q");
322
323 if (linkedQuery) {
324 input.value = linkedQuery;
325 render();
326
327 window.setTimeout(function () {
328 input.focus();
329
330 if (input.scrollIntoView) {
331 input.scrollIntoView({
332 behavior: "smooth",
333 block: "center"
334 });
335 }
336 }, 50);
337 }
338 } catch (error) {
339 console.warn("Could not load linked navigator query.", error);
340 }
341 })();
342 </script>
343 </section>
344 {{/html}}
345
346 (% style="margin:10px 0 16px 0;color:#6a655e;font-size:13px;" %)
347 (((
348 Follow the project stages from left to right. Within each stage, topics are ordered by what you are most likely to need next; colour is used only as a subtle thematic cue.
349 )))
350
351 {{container layoutStyle="columns"}}
352
353 (((
354 (% style="border:1px solid #e3ded6;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.035);display:flex;flex-direction:column;" %)
355 (((
356 (% style="height:170px;overflow:hidden;background:#f1eee9;position:relative;" %)
357 (((
358 [[image:enable.png||alt="Enable — Plan & Set Up" style="width:100%;height:auto;display:block;position:absolute;top:50%;left:0;transform:translateY(-50%);"]]
359 )))
360
361 (% style="padding:18px 17px 17px 17px;flex:1;" %)
362 (((
363 (% style="font-size:19px;font-weight:700;margin-bottom:2px;" %)
364 [[1. Enable — Plan & Set Up>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/||style="color:#111;text-decoration:none;font-weight:700;"]]
365
366 (% style="color:#666;margin-bottom:16px;" %)
367 Prepare your project before the main work begins.
368
369 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:17px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
370 START HERE
371
372 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #21b6d7;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
373 (((
374 [[Get Started>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Get%20Started/||style="color:#222;text-decoration:none;font-weight:600;"]]
375 )))
376
377 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #21b6d7;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
378 (((
379 [[Quick Start for Small Projects>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Quick%20Start%20for%20Small%20Projects/||style="color:#222;text-decoration:none;font-weight:600;"]]
380 )))
381
382 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
383 PLAN & ORGANISE
384
385 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
386 (((
387 [[Project Planning & Organisation>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Project%20Planning%20%26%20Organisation/||style="color:#222;text-decoration:none;font-weight:600;"]]
388 )))
389
390 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
391 (((
392 [[Funding & Funder Requirements>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Funding%20%26%20Funder%20Requirements/||style="color:#222;text-decoration:none;font-weight:600;"]]
393 )))
394
395 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
396 (((
397 [[Identify Your Data & Research Outputs>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Identify%20Your%20Data%20%26%20Research%20Outputs/||style="color:#222;text-decoration:none;font-weight:600;"]]
398 )))
399
400 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
401 (((
402 [[Plan Your Data Management>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Plan%20Your%20Data%20Management/||style="color:#222;text-decoration:none;font-weight:600;"]]
403 )))
404
405 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
406 (((
407 [[File Organisation & Naming>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/File%20Organisation%20%26%20Naming/||style="color:#222;text-decoration:none;font-weight:600;"]]
408 )))
409
410 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
411 PROTECT & CLARIFY
412
413 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #f0aa00;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
414 (((
415 [[Copyright, Rights & Licences>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Copyright%2C%20Rights%20%26%20Licences/||style="color:#222;text-decoration:none;font-weight:600;"]]
416 )))
417
418 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #f0aa00;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
419 (((
420 [[Data Protection & Ethics>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Data%20Protection%20%26%20Ethics/||style="color:#222;text-decoration:none;font-weight:600;"]]
421 )))
422
423 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
424 SET UP INFRASTRUCTURE
425
426 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #38b76a;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
427 (((
428 [[Storage, Backup & Security>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Storage%2C%20Backup%20%26%20Security/||style="color:#222;text-decoration:none;font-weight:600;"]]
429 )))
430
431 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #38b76a;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
432 (((
433 [[Infrastructure, Services & Tools>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Infrastructure%2C%20Services%20%26%20Tools/||style="color:#222;text-decoration:none;font-weight:600;"]]
434 )))
435
436 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #38b76a;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
437 (((
438 [[Collaboration Setup>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Collaboration%20Setup/||style="color:#222;text-decoration:none;font-weight:600;"]]
439 )))
440 )))
441
442 (% style="padding:0 16px 16px 16px;" %)
443 (((
444 [[Explore Enable>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/||class="btn btn-primary btn-block"]]
445 )))
446 )))
447 )))
448
449 (((
450 (% style="border:1px solid #e3ded6;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.035);display:flex;flex-direction:column;" %)
451 (((
452 (% style="height:170px;overflow:hidden;background:#f1eee9;position:relative;" %)
453 (((
454 [[image:work.png||alt="Work & Manage — Run Your Project" style="width:100%;height:auto;display:block;position:absolute;top:50%;left:0;transform:translateY(-50%);"]]
455 )))
456
457 (% style="padding:18px 17px 17px 17px;flex:1;" %)
458 (((
459 (% style="font-size:19px;font-weight:700;margin-bottom:2px;" %)
460 [[2. Work & Manage — Run Your Project>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/||style="color:#111;text-decoration:none;font-weight:700;"]]
461
462 (% style="color:#666;margin-bottom:16px;" %)
463 Organise, document and review your project while the work is ongoing.
464
465 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:17px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
466 ORGANISE & DOCUMENT
467
468 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
469 (((
470 [[Organise Files & Folders>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/Organise%20Files%20%26%20Folders/||style="color:#222;text-decoration:none;font-weight:600;"]]
471 )))
472
473 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
474 (((
475 [[Manage Versions & Master Files>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/Manage%20Versions%20%26%20Master%20Files/||style="color:#222;text-decoration:none;font-weight:600;"]]
476 )))
477
478 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
479 (((
480 [[Document Processes, Metadata & Provenance>>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/||style="color:#222;text-decoration:none;font-weight:600;"]]
481 )))
482
483 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
484 STORE & CONTROL ACCESS
485
486 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #38b76a;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
487 (((
488 [[Store, Back Up & Control Access>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/Store%2C%20Back%20Up%20%26%20Control%20Access/||style="color:#222;text-decoration:none;font-weight:600;"]]
489 )))
490
491 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
492 STANDARDISE & IDENTIFY
493
494 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #f0aa00;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
495 (((
496 [[Use Standards, Vocabularies & Identifiers>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/Use%20Standards%2C%20Vocabularies%20%26%20Identifiers/||style="color:#222;text-decoration:none;font-weight:600;"]]
497 )))
498
499 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
500 REVIEW & ADAPT
501
502 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #21b6d7;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
503 (((
504 [[Review Your Data Management>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/Review%20Your%20Data%20Management/||style="color:#222;text-decoration:none;font-weight:600;"]]
505 )))
506 )))
507
508 (% style="padding:0 16px 16px 16px;" %)
509 (((
510 [[Explore Work & Manage>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Work%20%26%20Manage/||class="btn btn-primary btn-block"]]
511 )))
512 )))
513 )))
514
515 (((
516 (% style="border:1px solid #e3ded6;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.035);display:flex;flex-direction:column;" %)
517 (((
518 (% style="height:170px;overflow:hidden;background:#f1eee9;position:relative;" %)
519 (((
520 [[image:share.png||alt="Publish & Share — Make It Visible" style="width:100%;height:auto;display:block;position:absolute;top:50%;left:0;transform:translateY(-50%);"]]
521 )))
522
523 (% style="padding:18px 17px 17px 17px;flex:1;" %)
524 (((
525 (% style="font-size:19px;font-weight:700;margin-bottom:2px;" %)
526 [[3. Publish & Share — Make It Visible>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/||style="color:#111;text-decoration:none;font-weight:700;"]]
527
528 (% style="color:#666;margin-bottom:16px;" %)
529 Decide how outputs should be shared, published, made findable and preserved.
530
531 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:17px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
532 DECIDE
533
534 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #21b6d7;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
535 (((
536 [[Decide What to Share>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Decide%20What%20to%20Share/||style="color:#222;text-decoration:none;font-weight:600;"]]
537 )))
538
539 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
540 OPEN, REUSE & MAKE FINDABLE
541
542 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #f0aa00;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
543 (((
544 [[FAIR, CARE & Open Science>>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/||style="color:#222;text-decoration:none;font-weight:600;"]]
545 )))
546
547 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #f0aa00;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
548 (((
549 [[Manage Access, Reuse & Licensing>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Manage%20Access%2C%20Reuse%20%26%20Licensing/||style="color:#222;text-decoration:none;font-weight:600;"]]
550 )))
551
552 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #f0aa00;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
553 (((
554 [[Make Outputs Findable & Citable>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Make%20Outputs%20Findable%20%26%20Citable/||style="color:#222;text-decoration:none;font-weight:600;"]]
555 )))
556
557 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
558 PUBLISH & PRESENT
559
560 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #e94b13;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
561 (((
562 [[Disseminate & Present Your Research>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Disseminate%20%26%20Present%20Your%20Research/||style="color:#222;text-decoration:none;font-weight:600;"]]
563 )))
564
565 (% style="font-size:13px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin:22px 0 8px 0;padding:5px 8px;background:#f3efe8;border-radius:4px;" %)
566 REPOSITORY, PRESERVE & HAND OVER
567
568 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #38b76a;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
569 (((
570 [[Choose a Repository or Publication Platform>>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/||style="color:#222;text-decoration:none;font-weight:600;"]]
571 )))
572
573 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #38b76a;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
574 (((
575 [[Preserve Data & Artistic Outputs>>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/||style="color:#222;text-decoration:none;font-weight:600;"]]
576 )))
577
578 (% style="background:#fcfbf8;border:1px solid #e9e4dc;border-left:3px solid #38b76a;border-radius:5px;padding:8px 10px;margin:4px 0;" %)
579 (((
580 [[Close & Hand Over Your Project>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/Close%20%26%20Hand%20Over%20Your%20Project/||style="color:#222;text-decoration:none;font-weight:600;"]]
581 )))
582 )))
583
584 (% style="padding:0 16px 16px 16px;" %)
585 (((
586 [[Explore Publish & Share>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Publish%20%26%20Share/||class="btn btn-primary btn-block"]]
587 )))
588 )))
589 )))
590
591 {{/container}}
592
593 (% style="margin-top:30px;" %)
594 (((
595 == Practical resources ==
596
597 Use practical resources when you need a concise overview, a step-by-step procedure or a ready-to-use project aid.
598
599 {{container layoutStyle="columns"}}
600
601 (((
602 {{box title="Info Sheets"}}
603 {{html}}<span data-arsn-coming-soon="true" style="display:inline-block;margin:6px 0 8px 0;padding:4px 9px;border-radius:14px;background:#fff4ee;border:1px solid #efd9cc;color:#8a4d36;font-size:11px;font-weight:700;letter-spacing:.065em;line-height:1.2;">COMING SOON</span>{{/html}}
604 Short reference guides for common questions and decisions.
605
606 Resources will be linked here as the collection is developed.
607 {{/box}}
608 )))
609
610 (((
611 {{box title="Tutorials"}}
612 {{html}}<span data-arsn-coming-soon="true" style="display:inline-block;margin:6px 0 8px 0;padding:4px 9px;border-radius:14px;background:#fff4ee;border:1px solid #efd9cc;color:#8a4d36;font-size:11px;font-weight:700;letter-spacing:.065em;line-height:1.2;">COMING SOON</span>{{/html}}
613 Step-by-step guidance for specific tasks and workflows.
614
615 Tutorials will be linked here as the collection is developed.
616 {{/box}}
617 )))
618
619 (((
620 {{box title="Checklists & Templates"}}
621 {{html}}<span data-arsn-coming-soon="true" style="display:inline-block;margin:6px 0 8px 0;padding:4px 9px;border-radius:14px;background:#fff4ee;border:1px solid #efd9cc;color:#8a4d36;font-size:11px;font-weight:700;letter-spacing:.065em;line-height:1.2;">COMING SOON</span>{{/html}}
622 Ready-to-use checklists and templates for planning, managing and closing projects.
623
624 [[Start with the Quick Start checklist>>https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/Enable/Quick%20Start%20for%20Small%20Projects/]]
625 {{/box}}
626 )))
627
628 {{/container}}
629 )))
630
631 (% style="margin-top:30px;" %)
632 (((
633 == Need help finding the right route? ==
634
635 {{info title="Start with the right service"}}
636 For **project development, funding, proposals and coordination of funded art and research projects**, **Support Kunst und Forschung** is a good place to start.
637
638 For more specific questions, the topic pages point directly to the relevant university services. When several areas are involved, use the navigator to see which support is useful at the next step.
639 {{/info}}
640 )))
641
642 {{html clean="false"}}
643 <!-- SN_SERVICE_NAVIGATOR_MASTER_STYLE_START -->
644
645 <style data-sn-service-navigator-master="1">
646 /* =========================================================
647 MASTER TYPOGRAPHY
648 ========================================================= */
649 #xwikicontent h1,
650 #xwikicontent h2,
651 #xwikicontent h3,
652 #xwikicontent h4,
653 #xwikicontent h5,
654 #xwikicontent h6,
655 #xwikicontent .box-title,
656 #xwikicontent [role="heading"],
657 #xwikicontent h1 a,
658 #xwikicontent h2 a,
659 #xwikicontent h3 a,
660 #xwikicontent h4 a,
661 #xwikicontent h5 a,
662 #xwikicontent h6 a,
663 #xwikicontent .box-title a,
664 #xwikicontent [role="heading"] a{
665 text-align:left!important;
666 text-justify:auto!important;
667 word-spacing:normal!important;
668 }
669
670 /* =========================================================
671 COMING SOON / IN VORBEREITUNG
672 ========================================================= */
673 .sn-coming-soon-badge{
674 display:inline-block;
675 vertical-align:middle;
676 margin-left:10px;
677 padding:4px 8px;
678 border-radius:14px;
679 border:1px solid #efd9cc;
680 background:#fff4ee;
681 color:#8a4d36;
682 font-size:11px;
683 font-weight:700;
684 letter-spacing:.055em;
685 line-height:1.2;
686 white-space:nowrap;
687 }
688
689 /* =========================================================
690 NATIVE / DETAIL CALLOUT GEOMETRY
691 Preserve existing backgrounds.
692 ========================================================= */
693 #xwikicontent .arsn-info,
694 #xwikicontent .dmp-info,
695 #xwikicontent .ido-info,
696 #xwikicontent .pp-info,
697 #xwikicontent .infomessage{
698 box-sizing:border-box!important;
699 border-left:4px solid #21b6d7!important;
700 border-radius:8px;
701 text-align:left!important;
702 word-spacing:normal!important;
703 }
704
705 #xwikicontent .arsn-warn,
706 #xwikicontent .dmp-warn,
707 #xwikicontent .ido-warn,
708 #xwikicontent .pp-warn,
709 #xwikicontent .warn,
710 #xwikicontent .warning,
711 #xwikicontent .warningmessage,
712 #xwikicontent .errormessage{
713 box-sizing:border-box!important;
714 border-left:4px solid #e94b13!important;
715 border-radius:8px;
716 text-align:left!important;
717 word-spacing:normal!important;
718 }
719
720 [data-sn-master-equal-height],
721 [data-sn-master-first-row]{
722 box-sizing:border-box;
723 }
724
725 /* =========================================================
726 FULL-WIDTH THREE-LINE NUMBER / TITLE / SUBTITLE BLOCKS
727 ========================================================= */
728 #xwikicontent .arsn-area-label[data-sn-three-line="1"]{
729 display:grid!important;
730 grid-template-columns:minmax(0,1fr)!important;
731 grid-auto-rows:auto!important;
732 width:100%!important;
733 max-width:none!important;
734 box-sizing:border-box!important;
735 justify-items:start!important;
736 align-items:start!important;
737 gap:2px!important;
738 text-align:left!important;
739 text-align-last:left!important;
740 text-justify:auto!important;
741 word-spacing:normal!important;
742 white-space:normal!important;
743 }
744 #xwikicontent .arsn-area-label[data-sn-three-line="1"] > .arsn-area-number,
745 #xwikicontent .arsn-area-label[data-sn-three-line="1"] > .sn-area-label-title,
746 #xwikicontent .arsn-area-label[data-sn-three-line="1"] > .arsn-area-action{
747 display:block!important;
748 width:100%!important;
749 margin:0!important;
750 text-align:left!important;
751 text-align-last:left!important;
752 text-justify:auto!important;
753 word-spacing:normal!important;
754 white-space:normal!important;
755 }
756 </style>
757
758 <script data-sn-service-navigator-master="1">
759 (function(){
760 "use strict";
761
762 var PAGE_KIND="overview";
763 var PLACEHOLDER=false;
764 var PLACEHOLDER_LABEL="COMING SOON";
765
766 var MOBILE_MAX=767;
767 var ROW_TOLERANCE=6;
768 var RESIZE_DEBOUNCE=220;
769
770 var root=
771 document.getElementById("xwikicontent")||
772 document.querySelector(".xwiki-rendering-content")||
773 document.querySelector("main")||
774 document.body;
775
776 if(!root)return;
777
778 var managedHeight=new Set();
779 var managedMargin=new Set();
780 var originalHeight=new WeakMap();
781 var originalMargin=new WeakMap();
782
783 var resizeTimer=0;
784 var running=false;
785
786 var THEMES=[
787 {
788 name:"BLUE",
789 accent:"#21b6d7",
790 bg:"#eaf7fb",
791 text:"#315d68",
792 labels:[
793 "HIER STARTEN",
794 "ENTSCHEIDEN",
795 "ÜBERPRÜFEN & ANPASSEN",
796 "START HERE",
797 "DECIDE",
798 "REVIEW & ADAPT"
799 ]
800 },
801 {
802 name:"RED",
803 accent:"#e94b13",
804 bg:"#fff1ec",
805 text:"#8a4d36",
806 labels:[
807 "PLANEN & ORGANISIEREN",
808 "ORGANISIEREN & DOKUMENTIEREN",
809 "PUBLIZIEREN & PRÄSENTIEREN",
810 "PLAN & ORGANISE",
811 "PLAN & ORGANIZE",
812 "ORGANISE & DOCUMENT",
813 "ORGANIZE & DOCUMENT",
814 "PUBLISH & PRESENT"
815 ]
816 },
817 {
818 name:"YELLOW",
819 accent:"#f0aa00",
820 bg:"#fff8e7",
821 text:"#785b17",
822 labels:[
823 "SCHÜTZEN & KLÄREN",
824 "STANDARDISIEREN & IDENTIFIZIEREN",
825 "ÖFFNEN, NACHNUTZEN & AUFFINDBAR MACHEN",
826 "PROTECT & CLARIFY",
827 "STANDARDISE & IDENTIFY",
828 "STANDARDIZE & IDENTIFY",
829 "OPEN, REUSE & MAKE FINDABLE"
830 ]
831 },
832 {
833 name:"GREEN",
834 accent:"#38b76a",
835 bg:"#edf9f1",
836 text:"#3f7451",
837 labels:[
838 "INFRASTRUKTUR EINRICHTEN",
839 "INFRASTRUKTUR & ZUSAMMENARBEIT EINRICHTEN",
840 "SPEICHERN & ZUGRIFF STEUERN",
841 "REPOSITORIUM, ERHALTEN & ÜBERGEBEN",
842 "SET UP INFRASTRUCTURE",
843 "SET UP INFRASTRUCTURE & COLLABORATION",
844 "STORE & CONTROL ACCESS",
845 "REPOSITORY, PRESERVE & HAND OVER"
846 ]
847 }
848 ];
849
850 function num(value){
851 var n=parseFloat(value);
852 return Number.isFinite(n)?n:0;
853 }
854
855 function norm(value){
856 return String(value||"")
857 .replace(/\s+/g," ")
858 .trim()
859 .toUpperCase();
860 }
861
862 function visible(el){
863 if(!el||el.nodeType!==1)return false;
864
865 var style=getComputedStyle(el);
866 var rect=el.getBoundingClientRect();
867
868 return (
869 style.display!=="none"&&
870 style.visibility!=="hidden"&&
871 rect.width>20&&
872 rect.height>4
873 );
874 }
875
876 function saveStyle(el,map,property){
877 if(map.has(el))return;
878
879 map.set(el,{
880 value:el.style.getPropertyValue(property),
881 priority:el.style.getPropertyPriority(property)
882 });
883 }
884
885 function restoreStyle(el,map,property){
886 var original=map.get(el);
887
888 if(original&&original.value){
889 el.style.setProperty(
890 property,
891 original.value,
892 original.priority||""
893 );
894 }else{
895 el.style.removeProperty(property);
896 }
897 }
898
899 function resetRuntime(){
900 managedHeight.forEach(function(el){
901 restoreStyle(
902 el,
903 originalHeight,
904 "min-height"
905 );
906 el.removeAttribute(
907 "data-sn-master-equal-height"
908 );
909 });
910
911 managedMargin.forEach(function(el){
912 restoreStyle(
913 el,
914 originalMargin,
915 "margin-top"
916 );
917 el.removeAttribute(
918 "data-sn-master-first-row"
919 );
920 });
921
922 managedHeight.clear();
923 managedMargin.clear();
924 }
925
926 function themeFor(text){
927 var value=norm(text);
928
929 for(var i=0;i<THEMES.length;i++){
930 for(var j=0;j<THEMES[i].labels.length;j++){
931 var label=THEMES[i].labels[j];
932
933 if(
934 value===label||
935 value.indexOf(label+" ")===0||
936 value.indexOf(label+" -")===0||
937 value.indexOf(label+" ·")===0
938 ){
939 return THEMES[i];
940 }
941 }
942 }
943
944 return null;
945 }
946
947 /* =======================================================
948 BORDERLESS FILLED RED/ORANGE CTA BUTTONS
949 ======================================================= */
950
951 function colourDistance(a,b){
952 return Math.sqrt(
953 Math.pow(a[0]-b[0],2)+
954 Math.pow(a[1]-b[1],2)+
955 Math.pow(a[2]-b[2],2)
956 );
957 }
958
959 function makeFilledRedOrangeCTAsBorderless(){
960 var RED_ORANGE=[233,75,19];
961
962 Array.from(
963 root.querySelectorAll(
964 'a,button,[role="button"],input[type="submit"],input[type="button"]'
965 )
966 ).forEach(function(el){
967 if(!visible(el))return;
968
969 var style=getComputedStyle(el);
970 var rgb=parseRGB(style.backgroundColor);
971
972 if(!rgb)return;
973
974 if(
975 colourDistance(
976 rgb,
977 RED_ORANGE
978 )>55
979 ){
980 return;
981 }
982
983 var rect=el.getBoundingClientRect();
984
985 if(
986 rect.width<80||
987 rect.height<24
988 ){
989 return;
990 }
991
992 el.style.setProperty(
993 "border",
994 "none",
995 "important"
996 );
997
998 el.style.setProperty(
999 "border-left",
1000 "none",
1001 "important"
1002 );
1003
1004 el.style.setProperty(
1005 "border-top",
1006 "none",
1007 "important"
1008 );
1009
1010 el.style.setProperty(
1011 "border-right",
1012 "none",
1013 "important"
1014 );
1015
1016 el.style.setProperty(
1017 "border-bottom",
1018 "none",
1019 "important"
1020 );
1021
1022 el.style.setProperty(
1023 "box-shadow",
1024 "none",
1025 "important"
1026 );
1027 });
1028 }
1029
1030 /* =======================================================
1031 FULL-WIDTH THREE-LINE AREA LABELS
1032 ======================================================= */
1033
1034 function compactText(value){
1035 return String(value||"")
1036 .replace(/\s+/g," ")
1037 .trim();
1038 }
1039
1040 function makeThreeLineAreaLabels(){
1041 Array.from(
1042 root.querySelectorAll(
1043 ".arsn-area-label"
1044 )
1045 ).forEach(function(label){
1046 if(
1047 label.getAttribute(
1048 "data-sn-three-line"
1049 )==="1"
1050 ){
1051 return;
1052 }
1053
1054 var number=
1055 label.querySelector(
1056 ":scope > .arsn-area-number"
1057 );
1058
1059 var action=
1060 label.querySelector(
1061 ":scope > .arsn-area-action"
1062 );
1063
1064 if(
1065 !number||
1066 !action
1067 ){
1068 return;
1069 }
1070
1071 var clone=
1072 label.cloneNode(true);
1073
1074 var cloneNumber=
1075 clone.querySelector(
1076 ":scope > .arsn-area-number"
1077 );
1078
1079 var cloneAction=
1080 clone.querySelector(
1081 ":scope > .arsn-area-action"
1082 );
1083
1084 if(cloneNumber){
1085 cloneNumber.remove();
1086 }
1087
1088 if(cloneAction){
1089 cloneAction.remove();
1090 }
1091
1092 var titleText=
1093 compactText(
1094 clone.textContent
1095 );
1096
1097 if(!titleText){
1098 return;
1099 }
1100
1101 var numberNode=
1102 number.cloneNode(true);
1103
1104 var actionNode=
1105 action.cloneNode(true);
1106
1107 var titleNode=
1108 document.createElement(
1109 "span"
1110 );
1111
1112 titleNode.className=
1113 "sn-area-label-title";
1114
1115 titleNode.textContent=
1116 titleText;
1117
1118 while(label.firstChild){
1119 label.removeChild(
1120 label.firstChild
1121 );
1122 }
1123
1124 label.appendChild(
1125 numberNode
1126 );
1127
1128 label.appendChild(
1129 titleNode
1130 );
1131
1132 label.appendChild(
1133 actionNode
1134 );
1135
1136 label.setAttribute(
1137 "data-sn-three-line",
1138 "1"
1139 );
1140
1141 var head=
1142 label.closest(
1143 ".arsn-area-head"
1144 );
1145
1146 if(head){
1147 head.style.setProperty(
1148 "width",
1149 "100%",
1150 "important"
1151 );
1152
1153 head.style.setProperty(
1154 "max-width",
1155 "100%",
1156 "important"
1157 );
1158
1159 head.style.setProperty(
1160 "box-sizing",
1161 "border-box",
1162 "important"
1163 );
1164 }
1165 });
1166 }
1167
1168 /* =======================================================
1169 PLACEHOLDER BADGE
1170 ======================================================= */
1171
1172 function applyPlaceholderBadge(){
1173 if(!PLACEHOLDER)return;
1174
1175 if(
1176 document.querySelector(
1177 ".sn-coming-soon-badge"
1178 )
1179 ){
1180 return;
1181 }
1182
1183 var title=
1184 document.querySelector(
1185 "#document-title"
1186 )||
1187 document.querySelector(
1188 "h1"
1189 );
1190
1191 if(!title)return;
1192
1193 var badge=
1194 document.createElement(
1195 "span"
1196 );
1197
1198 badge.className=
1199 "sn-coming-soon-badge";
1200
1201 badge.textContent=
1202 PLACEHOLDER_LABEL;
1203
1204 badge.setAttribute(
1205 "aria-label",
1206 PLACEHOLDER_LABEL
1207 );
1208
1209 title.appendChild(
1210 badge
1211 );
1212 }
1213
1214 /* =======================================================
1215 DETAIL PAGE OWN-ACCENT PROPAGATION
1216 ======================================================= */
1217
1218 function parseRGB(value){
1219 var match=String(value||"").match(
1220 /rgba?\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)/i
1221 );
1222
1223 if(!match)return null;
1224
1225 return [
1226 Number(match[1]),
1227 Number(match[2]),
1228 Number(match[3])
1229 ];
1230 }
1231
1232 function distance(a,b){
1233 return Math.sqrt(
1234 Math.pow(a[0]-b[0],2)+
1235 Math.pow(a[1]-b[1],2)+
1236 Math.pow(a[2]-b[2],2)
1237 );
1238 }
1239
1240 function paletteMatch(cssColor){
1241 var rgb=parseRGB(cssColor);
1242
1243 if(!rgb)return null;
1244
1245 var palette=[
1246 {hex:"#21b6d7",rgb:[33,182,215]},
1247 {hex:"#e94b13",rgb:[233,75,19]},
1248 {hex:"#f0aa00",rgb:[240,170,0]},
1249 {hex:"#38b76a",rgb:[56,183,106]}
1250 ];
1251
1252 var best=null;
1253 var bestDistance=Infinity;
1254
1255 palette.forEach(function(item){
1256 var d=distance(rgb,item.rgb);
1257
1258 if(d<bestDistance){
1259 best=item;
1260 bestDistance=d;
1261 }
1262 });
1263
1264 return bestDistance<=30
1265 ?best
1266 :null;
1267 }
1268
1269 function propagateDetailAccents(){
1270 if(PAGE_KIND!=="detail")return;
1271
1272 Array.from(
1273 root.querySelectorAll(
1274 ".arsn-call,.dmp-call,.ido-call,.pp-call,"+
1275 ".arsn-source,.dmp-source,.ido-source,.pp-source"
1276 )
1277 ).forEach(function(el){
1278 if(!visible(el))return;
1279
1280 var style=getComputedStyle(el);
1281
1282 if(
1283 num(style.borderTopWidth)>=2
1284 ){
1285 var match=
1286 paletteMatch(
1287 style.borderTopColor
1288 );
1289
1290 if(match){
1291 el.style.setProperty(
1292 "border-left",
1293 "4px solid "+match.hex,
1294 "important"
1295 );
1296 }
1297 }
1298 });
1299
1300 // Warning families: explicit safety override.
1301 Array.from(
1302 root.querySelectorAll(
1303 ".arsn-warn,.dmp-warn,.ido-warn,.pp-warn,"+
1304 ".warn,.warning,.warningmessage,.errormessage"
1305 )
1306 ).forEach(function(el){
1307 if(!visible(el))return;
1308
1309 el.style.setProperty(
1310 "border-left",
1311 "4px solid #e94b13",
1312 "important"
1313 );
1314 });
1315
1316 // Info families: explicit orientation override.
1317 Array.from(
1318 root.querySelectorAll(
1319 ".arsn-info,.dmp-info,.ido-info,.pp-info,.infomessage"
1320 )
1321 ).forEach(function(el){
1322 if(!visible(el))return;
1323
1324 el.style.setProperty(
1325 "border-left",
1326 "4px solid #21b6d7",
1327 "important"
1328 );
1329 });
1330 }
1331
1332 /* =======================================================
1333 OVERVIEW SEMANTIC THEME PALETTE
1334 ======================================================= */
1335
1336 function smallestThemeHeaders(){
1337 return Array.from(
1338 root.querySelectorAll(
1339 "div,span,p,strong,h3,h4,h5,h6"
1340 )
1341 ).filter(function(el){
1342 if(!visible(el))return false;
1343 if(!themeFor(el.textContent))return false;
1344
1345 return !Array.from(
1346 el.children||[]
1347 ).some(function(child){
1348 return !!themeFor(
1349 child.textContent
1350 );
1351 });
1352 });
1353 }
1354
1355 function findOverviewCard(header){
1356 var node=header.parentElement;
1357 var candidates=[];
1358
1359 while(node&&node!==root){
1360 var rect=node.getBoundingClientRect();
1361 var style=getComputedStyle(node);
1362
1363 var border=
1364 num(style.borderTopWidth)+
1365 num(style.borderRightWidth)+
1366 num(style.borderBottomWidth)+
1367 num(style.borderLeftWidth);
1368
1369 if(
1370 rect.width>=220&&
1371 rect.width<=800&&
1372 rect.height>=120&&
1373 border>=1
1374 ){
1375 candidates.push(node);
1376 }
1377
1378 node=node.parentElement;
1379 }
1380
1381 if(!candidates.length)return null;
1382
1383 candidates.sort(function(a,b){
1384 return (
1385 b.getBoundingClientRect().height-
1386 a.getBoundingClientRect().height
1387 );
1388 });
1389
1390 return candidates[0];
1391 }
1392
1393 function rowCandidates(link,card){
1394 var result=[];
1395 var cardRect=
1396 card.getBoundingClientRect();
1397
1398 var node=link;
1399
1400 while(node&&node!==card){
1401 if(visible(node)){
1402 var rect=
1403 node.getBoundingClientRect();
1404
1405 if(
1406 rect.height<=105&&
1407 rect.width>=
1408 cardRect.width*.50&&
1409 rect.width<=
1410 cardRect.width*1.03
1411 ){
1412 result.push(node);
1413 }
1414 }
1415
1416 node=node.parentElement;
1417 }
1418
1419 return result;
1420 }
1421
1422 function chooseOuterRow(
1423 candidates,
1424 link
1425 ){
1426 if(!candidates.length){
1427 return link;
1428 }
1429
1430 var bordered=
1431 candidates.filter(function(el){
1432 return (
1433 num(
1434 getComputedStyle(el)
1435 .borderLeftWidth
1436 )>=1
1437 );
1438 });
1439
1440 var pool=
1441 bordered.length
1442 ?bordered
1443 :candidates;
1444
1445 pool.sort(function(a,b){
1446 var ar=
1447 a.getBoundingClientRect();
1448
1449 var br=
1450 b.getBoundingClientRect();
1451
1452 return (
1453 ar.left-br.left||
1454 br.width-ar.width
1455 );
1456 });
1457
1458 return pool[0]||link;
1459 }
1460
1461 function applyOverviewPalette(){
1462 if(PAGE_KIND!=="overview"){
1463 return [];
1464 }
1465
1466 var headers=
1467 smallestThemeHeaders()
1468 .map(function(el){
1469 return {
1470 el:el,
1471 theme:
1472 themeFor(
1473 el.textContent
1474 ),
1475 card:
1476 findOverviewCard(
1477 el
1478 )
1479 };
1480 })
1481 .filter(function(row){
1482 return !!row.card;
1483 });
1484
1485 var unique=[];
1486 var seenHeaders=new Set();
1487
1488 headers.forEach(function(row){
1489 var key=
1490 row.theme.name+
1491 "|"+
1492 Math.round(
1493 row.card
1494 .getBoundingClientRect()
1495 .left
1496 )+
1497 "|"+
1498 Math.round(
1499 row.el
1500 .getBoundingClientRect()
1501 .top
1502 );
1503
1504 if(!seenHeaders.has(key)){
1505 seenHeaders.add(key);
1506 unique.push(row);
1507 }
1508 });
1509
1510 unique.forEach(function(row){
1511 var headerRect=
1512 row.el
1513 .getBoundingClientRect();
1514
1515 row.el.style.setProperty(
1516 "background",
1517 row.theme.bg,
1518 "important"
1519 );
1520
1521 row.el.style.setProperty(
1522 "color",
1523 row.theme.text,
1524 "important"
1525 );
1526
1527 row.el.style.setProperty(
1528 "text-align",
1529 "left",
1530 "important"
1531 );
1532
1533 row.el.style.setProperty(
1534 "word-spacing",
1535 "normal",
1536 "important"
1537 );
1538
1539 var later=
1540 unique
1541 .filter(function(other){
1542 return (
1543 other.card===row.card&&
1544 other.el
1545 .getBoundingClientRect()
1546 .top>
1547 headerRect.top+2
1548 );
1549 })
1550 .sort(function(a,b){
1551 return (
1552 a.el
1553 .getBoundingClientRect()
1554 .top-
1555 b.el
1556 .getBoundingClientRect()
1557 .top
1558 );
1559 });
1560
1561 var stopTop=
1562 later.length
1563 ?later[0].el
1564 .getBoundingClientRect()
1565 .top
1566 :Infinity;
1567
1568 Array.from(
1569 row.card.querySelectorAll("a")
1570 ).forEach(function(link){
1571 if(!visible(link))return;
1572
1573 var rect=
1574 link.getBoundingClientRect();
1575
1576 if(
1577 rect.top<=
1578 headerRect.bottom-2||
1579 rect.top>=
1580 stopTop-2
1581 ){
1582 return;
1583 }
1584
1585 var candidates=
1586 rowCandidates(
1587 link,
1588 row.card
1589 );
1590
1591 var target=
1592 chooseOuterRow(
1593 candidates,
1594 link
1595 );
1596
1597 candidates.forEach(function(el){
1598 el.style.setProperty(
1599 "border-left",
1600 "0 solid transparent",
1601 "important"
1602 );
1603 });
1604
1605 target.style.setProperty(
1606 "border-left",
1607 "3px solid "+
1608 row.theme.accent,
1609 "important"
1610 );
1611
1612 target.style.setProperty(
1613 "box-sizing",
1614 "border-box",
1615 "important"
1616 );
1617 });
1618 });
1619
1620 return unique;
1621 }
1622
1623 /* =======================================================
1624 OVERVIEW CARD HEIGHT + FIRST THEMATIC ROW
1625 ======================================================= */
1626
1627 function alignOverviewCards(headers){
1628 if(
1629 PAGE_KIND!=="overview"||
1630 window.innerWidth<=MOBILE_MAX
1631 ){
1632 return;
1633 }
1634
1635 var cards=[];
1636 var seen=new Set();
1637
1638 headers.forEach(function(row){
1639 if(!seen.has(row.card)){
1640 seen.add(row.card);
1641 cards.push(row.card);
1642 }
1643 });
1644
1645 if(cards.length<2){
1646 return;
1647 }
1648
1649 // Group cards by actual top position.
1650 var groups=[];
1651
1652 cards.forEach(function(card){
1653 var top=
1654 card.getBoundingClientRect().top;
1655
1656 var group=null;
1657
1658 for(var i=0;i<groups.length;i++){
1659 if(
1660 Math.abs(
1661 groups[i].top-top
1662 )<=ROW_TOLERANCE
1663 ){
1664 group=groups[i];
1665 break;
1666 }
1667 }
1668
1669 if(!group){
1670 group={
1671 top:top,
1672 cards:[]
1673 };
1674 groups.push(group);
1675 }
1676
1677 group.cards.push(card);
1678 });
1679
1680 groups.forEach(function(group){
1681 if(group.cards.length<2){
1682 return;
1683 }
1684
1685 var firstHeaders=
1686 group.cards.map(function(card){
1687 var candidates=
1688 headers
1689 .filter(function(row){
1690 return row.card===card;
1691 })
1692 .sort(function(a,b){
1693 return (
1694 a.el
1695 .getBoundingClientRect()
1696 .top-
1697 b.el
1698 .getBoundingClientRect()
1699 .top
1700 );
1701 });
1702
1703 return candidates.length
1704 ?candidates[0]
1705 :null;
1706 });
1707
1708 if(
1709 !firstHeaders.some(function(row){
1710 return !row;
1711 })
1712 ){
1713 var targetTop=
1714 Math.max.apply(
1715 Math,
1716 firstHeaders.map(function(row){
1717 return (
1718 row.el
1719 .getBoundingClientRect()
1720 .top-
1721 row.card
1722 .getBoundingClientRect()
1723 .top
1724 );
1725 })
1726 );
1727
1728 firstHeaders.forEach(function(row){
1729 var relativeTop=
1730 row.el
1731 .getBoundingClientRect()
1732 .top-
1733 row.card
1734 .getBoundingClientRect()
1735 .top;
1736
1737 var delta=
1738 targetTop-relativeTop;
1739
1740 if(delta>1){
1741 saveStyle(
1742 row.el,
1743 originalMargin,
1744 "margin-top"
1745 );
1746
1747 var current=
1748 num(
1749 getComputedStyle(
1750 row.el
1751 ).marginTop
1752 );
1753
1754 row.el.style.setProperty(
1755 "margin-top",
1756 (
1757 current+delta
1758 )+"px"
1759 );
1760
1761 row.el.setAttribute(
1762 "data-sn-master-first-row",
1763 "1"
1764 );
1765
1766 managedMargin.add(
1767 row.el
1768 );
1769 }
1770 });
1771 }
1772
1773 var maxHeight=0;
1774
1775 group.cards.forEach(function(card){
1776 maxHeight=
1777 Math.max(
1778 maxHeight,
1779 card
1780 .getBoundingClientRect()
1781 .height
1782 );
1783 });
1784
1785 maxHeight=
1786 Math.ceil(maxHeight);
1787
1788 group.cards.forEach(function(card){
1789 saveStyle(
1790 card,
1791 originalHeight,
1792 "min-height"
1793 );
1794
1795 card.style.setProperty(
1796 "min-height",
1797 maxHeight+"px"
1798 );
1799
1800 card.setAttribute(
1801 "data-sn-master-equal-height",
1802 "1"
1803 );
1804
1805 managedHeight.add(
1806 card
1807 );
1808 });
1809 });
1810 }
1811
1812 /* =======================================================
1813 DETAIL GRID EQUAL HEIGHT, DESKTOP ONLY
1814 ======================================================= */
1815
1816 function equaliseDetailGrids(){
1817 if(
1818 PAGE_KIND!=="detail"||
1819 window.innerWidth<=MOBILE_MAX
1820 ){
1821 return;
1822 }
1823
1824 var selectors=[
1825 ".arsn-grid",
1826 ".arsn-grid-2",
1827 ".arsn-grid-3",
1828 ".dmp-grid",
1829 ".ido-grid",
1830 ".pp-grid"
1831 ];
1832
1833 selectors.forEach(function(selector){
1834 Array.from(
1835 root.querySelectorAll(selector)
1836 ).forEach(function(grid){
1837 var children=
1838 Array.from(
1839 grid.children||[]
1840 ).filter(visible);
1841
1842 if(children.length<2){
1843 return;
1844 }
1845
1846 var groups=[];
1847
1848 children.forEach(function(child){
1849 var top=
1850 child
1851 .getBoundingClientRect()
1852 .top;
1853
1854 var group=null;
1855
1856 for(var i=0;i<groups.length;i++){
1857 if(
1858 Math.abs(
1859 groups[i].top-top
1860 )<=ROW_TOLERANCE
1861 ){
1862 group=groups[i];
1863 break;
1864 }
1865 }
1866
1867 if(!group){
1868 group={
1869 top:top,
1870 items:[]
1871 };
1872 groups.push(group);
1873 }
1874
1875 group.items.push(child);
1876 });
1877
1878 groups.forEach(function(group){
1879 if(group.items.length<2){
1880 return;
1881 }
1882
1883 var maxHeight=0;
1884
1885 group.items.forEach(function(item){
1886 maxHeight=
1887 Math.max(
1888 maxHeight,
1889 item
1890 .getBoundingClientRect()
1891 .height
1892 );
1893 });
1894
1895 maxHeight=
1896 Math.ceil(maxHeight);
1897
1898 group.items.forEach(function(item){
1899 saveStyle(
1900 item,
1901 originalHeight,
1902 "min-height"
1903 );
1904
1905 item.style.setProperty(
1906 "min-height",
1907 maxHeight+"px"
1908 );
1909
1910 item.setAttribute(
1911 "data-sn-master-equal-height",
1912 "1"
1913 );
1914
1915 managedHeight.add(item);
1916 });
1917 });
1918 });
1919 });
1920 }
1921
1922 /* =======================================================
1923 RUN / RESPONSIVE SCHEDULING
1924 ======================================================= */
1925
1926 function run(){
1927 if(running)return;
1928
1929 running=true;
1930
1931 try{
1932 resetRuntime();
1933 applyPlaceholderBadge();
1934 propagateDetailAccents();
1935
1936 var headers=
1937 applyOverviewPalette();
1938
1939 makeThreeLineAreaLabels();
1940 makeFilledRedOrangeCTAsBorderless();
1941
1942 if(
1943 window.innerWidth>
1944 MOBILE_MAX
1945 ){
1946 alignOverviewCards(
1947 headers
1948 );
1949
1950 equaliseDetailGrids();
1951 }
1952 }finally{
1953 running=false;
1954 }
1955 }
1956
1957 function onResize(){
1958 if(resizeTimer){
1959 clearTimeout(
1960 resizeTimer
1961 );
1962 }
1963
1964 resizeTimer=
1965 setTimeout(
1966 function(){
1967 resizeTimer=0;
1968 run();
1969 },
1970 RESIZE_DEBOUNCE
1971 );
1972 }
1973
1974 async function waitForReady(){
1975 if(
1976 document.readyState!=="complete"
1977 ){
1978 await new Promise(function(resolve){
1979 window.addEventListener(
1980 "load",
1981 resolve,
1982 {once:true}
1983 );
1984 });
1985 }
1986
1987 if(
1988 document.fonts&&
1989 document.fonts.ready
1990 ){
1991 try{
1992 await document.fonts.ready;
1993 }catch(error){}
1994 }
1995
1996 var images=
1997 Array.from(
1998 root.querySelectorAll("img")
1999 );
2000
2001 await Promise.all(
2002 images.map(function(img){
2003 if(img.complete){
2004 return Promise.resolve();
2005 }
2006
2007 return new Promise(function(resolve){
2008 var done=function(){
2009 resolve();
2010 };
2011
2012 img.addEventListener(
2013 "load",
2014 done,
2015 {once:true}
2016 );
2017
2018 img.addEventListener(
2019 "error",
2020 done,
2021 {once:true}
2022 );
2023 });
2024 })
2025 );
2026
2027 run();
2028 }
2029
2030 window.addEventListener(
2031 "resize",
2032 onResize,
2033 {passive:true}
2034 );
2035
2036 waitForReady();
2037 })();
2038 </script>
2039
2040 <!-- SN_SERVICE_NAVIGATOR_MASTER_STYLE_END -->
2041 {{/html}}