<% import com.jdbernard.nlsongs.servlet.NLSongsContext import static com.jdbernard.nlsongs.model.ServiceType.* songsDB = NLSongsContext.songsDB pathInfo = ((request.pathInfo?:"").split('/') as List).findAll() if (pathInfo.size() != 1 || !pathInfo[0].isInteger()) { response.sendError(response.SC_NOT_FOUND); return } song = songsDB.findSong(pathInfo[0] as int) if (!song) { response.sendError(response.SC_NOT_FOUND); return } %> <%= song.name %> - New Life Songs Database

New Life Songs

<%= song.name %>

<% if (song.artists.findAll().size() > 0) { %>

by <%= song.artists.join(", ") %>

<% } %>

Performances

<% songsDB.findPerformancesForSongId(song.id). collect { [perf: it, svc: songsDB.findService(it.serviceId)] }. sort { it.svc.date }.each { row -> %> <% } %>
Date Service Type Worship Leader Piano Organ Bass Drums Guitar
<%= row.svc.localDate.toString("yyyy-MM-dd") %> <%= row.svc.serviceType.displayName %> <%= row.perf.leader ?: "" %> <%= row.perf.pianist ?: "" %> <%= row.perf.organist ?: "" %> <%= row.perf.bassist ?: "" %> <%= row.perf.drummer ?: "" %> <%= row.perf.guitarist ?: "" %>