Wiki source code of Release Plans
Last modified by Thomas Mortagne on 2026/05/27 19:20
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{box cssClass="floatinginfobox" title="**Contents**"}} | ||
| 2 | {{toc/}} | ||
| 3 | {{/box}} | ||
| 4 | |||
| 5 | {{velocity}} | ||
| 6 | #if ("$!request.version" != "") | ||
| 7 | ## Keep the dot in the short version in order to avoid collisions (e.g. 9.1.1 vs. 9.11) | ||
| 8 | #set ($shortVersion = $stringtool.replaceChars($request.version, "-", "")) | ||
| 9 | #set ($shortVersion = $stringtool.upperCase($shortVersion)) | ||
| 10 | #set ($shortVersion = $shortVersion.replace('MILESTONE', 'M')) | ||
| 11 | #set ($releasePlanReference = $services.model.createDocumentReference('', 'ReleasePlans', "ReleasePlan${shortVersion}")) | ||
| 12 | $response.sendRedirect($xwiki.getURL($releasePlanReference, "inline", | ||
| 13 | "$!{request.queryString}&title=New Release Plan for version $shortVersion&version=${request.version}")) | ||
| 14 | #end | ||
| 15 | {{/velocity}} | ||
| 16 | |||
| 17 | = Create Release Plan = | ||
| 18 | |||
| 19 | {{html}} | ||
| 20 | <form action="" id="newplan"> | ||
| 21 | <input type="hidden" name="parent" value="ReleasePlans.WebHome" /> | ||
| 22 | <input type="hidden" name="template" value="ReleasePlans.ReleasePlanTemplate" /> | ||
| 23 | <input type="hidden" name="sheet" value="1" /> | ||
| 24 | <label for="versionid">Version:</label> | ||
| 25 | <input id="versionid" class="withTip" type="text" name="version" value="" size="30"/> | ||
| 26 | <span class="buttonwrapper"> | ||
| 27 | <input class="button" type="submit" value="Create this plan" /> | ||
| 28 | </span> | ||
| 29 | </form> | ||
| 30 | {{/html}} | ||
| 31 | |||
| 32 | = Existing Plans = | ||
| 33 | |||
| 34 | {{velocity}} | ||
| 35 | #set($columns = ["version", "releaseManager", "releaseDate", "releaseNotes", "released"]) | ||
| 36 | #set($columnsProperties = { | ||
| 37 | "version" : { "type" : "text" , "link" : "view"}, | ||
| 38 | "releaseManager" : { "type" : "text" , "html" : true }, | ||
| 39 | "releaseDate" : { "type" : "text" }, | ||
| 40 | "releaseNotes" : { "html" : true }, | ||
| 41 | "released" : { "html" : true, "filterable" : false, "sortable" : false } | ||
| 42 | }) | ||
| 43 | #set($options = { | ||
| 44 | "className":"ReleasePlans.ReleasePlanClass", | ||
| 45 | "selectedColumn" : "releaseDate", | ||
| 46 | "defaultOrder" : "desc", | ||
| 47 | "rowCount": 15, | ||
| 48 | "translationPrefix":"releasePlan.livetable." | ||
| 49 | }) | ||
| 50 | #livetable("plans" $columns $columnsProperties $options) | ||
| 51 | {{/velocity}} | ||
| 52 | |||
| 53 | Older Release plans are available in the [[Archives page>>ReleasePlans.ReleasePlansArchives]]. | ||
| 54 | |||
| 55 | = Statistics = | ||
| 56 | |||
| 57 | {{velocity}} | ||
| 58 | #set ($userCount = {}) | ||
| 59 | #foreach ($userRef in $services.query.xwql("select rp.releaseManager from Document doc, doc.object(ReleasePlans.ReleasePlanClass) as rp").execute()) | ||
| 60 | #set ($count = $userCount.get($userRef).count) | ||
| 61 | #if ("$!count" == '') | ||
| 62 | #set ($count = 0) | ||
| 63 | #end | ||
| 64 | #set ($count = $count + 1) | ||
| 65 | #set ($discard = $userCount.put($userRef, {'count': $count, 'userRef': $userRef})) | ||
| 66 | #end | ||
| 67 | (%class="table table-hover"%) | ||
| 68 | |= Release Manager|=Number of releases done | ||
| 69 | #foreach ($item in $sorttool.sort($userCount, 'count:desc')) | ||
| 70 | |((({{html}}#displayUser($item.userRef){{/html}})))|$item.count | ||
| 71 | #end | ||
| 72 | {{/velocity}} | ||
| 73 | |||
| 74 | = Next Release Managers = | ||
| 75 | |||
| 76 | The list of the next Release Managers (once a Release Manager finishes a release he must move himself/herself to the end of the list): | ||
| 77 | |||
| 78 | * michitux - Not defined yet | ||
| 79 | * mleduc - Not defined yet | ||
| 80 | * vmassol - Not defined yet | ||
| 81 | * mflorea - Not defined yet | ||
| 82 | * surli - Not defined yet | ||
| 83 | * tmortagne - Not defined yet |