Changes for page Home
Last modified by Angela Warkentin on 2025/07/23 11:35
From version 3.1
edited by Judith Steinfeld
on 2024/07/23 15:58
on 2024/07/23 15:58
Change comment:
There is no comment for this version
To version 106.1
edited by Judith Steinfeld
on 2025/03/26 09:32
on 2025/03/26 09:32
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 4 added, 0 removed)
-
Objects (0 modified, 3 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,40 +1,65 @@ 1 -== Welcometothe new ErUM-Data wiki==1 +=== === 2 2 3 -XWiki is the best tool to organize your knowledge. A //wiki// is organized in a hierarchy of //pages//. You can create multiple wikis, each with its own set of pages. 3 +{{box cssClass="floatinginfobox" image="https://wiki.erumdatahub.de/bin/download/Main/WebHome/logo_horizontal_23_neu.png?width=200"}} 4 +{{displayIcon name="application_view_tile"/}} [[Events (Indico)>>https://indico.desy.de/category/984/]] 5 +{{displayIcon name="email"/}} [[Mailing Lists>>doc:DIG-UM.Mailing Lists.WebHome]] 6 +{{displayIcon name="world"/}} [[Website>>https://erumdatahub.de/]] 4 4 5 -XWiki can be used as a knowledge base (support, documentation, sales, etc.), for collaborative workspaces or even as a complete intranet. 8 +//{{icon name="info-circle"/}}//ErUM =** Er**forschung von** U**niversum & **M**aterie 9 +(Research on Universe and Matter) 6 6 7 -== The basics == 11 + 12 +{{/box}} 8 8 9 - Tomakethe most out of your wiki,log-inand:14 +== **Welcome** == 10 10 11 - Use the {{displayIcon name="pencil"/}}buttonaboveto //edit// this page and start customizing your wiki to your needs.16 +==== ==== 12 12 13 - Usethe{{displayIcon name="add"/}}button aboveto//add//morepagestoyourwikiandcreatethe//hierarchy//thatbestorganizesyour content.18 +==== **Welcome to the new ErUM-Data-Hub Wiki - a place for all ErUM-Data communities, to interact and share information with one another.** ==== 14 14 15 - Use the{{displayIconname="home"/}}breadcrumbs locatedabovethetitleto//navigate//inside yourpages.It's easy togetlostina big wiki without20 +**We invite you to create an account and contribute improvements and contents yourself. For help, see this [[video>>attach:registration.mp4]]. ** 16 16 17 -You can also use the [[Sandbox>>Sandbox.WebHome]] for more demo content and generally a place to experiment with your wiki's features. 18 18 19 - {{box}}Learnmore onhowtouseXWikiwith the[[GettingStartedGuide>>https://www.xwiki.org/xwiki/bin/view/Documentation/UserGuide/GettingStarted/WebHome]].{{/box}}23 +This wiki was launched and released for use in January 2025. Please note that further development is an ongoing effort. Further functions, content and interaction options are planned. **This wiki is for you, the ErUM-Data community**, and is intended to meet your needs. For optimal functionality, we are dependent on your input. We are always happy to receive feedback, suggestions and requests, which you are welcome to send to angela.warkentin@erumdatahub.de. 20 20 21 -(% class="row" %) 22 -((( 23 -(% class="col-xs-12 col-sm-6" %) 24 -((( 25 -== Extend your wiki == 25 +==== ==== 26 26 27 - Toextendthe power and functionalitiesof yourwiki withthe features that//you//need,head over tothe[[ExtensionManager>>XWiki.XWikiPreferences||queryString="editor=globaladmin§ion=XWiki.Extensions"]]whereyoucansearchfor andinstallextensions.27 +{{icon name="question-circle"}}{{/icon}}Further information, answers to all questions you may have regarding the ErUM-Data-Hub and more about our aims and work can be found on our [[website>>https://erumdatahub.de/]]. 28 28 29 -To browse through the 900+ community contributed extensions available for XWiki, head over to the [[Extensions Repository>>https://extensions.xwiki.org]]. 30 -))) 31 31 32 -(% class="col-xs-12 col-sm-6" %) 33 -((( 34 -== Create your application == 30 +[[image:Gewinnspiel Wiki-1.png||height="573" width="860"]] 35 35 36 -Go beyond the available extensions and define the //structure// of your data based on //your// needs, creating //your// own applications with [[App Within Minutes>>AppWithinMinutes]] (AWM). 37 37 38 -AWM will take care of making it easy for you and your users to create and manage the data. 33 +== What is new? == 34 + 35 +Have a look at our new comprehensive material collection, the People in ErUM-Data list and Industry meets ErUM-Data: 36 + 37 +* [[Material collection]] of learning and teaching materials, and 38 +* [[People in ErUM-Data]] list of research groups and contact information of people who work in ErUM-Data 39 +* [[Industry meets ErUM-Data >>doc:Industry meets ErUM-Data.WebHome]]collection of various groups in industry that are adjacent or in cooperation with ErUM-Data science 40 + 41 += = 42 + 43 +== ErUM-Data Calendar == 44 + 45 +{{velocity output="false"}} 46 +$xwiki.ssx.use("Calendar.FullCalendar") 47 +$xwiki.jsx.use("Calendar.FullCalendar", {'defer': false}) 48 +$xwiki.jsx.use("Main.WebHome", {'defer': false, 'minify': false}) 49 +{{/velocity}} 50 + 51 +(% id="calendarCustom" %) 52 +((( 53 + 39 39 ))) 40 -))) 55 + 56 += = 57 + 58 +{{velocity}} 59 +#set ($showcomments = false) 60 +#set ($showannotations = false) 61 +#set ($showattachments = $hasAdmin) 62 +#set ($showhistory = $hasAdmin) 63 +#set ($showinformation = $hasAdmin) 64 +#set ($displayContentFooter = false) 65 +{{/velocity}}
- Gewinnspiel Wiki-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.JudithSteinfeld - Size
-
... ... @@ -1,0 +1,1 @@ 1 +22.5 MB - Content
- Logos Wiki.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.JudithSteinfeld - Size
-
... ... @@ -1,0 +1,1 @@ 1 +3.7 KB - Content
- logo_horizontal_23_neu.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.JudithSteinfeld - Size
-
... ... @@ -1,0 +1,1 @@ 1 +68.3 KB - Content
- registration.mp4
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.JanBurger - Size
-
... ... @@ -1,0 +1,1 @@ 1 +1.1 MB - Content
- XWiki.JavaScriptExtension[0]
-
- Caching policy
-
... ... @@ -1,0 +1,1 @@ 1 +default - Code
-
... ... @@ -1,0 +1,178 @@ 1 +require(["jquery", "fullcalendar"], function (jq) { 2 + const FC = jq.fullCalendar; 3 + const E = (tag, ...childs) => { 4 + const attrs = childs[0]?.constructor === Object ? childs.shift() : {}; 5 + const ret = Element(tag, attrs); 6 + ret.append(...childs.flat().filter(e => e)); 7 + return ret; 8 + }; 9 + const range = num => Array(num).fill().map((_, i) => i); 10 + FC.defineView('monthCols', { 11 + class: FC.View.extend({ 12 + renderEvents(events) { 13 + console.debug("renderEvents", events); 14 + debugger; 15 + try { 16 + this._renderFun(events); 17 + } catch (e) { 18 + console.exception(e); 19 + } 20 + }, 21 + _renderFun(events) { 22 + const cf = this.opt("columnFormat") ?? "MMM"; 23 + const rf = this.opt("rowFormat") ?? "D"; 24 + const df = this.opt("cellFormat") ?? "dd"; 25 + const wf = this.opt("weekFormat") ?? "w"; 26 + const colspan = (df || wf) ? (1 + !!df + !!wf) : null; 27 + 28 + const ys = this.start; 29 + const ye = this.end; 30 + const yv = events.slice().sort((a,b) => a.start.diff(b.start) || a.end.diff(b.end)); 31 + 32 + const cols = []; 33 + const head = []; 34 + const days = Array(31).fill().map(_ => []); 35 + 36 + if (rf) { 37 + cols.push(E("col", {class: "fc-fitCol"})); 38 + head.push(E("th")); 39 + days.forEach((arr, day) => arr.push(E("th", {class: "fc-axis"}, ys.clone().add({day}).format(rf)))); 40 + } 41 + 42 + for (const month of range(12)) { 43 + const ms = ys.clone().add({month}) 44 + const me = ms.clone().add({month: 1}); 45 + const md = me.diff(ms, "days"); 46 + const mv = yv.filter(t => ms.isBefore(t.end) && t.start.isBefore(me)); 47 + 48 + if (df) cols.push(E("col", {class: "fc-fitCol"})); 49 + cols.push(E("col")); 50 + if (wf) cols.push(E("col", {class: "fc-fitCol"})); 51 + head.push(E("th", {colspan}, ms.format(cf))); 52 + 53 + const bgc = new Array(md); 54 + const bgt = new Array(md); 55 + let scc = []; 56 + let scu = []; 57 + const scs = col => el => { 58 + const step = 100 / scc.length; 59 + el.style.left = `${col * step}%`; 60 + el.style.width = `${step}%`; 61 + }; 62 + 63 + for (const day of range(31)) { 64 + if (day < md) { 65 + const ds = ms.clone().add({day}); 66 + const de = ds.clone().add({day: 1}); 67 + 68 + const oc = []; 69 + while(mv[0]?.start.isBefore(de)) { 70 + const v = mv.shift(); 71 + const d = Math.ceil(v.end.max(me).diff(ds, "days", true)); 72 + if (v.rendering == "background") { 73 + if (v.color) 74 + for (const i of range(d)) { 75 + bgc[day + i] = v.color; 76 + bgt[day + i] = v.title; 77 + } 78 + } else { 79 + const e = E("div", E("a", {href: v.url}, v.title)); 80 + e.style.height = `${100 * d}%`; 81 + if (v.color) e.style.borderColor = e.style.backgroundColor = v.color; 82 + if (v.textColor) e.style.color = v.textColor; 83 + if (v.start.isBefore(ms)) e.classList.add("fc-cut-start"); 84 + if (me.isBefore(v.end)) e.classList.add("fc-cut-end"); 85 + oc.push(e); 86 + const i = scu.indexOf(0); 87 + if (i < 0) { 88 + scc.push([e]); 89 + scu.push(d); 90 + scc.forEach((els, col) => els.forEach(scs(col))); 91 + } else { 92 + scc[i].push(e); 93 + scu[i] = d; 94 + scs(i)(e); 95 + } 96 + } 97 + } 98 + 99 + scu = scu.map(u => Math.max(0, u - 1)); 100 + if (!scu.some()) {scc = []; scu = [];} 101 + 102 + const style = bgc[day] && `background-color: ${bgc[day]};`; 103 + const dc = this.getDayClasses(ds); 104 + const da = (sub, title = bgt[day] ?? null) => ({class: dc.concat(sub).join(" "), style, title}); 105 + if (df) days[day].push(E("td", da("fc-dayVal", ds.format("D")), ds.format(df))); 106 + days[day].push(E("td", da("fc-mainVal"), oc)); 107 + if (wf) days[day].push(E("td", da("fc-weekVal"), ds.weekday() ? "" : ds.format(wf))); 108 + } else 109 + days[day].push(E("td", {colspan})); 110 + } 111 + } 112 + 113 + 114 + this.el.addClass("fc-month-cols-view").html( 115 + E( 116 + "table", 117 + E("colgroup", cols), 118 + E("thead", {class: "fc-head"}, E("tr", head)), 119 + E("tbody", {class: "fc-body"}, days.map(d => E("tr", d))), 120 + ) 121 + ); 122 + } 123 + }), 124 + duration: { year: 1 }, 125 + }); 126 + 127 + const init = () => { 128 + jq("#calendarCustom").fullCalendar({ 129 + views: { 130 + month: { 131 + columnFormat: "ddd", 132 + titleFormat: "MMMM YYYY", 133 + buttonText: "month", 134 + }, 135 + monthCols: { 136 + columnFormat: "MMM", 137 + weekFormat: "W", 138 + titleFormat: "YYYY", 139 + buttonText: "year", 140 + }, 141 + }, 142 + timeFormat: "h(:mm)t", 143 + axisFormat: "h(:mm)t", 144 + allDayText: "All day", 145 + eventSources: [ 146 + "/bin/get/MoccaCalendar/Code/JSONService?xpage=plain&outputSyntax=plain&calendarDoc=Main.WebHome&filter=wiki&classname=MoccaCalendar.MoccaCalendarEventClass&startfield=startDate&endfield=endDate&durationfield=&xpage=plain&outputSyntax=plain&classname=&startfield=datetime&endfield=&durationfield=&extraFields=", 147 + ], 148 + header: { 149 + left: "prev,next today", 150 + center: "title", 151 + right: "month,monthCols", 152 + }, 153 + timeFormat: "H:mm", 154 + defaultView: "monthCols", 155 + firstDay: "1", 156 + minTime: "8:00", 157 + maxTime: "23:00", 158 + validRange: { 159 + start: '2022-01-01', 160 + end: '2027-01-01', 161 + }, 162 + editable: false, 163 + eventDataTransform: event => { 164 + const cal = event.url.split("/")[4]; 165 + if (cal === "Holidays" || cal == "Blocked" || cal.includes("Conference")) event.rendering = "background"; 166 + event.viewUrl = event.url; 167 + event.url = event.html.match(/<span class="wikiexternallink"><a href="([^"]+)">\1</)?.[1] ?? event.url; 168 + return event; 169 + }, 170 + eventRender: function (event, element) { 171 + // Render augmentation hook, use: event.html 172 + }, 173 + }); 174 + }; 175 + 176 + jq(document).ready(init); 177 +}); 178 + - Name
-
... ... @@ -1,0 +1,1 @@ 1 +Customized Calendar View - Parse content
-
... ... @@ -1,0 +1,1 @@ 1 +No - Use this extension
-
... ... @@ -1,0 +1,1 @@ 1 +onDemand
- XWiki.StyleSheetExtension[0]
-
- Caching policy
-
... ... @@ -1,0 +1,1 @@ 1 +default - Code
-
... ... @@ -1,0 +1,74 @@ 1 +@weekend-color: #f5f5f5; 2 +#calendarCustom.fc { 3 + td.fc-sat, td.fc-sun { 4 + background-color: @weekend-color; 5 + } 6 + .fc-month-cols-view > table { 7 + table-layout: auto; 8 + td, th { 9 + border-width: 0px; 10 + } 11 + col.fc-fitCol { 12 + width: 1px; 13 + } 14 + tbody.fc-body { 15 + td { 16 + &.fc-sat, &.fc-sun { 17 + background-color: @weekend-color; 18 + &.fc-dayVal { 19 + background-color: @weekend-color !important; 20 + } 21 + } 22 + } 23 + tr:nth-child(4n+3) > * { 24 + border-top: 1px solid #ddd; 25 + } 26 + tr:nth-child(4n+5) > * { 27 + border-top: 1px solid #bbb; 28 + } 29 + tr:hover > th { 30 + background-color: #ccc; 31 + } 32 + td.fc-mainVal { 33 + position: relative; 34 + & > div { 35 + z-index: 5; 36 + position: absolute; 37 + width: 100%; 38 + overflow: hidden; 39 + border-radius: 4px; 40 + &.fc-cut-start { 41 + border-top-left-radius: 0px; 42 + border-top-right-radius: 0px; 43 + } 44 + &.fc-cut-end { 45 + border-bottom-left-radius: 0px; 46 + border-bottom-right-radius: 0px; 47 + } 48 + &:hover { 49 + width: auto !important; 50 + max-width: 10vw; 51 + height: auto !important; 52 + z-index: 10; 53 + } 54 + & > a { 55 + display: block; 56 + color: inherit; 57 + background-color: inherit; 58 + } 59 + } 60 + } 61 + td.fc-dayVal, td.fc-weekVal { 62 + color: #7f95aa; 63 + cursor: default; 64 + } 65 + td.fc-dayVal { 66 + font-size: small; 67 + } 68 + td.fc-weekVal { 69 + font-size: smaller; 70 + text-align: right; 71 + } 72 + } 73 + } 74 +} - Content Type
-
... ... @@ -1,0 +1,1 @@ 1 +LESS - Parse content
-
... ... @@ -1,0 +1,1 @@ 1 +No - Use this extension
-
... ... @@ -1,0 +1,1 @@ 1 +currentPage
- XWiki.XWikiRights[1]
-
- Allow/Deny
-
... ... @@ -1,0 +1,1 @@ 1 +Deny - Groups
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.XWikiAllGroup - Levels
-
... ... @@ -1,0 +1,1 @@ 1 +comment