Changes for page Pricing
Last modified by Alex Cotiuga on 2026/07/13 06:55
From version 1.15
edited by Alex Cotiuga
on 2026/07/10 04:01
on 2026/07/10 04:01
Change comment:
There is no comment for this version
To version 1.3
edited by Alex Cotiuga
on 2026/07/10 03:36
on 2026/07/10 03:36
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -7,23 +7,23 @@ 7 7 'icon': 'search', 8 8 'title': 'Review & diagnose', 9 9 'price': 'From €290', 10 - 'description': 'For teams that need to understand risks, issues or the current XWikistate before making changes.',10 + 'description': 'For teams that need to understand risks, issues or the current state before making changes.', 11 11 'items': [ 12 - 'Health checks',13 - 'Upgrade readinessreviews',14 - 'Authentication reviews',15 - 'Urgent troubleshooting'12 + 'XWiki Health Check', 13 + 'Upgrade Readiness Review', 14 + 'Authentication Review', 15 + 'Urgent Troubleshooting' 16 16 ], 17 17 'cta': 'Start with a review' 18 18 },{ 19 19 'icon': 'cogs', 20 - 'title': 'Implement c hanges',20 + 'title': 'Implement & configure', 21 21 'price': 'From €490', 22 22 'description': 'For teams ready to make a specific XWiki change, upgrade or authentication improvement.', 23 23 'items': [ 24 - 'XWiki LTS upgrades',25 - 'MFA installation',26 - 'OIDC / Entra ID setup',24 + 'Standard XWiki LTS Upgrade', 25 + 'MFA Installation', 26 + 'OIDC / Microsoft Entra ID Setup', 27 27 'LDAP / Active Directory work' 28 28 ], 29 29 'cta': 'Request implementation quote' ... ... @@ -56,7 +56,7 @@ 56 56 },{ 57 57 'service': 'Urgent XWiki Troubleshooting', 58 58 'price': 'From €250', 59 - 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.' 59 + 'description': 'Live troubleshooting session for blocking issues, errors, failed upgrades or production problems.' 60 60 },{ 61 61 'service': 'Standard XWiki LTS Upgrade', 62 62 'price': 'From €790', ... ... @@ -64,7 +64,7 @@ 64 64 },{ 65 65 'service': 'XWiki MFA Installation & Configuration', 66 66 'price': 'From €490', 67 - 'description': 'MFA installation for the standard XWikilogin flow.InSSOenvironments,MFA maybe better enforcedbytheidentity provider.'67 + 'description': 'MFA installation, login flow integration, basic configuration, testing and administrator guidance.' 68 68 },{ 69 69 'service': 'OIDC / Microsoft Entra ID Setup', 70 70 'price': 'From €590', ... ... @@ -83,6 +83,28 @@ 83 83 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.' 84 84 }]) 85 85 86 +#set ($authRows = [{ 87 + 'service': 'XWiki Authentication Review', 88 + 'price': '€290', 89 + 'bestFor': 'Understanding the current login flow, users, groups and access model.' 90 +},{ 91 + 'service': 'OIDC / Microsoft Entra ID Setup', 92 + 'price': 'From €590', 93 + 'bestFor': 'SSO setup with Microsoft Entra ID, Keycloak or another compatible OIDC provider.' 94 +},{ 95 + 'service': 'XWiki MFA Installation', 96 + 'price': 'From €490', 97 + 'bestFor': 'Adding MFA to the standard XWiki login flow.' 98 +},{ 99 + 'service': 'LDAP / Active Directory Review', 100 + 'price': 'From €390', 101 + 'bestFor': 'LDAP or AD login, profile mapping, group mapping and synchronization questions.' 102 +},{ 103 + 'service': 'Advanced Authentication Work', 104 + 'price': 'Quoted after review', 105 + 'bestFor': 'Custom authenticators, container authentication, special redirects or complex wiki farm scenarios.' 106 +}]) 107 + 86 86 #set ($supportPlans = [{ 87 87 'icon': 'leaf', 88 88 'title': 'Essential Support', ... ... @@ -123,23 +123,15 @@ 123 123 'cta': 'Discuss extended support' 124 124 }]) 125 125 126 -#set ($complexProjects = [{ 127 - 'icon': 'sitemap', 128 - 'title': 'Wiki farms', 129 - 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.' 130 -},{ 131 - 'icon': 'exchange', 132 - 'title': 'Migrations', 133 - 'content': 'Content, platform or documentation migrations into a cleaner XWiki structure.' 134 -},{ 135 - 'icon': 'puzzle-piece', 136 - 'title': 'Custom applications', 137 - 'content': 'Workflow applications, structured data, dashboards and internal business tools.' 138 -},{ 139 - 'icon': 'tachometer', 140 - 'title': 'Stability work', 141 - 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.' 142 -}]) 148 +#set ($complexProjects = [ 149 + 'Wiki farm restructuring', 150 + 'Major XWiki LTS upgrades', 151 + 'Microsoft Entra ID, OIDC, LDAP or SAML integrations', 152 + 'Custom workflow applications', 153 + 'Intranet and knowledge platform development', 154 + 'Performance and stability improvements', 155 + 'Content and platform migrations' 156 +]) 143 143 144 144 #set ($faqItems = [{ 145 145 'question': 'Are these fixed prices?', ... ... @@ -163,202 +163,217 @@ 163 163 164 164 {{html clean="false"}} 165 165 166 -<section class=" hero hero-centered" aria-labelledby="pricing-title">180 +<section class="resource-header" aria-labelledby="hero-title"> 167 167 <div class="container"> 168 - <div class=" hero-inner">182 + <div class="text-center"> 169 169 <div class="hero-kicker"> 170 170 <i class="fa fa-eur" aria-hidden="true"></i> 171 171 XWiki consulting, support and implementation 172 172 </div> 187 + </div> 173 173 174 - <h1 id="pricing-title">XWiki Service Packages</h1>189 + <h1 id="hero-title">XWiki Service Packages</h1> 175 175 176 - <p class="lead"> 177 - Clear starting points for XWiki upgrades, authentication, troubleshooting and long-term support. 178 - </p> 191 + <p class="resource-summary"> 192 + Clear starting points for XWiki upgrades, authentication, troubleshooting and long-term support. 193 + Start with a review, request an implementation quote, or choose a support plan for ongoing XWiki help. 194 + </p> 179 179 180 - <ul class="benefits"> 181 - <li>Specialized XWiki consulting</li> 182 - <li>Practical starting prices</li> 183 - <li>Fixed quotes for complex work</li> 184 - </ul> 185 - 186 - <div id="hero-cta"> 187 - <a class="btn btn-primary" href="$contactURL">Request a quote</a> 188 - <a class="btn btn-secondary" href="#starting-points">Compare options</a> 189 - </div> 196 + <div id="hero-cta"> 197 + <a class="btn btn-primary" href="$contactURL">Request a quote</a> 198 + <a class="btn btn-secondary" href="#starting-points">Compare starting points</a> 190 190 </div> 191 191 </div> 192 192 </section> 193 193 194 -<section id="starting-points"aria-labelledby="starting-points-title">203 +<section class="resource-page"> 195 195 <div class="container"> 196 - <h2 id="starting-points-title">Choose your starting point</h2> 197 - <p class="section-intro"> 198 - Most XWiki requests fit into one of three paths: review the current setup, implement a defined change, 199 - or set up ongoing support. 200 - </p> 205 + <div class="resource-layout"> 206 + <article class="resource-content services"> 201 201 202 - <div class="pathways"> 203 - #foreach ($entry in $startingPoints) 204 - <article class="pathway-card"> 205 - <div class="card-heading"> 206 - <div class="pathway-icon" aria-hidden="true"> 207 - <i class="fa fa-$entry.icon"></i> 208 - </div> 209 - <h3>$entry.title</h3> 210 - </div> 208 + <div class="resource-note"> 209 + <p> 210 + <strong>Pricing note:</strong> Prices are starting points and exclude VAT where applicable. 211 + Final pricing depends on the XWiki version, installed extensions, customizations, hosting setup, 212 + authentication configuration, wiki farm complexity and required testing. 213 + </p> 214 + </div> 211 211 212 - <p><strong>$entry.price</strong></p> 213 - <p>$entry.description</p> 216 + <h2 id="starting-points">Choose your starting point</h2> 214 214 215 - <ul>216 - #foreach($itemin$entry.items)217 - <li>$item</li>218 - #end219 - </ul>218 + <p> 219 + Most XWiki requests fit into one of three paths: review the current setup, implement a defined change, 220 + or set up ongoing support. This keeps the first step clear without pretending that every XWiki environment 221 + has the same complexity. 222 + </p> 220 220 221 - <div class="card-link"> 222 - <a href="$contactURL">$entry.cta</a> 223 - </div> 224 - </article> 225 - #end 226 - </div> 227 - </div> 228 -</section> 224 + <div class="services-grid"> 225 + #foreach ($entry in $startingPoints) 226 + <article class="service"> 227 + <div class="service-icon" aria-hidden="true"> 228 + <i class="fa fa-$entry.icon"></i> 229 + </div> 230 + <div class="service-body"> 231 + <h4>$entry.title</h4> 232 + <p><strong>$entry.price</strong></p> 233 + <p>$entry.description</p> 234 + <ul> 235 + #foreach ($item in $entry.items) 236 + <li>$item</li> 237 + #end 238 + </ul> 239 + <p><a class="btn btn-primary" href="$contactURL">$entry.cta</a></p> 240 + </div> 241 + </article> 242 + #end 243 + </div> 229 229 230 -<section aria-labelledby="pricing-note-title"> 231 - <div class="container"> 232 - <div class="industry-trust-panel"> 233 - <h2 id="pricing-note-title">Simple starting prices, reviewed scope when needed</h2> 234 - <p class="section-intro"> 235 - Prices are starting points and exclude VAT where applicable. Final pricing depends on the XWiki version, 236 - installed extensions, customizations, hosting setup, authentication configuration, wiki farm complexity 237 - and required testing. 238 - </p> 239 - </div> 240 - </div> 241 -</section> 245 + <h2 id="common-packages">Common starting packages</h2> 242 242 243 -<section id="common-packages" aria-labelledby="common-packages-title"> 244 - <div class="container"> 245 - <h2 id="common-packages-title">Common starting packages</h2> 246 - <p class="section-intro"> 247 - These are practical entry points for common XWiki needs. Some can start directly, while others require 248 - a quick review before confirming the final scope. 249 - </p> 247 + <p> 248 + These are practical entry points for common XWiki needs. Some can start directly, while others require 249 + a quick review before confirming the final scope. 250 + </p> 250 250 251 - <table class="table table-bordered table-striped"> 252 - <thead> 253 - <tr> 254 - <th>Service</th> 255 - <th>Starting price</th> 256 - <th>What it covers</th> 257 - </tr> 258 - </thead> 259 - <tbody> 260 - #foreach ($entry in $commonPackages) 261 - <tr> 262 - <td><strong>$entry.service</strong></td> 263 - <td>$entry.price</td> 264 - <td>$entry.description</td> 265 - </tr> 266 - #end 267 - </tbody> 268 - </table> 269 - </div> 270 -</section> 252 + <table class="table table-bordered table-striped"> 253 + <thead> 254 + <tr> 255 + <th>Service</th> 256 + <th>Starting price</th> 257 + <th>What it covers</th> 258 + </tr> 259 + </thead> 260 + <tbody> 261 + #foreach ($entry in $commonPackages) 262 + <tr> 263 + <td><strong>$entry.service</strong></td> 264 + <td>$entry.price</td> 265 + <td>$entry.description</td> 266 + </tr> 267 + #end 268 + </tbody> 269 + </table> 271 271 272 -<section id="upgrade-offer" aria-labelledby="upgrade-offer-title" class="industry-trust-section"> 273 - <div class="container"> 274 - <div class="industry-trust-panel"> 275 - <h2 id="upgrade-offer-title">New customer upgrade offer</h2> 276 - <p class="section-intro"> 277 - If the Upgrade Readiness Review leads to an upgrade project with Agnease, the review cost can be credited 278 - toward the upgrade implementation. 279 - </p> 280 - <a class="btn btn-primary" href="$contactURL">Plan an upgrade</a> 281 - </div> 282 - </div> 283 -</section> 271 + <div id="upgrade-offer" class="resource-note"> 272 + <p> 273 + <strong>New customer upgrade offer:</strong> If the Upgrade Readiness Review leads to an upgrade 274 + project with Agnease, the review cost can be credited toward the upgrade implementation. 275 + </p> 276 + </div> 284 284 285 -<section id="support" aria-labelledby="support-title"> 286 - <div class="container"> 287 - <h2 id="support-title">Monthly support plans</h2> 288 - <p class="section-intro"> 289 - Support plans are designed for organizations that already use XWiki and want regular help with troubleshooting, 290 - maintenance, upgrades, configuration, authentication and small improvements. 291 - </p> 278 + <h2 id="authentication">Authentication & access control</h2> 292 292 293 - <div class="pathways"> 294 - #foreach ($entry in $supportPlans) 295 - <article class="pathway-card"> 296 - <div class="card-heading"> 297 - <div class="pathway-icon" aria-hidden="true"> 298 - <i class="fa fa-$entry.icon"></i> 299 - </div> 300 - <h3>$entry.title</h3> 301 - </div> 280 + <p> 281 + XWiki authentication depends on the current login method, identity provider, user source, 282 + group mapping and access-control model. Agnease can help review, configure or improve standard 283 + XWiki login, LDAP, Active Directory, OpenID Connect, Microsoft Entra ID, MFA and more advanced 284 + authentication scenarios. 285 + </p> 302 302 303 - <p><strong>$entry.price</strong></p> 304 - <p>$entry.description</p> 287 + <div class="resource-note"> 288 + <p> 289 + <strong>MFA is treated separately:</strong> SSO, LDAP and OIDC define how users log in. 290 + MFA adds an additional verification layer. In some environments MFA belongs in XWiki, while in 291 + others it is better enforced by the external identity provider. 292 + </p> 293 + </div> 305 305 306 - <ul> 307 - #foreach ($item in $entry.items) 308 - <li>$item</li> 295 + <table class="table table-bordered table-striped"> 296 + <thead> 297 + <tr> 298 + <th>Authentication service</th> 299 + <th>Starting price</th> 300 + <th>Best for</th> 301 + </tr> 302 + </thead> 303 + <tbody> 304 + #foreach ($entry in $authRows) 305 + <tr> 306 + <td><strong>$entry.service</strong></td> 307 + <td>$entry.price</td> 308 + <td>$entry.bestFor</td> 309 + </tr> 309 309 #end 310 - </ul> 311 + </tbody> 312 + </table> 311 311 312 - <div class="card-link"> 313 - <a href="$contactURL">$entry.cta</a> 314 - </div> 315 - </article> 316 - #end 317 - </div> 314 + <div class="resource-cta"> 315 + <h3>Need authentication changes?</h3> 316 + <p> 317 + Send a short description of your current login method, user source, identity provider and the 318 + authentication result you want to achieve. 319 + </p> 320 + <a class="btn btn-primary" href="$contactURL">Request authentication review</a> 321 + </div> 318 318 319 - <p class="section-intro"> 320 - Larger features, migrations, major customizations and complex projects are quoted separately. 321 - </p> 322 - </div> 323 -</section> 323 + <h2 id="support">Monthly support plans</h2> 324 324 325 -<section id="complex-projects" aria-labelledby="complex-projects-title"> 326 - <div class="container"> 327 - <h2 id="complex-projects-title">Need something more complex?</h2> 328 - <p class="section-intro"> 329 - Some XWiki projects cannot be priced responsibly before the environment is reviewed. For wiki farms, 330 - major upgrades, migrations, custom applications, authentication changes or infrastructure restructuring, 331 - Agnease first reviews the current setup and then provides a fixed project quote. 332 - </p> 325 + <p> 326 + Support plans are designed for organizations that already use XWiki and want regular help with 327 + troubleshooting, maintenance, upgrades, configuration, authentication and small improvements. 328 + </p> 333 333 334 - <div class="widgets"> 335 - #foreach ($entry in $complexProjects) 336 - <div class="widget"> 337 - <div class="icon"> 338 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 339 - <h4>$entry.title</h4> 340 - </div> 341 - <p>$entry.content</p> 330 + <div class="services-grid"> 331 + #foreach ($entry in $supportPlans) 332 + <article class="service"> 333 + <div class="service-icon" aria-hidden="true"> 334 + <i class="fa fa-$entry.icon"></i> 335 + </div> 336 + <div class="service-body"> 337 + <h4>$entry.title</h4> 338 + <p><strong>$entry.price</strong></p> 339 + <p>$entry.description</p> 340 + <ul> 341 + #foreach ($item in $entry.items) 342 + <li>$item</li> 343 + #end 344 + </ul> 345 + <p><a class="btn btn-primary" href="$contactURL">$entry.cta</a></p> 346 + </div> 347 + </article> 348 + #end 342 342 </div> 343 - #end 344 - </div> 345 345 346 - <div id="hero-cta">347 - <aclass="btnbtn-primary"href="$contactURL">Requesta project quote</a>348 - </div>349 - </ div>350 -</ section>351 + <div class="resource-note"> 352 + <p> 353 + Larger features, migrations, major customizations and complex projects are quoted separately. 354 + </p> 355 + </div> 351 351 352 -<section id="faq" aria-labelledby="faq-title"> 353 - <div class="container"> 354 - <h2 id="faq-title">FAQ</h2> 357 + <h2 id="complex-projects">Need something more complex?</h2> 355 355 356 - #foreach ($entry in $faqItems) 357 - <details class="resource-faq-item" #if ($foreach.first)open#end> 358 - <summary>$entry.question</summary> 359 - <p>$entry.answer</p> 360 - </details> 361 - #end 359 + <p> 360 + Some XWiki projects cannot be priced responsibly before the environment is reviewed. For wiki farms, 361 + major upgrades, migrations, custom applications, authentication changes or infrastructure restructuring, 362 + Agnease first reviews the current setup and then provides a fixed project quote. 363 + </p> 364 + 365 + <ul class="resource-checklist"> 366 + #foreach ($item in $complexProjects) 367 + <li>$item</li> 368 + #end 369 + </ul> 370 + 371 + <div class="resource-cta"> 372 + <h3>Request a project quote</h3> 373 + <p> 374 + Send a short description of your XWiki environment, current version, hosting setup and what you 375 + are trying to achieve. 376 + </p> 377 + <a class="btn btn-primary" href="$contactURL">Request a project quote</a> 378 + </div> 379 + 380 + <h2 id="faq">FAQ</h2> 381 + 382 + #foreach ($entry in $faqItems) 383 + <details class="resource-faq-item" #if ($foreach.first)open#end> 384 + <summary>$entry.question</summary> 385 + <p>$entry.answer</p> 386 + </details> 387 + #end 388 + 389 + </article> 390 + </div> 362 362 </div> 363 363 </section> 364 364