Changes for page Service Navigator

Last modified by Veronika Kocher on Thursday, 03 Sep 2026 14:15

From version 22.16
edited by Veronika Kocher
on Thursday, 03 Sep 2026 13:04
Change comment: There is no comment for this version
To version 18.1
edited by Veronika Kocher
on Monday, 31 Aug 2026 10:54
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -9,9 +9,9 @@
9 9   The <strong>Service Navigator</strong> is organised around what you need to do, not around the university's organisational chart.
10 10   </p>
11 11  
12 - <section style="margin:0 0 28px 0;padding:16px 18px;border:1px solid #e3ded6;border-radius:10px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);">
13 - <h2 style="font-size:20px;margin:0 0 6px 0;color:#35312d;">Find a service</h2>
14 - <p style="margin:0 0 12px 0;color:#6a655e;">
12 + <section style="margin:0 0 28px 0;padding:16px 18px;border:1px solid #d9d9d9;border-radius:10px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);">
13 + <h2 style="font-size:20px;margin:0 0 6px 0;">Find a service</h2>
14 + <p style="margin:0 0 12px 0;color:#666;">
15 15   Search by task, topic or question — for example <em>room, invoice, disability, DOI, event, employment, data protection</em> or <em>library</em>.
16 16   </p>
17 17  
... ... @@ -24,7 +24,7 @@
24 24   type="search"
25 25   placeholder="What do you need help with?"
26 26   autocomplete="off"
27 - style="flex:1 1 520px;min-width:260px;padding:11px 13px;border:1px solid #cfc8bd;border-radius:6px;background:#fffdf9;font-size:16px;"
27 + style="flex:1 1 520px;min-width:260px;padding:11px 13px;border:1px solid #bbb;border-radius:6px;font-size:16px;"
28 28   />
29 29   <button type="submit" class="btn btn-primary" style="padding:11px 22px;">Search</button>
30 30   </div>
... ... @@ -31,7 +31,7 @@
31 31   </form>
32 32   </section>
33 33  
34 - <h2 style="font-size:24px;margin:0 0 16px 0;color:#35312d;">Find services by what you need to do</h2>
34 + <h2 style="font-size:24px;margin:0 0 16px 0;">Find services by what you need to do</h2>
35 35  
36 36   <div style="
37 37   display:grid;
... ... @@ -40,152 +40,150 @@
40 40   align-items:stretch;
41 41   ">
42 42  
43 - <!-- 1. PEOPLE, EQUALITY, HEALTH & WORK -->
44 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #f0aa00;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
43 + <!-- 1. ART & RESEARCH SERVICES -->
44 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #21b6d7;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
45 45   <div style="padding:18px 18px 14px 18px;flex:1;">
46 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">PEOPLE &amp; WORK</div>
47 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">People, Equality, Health &amp; Work</h3>
48 - <p style="color:#6a655e;margin:0 0 14px 0;">Employment, equality, diversity, disability, accessibility and health.</p>
46 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">ART &amp; RESEARCH</div>
47 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">Art &amp; Research Services</h3>
48 + <p style="color:#666;margin:0 0 14px 0;">Plan, manage, publish, share and preserve artistic and research projects.</p>
49 49  
50 50   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
51 51   <ul style="margin:0 0 14px 18px;padding:0;">
52 - <li>ask about employment, working conditions or labour law</li>
53 - <li>get support concerning discrimination, equality or diversity</li>
54 - <li>address disability, accessibility or health at work</li>
52 + <li>develop or plan an artistic or research project</li>
53 + <li>manage research data, documentation or collaboration</li>
54 + <li>publish, cite, share or preserve outputs</li>
55 55   </ul>
56 56  
57 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
58 - HR · staff development · equal treatment · diversity · disability · accessibility · health · labour law
57 + <div style="font-size:12px;color:#666;line-height:1.45;">
58 + Research projects · research data management · rights &amp; ethics · repositories · publication · preservation
59 59   </div>
60 60   </div>
61 61   <div style="padding:0 18px 18px 18px;">
62 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore People &amp; Work</span>
62 + <a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/" class="btn btn-primary btn-block">Explore Art &amp; Research Services</a>
63 63   </div>
64 64   </section>
65 65  
66 - <!-- 2. IT & DIGITAL SERVICES -->
67 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #38b76a;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
66 + <!-- 2. COMMUNICATION, MEDIA & EVENTS -->
67 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #e94b13;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
68 68   <div style="padding:18px 18px 14px 18px;flex:1;">
69 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">IT &amp; DIGITAL</div>
70 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">IT &amp; Digital Services</h3>
71 - <p style="color:#6a655e;margin:0 0 14px 0;">Accounts, systems, software, digital infrastructure and IT support.</p>
69 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">COMMUNICATE &amp; ORGANISE</div>
70 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">Communication, Media &amp; Events</h3>
71 + <p style="color:#666;margin:0 0 14px 0;">Communicate, publish, print, promote and organise events.</p>
72 72  
73 73   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
74 74   <ul style="margin:0 0 14px 18px;padding:0;">
75 - <li>access an account, system or digital service</li>
76 - <li>solve an IT problem</li>
77 - <li>plan or coordinate a digital or IT project</li>
75 + <li>communicate or publicise something</li>
76 + <li>produce a publication, flyer or printed material</li>
77 + <li>organise or support an event</li>
78 78   </ul>
79 79  
80 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
81 - Accounts · IT support · software · digital tools · infrastructure · IT project coordination
80 + <div style="font-size:12px;color:#666;line-height:1.45;">
81 + Press &amp; communications · publications · print materials · event management · Open House · festival
82 82   </div>
83 83   </div>
84 84   <div style="padding:0 18px 18px 18px;">
85 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore IT &amp; Digital Services</span>
85 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore Communication &amp; Events</span>
86 86   </div>
87 87   </section>
88 88  
89 - <!-- 3. ROOMS, BUILDINGS & CAMPUS -->
90 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #38b76a;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
89 + <!-- 3. INTERNATIONAL OFFICE -->
90 + <section style="display:flex;flex-direction:column;min-height:300px;border:1px solid #d9d9d9;border-left:6px solid #21b6d7;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
91 91   <div style="padding:18px 18px 14px 18px;flex:1;">
92 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">CAMPUS</div>
93 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">Rooms, Buildings &amp; Campus</h3>
94 - <p style="color:#6a655e;margin:0 0 14px 0;">Rooms, buildings, facilities, campus use and operational support.</p>
92 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">GO INTERNATIONAL</div>
93 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">International Office</h3>
94 + <p style="color:#666;margin:0 0 14px 0;">International mobility, exchange and international support.</p>
95 95  
96 96   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
97 97   <ul style="margin:0 0 14px 18px;padding:0;">
98 - <li>book or use a room</li>
99 - <li>report a building, equipment or safety issue</li>
100 - <li>find information about campus facilities or house rules</li>
98 + <li>plan an international stay or exchange</li>
99 + <li>ask about mobility opportunities</li>
100 + <li>find support for an international context</li>
101 101   </ul>
102 102  
103 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
104 - Facility management · estates · room coordination · building services · safety · house rules · campus operations
103 + <div style="font-size:12px;color:#666;line-height:1.45;">
104 + Mobility · exchange · international cooperation · international support
105 105   </div>
106 106   </div>
107 107   <div style="padding:0 18px 18px 18px;">
108 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore Rooms &amp; Campus</span>
108 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore International Office</span>
109 109   </div>
110 110   </section>
111 111  
112 - <!-- 4. ART & RESEARCH SERVICES -->
113 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #21b6d7;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
112 + <!-- 4. IT & DIGITAL SERVICES -->
113 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #38b76a;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
114 114   <div style="padding:18px 18px 14px 18px;flex:1;">
115 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">ART &amp; RESEARCH</div>
116 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">Art &amp; Research Services</h3>
117 - <p style="color:#6a655e;margin:0 0 8px 0;">Cross-unit guidance for planning, managing, publishing, sharing and preserving artistic and research projects.</p>
118 - <!-- ARSN_ROOT_SCOPE_ROUTING_V1 -->
119 - <div style="font-size:12px;color:#506168;line-height:1.45;margin:0 0 14px 0;padding:7px 9px;background:#eef7f9;border-radius:5px;"><strong>Central project &amp; funding hub:</strong> Support Kunst und Forschung · specialist responsibilities remain with the relevant service units.</div>
115 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">IT &amp; DIGITAL</div>
116 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">IT &amp; Digital Services</h3>
117 + <p style="color:#666;margin:0 0 14px 0;">Accounts, systems, software, digital infrastructure and IT support.</p>
120 120  
121 121   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
122 122   <ul style="margin:0 0 14px 18px;padding:0;">
123 - <li>develop or plan an artistic or research project</li>
124 - <li>manage research data, documentation or collaboration</li>
125 - <li>publish, cite, share or preserve outputs</li>
121 + <li>access an account, system or digital service</li>
122 + <li>solve an IT problem</li>
123 + <li>plan or coordinate a digital or IT project</li>
126 126   </ul>
127 127  
128 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
129 - Research projects · research data management · rights &amp; ethics · repositories · publication · preservation
126 + <div style="font-size:12px;color:#666;line-height:1.45;">
127 + Accounts · IT support · software · digital tools · infrastructure · IT project coordination
130 130   </div>
131 131   </div>
132 132   <div style="padding:0 18px 18px 18px;">
133 - <a href="https://xwiki.uni-ak.ac.at/bin/view/Service%20Navigator/Art%20%26%20Research%20Services%20Navigator/" class="btn btn-primary btn-block">Explore Art &amp; Research Services</a>
131 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore IT &amp; Digital Services</span>
134 134   </div>
135 135   </section>
136 136  
137 - <!-- 5. STUDY, TEACHING & CURRICULUM -->
138 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #21b6d7;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
135 + <!-- 5. LEGAL, DATA PROTECTION & GOVERNANCE -->
136 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #f0aa00;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
139 139   <div style="padding:18px 18px 14px 18px;flex:1;">
140 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">STUDY &amp; TEACHING</div>
141 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">Study, Teaching &amp; Curriculum</h3>
142 - <p style="color:#6a655e;margin:0 0 14px 0;">Support for studying, teaching, curricula and the learning environment.</p>
138 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">RIGHTS &amp; RULES</div>
139 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">Legal, Data Protection &amp; Governance</h3>
140 + <p style="color:#666;margin:0 0 14px 0;">Legal questions, privacy, information rights and institutional rules.</p>
143 143  
144 144   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
145 145   <ul style="margin:0 0 14px 18px;padding:0;">
146 - <li>clarify a study-related question</li>
147 - <li>develop or change teaching or curricula</li>
148 - <li>find support for final projects or accessibility in study</li>
144 + <li>clarify a legal or contractual question</li>
145 + <li>deal with personal data or privacy</li>
146 + <li>understand an institutional rule or information-access requirement</li>
149 149   </ul>
150 150  
151 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
152 - Student affairs · teaching quality · curriculum development · final projects · student workspace
149 + <div style="font-size:12px;color:#666;line-height:1.45;">
150 + Legal affairs · data protection · freedom of information · governance · institutional rules
153 153   </div>
154 154   </div>
155 155   <div style="padding:0 18px 18px 18px;">
156 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore Study &amp; Teaching</span>
154 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore Legal &amp; Governance</span>
157 157   </div>
158 158   </section>
159 159  
160 -<!-- 6. RESEARCH & DISCOVERY RESOURCES -->
161 - <section style="display:flex;flex-direction:column;min-height:340px;border:1px solid #e3ded6;border-left:6px solid #21b6d7;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
158 + <!-- 6. PEOPLE, EQUALITY, HEALTH & WORK -->
159 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #f0aa00;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
162 162   <div style="padding:18px 18px 14px 18px;flex:1;">
163 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">FIND · SEARCH · DISCOVER</div>
164 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">Research &amp; Discovery Resources</h3>
165 - <p style="color:#6a655e;margin:0 0 14px 0;">Find literature, databases, archives, collections, repositories and specialist research resources across the University.</p>
161 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">PEOPLE &amp; WORK</div>
162 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">People, Equality, Health &amp; Work</h3>
163 + <p style="color:#666;margin:0 0 14px 0;">Employment, equality, diversity, disability, accessibility and health.</p>
166 166  
167 167   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
168 168   <ul style="margin:0 0 14px 18px;padding:0;">
169 - <li>find literature, media, databases or digital resources</li>
170 - <li>research archival, artistic or institutional collections</li>
171 - <li>discover repositories, specialist archives and research databases</li>
167 + <li>ask about employment, working conditions or labour law</li>
168 + <li>get support concerning discrimination, equality or diversity</li>
169 + <li>address disability, accessibility or health at work</li>
172 172   </ul>
173 173  
174 - <div style="font-size:12px;color:#6a655e;line-height:1.5;">
175 - University Library &amp; supA · licensed databases · University Archive &amp; Art Collection · online collection databases · Oskar Kokoschka Centre · Viktor J. Papanek Foundation · Venedig Biennale Archiv Austria · Weibel Institute &amp; Peter Weibel Archive · Ursula Blickle Video Archive · Angewandte Repository
172 + <div style="font-size:12px;color:#666;line-height:1.45;">
173 + HR · staff development · equal treatment · diversity · disability · accessibility · health · labour law
176 176   </div>
177 177   </div>
178 178   <div style="padding:0 18px 18px 18px;">
179 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore Research &amp; Discovery</span>
177 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore People &amp; Work</span>
180 180   </div>
181 181   </section>
182 182  
183 183   <!-- 7. PURCHASING, FINANCE & LOGISTICS -->
184 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #38b76a;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
182 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #38b76a;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
185 185   <div style="padding:18px 18px 14px 18px;flex:1;">
186 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">PURCHASE &amp; MOVE</div>
187 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">Purchasing, Finance &amp; Logistics</h3>
188 - <p style="color:#6a655e;margin:0 0 14px 0;">Buy, pay, budget, send, transport and move things.</p>
184 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">PURCHASE &amp; MOVE</div>
185 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">Purchasing, Finance &amp; Logistics</h3>
186 + <p style="color:#666;margin:0 0 14px 0;">Buy, pay, budget, send, transport and move things.</p>
189 189  
190 190   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
191 191   <ul style="margin:0 0 14px 18px;padding:0;">
... ... @@ -194,88 +194,87 @@
194 194   <li>send, transport or move items</li>
195 195   </ul>
196 196  
197 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
195 + <div style="font-size:12px;color:#666;line-height:1.45;">
198 198   Procurement · controlling · accounting · resource planning · mail &amp; logistics · transport · relocations
199 199   </div>
200 200   </div>
201 201   <div style="padding:0 18px 18px 18px;">
202 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore Finance &amp; Logistics</span>
200 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore Finance &amp; Logistics</span>
203 203   </div>
204 204   </section>
205 205  
206 - <!-- 8. LEGAL, DATA PROTECTION & GOVERNANCE -->
207 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #f0aa00;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
204 + <!-- 8. ROOMS, BUILDINGS & CAMPUS -->
205 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #38b76a;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
208 208   <div style="padding:18px 18px 14px 18px;flex:1;">
209 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">RIGHTS &amp; RULES</div>
210 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">Legal, Data Protection &amp; Governance</h3>
211 - <p style="color:#6a655e;margin:0 0 14px 0;">Legal questions, privacy, information rights and institutional rules.</p>
207 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">CAMPUS</div>
208 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">Rooms, Buildings &amp; Campus</h3>
209 + <p style="color:#666;margin:0 0 14px 0;">Rooms, buildings, facilities, campus use and operational support.</p>
212 212  
213 213   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
214 214   <ul style="margin:0 0 14px 18px;padding:0;">
215 - <li>clarify a legal or contractual question</li>
216 - <li>deal with personal data or privacy</li>
217 - <li>understand an institutional rule or information-access requirement</li>
213 + <li>book or use a room</li>
214 + <li>report a building, equipment or safety issue</li>
215 + <li>find information about campus facilities or house rules</li>
218 218   </ul>
219 219  
220 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
221 - Legal affairs · data protection · freedom of information · governance · institutional rules
218 + <div style="font-size:12px;color:#666;line-height:1.45;">
219 + Facility management · estates · room coordination · building services · safety · house rules · campus operations
222 222   </div>
223 223   </div>
224 224   <div style="padding:0 18px 18px 18px;">
225 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore Legal &amp; Governance</span>
223 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore Rooms &amp; Campus</span>
226 226   </div>
227 227   </section>
228 228  
229 - <!-- 9. COMMUNICATION, MEDIA & EVENTS -->
230 - <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #e3ded6;border-left:6px solid #e94b13;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
227 + <!-- 9. STUDY, TEACHING & CURRICULUM -->
228 + <section style="display:flex;flex-direction:column;min-height:320px;border:1px solid #d9d9d9;border-left:6px solid #21b6d7;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
231 231   <div style="padding:18px 18px 14px 18px;flex:1;">
232 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">COMMUNICATE &amp; ORGANISE</div>
233 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">Communication, Media &amp; Events</h3>
234 - <p style="color:#6a655e;margin:0 0 14px 0;">Communicate, publish, print, promote and organise events.</p>
230 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">STUDY &amp; TEACHING</div>
231 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">Study, Teaching &amp; Curriculum</h3>
232 + <p style="color:#666;margin:0 0 14px 0;">Support for studying, teaching, curricula and the learning environment.</p>
235 235  
236 236   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
237 237   <ul style="margin:0 0 14px 18px;padding:0;">
238 - <li>communicate or publicise something</li>
239 - <li>produce a publication, flyer or printed material</li>
240 - <li>organise or support an event</li>
236 + <li>clarify a study-related question</li>
237 + <li>develop or change teaching or curricula</li>
238 + <li>find support for final projects or accessibility in study</li>
241 241   </ul>
242 242  
243 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
244 - Press &amp; communications · publications · print materials · event management · Open House · festival
241 + <div style="font-size:12px;color:#666;line-height:1.45;">
242 + Student affairs · teaching quality · curriculum development · final projects · student workspace
245 245   </div>
246 246   </div>
247 247   <div style="padding:0 18px 18px 18px;">
248 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore Communication &amp; Events</span>
246 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore Study &amp; Teaching</span>
249 249   </div>
250 250   </section>
251 251  
252 - <!-- 10. INTERNATIONAL OFFICE -->
253 - <section style="display:flex;flex-direction:column;min-height:300px;border:1px solid #e3ded6;border-left:6px solid #21b6d7;border-radius:12px;background:#fcfbf8;box-shadow:0 1px 2px rgba(0,0,0,.035);overflow:hidden;">
250 + <!-- 10. UNIVERSITY LIBRARY -->
251 + <section style="display:flex;flex-direction:column;min-height:300px;border:1px solid #d9d9d9;border-left:6px solid #21b6d7;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;">
254 254   <div style="padding:18px 18px 14px 18px;flex:1;">
255 - <div style="display:inline-block;font-size:12px;font-weight:700;letter-spacing:.065em;color:#4f4a44;margin-bottom:8px;padding:4px 7px;background:#f3efe8;border-radius:4px;">GO INTERNATIONAL</div>
256 - <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;color:#252321;">International Office</h3>
257 - <p style="color:#6a655e;margin:0 0 14px 0;">International mobility, exchange and international support.</p>
253 + <div style="font-size:12px;font-weight:700;letter-spacing:.07em;color:#66737d;margin-bottom:6px;">FIND &amp; ACCESS</div>
254 + <h3 style="font-size:21px;line-height:1.25;margin:0 0 8px 0;">University Library</h3>
255 + <p style="color:#666;margin:0 0 14px 0;">Find, access and work with literature, media and library resources.</p>
258 258  
259 259   <div style="font-weight:700;margin-bottom:6px;">I need to…</div>
260 260   <ul style="margin:0 0 14px 18px;padding:0;">
261 - <li>plan an international stay or exchange</li>
262 - <li>ask about mobility opportunities</li>
263 - <li>find support for an international context</li>
259 + <li>find literature or other media</li>
260 + <li>access library resources</li>
261 + <li>get help with research and information discovery</li>
264 264   </ul>
265 265  
266 - <div style="font-size:12px;color:#6a655e;line-height:1.45;">
267 - Mobility · exchange · international cooperation · international support
264 + <div style="font-size:12px;color:#666;line-height:1.45;">
265 + Literature · media · library access · catalogues · information discovery · library support
268 268   </div>
269 269   </div>
270 270   <div style="padding:0 18px 18px 18px;">
271 - <span class="btn btn-default btn-block disabled" style="background:#f4f0e9;border-color:#d8d1c7;color:#6b655d;" aria-disabled="true">Explore International Office</span>
269 + <span class="btn btn-default btn-block disabled" aria-disabled="true">Explore University Library</span>
272 272   </div>
273 273   </section>
274 274  
275 -
276 276   </div>
277 277  
278 - <aside style="margin-top:26px;padding:14px 16px;border:1px solid #cfe8ef;border-left:4px solid #21b6d7;background:#eaf6f9;border-radius:6px;">
275 + <aside style="margin-top:26px;padding:14px 16px;border-left:4px solid #21b6d7;background:#f4f8fa;border-radius:6px;">
279 279   <strong>Not sure where to start?</strong>
280 280   <div style="margin-top:4px;">
281 281   Use the search at the top of the page or choose the card that best matches what you are trying to do. A service may deliberately appear in more than one area when this makes it easier to find.
... ... @@ -284,1149 +284,3 @@
284 284  
285 285  </div>
286 286  {{/html}}
287 -
288 -{{html clean="false"}}
289 -<!-- SN_SERVICE_NAVIGATOR_MASTER_STYLE_START -->
290 -
291 -<style data-sn-service-navigator-master="1">
292 -/* =========================================================
293 - MASTER TYPOGRAPHY
294 - ========================================================= */
295 -#xwikicontent h1,
296 -#xwikicontent h2,
297 -#xwikicontent h3,
298 -#xwikicontent h4,
299 -#xwikicontent h5,
300 -#xwikicontent h6,
301 -#xwikicontent .box-title,
302 -#xwikicontent [role="heading"],
303 -#xwikicontent h1 a,
304 -#xwikicontent h2 a,
305 -#xwikicontent h3 a,
306 -#xwikicontent h4 a,
307 -#xwikicontent h5 a,
308 -#xwikicontent h6 a,
309 -#xwikicontent .box-title a,
310 -#xwikicontent [role="heading"] a{
311 - text-align:left!important;
312 - text-justify:auto!important;
313 - word-spacing:normal!important;
314 -}
315 -
316 -/* =========================================================
317 - COMING SOON / IN VORBEREITUNG
318 - ========================================================= */
319 -.sn-coming-soon-badge{
320 - display:inline-block;
321 - vertical-align:middle;
322 - margin-left:10px;
323 - padding:4px 8px;
324 - border-radius:14px;
325 - border:1px solid #efd9cc;
326 - background:#fff4ee;
327 - color:#8a4d36;
328 - font-size:11px;
329 - font-weight:700;
330 - letter-spacing:.055em;
331 - line-height:1.2;
332 - white-space:nowrap;
333 -}
334 -
335 -/* =========================================================
336 - NATIVE / DETAIL CALLOUT GEOMETRY
337 - Preserve existing backgrounds.
338 - ========================================================= */
339 -#xwikicontent .arsn-info,
340 -#xwikicontent .dmp-info,
341 -#xwikicontent .ido-info,
342 -#xwikicontent .pp-info,
343 -#xwikicontent .infomessage{
344 - box-sizing:border-box!important;
345 - border-left:4px solid #21b6d7!important;
346 - border-radius:8px;
347 - text-align:left!important;
348 - word-spacing:normal!important;
349 -}
350 -
351 -#xwikicontent .arsn-warn,
352 -#xwikicontent .dmp-warn,
353 -#xwikicontent .ido-warn,
354 -#xwikicontent .pp-warn,
355 -#xwikicontent .warn,
356 -#xwikicontent .warning,
357 -#xwikicontent .warningmessage,
358 -#xwikicontent .errormessage{
359 - box-sizing:border-box!important;
360 - border-left:4px solid #e94b13!important;
361 - border-radius:8px;
362 - text-align:left!important;
363 - word-spacing:normal!important;
364 -}
365 -
366 -[data-sn-master-equal-height],
367 -[data-sn-master-first-row]{
368 - box-sizing:border-box;
369 -}
370 -</style>
371 -
372 -<script data-sn-service-navigator-master="1">
373 -(function(){
374 - "use strict";
375 -
376 - var PAGE_KIND="overview";
377 - var PLACEHOLDER=false;
378 - var PLACEHOLDER_LABEL="COMING SOON";
379 -
380 - var MOBILE_MAX=767;
381 - var ROW_TOLERANCE=6;
382 - var RESIZE_DEBOUNCE=220;
383 -
384 - var root=
385 - document.getElementById("xwikicontent")||
386 - document.querySelector(".xwiki-rendering-content")||
387 - document.querySelector("main")||
388 - document.body;
389 -
390 - if(!root)return;
391 -
392 - var managedHeight=new Set();
393 - var managedMargin=new Set();
394 - var originalHeight=new WeakMap();
395 - var originalMargin=new WeakMap();
396 -
397 - var resizeTimer=0;
398 - var running=false;
399 -
400 - var THEMES=[
401 - {
402 - name:"BLUE",
403 - accent:"#21b6d7",
404 - bg:"#eaf7fb",
405 - text:"#315d68",
406 - labels:[
407 - "HIER STARTEN",
408 - "ENTSCHEIDEN",
409 - "ÜBERPRÜFEN & ANPASSEN",
410 - "START HERE",
411 - "DECIDE",
412 - "REVIEW & ADAPT"
413 - ]
414 - },
415 - {
416 - name:"RED",
417 - accent:"#e94b13",
418 - bg:"#fff1ec",
419 - text:"#8a4d36",
420 - labels:[
421 - "PLANEN & ORGANISIEREN",
422 - "ORGANISIEREN & DOKUMENTIEREN",
423 - "PUBLIZIEREN & PRÄSENTIEREN",
424 - "PLAN & ORGANISE",
425 - "PLAN & ORGANIZE",
426 - "ORGANISE & DOCUMENT",
427 - "ORGANIZE & DOCUMENT",
428 - "PUBLISH & PRESENT"
429 - ]
430 - },
431 - {
432 - name:"YELLOW",
433 - accent:"#f0aa00",
434 - bg:"#fff8e7",
435 - text:"#785b17",
436 - labels:[
437 - "SCHÜTZEN & KLÄREN",
438 - "STANDARDISIEREN & IDENTIFIZIEREN",
439 - "ÖFFNEN, NACHNUTZEN & AUFFINDBAR MACHEN",
440 - "PROTECT & CLARIFY",
441 - "STANDARDISE & IDENTIFY",
442 - "STANDARDIZE & IDENTIFY",
443 - "OPEN, REUSE & MAKE FINDABLE"
444 - ]
445 - },
446 - {
447 - name:"GREEN",
448 - accent:"#38b76a",
449 - bg:"#edf9f1",
450 - text:"#3f7451",
451 - labels:[
452 - "INFRASTRUKTUR EINRICHTEN",
453 - "INFRASTRUKTUR & ZUSAMMENARBEIT EINRICHTEN",
454 - "SPEICHERN & ZUGRIFF STEUERN",
455 - "REPOSITORIUM, ERHALTEN & ÜBERGEBEN",
456 - "SET UP INFRASTRUCTURE",
457 - "SET UP INFRASTRUCTURE & COLLABORATION",
458 - "STORE & CONTROL ACCESS",
459 - "REPOSITORY, PRESERVE & HAND OVER"
460 - ]
461 - }
462 - ];
463 -
464 - function num(value){
465 - var n=parseFloat(value);
466 - return Number.isFinite(n)?n:0;
467 - }
468 -
469 - function norm(value){
470 - return String(value||"")
471 - .replace(/\s+/g," ")
472 - .trim()
473 - .toUpperCase();
474 - }
475 -
476 - function visible(el){
477 - if(!el||el.nodeType!==1)return false;
478 -
479 - var style=getComputedStyle(el);
480 - var rect=el.getBoundingClientRect();
481 -
482 - return (
483 - style.display!=="none"&&
484 - style.visibility!=="hidden"&&
485 - rect.width>20&&
486 - rect.height>4
487 - );
488 - }
489 -
490 - function saveStyle(el,map,property){
491 - if(map.has(el))return;
492 -
493 - map.set(el,{
494 - value:el.style.getPropertyValue(property),
495 - priority:el.style.getPropertyPriority(property)
496 - });
497 - }
498 -
499 - function restoreStyle(el,map,property){
500 - var original=map.get(el);
501 -
502 - if(original&&original.value){
503 - el.style.setProperty(
504 - property,
505 - original.value,
506 - original.priority||""
507 - );
508 - }else{
509 - el.style.removeProperty(property);
510 - }
511 - }
512 -
513 - function resetRuntime(){
514 - managedHeight.forEach(function(el){
515 - restoreStyle(
516 - el,
517 - originalHeight,
518 - "min-height"
519 - );
520 - el.removeAttribute(
521 - "data-sn-master-equal-height"
522 - );
523 - });
524 -
525 - managedMargin.forEach(function(el){
526 - restoreStyle(
527 - el,
528 - originalMargin,
529 - "margin-top"
530 - );
531 - el.removeAttribute(
532 - "data-sn-master-first-row"
533 - );
534 - });
535 -
536 - managedHeight.clear();
537 - managedMargin.clear();
538 - }
539 -
540 - function themeFor(text){
541 - var value=norm(text);
542 -
543 - for(var i=0;i<THEMES.length;i++){
544 - for(var j=0;j<THEMES[i].labels.length;j++){
545 - var label=THEMES[i].labels[j];
546 -
547 - if(
548 - value===label||
549 - value.indexOf(label+" ")===0||
550 - value.indexOf(label+" -")===0||
551 - value.indexOf(label+" ·")===0
552 - ){
553 - return THEMES[i];
554 - }
555 - }
556 - }
557 -
558 - return null;
559 - }
560 -
561 - /* =======================================================
562 - PLACEHOLDER BADGE
563 - ======================================================= */
564 -
565 - function applyPlaceholderBadge(){
566 - if(!PLACEHOLDER)return;
567 -
568 - if(
569 - document.querySelector(
570 - ".sn-coming-soon-badge"
571 - )
572 - ){
573 - return;
574 - }
575 -
576 - var title=
577 - document.querySelector(
578 - "#document-title"
579 - )||
580 - document.querySelector(
581 - "h1"
582 - );
583 -
584 - if(!title)return;
585 -
586 - var badge=
587 - document.createElement(
588 - "span"
589 - );
590 -
591 - badge.className=
592 - "sn-coming-soon-badge";
593 -
594 - badge.textContent=
595 - PLACEHOLDER_LABEL;
596 -
597 - badge.setAttribute(
598 - "aria-label",
599 - PLACEHOLDER_LABEL
600 - );
601 -
602 - title.appendChild(
603 - badge
604 - );
605 - }
606 -
607 - /* =======================================================
608 - DETAIL PAGE OWN-ACCENT PROPAGATION
609 - ======================================================= */
610 -
611 - function parseRGB(value){
612 - var match=String(value||"").match(
613 - /rgba?\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)/i
614 - );
615 -
616 - if(!match)return null;
617 -
618 - return [
619 - Number(match[1]),
620 - Number(match[2]),
621 - Number(match[3])
622 - ];
623 - }
624 -
625 - function distance(a,b){
626 - return Math.sqrt(
627 - Math.pow(a[0]-b[0],2)+
628 - Math.pow(a[1]-b[1],2)+
629 - Math.pow(a[2]-b[2],2)
630 - );
631 - }
632 -
633 - function paletteMatch(cssColor){
634 - var rgb=parseRGB(cssColor);
635 -
636 - if(!rgb)return null;
637 -
638 - var palette=[
639 - {hex:"#21b6d7",rgb:[33,182,215]},
640 - {hex:"#e94b13",rgb:[233,75,19]},
641 - {hex:"#f0aa00",rgb:[240,170,0]},
642 - {hex:"#38b76a",rgb:[56,183,106]}
643 - ];
644 -
645 - var best=null;
646 - var bestDistance=Infinity;
647 -
648 - palette.forEach(function(item){
649 - var d=distance(rgb,item.rgb);
650 -
651 - if(d<bestDistance){
652 - best=item;
653 - bestDistance=d;
654 - }
655 - });
656 -
657 - return bestDistance<=30
658 - ?best
659 - :null;
660 - }
661 -
662 - function propagateDetailAccents(){
663 - if(PAGE_KIND!=="detail")return;
664 -
665 - Array.from(
666 - root.querySelectorAll(
667 - ".arsn-call,.dmp-call,.ido-call,.pp-call,"+
668 - ".arsn-source,.dmp-source,.ido-source,.pp-source"
669 - )
670 - ).forEach(function(el){
671 - if(!visible(el))return;
672 -
673 - var style=getComputedStyle(el);
674 -
675 - if(
676 - num(style.borderTopWidth)>=2
677 - ){
678 - var match=
679 - paletteMatch(
680 - style.borderTopColor
681 - );
682 -
683 - if(match){
684 - el.style.setProperty(
685 - "border-left",
686 - "4px solid "+match.hex,
687 - "important"
688 - );
689 - }
690 - }
691 - });
692 -
693 - // Warning families: explicit safety override.
694 - Array.from(
695 - root.querySelectorAll(
696 - ".arsn-warn,.dmp-warn,.ido-warn,.pp-warn,"+
697 - ".warn,.warning,.warningmessage,.errormessage"
698 - )
699 - ).forEach(function(el){
700 - if(!visible(el))return;
701 -
702 - el.style.setProperty(
703 - "border-left",
704 - "4px solid #e94b13",
705 - "important"
706 - );
707 - });
708 -
709 - // Info families: explicit orientation override.
710 - Array.from(
711 - root.querySelectorAll(
712 - ".arsn-info,.dmp-info,.ido-info,.pp-info,.infomessage"
713 - )
714 - ).forEach(function(el){
715 - if(!visible(el))return;
716 -
717 - el.style.setProperty(
718 - "border-left",
719 - "4px solid #21b6d7",
720 - "important"
721 - );
722 - });
723 - }
724 -
725 - /* =======================================================
726 - OVERVIEW SEMANTIC THEME PALETTE
727 - ======================================================= */
728 -
729 - function smallestThemeHeaders(){
730 - return Array.from(
731 - root.querySelectorAll(
732 - "div,span,p,strong,h3,h4,h5,h6"
733 - )
734 - ).filter(function(el){
735 - if(!visible(el))return false;
736 - if(!themeFor(el.textContent))return false;
737 -
738 - return !Array.from(
739 - el.children||[]
740 - ).some(function(child){
741 - return !!themeFor(
742 - child.textContent
743 - );
744 - });
745 - });
746 - }
747 -
748 - function findOverviewCard(header){
749 - var node=header.parentElement;
750 - var candidates=[];
751 -
752 - while(node&&node!==root){
753 - var rect=node.getBoundingClientRect();
754 - var style=getComputedStyle(node);
755 -
756 - var border=
757 - num(style.borderTopWidth)+
758 - num(style.borderRightWidth)+
759 - num(style.borderBottomWidth)+
760 - num(style.borderLeftWidth);
761 -
762 - if(
763 - rect.width>=220&&
764 - rect.width<=800&&
765 - rect.height>=120&&
766 - border>=1
767 - ){
768 - candidates.push(node);
769 - }
770 -
771 - node=node.parentElement;
772 - }
773 -
774 - if(!candidates.length)return null;
775 -
776 - candidates.sort(function(a,b){
777 - return (
778 - b.getBoundingClientRect().height-
779 - a.getBoundingClientRect().height
780 - );
781 - });
782 -
783 - return candidates[0];
784 - }
785 -
786 - function rowCandidates(link,card){
787 - var result=[];
788 - var cardRect=
789 - card.getBoundingClientRect();
790 -
791 - var node=link;
792 -
793 - while(node&&node!==card){
794 - if(visible(node)){
795 - var rect=
796 - node.getBoundingClientRect();
797 -
798 - if(
799 - rect.height<=105&&
800 - rect.width>=
801 - cardRect.width*.50&&
802 - rect.width<=
803 - cardRect.width*1.03
804 - ){
805 - result.push(node);
806 - }
807 - }
808 -
809 - node=node.parentElement;
810 - }
811 -
812 - return result;
813 - }
814 -
815 - function chooseOuterRow(
816 - candidates,
817 - link
818 - ){
819 - if(!candidates.length){
820 - return link;
821 - }
822 -
823 - var bordered=
824 - candidates.filter(function(el){
825 - return (
826 - num(
827 - getComputedStyle(el)
828 - .borderLeftWidth
829 - )>=1
830 - );
831 - });
832 -
833 - var pool=
834 - bordered.length
835 - ?bordered
836 - :candidates;
837 -
838 - pool.sort(function(a,b){
839 - var ar=
840 - a.getBoundingClientRect();
841 -
842 - var br=
843 - b.getBoundingClientRect();
844 -
845 - return (
846 - ar.left-br.left||
847 - br.width-ar.width
848 - );
849 - });
850 -
851 - return pool[0]||link;
852 - }
853 -
854 - function applyOverviewPalette(){
855 - if(PAGE_KIND!=="overview"){
856 - return [];
857 - }
858 -
859 - var headers=
860 - smallestThemeHeaders()
861 - .map(function(el){
862 - return {
863 - el:el,
864 - theme:
865 - themeFor(
866 - el.textContent
867 - ),
868 - card:
869 - findOverviewCard(
870 - el
871 - )
872 - };
873 - })
874 - .filter(function(row){
875 - return !!row.card;
876 - });
877 -
878 - var unique=[];
879 - var seenHeaders=new Set();
880 -
881 - headers.forEach(function(row){
882 - var key=
883 - row.theme.name+
884 - "|"+
885 - Math.round(
886 - row.card
887 - .getBoundingClientRect()
888 - .left
889 - )+
890 - "|"+
891 - Math.round(
892 - row.el
893 - .getBoundingClientRect()
894 - .top
895 - );
896 -
897 - if(!seenHeaders.has(key)){
898 - seenHeaders.add(key);
899 - unique.push(row);
900 - }
901 - });
902 -
903 - unique.forEach(function(row){
904 - var headerRect=
905 - row.el
906 - .getBoundingClientRect();
907 -
908 - row.el.style.setProperty(
909 - "background",
910 - row.theme.bg,
911 - "important"
912 - );
913 -
914 - row.el.style.setProperty(
915 - "color",
916 - row.theme.text,
917 - "important"
918 - );
919 -
920 - row.el.style.setProperty(
921 - "text-align",
922 - "left",
923 - "important"
924 - );
925 -
926 - row.el.style.setProperty(
927 - "word-spacing",
928 - "normal",
929 - "important"
930 - );
931 -
932 - var later=
933 - unique
934 - .filter(function(other){
935 - return (
936 - other.card===row.card&&
937 - other.el
938 - .getBoundingClientRect()
939 - .top>
940 - headerRect.top+2
941 - );
942 - })
943 - .sort(function(a,b){
944 - return (
945 - a.el
946 - .getBoundingClientRect()
947 - .top-
948 - b.el
949 - .getBoundingClientRect()
950 - .top
951 - );
952 - });
953 -
954 - var stopTop=
955 - later.length
956 - ?later[0].el
957 - .getBoundingClientRect()
958 - .top
959 - :Infinity;
960 -
961 - Array.from(
962 - row.card.querySelectorAll("a")
963 - ).forEach(function(link){
964 - if(!visible(link))return;
965 -
966 - var rect=
967 - link.getBoundingClientRect();
968 -
969 - if(
970 - rect.top<=
971 - headerRect.bottom-2||
972 - rect.top>=
973 - stopTop-2
974 - ){
975 - return;
976 - }
977 -
978 - var candidates=
979 - rowCandidates(
980 - link,
981 - row.card
982 - );
983 -
984 - var target=
985 - chooseOuterRow(
986 - candidates,
987 - link
988 - );
989 -
990 - candidates.forEach(function(el){
991 - el.style.setProperty(
992 - "border-left",
993 - "0 solid transparent",
994 - "important"
995 - );
996 - });
997 -
998 - target.style.setProperty(
999 - "border-left",
1000 - "3px solid "+
1001 - row.theme.accent,
1002 - "important"
1003 - );
1004 -
1005 - target.style.setProperty(
1006 - "box-sizing",
1007 - "border-box",
1008 - "important"
1009 - );
1010 - });
1011 - });
1012 -
1013 - return unique;
1014 - }
1015 -
1016 - /* =======================================================
1017 - OVERVIEW CARD HEIGHT + FIRST THEMATIC ROW
1018 - ======================================================= */
1019 -
1020 - function alignOverviewCards(headers){
1021 - if(
1022 - PAGE_KIND!=="overview"||
1023 - window.innerWidth<=MOBILE_MAX
1024 - ){
1025 - return;
1026 - }
1027 -
1028 - var cards=[];
1029 - var seen=new Set();
1030 -
1031 - headers.forEach(function(row){
1032 - if(!seen.has(row.card)){
1033 - seen.add(row.card);
1034 - cards.push(row.card);
1035 - }
1036 - });
1037 -
1038 - if(cards.length<2){
1039 - return;
1040 - }
1041 -
1042 - // Group cards by actual top position.
1043 - var groups=[];
1044 -
1045 - cards.forEach(function(card){
1046 - var top=
1047 - card.getBoundingClientRect().top;
1048 -
1049 - var group=null;
1050 -
1051 - for(var i=0;i<groups.length;i++){
1052 - if(
1053 - Math.abs(
1054 - groups[i].top-top
1055 - )<=ROW_TOLERANCE
1056 - ){
1057 - group=groups[i];
1058 - break;
1059 - }
1060 - }
1061 -
1062 - if(!group){
1063 - group={
1064 - top:top,
1065 - cards:[]
1066 - };
1067 - groups.push(group);
1068 - }
1069 -
1070 - group.cards.push(card);
1071 - });
1072 -
1073 - groups.forEach(function(group){
1074 - if(group.cards.length<2){
1075 - return;
1076 - }
1077 -
1078 - var firstHeaders=
1079 - group.cards.map(function(card){
1080 - var candidates=
1081 - headers
1082 - .filter(function(row){
1083 - return row.card===card;
1084 - })
1085 - .sort(function(a,b){
1086 - return (
1087 - a.el
1088 - .getBoundingClientRect()
1089 - .top-
1090 - b.el
1091 - .getBoundingClientRect()
1092 - .top
1093 - );
1094 - });
1095 -
1096 - return candidates.length
1097 - ?candidates[0]
1098 - :null;
1099 - });
1100 -
1101 - if(
1102 - !firstHeaders.some(function(row){
1103 - return !row;
1104 - })
1105 - ){
1106 - var targetTop=
1107 - Math.max.apply(
1108 - Math,
1109 - firstHeaders.map(function(row){
1110 - return (
1111 - row.el
1112 - .getBoundingClientRect()
1113 - .top-
1114 - row.card
1115 - .getBoundingClientRect()
1116 - .top
1117 - );
1118 - })
1119 - );
1120 -
1121 - firstHeaders.forEach(function(row){
1122 - var relativeTop=
1123 - row.el
1124 - .getBoundingClientRect()
1125 - .top-
1126 - row.card
1127 - .getBoundingClientRect()
1128 - .top;
1129 -
1130 - var delta=
1131 - targetTop-relativeTop;
1132 -
1133 - if(delta>1){
1134 - saveStyle(
1135 - row.el,
1136 - originalMargin,
1137 - "margin-top"
1138 - );
1139 -
1140 - var current=
1141 - num(
1142 - getComputedStyle(
1143 - row.el
1144 - ).marginTop
1145 - );
1146 -
1147 - row.el.style.setProperty(
1148 - "margin-top",
1149 - (
1150 - current+delta
1151 - )+"px"
1152 - );
1153 -
1154 - row.el.setAttribute(
1155 - "data-sn-master-first-row",
1156 - "1"
1157 - );
1158 -
1159 - managedMargin.add(
1160 - row.el
1161 - );
1162 - }
1163 - });
1164 - }
1165 -
1166 - var maxHeight=0;
1167 -
1168 - group.cards.forEach(function(card){
1169 - maxHeight=
1170 - Math.max(
1171 - maxHeight,
1172 - card
1173 - .getBoundingClientRect()
1174 - .height
1175 - );
1176 - });
1177 -
1178 - maxHeight=
1179 - Math.ceil(maxHeight);
1180 -
1181 - group.cards.forEach(function(card){
1182 - saveStyle(
1183 - card,
1184 - originalHeight,
1185 - "min-height"
1186 - );
1187 -
1188 - card.style.setProperty(
1189 - "min-height",
1190 - maxHeight+"px"
1191 - );
1192 -
1193 - card.setAttribute(
1194 - "data-sn-master-equal-height",
1195 - "1"
1196 - );
1197 -
1198 - managedHeight.add(
1199 - card
1200 - );
1201 - });
1202 - });
1203 - }
1204 -
1205 - /* =======================================================
1206 - DETAIL GRID EQUAL HEIGHT, DESKTOP ONLY
1207 - ======================================================= */
1208 -
1209 - function equaliseDetailGrids(){
1210 - if(
1211 - PAGE_KIND!=="detail"||
1212 - window.innerWidth<=MOBILE_MAX
1213 - ){
1214 - return;
1215 - }
1216 -
1217 - var selectors=[
1218 - ".arsn-grid",
1219 - ".arsn-grid-2",
1220 - ".arsn-grid-3",
1221 - ".dmp-grid",
1222 - ".ido-grid",
1223 - ".pp-grid"
1224 - ];
1225 -
1226 - selectors.forEach(function(selector){
1227 - Array.from(
1228 - root.querySelectorAll(selector)
1229 - ).forEach(function(grid){
1230 - var children=
1231 - Array.from(
1232 - grid.children||[]
1233 - ).filter(visible);
1234 -
1235 - if(children.length<2){
1236 - return;
1237 - }
1238 -
1239 - var groups=[];
1240 -
1241 - children.forEach(function(child){
1242 - var top=
1243 - child
1244 - .getBoundingClientRect()
1245 - .top;
1246 -
1247 - var group=null;
1248 -
1249 - for(var i=0;i<groups.length;i++){
1250 - if(
1251 - Math.abs(
1252 - groups[i].top-top
1253 - )<=ROW_TOLERANCE
1254 - ){
1255 - group=groups[i];
1256 - break;
1257 - }
1258 - }
1259 -
1260 - if(!group){
1261 - group={
1262 - top:top,
1263 - items:[]
1264 - };
1265 - groups.push(group);
1266 - }
1267 -
1268 - group.items.push(child);
1269 - });
1270 -
1271 - groups.forEach(function(group){
1272 - if(group.items.length<2){
1273 - return;
1274 - }
1275 -
1276 - var maxHeight=0;
1277 -
1278 - group.items.forEach(function(item){
1279 - maxHeight=
1280 - Math.max(
1281 - maxHeight,
1282 - item
1283 - .getBoundingClientRect()
1284 - .height
1285 - );
1286 - });
1287 -
1288 - maxHeight=
1289 - Math.ceil(maxHeight);
1290 -
1291 - group.items.forEach(function(item){
1292 - saveStyle(
1293 - item,
1294 - originalHeight,
1295 - "min-height"
1296 - );
1297 -
1298 - item.style.setProperty(
1299 - "min-height",
1300 - maxHeight+"px"
1301 - );
1302 -
1303 - item.setAttribute(
1304 - "data-sn-master-equal-height",
1305 - "1"
1306 - );
1307 -
1308 - managedHeight.add(item);
1309 - });
1310 - });
1311 - });
1312 - });
1313 - }
1314 -
1315 - /* =======================================================
1316 - RUN / RESPONSIVE SCHEDULING
1317 - ======================================================= */
1318 -
1319 - function run(){
1320 - if(running)return;
1321 -
1322 - running=true;
1323 -
1324 - try{
1325 - resetRuntime();
1326 - applyPlaceholderBadge();
1327 - propagateDetailAccents();
1328 -
1329 - var headers=
1330 - applyOverviewPalette();
1331 -
1332 - if(
1333 - window.innerWidth>
1334 - MOBILE_MAX
1335 - ){
1336 - alignOverviewCards(
1337 - headers
1338 - );
1339 -
1340 - equaliseDetailGrids();
1341 - }
1342 - }finally{
1343 - running=false;
1344 - }
1345 - }
1346 -
1347 - function onResize(){
1348 - if(resizeTimer){
1349 - clearTimeout(
1350 - resizeTimer
1351 - );
1352 - }
1353 -
1354 - resizeTimer=
1355 - setTimeout(
1356 - function(){
1357 - resizeTimer=0;
1358 - run();
1359 - },
1360 - RESIZE_DEBOUNCE
1361 - );
1362 - }
1363 -
1364 - async function waitForReady(){
1365 - if(
1366 - document.readyState!=="complete"
1367 - ){
1368 - await new Promise(function(resolve){
1369 - window.addEventListener(
1370 - "load",
1371 - resolve,
1372 - {once:true}
1373 - );
1374 - });
1375 - }
1376 -
1377 - if(
1378 - document.fonts&&
1379 - document.fonts.ready
1380 - ){
1381 - try{
1382 - await document.fonts.ready;
1383 - }catch(error){}
1384 - }
1385 -
1386 - var images=
1387 - Array.from(
1388 - root.querySelectorAll("img")
1389 - );
1390 -
1391 - await Promise.all(
1392 - images.map(function(img){
1393 - if(img.complete){
1394 - return Promise.resolve();
1395 - }
1396 -
1397 - return new Promise(function(resolve){
1398 - var done=function(){
1399 - resolve();
1400 - };
1401 -
1402 - img.addEventListener(
1403 - "load",
1404 - done,
1405 - {once:true}
1406 - );
1407 -
1408 - img.addEventListener(
1409 - "error",
1410 - done,
1411 - {once:true}
1412 - );
1413 - });
1414 - })
1415 - );
1416 -
1417 - run();
1418 - }
1419 -
1420 - window.addEventListener(
1421 - "resize",
1422 - onResize,
1423 - {passive:true}
1424 - );
1425 -
1426 - waitForReady();
1427 -})();
1428 -</script>
1429 -
1430 -<!-- SN_SERVICE_NAVIGATOR_MASTER_STYLE_END -->
1431 -{{/html}}
1432 -
XWiki.XWikiRights[0]
allow
... ... @@ -1,1 +1,0 @@
1 -Allow
levels
... ... @@ -1,1 +1,0 @@
1 -view
users
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
XWiki.XWikiRights[1]
allow
... ... @@ -1,1 +1,0 @@
1 -Allow
groups
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiAllGroup
levels
... ... @@ -1,1 +1,0 @@
1 -view
XWiki.XWikiRights[2]
allow
... ... @@ -1,1 +1,0 @@
1 -Allow
groups
... ... @@ -1,1 +1,0 @@
1 -XWiki.OE-0000211
levels
... ... @@ -1,1 +1,0 @@
1 -view,comment,edit,script
XWiki.XWikiRights[3]
allow
... ... @@ -1,1 +1,0 @@
1 -Allow
levels
... ... @@ -1,1 +1,0 @@
1 -view,comment,edit,script
users
... ... @@ -1,1 +1,0 @@
1 -XWiki.p0010210