make a bunch of views render

This commit is contained in:
MiniDigger 2020-07-14 17:35:53 +02:00
parent a37773189c
commit 7db739e3b6
14 changed files with 59 additions and 41 deletions

View File

@ -18,23 +18,25 @@ public class ApplicationController extends HangarController {
} }
@RequestMapping("/admin/activities/{user}") @RequestMapping("/admin/activities/{user}")
public Object showActivities(@PathVariable Object user) { public ModelAndView showActivities(@PathVariable String user) {
return null; // TODO implement showActivities request controller ModelAndView mav = new ModelAndView("users/admin/activity");
mav.addObject("username", user);
return fillModel(mav);
} }
@RequestMapping("/admin/approval/projects") @RequestMapping("/admin/approval/projects")
public Object showProjectVisibility() { public Object showProjectVisibility() {
return null; // TODO implement showProjectVisibility request controller return fillModel(new ModelAndView("users/admin/visibility")); // TODO implement showProjectVisibility request controller
} }
@RequestMapping("/admin/approval/versions") @RequestMapping("/admin/approval/versions")
public Object showQueue() { public ModelAndView showQueue() {
return null; // TODO implement showQueue request controller return fillModel(new ModelAndView("users/admin/queue")); // TODO implement showQueue request controller
} }
@RequestMapping("/admin/flags") @RequestMapping("/admin/flags")
public Object showFlags() { public Object showFlags() {
return null; // TODO implement showFlags request controller return fillModel(new ModelAndView("users/admin/flags")); // TODO implement showFlags request controller
} }
@RequestMapping("/admin/flags/{id}/resolve/{resolved}") @RequestMapping("/admin/flags/{id}/resolve/{resolved}")
@ -43,18 +45,24 @@ public class ApplicationController extends HangarController {
} }
@RequestMapping("/admin/health") @RequestMapping("/admin/health")
public Object showHealth() { public ModelAndView showHealth() {
return null; // TODO implement showHealth request controller return fillModel(new ModelAndView("users/admin/health")); // TODO implement showHealth request controller
} }
@RequestMapping("/admin/log") @RequestMapping("/admin/log")
public Object showLog(@RequestParam Object page, @RequestParam Object userFilter, @RequestParam Object projectFilter, @RequestParam Object versionFilter, @RequestParam Object pageFilter, @RequestParam Object actionFilter, @RequestParam Object subjectFilter) { public ModelAndView showLog(@RequestParam(required = false) Object page,
return null; // TODO implement showLog request controller @RequestParam(required = false) Object userFilter,
@RequestParam(required = false) Object projectFilter,
@RequestParam(required = false) Object versionFilter,
@RequestParam(required = false) Object pageFilter,
@RequestParam(required = false) Object actionFilter,
@RequestParam(required = false) Object subjectFilter) {
return fillModel(new ModelAndView("users/admin/log")); // TODO implement showLog request controller
} }
@RequestMapping("/admin/stats") @RequestMapping("/admin/stats")
public Object showStats(@RequestParam Object from, @RequestParam Object to) { public ModelAndView showStats(@RequestParam(required = false) Object from, @RequestParam(required = false) Object to) {
return null; // TODO implement showStats request controller return fillModel(new ModelAndView("users/admin/stats")); // TODO implement showStats request controller
} }
@RequestMapping("/admin/user/{user}") @RequestMapping("/admin/user/{user}")

View File

@ -19,8 +19,8 @@ public class OrgController extends HangarController {
} }
@GetMapping("/organisations/new") @GetMapping("/organisations/new")
public Object showCreator() { public ModelAndView showCreator() {
return null; // TODO implement showCreator request controller return fillModel(new ModelAndView("createOrganization"));
} }
@PostMapping("/organisations/new") @PostMapping("/organisations/new")

View File

