0 Votes

Wiki source code of Public Web Site

Version 3.3 by Alex Cotiugă on 2025/11/24 07:19

Hide last authors
Alex Cotiugă 1.2 1 {{velocity}}
Alex Cotiugă 3.2 2 #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
Alex Cotiugă 1.2 3 {{html clean="false"}}
4 ## HERO
5 <section class="hero hero-centered" aria-labelledby="hero-title">
6 <div class="container hero-inner">
7 <h1 id="hero-title">Professional XWiki solutions, from setup to long-term stability</h1>
8 <p class="lead">Need your XWiki upgraded, secured, or improved? Let’s make it happen.</p>
9 <div class="hero-cta">
10 <a class="btn btn-primary" href="#contact" aria-label="Schedule a call with Agnease">
11 Request a consultation
12 </a>
13 </div>
14 <ul class="benefits">
15 <li>Smooth upgrades</li>
16 <li>Reliable support plans</li>
17 <li>Custom integrations</li>
18 <li>Secure, optimized platforms</li>
19 </ul>
20 </div>
21 </section>
22 ## WHY CHOOSE
23 #set ($whySectionData = [{
24 'title': 'Stability & security',
25 'icon': 'shield',
26 'content': 'Proven upgrade steps, rollback safety, and proactive hardening keep your wiki reliable.'
27 },{
28 'title': 'Predictable delivery',
29 'icon': 'check-square-o',
30 'content': 'Clear scope, defined steps, and documented results to avoid surprises.'
31 },{
32 'title': 'Clean integrations',
33 'icon': 'link',
34 'content': 'Maintainable SSO, API, and system connections tailored to your environment.'
35 },{
36 'title': 'Long-term support',
37 'icon': 'life-ring',
38 'content': 'Guaranteed response times, regular checks, and fast assistance when needed.'
39 }])
40 <section aria-labelledby="why-title">
41 <div class="container">
42 <h2 id="why-title">Why choose Agnease</h2>
43 <p class="lead">10+ years of XWiki expertise with structured delivery and lasting collaboration</p>
44 <div class="widgets">
45 #foreach ($entry in $whySectionData)
46 <article class="widget">
47 <div class="icon" aria-hidden="true">
48 <i class="fa fa-$entry.icon"></i>
49 <h4>$entry.title</h4>
50 </div>
51 <p>$entry.content</p>
52 </article>
53 #end
54 </div>
55 </div>
56 </section>
57 ## SERVICES
58 #set ($servicesSectionData = [{
59 'title': 'Upgrades',
60 'icon': 'refresh',
61 'content': 'Stay current with the latest XWiki LTS and keep your instance reliable.',
62 'items': [
63 'Audit setup, extensions, and configurations',
64 'Test upgrades with backups and validation',
65 'Safe production rollout with minimal downtime'
66 ]
67 },{
68 'title': 'Maintenance, Support & Recovery',
69 'icon': 'stethoscope',
70 'content': 'Ensure long-term stability and quick response when issues appear.',
71 'items': [
72 'Monitoring and performance checks',
73 'Security patching, log analysis, triage',
74 'Issue recovery, data repair, hardening'
75 ]
76 },{
77 'title': 'Development & Integrations',
78 'icon': 'cogs',
79 'content': 'Extend and connect XWiki to fit your workflow and systems.',
80 'items': [
81 'Custom apps, macros, automation',
82 'SSO, REST APIs, LDAP, CRM links',
83 'Maintainable extensions for long-term use'
84 ]
85 },{
86 'title': 'Hosting & Deployment',
87 'icon': 'cloud',
88 'content': 'Cloud-ready environments designed for reliability and performance.',
89 'items': [
90 'Containerized deployment and TLS',
91 'Backups, restore strategy, observability',
92 'Optimization and load tuning'
93 ]
94 },{
95 'title': 'Migrations to XWiki',
96 'icon': 'exchange',
97 'content': 'Move from Confluence, SharePoint, or MediaWiki to XWiki with full data integrity and structure.',
98 'items': [
99 'Preserve hierarchy, attachments, and permissions',
100 'Convert macros, categories, and metadata for XWiki',
101 'Redirect old URLs and maintain SEO consistency'
102 ]
103 }])
104 <section class="services" aria-labelledby="services-title">
105 <div class="container">
106 <h2 id="services-title">Services</h2>
107 <p class="lead">
108 All the XWiki services you need, delivered with precision and care
109 </p>
Alex Cotiugă 1.1 110
Alex Cotiugă 1.2 111 #set ($servicesSize = $servicesSectionData.size())
112 <div class="services-grid">
113 #foreach ($entry in $servicesSectionData)
114 #set ($classes = "service")
115 ## If this is the last item AND the total number is odd, center it
116 #if ($foreach.count == $servicesSize && ($servicesSize % 2) == 1)
117 #set ($classes = "service service-center")
118 #end
Alex Cotiugă 1.1 119
Alex Cotiugă 1.2 120 <article class="$classes">
121 <div class="service-icon">
122 <i class="fa fa-$entry.icon" aria-hidden="true"></i>
123 </div>
124 <div class="service-body">
125 <h4>$entry.title</h4>
126 <p>$entry.content</p>
127 <ul>
128 #foreach ($item in $entry.items)
129 <li>$item</li>
130 #end
131 </ul>
132 </div>
133 </article>
134 #end
135 </div>
136 </div>
137 </section>
138 ## CTA INLINE
139 <section id="contact" class="cta-section">
140 <div class="container">
141 <p class="text-center contact-inline">
142 Need help with your XWiki? <a href="mailto:alex@agnease.com">Contact Agnease</a>.
143 </p>
144 </div>
145 </section>
146 {{/html}}
147 {{/velocity}}