app/views/topic/confirmAssignment.scala.html
@* * Copyright 2015 Yahoo Inc. Licensed under the Apache License, Version 2.0 * See accompanying LICENSE file. *@ @import scalaz.{/} @(cluster: String, topic: String, errorOrForm: kafka.manager.ApiError / (Form[models.form.GenerateAssignment], kafka.manager.model.ClusterContext), errorOrCurrentAssignments: kafka.manager.ApiError / kafka.manager.model.ActorModel.GeneratedPartitionAssignments )(implicit af: features.ApplicationFeatures, messages: play.api.i18n.Messages, menus: models.navigation.Menus, request:RequestHeader) @theMenu = { @views.html.navigation.clusterMenu(cluster,"Topic","Confirm Assignment",menus.clusterMenus(cluster)( errorOrForm.toOption.map(_._2.clusterFeatures).getOrElse(kafka.manager.features.ClusterFeatures.default))) } @renderForm(confirmForm: Form[models.form.GenerateAssignment]) = {
@b4.vertical.form(routes.ReassignPartitions.handleGenerateAssignment(cluster,topic)) { implicit fc =>
| Brokers | Replication |
|---|---|
| Select All** Select None** |
@helper.repeat(confirmForm("brokers"), min = 1) { brokerSelectForm => @b4.hidden(brokerSelectForm("id").name,brokerSelectForm("id").value.getOrElse(-1)) @b4.hidden(brokerSelectForm("host").name,brokerSelectForm("host").value.getOrElse("")) @b4.checkbox(brokerSelectForm("selected"), '_text -> s"${brokerSelectForm("id").value.getOrElse(-1)} - ${brokerSelectForm("host").value.getOrElse("")}") } | @b4.number(confirmForm("replicationFactor"), '_label -> "Replication factor (optional)") |
Cancel @b4.submit('class -> "btn btn-primary"){ Generate Partition Assignments } } } @renderAssignments(gpa: kafka.manager.model.ActorModel.GeneratedPartitionAssignments) = {
| Partition | Replicas |
|---|---|
| @for((partNum, replicas) <- gpa.assignments.toList.sortBy(_._1) ) { | @partNum |
| } | |
| } @main( "Confirm Assignment", menu = theMenu, breadcrumbs=views.html.navigation.breadCrumbs(models.navigation.BreadCrumbs.withNamedViewAndCluster("Topic View",cluster,topic))) { |
@errorOrForm.fold( views.html.errors.onApiError(_), t => renderForm(t._1))
@errorOrCurrentAssignments.fold( views.html.errors.onApiError(_), t => renderAssignments(t))
}