@ -30,7 +30,7 @@ public class ProjectsController extends HangarController {
@RequestMapping("/new") @RequestMapping("/new")
public Object showCreator() { public Object showCreator() {
return null; // TODO implement showCreator request controller return fillModel(new ModelAndView("projects/create"));
} }
@RequestMapping("/{author}/{slug}") @RequestMapping("/{author}/{slug}")

View File

@ -13,7 +13,7 @@ public class ReviewsController extends HangarController {
@RequestMapping("/{author}/{slug}/versions/{version}/reviews") @RequestMapping("/{author}/{slug}/versions/{version}/reviews")
public Object showReviews(@PathVariable Object author, @PathVariable Object slug, @PathVariable Object version) { public Object showReviews(@PathVariable Object author, @PathVariable Object slug, @PathVariable Object version) {
return null; // TODO implement showReviews request controller return fillModel(new ModelAndView("users/admin/reviews")); // TODO implement showReviews request controller
} }
@RequestMapping("/{author}/{slug}/versions/{version}/reviews/addmessage") @RequestMapping("/{author}/{slug}/versions/{version}/reviews/addmessage")

View File

@ -1,11 +1,3 @@
<#--
@import controllers.sugar.Requests.OreRequest
@import ore.OreConfig
@import ore.permission.role.RoleCategory
@import views.html.helper.{CSRF, form}
@()(implicit messages: Messages, flash: Flash, request: OreRequest[_], config: OreConfig, assetsFinder: AssetsFinder)
-->
<#import "/spring.ftl" as spring /> <#import "/spring.ftl" as spring />
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />

View File

@ -2,6 +2,7 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@* @*
Page used for uploading and creating new projects. Page used for uploading and creating new projects.
*@ *@
@ -15,7 +16,7 @@ Page used for uploading and creating new projects.
@import ore.models.user.User @import ore.models.user.User
@import views.html.helper.{CSRF, form} @import views.html.helper.{CSRF, form}
@(createProjectOrgas: Seq[Model[Organization]], user: Model[User])(implicit messages: Messages, flash: Flash, request: OreRequest[_], config: OreConfig, assetsFinder: AssetsFinder) @(createProjectOrgas: Seq[Model[Organization]], user: Model[User])(implicit messages: Messages, flash: Flash, request: OreRequest[_], config: OreConfig, assetsFinder: AssetsFinder)
-->
<#assign scriptsVar> <#assign scriptsVar>
<script type="text/javascript" src="<@hangar.url "javascripts/projectCreateValidate.js" />"></script> <script type="text/javascript" src="<@hangar.url "javascripts/projectCreateValidate.js" />"></script>
<script type="text/javascript" src="<@hangar.url "javascripts/pluginUpload.js" />"></script> <script type="text/javascript" src="<@hangar.url "javascripts/pluginUpload.js" />"></script>
@ -35,8 +36,8 @@ Page used for uploading and creating new projects.
<div class="panel-body project-body"> <div class="panel-body project-body">
<div class="minor create-blurb"> <div class="minor create-blurb">
<p>@Html(messages("project.create.infoText.head"))</p> <p><@spring.message "project.create.infoText.head" /></p>
<p>@Html(messages("project.create.infoText.guidelines"))</p> <p><@spring.message "project.create.infoText.guidelines" /></p>
</div> </div>
<div> <div>
@ -57,7 +58,7 @@ Page used for uploading and creating new projects.
<select id="projectCategory" name="category" class="form-control"> <select id="projectCategory" name="category" class="form-control">
<#-- todo: Category.visible --> <#-- todo: Category.visible -->
<#list Category.visible as cat> <#list Category.visible as cat>
<option>${cat.title<}/option> <option>${cat.title}</option>
</#list> </#list>
</select> </select>
</div> </div>

View File

@ -2,6 +2,7 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@import java.time.OffsetDateTime @import java.time.OffsetDateTime
@import controllers.sugar.Requests.OreRequest @import controllers.sugar.Requests.OreRequest
@ -9,14 +10,15 @@
@import ore.OreConfig @import ore.OreConfig
@import util.StringFormatterUtils._ @import util.StringFormatterUtils._
@(username: String, activities: Seq[Either[FlagActivity, ReviewActivity]])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder) @(username: String, activities: Seq[Either[FlagActivity, ReviewActivity]])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder)
-->
<#assign message><@spring.message "activity.title" /></#assign> <#assign message><@spring.message "activity.title" /></#assign>
<@base.base title=("${message}" + username)> <@base.base title=("${message} ${username}")>
<div class="row"> <div class="row">
<div class="col-md-12 header-flags"> <div class="col-md-12 header-flags">
<div class="clearfix"> <div class="clearfix">
<h1 class="pull-left"><@spring.message "activity.title" /> <i>@username</i></h1> <h1 class="pull-left"><@spring.message "activity.title" /> <i>${username}</i></h1>
</div> </div>
</div> </div>
</div> </div>

View File

@ -2,6 +2,7 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@import controllers.sugar.Requests.OreRequest @import controllers.sugar.Requests.OreRequest
@import models.querymodels.ShownFlag @import models.querymodels.ShownFlag
@import ore.OreConfig @import ore.OreConfig
@ -12,7 +13,7 @@
@* project perms for all visibilities *@ @* project perms for all visibilities *@
@(flags: Seq[ShownFlag])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder) @(flags: Seq[ShownFlag])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder)
-->
<#assign scriptsVar> <#assign scriptsVar>
<script type="text/javascript" src="<@hangar.url "javascripts/flags.js" />"></script> <script type="text/javascript" src="<@hangar.url "javascripts/flags.js" />"></script>
<script type="text/javascript" src="<@hangar.url "javascripts/hideProject.js" />"></script> <script type="text/javascript" src="<@hangar.url "javascripts/hideProject.js" />"></script>

