ore/app/views/users/admin/health.scala.html
@import controllers.sugar.Requests.OreRequest
@import ore.models.project.{Project, Version}
@import ore.OreConfig
@import models.querymodels.UnhealtyProject
@(noTopicProjects: Seq[UnhealtyProject],
topicDirtyProjects: Seq[UnhealtyProject],
staleProjects: Seq[UnhealtyProject],
notPublicProjects: Seq[UnhealtyProject],
missingFileProjects: Seq[(Version, Project)])(implicit request: OreRequest[_], messages: Messages, config: OreConfig, flash: Flash)
@projectRoutes = @{controllers.project.routes.Projects}
@versionRoutes = @{controllers.project.routes.Versions}
@layout.base(messages("admin.health.title")) {
<div class="row">
<div class="col-md-12">
<h1>@messages("admin.health.title")</h1>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">@messages("admin.health.discuss")</h4>
</div>
<div class="panel-body list-group list-group-health">
@noTopicProjects.map { project =>
<div class="list-group-item">
<a class="pull-left" href="@projectRoutes.show(project.namespace.ownerName, project.namespace.slug)">
<strong>@project.namespace</strong>
</a>
<div class="clearfix"></div>
</div>
}
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">@messages("admin.health.topic")</h4>
</div>
<div class="panel-body list-group list-group-health">
@topicDirtyProjects.map { project =>
<div class="list-group-item">
<a class="pull-left" href="@projectRoutes.show(project.namespace.ownerName, project.namespace.slug)">
<strong>@project.namespace</strong>
</a>
<div class="clearfix"></div>
</div>
}
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">@messages("admin.health.stale")</h4>
</div>
<div class="panel-body list-group list-group-health">
@staleProjects.map { project =>
<div class="list-group-item">
<a href="@projectRoutes.show(project.namespace.ownerName, project.namespace.slug)">
<strong>@project.namespace</strong>
</a>
</div>
}
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">@messages("admin.health.hidden")</h4>
</div>
<div class="panel-body list-group list-group-health">
@notPublicProjects.map { project =>
<div class="list-group-item">
<a href="@projectRoutes.show(project.namespace.ownerName, project.namespace.slug)">
<strong>@project.namespace</strong> <small>@messages("visibility.name." + project.visibility.nameKey)</small>
</a>
</div>
}
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">@messages("admin.health.platform")</h4>
</div>
<div class="panel-body list-group list-group-health">
<div>TODO: Filters?</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">@messages("admin.health.missingFile")</h4>
</div>
<div class="panel-body list-group list-group-health">
@missingFileProjects.map { case (version, project) =>
<div class="list-group-item">
<a href="@versionRoutes.show(project.ownerName, project.slug, version.name)">
<strong>@project.namespace/@version.name</strong>
</a>
</div>
}
</div>
</div>
</div>
</div>
}