Changes for page Pricing
Last modified by Alex Cotiuga on 2026/07/13 06:55
From version 1.16
edited by Alex Cotiuga
on 2026/07/10 04:02
on 2026/07/10 04:02
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,201 +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 - </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> 189 189 </div> 190 190 </div> 191 191 </section> 192 192 193 -<section id="starting-points"aria-labelledby="starting-points-title">203 +<section class="resource-page"> 194 194 <div class="container"> 195 - <h2 id="starting-points-title">Choose your starting point</h2> 196 - <p class="section-intro"> 197 - Most XWiki requests fit into one of three paths: review the current setup, implement a defined change, 198 - or set up ongoing support. 199 - </p> 205 + <div class="resource-layout"> 206 + <article class="resource-content services"> 200 200 201 - <div class="pathways"> 202 - #foreach ($entry in $startingPoints) 203 - <article class="pathway-card"> 204 - <div class="card-heading"> 205 - <div class="pathway-icon" aria-hidden="true"> 206 - <i class="fa fa-$entry.icon"></i> 207 - </div> 208 - <h3>$entry.title</h3> 209 - </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> 210 210 211 - <p><strong>$entry.price</strong></p> 212 - <p>$entry.description</p> 216 + <h2 id="starting-points">Choose your starting point</h2> 213 213 214 - <ul>215 - #foreach($itemin$entry.items)216 - <li>$item</li>217 - #end218 - </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> 219 219 220 - <div class="card-link"> 221 - <a href="$contactURL">$entry.cta</a> 222 - </div> 223 - </article> 224 - #end 225 - </div> 226 - </div> 227 -</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> 228 228 229 -<section aria-labelledby="pricing-note-title"> 230 - <div class="container"> 231 - <div class="industry-trust-panel"> 232 - <h2 id="pricing-note-title">Simple starting prices, reviewed scope when needed</h2> 233 - <p class="section-intro"> 234 - Prices are starting points and exclude VAT where applicable. Final pricing depends on the XWiki version, 235 - installed extensions, customizations, hosting setup, authentication configuration, wiki farm complexity 236 - and required testing. 237 - </p> 238 - </div> 239 - </div> 240 -</section> 245 + <h2 id="common-packages">Common starting packages</h2> 241 241 242 -<section id="common-packages" aria-labelledby="common-packages-title"> 243 - <div class="container"> 244 - <h2 id="common-packages-title">Common starting packages</h2> 245 - <p class="section-intro"> 246 - These are practical entry points for common XWiki needs. Some can start directly, while others require 247 - a quick review before confirming the final scope. 248 - </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> 249 249 250 - <table class="table table-bordered table-striped"> 251 - <thead> 252 - <tr> 253 - <th>Service</th> 254 - <th>Starting price</th> 255 - <th>What it covers</th> 256 - </tr> 257 - </thead> 258 - <tbody> 259 - #foreach ($entry in $commonPackages) 260 - <tr> 261 - <td><strong>$entry.service</strong></td> 262 - <td>$entry.price</td> 263 - <td>$entry.description</td> 264 - </tr> 265 - #end 266 - </tbody> 267 - </table> 268 - </div> 269 -</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> 270 270 271 -<section id="upgrade-offer" aria-labelledby="upgrade-offer-title" class="industry-trust-section"> 272 - <div class="container"> 273 - <div class="industry-trust-panel"> 274 - <h2 id="upgrade-offer-title">New customer upgrade offer</h2> 275 - <p class="section-intro"> 276 - If the Upgrade Readiness Review leads to an upgrade project with Agnease, the review cost can be credited 277 - toward the upgrade implementation. 278 - </p> 279 - <a class="btn btn-primary" href="$contactURL">Plan an upgrade</a> 280 - </div> 281 - </div> 282 -</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> 283 283 284 -<section id="support" aria-labelledby="support-title"> 285 - <div class="container"> 286 - <h2 id="support-title">Monthly support plans</h2> 287 - <p class="section-intro"> 288 - Support plans are designed for organizations that already use XWiki and want regular help with troubleshooting, 289 - maintenance, upgrades, configuration, authentication and small improvements. 290 - </p> 278 + <h2 id="authentication">Authentication & access control</h2> 291 291 292 - <div class="pathways"> 293 - #foreach ($entry in $supportPlans) 294 - <article class="pathway-card"> 295 - <div class="card-heading"> 296 - <div class="pathway-icon" aria-hidden="true"> 297 - <i class="fa fa-$entry.icon"></i> 298 - </div> 299 - <h3>$entry.title</h3> 300 - </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> 301 301 302 - <p><strong>$entry.price</strong></p> 303 - <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> 304 304 305 - <ul> 306 - #foreach ($item in $entry.items) 307 - <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> 308 308 #end 309 - </ul> 311 + </tbody> 312 + </table> 310 310 311 - <div class="card-link"> 312 - <a href="$contactURL">$entry.cta</a> 313 - </div> 314 - </article> 315 - #end 316 - </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> 317 317 318 - <p class="section-intro"> 319 - Larger features, migrations, major customizations and complex projects are quoted separately. 320 - </p> 321 - </div> 322 -</section> 323 + <h2 id="support">Monthly support plans</h2> 323 323 324 -<section id="complex-projects" aria-labelledby="complex-projects-title"> 325 - <div class="container"> 326 - <h2 id="complex-projects-title">Need something more complex?</h2> 327 - <p class="section-intro"> 328 - Some XWiki projects cannot be priced responsibly before the environment is reviewed. For wiki farms, 329 - major upgrades, migrations, custom applications, authentication changes or infrastructure restructuring, 330 - Agnease first reviews the current setup and then provides a fixed project quote. 331 - </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> 332 332 333 - <div class="widgets"> 334 - #foreach ($entry in $complexProjects) 335 - <div class="widget"> 336 - <div class="icon"> 337 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 338 - <h4>$entry.title</h4> 339 - </div> 340 - <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 341 341 </div> 342 - #end 343 - </div> 344 344 345 - <div id="hero-cta">346 - <aclass="btnbtn-primary"href="$contactURL">Requesta project quote</a>347 - </div>348 - </ div>349 -</ section>351 + <div class="resource-note"> 352 + <p> 353 + Larger features, migrations, major customizations and complex projects are quoted separately. 354 + </p> 355 + </div> 350 350 351 -<section id="faq" aria-labelledby="faq-title"> 352 - <div class="container"> 353 - <h2 id="faq-title">FAQ</h2> 357 + <h2 id="complex-projects">Need something more complex?</h2> 354 354 355 - #foreach ($entry in $faqItems) 356 - <details class="resource-faq-item" #if ($foreach.first)open#end> 357 - <summary>$entry.question</summary> 358 - <p>$entry.answer</p> 359 - </details> 360 - #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> 361 361 </div> 362 362 </section> 363 363