View File

@ -2,6 +2,7 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@import controllers.sugar.Requests.OreRequest @import controllers.sugar.Requests.OreRequest
@import models.querymodels.UnhealtyProject @import models.querymodels.UnhealtyProject
@import ore.OreConfig @import ore.OreConfig
@ -12,6 +13,7 @@
notPublicProjects: Seq[UnhealtyProject], notPublicProjects: Seq[UnhealtyProject],
missingFileProjects: Seq[(Version, Project)], missingFileProjects: Seq[(Version, Project)],
erroredJobs: Seq[Job])(implicit request: OreRequest[_], messages: Messages, config: OreConfig, flash: Flash, assetsFinder: AssetsFinder) erroredJobs: Seq[Job])(implicit request: OreRequest[_], messages: Messages, config: OreConfig, flash: Flash, assetsFinder: AssetsFinder)
-->
<#assign message><@spring.message "admin.health.title" /></#assign> <#assign message><@spring.message "admin.health.title" /></#assign>
<@base.base title="${message}"> <@base.base title="${message}">

View File

@ -2,6 +2,7 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@import controllers.sugar.Requests.OreRequest @import controllers.sugar.Requests.OreRequest
@import ore.OreConfig @import ore.OreConfig
@import ore.db.{DbRef, Model} @import ore.db.{DbRef, Model}
@ -13,6 +14,7 @@
@(actions: Seq[Model[LoggedActionViewModel[_]]], limit: Int, offset: Int, page: Int, size: Int, userFilter: Option[String], @(actions: Seq[Model[LoggedActionViewModel[_]]], limit: Int, offset: Int, page: Int, size: Int, userFilter: Option[String],
projectFilter: Option[String], versionFilter: Option[String], pageFilter: Option[DbRef[Page]], projectFilter: Option[String], versionFilter: Option[String], pageFilter: Option[DbRef[Page]],
actionFilter: Option[String], subjectFilter: Option[String], canViewIP: Boolean)(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder) actionFilter: Option[String], subjectFilter: Option[String], canViewIP: Boolean)(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder)
-->
<#assign scriptsVar> <#assign scriptsVar>
<script type="text/javascript" src="<@hangar.url "diff-match-patch/javascript/diff_match_patch.js" />"></script> <script type="text/javascript" src="<@hangar.url "diff-match-patch/javascript/diff_match_patch.js" />"></script>

View File

@ -2,6 +2,7 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@import controllers.sugar.Requests.OreRequest @import controllers.sugar.Requests.OreRequest
@import models.querymodels.{NotStartedQueueEntry, ReviewedQueueEntry} @import models.querymodels.{NotStartedQueueEntry, ReviewedQueueEntry}
@import ore.OreConfig @import ore.OreConfig
@ -11,6 +12,7 @@
@import views.html.helper.CSPNonce @import views.html.helper.CSPNonce
@import views.html.utils.userAvatar @import views.html.utils.userAvatar
@(underReview: Seq[ReviewedQueueEntry], versions: Seq[NotStartedQueueEntry])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder) @(underReview: Seq[ReviewedQueueEntry], versions: Seq[NotStartedQueueEntry])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder)
-->
<#assign scriptsVar> <#assign scriptsVar>
<script @CSPNonce.attr type="text/javascript" src="<@hangar.url "javascripts/queue.js" />"></script> <script @CSPNonce.attr type="text/javascript" src="<@hangar.url "javascripts/queue.js" />"></script>

View File

@ -1,6 +1,8 @@
<#import "/spring.ftl" as spring /> <#import "/spring.ftl" as spring />
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base />
<#--
@import controllers.sugar.Requests.OreRequest @import controllers.sugar.Requests.OreRequest
@import ore.OreConfig @import ore.OreConfig
@import ore.db.Model @import ore.db.Model
@ -13,14 +15,15 @@
@(mostRecentUnfinishedReview: Option[Review], reviews: Seq[(Model[Review], Option[String])], project: Project, version: Model[Version])(implicit messages: Messages, @(mostRecentUnfinishedReview: Option[Review], reviews: Seq[(Model[Review], Option[String])], project: Project, version: Model[Version])(implicit messages: Messages,
request: OreRequest[_], config: OreConfig, flash: Flash, renderer: MarkdownRenderer, assetsFinder: AssetsFinder) request: OreRequest[_], config: OreConfig, flash: Flash, renderer: MarkdownRenderer, assetsFinder: AssetsFinder)
-->
<#macro scripts> <#assign scripts>
<script @CSPNonce.attr type="text/javascript" src="<@hangar.url "javascripts/review.js" />"></script> <script @CSPNonce.attr type="text/javascript" src="<@hangar.url "javascripts/review.js" />"></script>
<script @CSPNonce.attr>versionPath = '${helper.urlEncode(project.ownerName)}/${helper.urlEncode(project.slug)}/versions/${helper.urlEncode(version.name)}'</script> <script @CSPNonce.attr>versionPath = '${helper.urlEncode(project.ownerName)}/${helper.urlEncode(project.slug)}/versions/${helper.urlEncode(version.name)}'</script>
</#macro> </#assign>
@layout.base(messages("review.title", project.name, version.name), scripts) {
<#assign message><@spring.messageArgs code="review.title" args=[project.name version.name] /></#assign>
<@base.base title=message additionalScripts=scripts>
<div class="row"> <div class="row">
<div class="col-md-12 header-flags"> <div class="col-md-12 header-flags">
<div class="clearfix"> <div class="clearfix">
@ -204,4 +207,4 @@
</div> </div>
</div> </div>
</div> </div>
} </@base.base>

