@(currentPage: io.ebean.PagedList[Computer], currentSortBy: String, currentOrder: String, currentFilter: String) @**************************************** * Helper generating navigation links * ****************************************@ @link(newPage:Int, newSortBy:String) = @{ var sortBy = currentSortBy var order = currentOrder if(newSortBy != null) { sortBy = newSortBy if(currentSortBy == newSortBy) { if(currentOrder == "asc") { order = "desc" } else { order = "asc" } } else { order = "asc" } } // Generate the link routes.HomeController.list(newPage, sortBy, order, currentFilter) } @********************************** * Helper generating table headers * ***********************************@ @header(key:String, title:String) = { @title } @main {

@Messages("computers.list.title", currentPage.getTotalCount)

@if(flash.containsKey("success")) {
Done! @flash.get("success")
}
Add a new computer
@if(currentPage.getTotalCount == 0) {
Nothing to display
} else { @header("name", "Computer name") @header("introduced", "Introduced") @header("discontinued", "Discontinued") @header("company.name", "Company") @for(computer <- currentPage.getList.asScala) { }
@computer.name @if(computer.introduced == null) { - } else { @computer.introduced.format("dd MMM yyyy") } @if(computer.discontinued == null) { - } else { @computer.discontinued.format("dd MMM yyyy") } @if(computer.company == null) { - } else { @computer.company.name }
} }