View File

@ -2,6 +2,7 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@import java.time.LocalDate @import java.time.LocalDate
@import java.time.temporal.ChronoUnit @import java.time.temporal.ChronoUnit
@ -14,6 +15,7 @@
@(stats: List[Stats], fromTime: LocalDate, toTime: LocalDate)(implicit messages: Messages, @(stats: List[Stats], fromTime: LocalDate, toTime: LocalDate)(implicit messages: Messages,
request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder) request: OreRequest[_], config: OreConfig, flash: Flash, assetsFinder: AssetsFinder)
-->
<#assign scriptsVar> <#assign scriptsVar>
<script @CSPNonce.attr type="text/javascript" src="<@hangar.url "lib/chart.js/dist/Chart.min.js" />"></script> <script @CSPNonce.attr type="text/javascript" src="<@hangar.url "lib/chart.js/dist/Chart.min.js" />"></script>
@ -105,6 +107,7 @@
</#assign> </#assign>
<@base.base title="Stats" additionalScripts=scriptsVar> <@base.base title="Stats" additionalScripts=scriptsVar>
<h1>Stats</h1>
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<div class="form-inline"> <div class="form-inline">

View File

@ -2,14 +2,16 @@
<#import "*/utils/hangar.ftlh" as hangar /> <#import "*/utils/hangar.ftlh" as hangar />
<#import "*/layout/base.ftlh" as base /> <#import "*/layout/base.ftlh" as base />
<#--
@import controllers.sugar.Requests.OreRequest @import controllers.sugar.Requests.OreRequest
@import models.querymodels.ProjectNeedsApproval @import models.querymodels.ProjectNeedsApproval
@import ore.OreConfig @import ore.OreConfig
@import ore.markdown.MarkdownRenderer @import ore.markdown.MarkdownRenderer
@(needsApproval: Seq[ProjectNeedsApproval], @(needsApproval: Seq[ProjectNeedsApproval],
waitingProjects: Seq[ProjectNeedsApproval])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, renderer: MarkdownRenderer, assetsFinder: AssetsFinder) waitingProjects: Seq[ProjectNeedsApproval])(implicit messages: Messages, request: OreRequest[_], config: OreConfig, flash: Flash, renderer: MarkdownRenderer, assetsFinder: AssetsFinder)
-->
@renderApprovalList(projectSeq: Seq[ProjectNeedsApproval]) = { <#macro renderApprovalList projectSeq>
<ul class="list-group list-flags-admin"> <ul class="list-group list-flags-admin">
<#if projectSeq.isEmpty> <#if projectSeq.isEmpty>
<li class="list-group-item"> <li class="list-group-item">
@ -41,7 +43,7 @@
</li> </li>
} }
</ul> </ul>
} </#macro>
<#assign scriptsVar> <#assign scriptsVar>
<script type="text/javascript" src="<@hangar.url "javascripts/hideProject.js" />"></script> <script type="text/javascript" src="<@hangar.url "javascripts/hideProject.js" />"></script>
@ -61,7 +63,7 @@
<h4 class="panel-title pull-left">Needs Approval</h4> <h4 class="panel-title pull-left">Needs Approval</h4>
<div class="clearfix"></div> <div class="clearfix"></div>
</div> </div>
${renderApprovalList(needsApproval)} <@renderApprovalList needsApproval />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -76,7 +78,7 @@
<h4 class="panel-title pull-left">Waiting Changes</h4> <h4 class="panel-title pull-left">Waiting Changes</h4>
<div class="clearfix"></div> <div class="clearfix"></div>
</div> </div>
${renderApprovalList(waitingProjects)} <@renderApprovalList waitingProjects />
</div> </div>
</div> </div>
</div> </div>