Men's Lacrosse Box Score (Final)
Emmanuel at Brevard
(2/14/2015 at 3:00 pm at Brevar, N.C (Brevard Campus))

Emmanuel (GA) (1-1) at
Brevard (2-0)
Date: 2/14/2015, Attendance: 127
SCORE BY PERIOD 1 2 3 4 FINAL
 
Emmanuel (GA) 1 1 3 0 5
Brevard 5 5 3 5 18

Emmanuel (GA) SCORING: GOALS: Justin Mills 1 ; Michael campbell jr
There was a problem with a Velocity script
Pagesports/mlax/2014-15/boxscores/lcxml-monospace-template
ErrorInvocation of method 'substring' in class java.lang.String threw exception java.lang.StringIndexOutOfBoundsException: String index out of range: 1 at c3q4kszo5vx54tewsports/mlax/2014-15/boxscores/lcxml-monospace-template[line 361, column 11]
Page source:
1: ##COMMON FUNCTIONS
2: #macro (printPdfHeader $title)
3: <div class="stats-fullbox clearfix">
4:     <table>
5:         <tr>
6:             <td class="align-center"><h4>$title</h4></td>
7:         </tr>
8:     </table>
9: </div>
10: #end
11: ##
12: 
13: #if($stats.view != "pdf" )
14:     $website.decorate("printer-decorator")
15: #end
16: 
17: #set ($sportCode =  $document.getRootElement().valueOf("network/@sportCode"))
18: #if ($sportCode == "")
19: 	#set ($sportCode = $sport)
20: #end
21: #set ($menLacrosseSportCode = 6)
22: #set ($womenLacrosseSportCode = 10)
23: 
24: #if ($sportCode == $menLacrosseSportCode)
25: 	#set ($gender = 'M')
26: #else
27: 	#set ($gender = 'F')
28: #end
29: 
30: #set ($periodRule = $tool.math.toInteger($document.valueOf("lcgame/venue/rules/@prds")))
31: #macro (period $p)
32: 	#set ($p = $tool.math.toInteger($p))
33: 	#if($p <= $periodRule)
34: 
35: 		#if ($p == 1)1st
36: 		#elseif ($p == 2)2nd
37: 		#elseif ($p == 3)3rd
38: 		#elseif ($p == 4)4th
39: 		#end
40: 	#else
41: 		#set($ot = $p - $periodRule)
42: 		#if ($ot > 1)
43: 			${ot}OT
44: 		#else
45:         OT
46: 		#end
47: 	#end
48: #end
49: 
50: #set ($home = $document.valueOf("lcgame/team[@vh='H']/@name"))
51: #set ($visitor = $document.valueOf("lcgame/team[@vh='V']/@name"))
52: #set ($status = $tool.math.toInteger($document.valueOf("lcgame/status/@period")))
53: #set ($clock = $document.valueOf("lcgame/status/@clock"))
54: 
55: #set ($periods = $document.numberValueOf("lcgame/team[@vh='V']/linescore/@periods"))
56: #set ($periods = $tool.math.toInteger($periods))
57: #set ($periodRange = [1..$periods])
58: 
59: #set ($linkPlayers = $stats.linkPlayers)
60: #set ($linkPlayersBase = $stats.linkPlayersBase)
61: #set ($linkTeams = $stats.linkTeams)
62: #set ($linkTeamsBase = $stats.linkTeamsBase)
63: 
64: #set ($shootoutScores = {"V" : 0, "H" : 0})
65: #set ($hasPlayByPlay = $document.selectNodes("lcgame/plays/period").size() > 0)
66: #set ($isNeutralGame = $documnt.valueOf("lcgame/venue/@neutralgame"))
67: #if ($isNeutralGame.length() > 0 && $isNeutralGame.equals("Y"))
68:   #set ($isNeutralGame = true)
69: #else
70:   #set ($isNeutralGame = false)
71: #end
72: 
73: #if ($stats.pageUrl.length() > 0 && !$stats.pageUrl.contains("?"))
74: 	#set ($paramSep = "?")
75: #else
76: 	#set ($paramSep = "&")
77: #end
78: 
79: #set ($visname = $document.valueOf("lcgame/venue/@visname"))
80: #set ($homename = $document.valueOf("lcgame/venue/@homename"))
81: #set ($visid = $document.valueOf("lcgame/venue/@visid"))
82: #set ($homeid = $document.valueOf("lcgame/venue/@homeid"))
83: #set ($location = $document.valueOf("lcgame/venue/@location"))
84: #set ($stadium = $document.valueOf("lcgame/venue/@stadium"))
85: #set ($date = $document.valueOf("lcgame/venue/@date"))
86: #set ($time = $document.valueOf("lcgame/venue/@start"))
87: #set ($schedNote = $document.valueOf("lcgame/venue/@schednote"))
88: 
89: ## SORT GOALIES BY GOALIECHANGES NODE https://prestosports.jira.com/browse/PS-5828
90: #set ($visitorGoaliesOrder = [])
91: #set ($visitorCount = 1)
92: 
93: #set ($homeGoaliesOrder = [])
94: #set ($homeCount = 1)
95: 
96: #foreach ($node in $document.selectNodes("lcgame/goaliechanges/goaliechange"))
97: 	#if ($node.attributeValue('vh') == 'V')
98: 		#if ($!visitorGoaliesOrder.add($node.attributeValue('uni')))#end
99: 		#set($visitorCount = $visitorCount + 1)
100: 	#else
101: 		#if ($!homeGoaliesOrder.add($node.attributeValue('uni')))#end
102: 		#set($homeCount = $homeCount + 1)
103: 	#end
104: #end
105: 
106: #macro (printPlayerName $node $link)
107: 	#if ($node.valueOf("../@playerId").length() > 0 && $linkPlayers && $link)
108: 		<a href="$!linkPlayersBase?id=${stat.valueOf("../@playerId")}">
109: 	#end
110: 	$node.valueOf("../@name")
111: 	#if ($node.valueOf("../@playerId").length() > 0 && $linkPlayers && $link)
112: 		</a>
113: 	#end
114: #end
115: 
116: #macro (listGoalies $nodes $pos)
117: 	#foreach ($stat in $nodes)
118: 		#if ($pos == $stat.valueOf("../@uni") || ! $pos)
119: 			<div class="row goalies">
120: 				<div class="toggle clearfix">
121: 					<div class="data">$!stat.valueOf("../@uni")</div>
122: 					<div class="name">#printPlayerName($stat, false)</div>
123: 					#set ($ga = $stat.numberValueOf("@ga"))
124: 					<div class="data">$!formatter.formatNumber($ga, "#")</div>
125: 					<div class="data">$!stat.valueOf("@minutes")</div>
126: 					<div class="data">$!stat.valueOf("@saves")</div>
127: 					<div class="data">#shots($stat.valueOf("@ga") $stat.valueOf("@saves"))</div>
128: 				</div>
129: 			</div>
130: 		#end
131: 	#end
132: #end
133: 
134: #macro (printGoalies $team)
135: 	#set ($nodes = $team.selectNodes("player/goalie"))
136: 	#if ($team.attributeValue('vh') == 'V')
137: 		#set($order = $visitorGoaliesOrder)
138: 	#else
139: 		#set($order = $homeGoaliesOrder)
140: 	#end
141: 
142: 	#set ($printedUNIS = [])
143: 
144: 	#if ($order.size() > 0)
145: 		#foreach($uni in $order)
146: 
147: 			#set ($printAllowed = true)
148: 
149: 			#foreach($printedUNI in $printedUNIS)
150: 				#if ($uni == $printedUNI)
151: 					#set ($printAllowed = false)
152: 				#end
153: 			#end
154: 
155: 			#if ($printAllowed)
156: 				#listGoalies($nodes, $uni)
157: 				#set ($addResult = $printedUNIS.add($uni))
158: 			#end
159: 		#end
160: 	#else
161: 		#listGoalies($nodes, false)
162: 	#end
163: #end
164: 
165: ## GOALIE SHOTS
166: #macro (shots $ga $saves)
167: 	#if ($saves.length() > 0)
168: 		$tool.math.add($ga, $saves)
169: 	#else
170: 
171: 	#end
172: #end
173: 
174: ## POWER PLAY PERCENTAGE
175: #macro (pp $ppg $ppopp)
176: 	#if ($ppopp.length() > 0)
177: 		$formatter.formatNumber($tool.math.div($ppopp, $ppg), 3)
178: 	#else
179: 
180: 	#end
181: #end
182: 
183: ## SHOOTOUT
184: #macro (shootout $shootouts $t)
185: 	#foreach ($shot in $shootouts)
186: 		#if ($shot.valueOf("@vh") == $t)
187: 			#if ($shot.valueOf("@result") == "MADE")
188: 				#set ($score = $shootoutScores.get($t))
189: 				#set ($score = $tool.math.add($score, 1))
190: 				#set ($score = $shootoutScores.put($t, $score))
191: 				Goal
192: 			#else
193: 				No Goal
194: 			#end
195: 			- #${shot.valueOf("@uni")} ${shot.valueOf("@name")}<br />
196: 		#end ## if
197: 	#end ## foreach
198: #end
199: 
200: #macro (printPeriodHeadCoach)
201: #set ($ot = 0)
202: #foreach ($i in $periodRange)
203: #if (($gender == 'M' && $i > 4) || ($gender == 'F' && $i > 2))
204:   #set ($ot = $ot + 1)
205:   #if ($ot > 1)
206:   <th style="width:40px;" class="align-left">${ot}OT</th>
207:   #else
208:   <th style="width:40px;" class="align-left">OT</th>
209:   #end
210: #else
211:   <th style="width:40px;" class="align-left">$i</th>
212: #end
213: #end
214: #end
215: 
216: ## CALCULATE FACEOFF
217: #macro (calculateFaceoff $pVal $period $team)
218:    #if ($team.attributeValue("name") == $visitor)
219:       #set ($otherTeam = $document.selectSingleNode("lcgame/team[@vh='H']"))
220:    #else
221:       #set ($otherTeam = $document.selectSingleNode("lcgame/team[@vh='V']"))
222:    #end
223:    #set($add1 = $team.valueOf("linescore/lineprd[$period]/@fowon"))
224:    #set($add2 = $otherTeam.valueOf("linescore/lineprd[$period]/@fowon"))
225:    #if ($add1.length() > 0 && $add2.length() > 0)
226:    ${pVal}-$tool.math.add($add1, $add2)
227:    #end
228: #end
229: 
230: 
231: #macro (playerstatsCoach $team)
232: <table>
233:  <tr><td class="align-left"><h4>$team.valueOf("@name")</h4></td></tr>
234: </table>
235: <table>
236:  <tr>
237:   <th>POS</th>
238:   <th class="align-left">#</th>
239:   <th class="align-left">PLAYER</th>
240:   <th>G</th>
241:   <th>A</th>
242:   <th>Pts</th>
243:   <th>Sh</th>
244:   <th>SOG</th>
245:   <th>GB</th>
246:    #if ($gender == 'M')<th>Face</th>#elseif ($gender == 'F')<th>DC</th>#end
247:    #if ($gender == 'F')<th>FPS</th>#end
248:   <th>T/O</th>
249:   <th>CT</th>
250:   #if ($gender == 'M')<th>Pen-Min</th>#elseif ($gender == 'F')<th>Fouls</th>#end
251:  </tr>
252: 
253: #foreach ($stat in $team.selectNodes("player/shots"))
254:  #if ($velocityCount % 2 == 0)
255:   #set ($row = "even")
256:  #else
257:   #set ($row = "odd")
258:  #end
259: 
260:  <tr class="$row">
261:   <td class="align-left">$stat.valueOf("../@pos")</td>
262:   <td>$!stat.valueOf("../@uni")</td>
263:   <td class="nowrap">
264:   #if ($stat.valueOf("../@playerId").length() > 0 and $linkPlayers)
265:   <a href="$!linkPlayersBase?id=${stat.valueOf("../@playerId")}">
266:   #end
267:   $stat.valueOf("../@name")
268:   #if ($stat.valueOf("../@playerId").length() > 0 and $linkPlayers)
269:   </a>
270:   #end
271:   #if($stat.valueOf("../@gs").length() > 0)*#end
272:   </td>
273: 
274:   <td class="align-center">$!stat.valueOf("@g")</td>
275:   <td class="align-center">$!stat.valueOf("@a")</td>
276:   <td class="align-center">$tool.math.add($!stat.valueOf("@g"),$!stat.valueOf("@a"))</td> ## PTS
277:   <td class="align-center">$!stat.valueOf("@sh")</td>
278:   <td class="align-center">$!stat.valueOf("@sog")</td>
279:   <td class="align-center">$!stat.valueOf("../misc/@gb")</td>
280:   #if ($gender == 'M')
281:     <td class="align-center">$!stat.valueOf("../misc/@facewon")-$!tool.math.add($!stat.valueOf("../misc/@facewon"),$!stat.valueOf("../misc/@facelost"))</td> ## FACEOFFS
282:   #elseif ($gender == 'F')
283:     <td class="align-center">$!stat.valueOf("../misc/@dc")</td> ##  DRAW CONTROLS
284:   #end
285:    #if ($gender == 'F')<td class="align-center">$!stat.valueOf("../shots/@freepos")</td>#end ## FREE POSITION
286:   <td class="align-center">$!stat.valueOf("../misc/@turnover")</td>
287:   <td class="align-center">$!stat.valueOf("../misc/@ct")</td>
288:   #if ($gender == 'M')
289:   <td class="align-center">$!stat.valueOf("../penalty/@count")-$!stat.valueOf("../penalty/@seconds")</td> ## PEN MIN
290:   #elseif ($gender == 'F')
291:      <td class="align-center">$!stat.valueOf("../penalty/@foul")</td> ## FOULS
292:   #end
293:  </tr>
294: #end
295:  <tr class="totals">
296:   <td colspan="3">Totals</td>
297:   <td class="align-center">$team.valueOf("totals/shots/@g")</td>
298:   <td class="align-center">$team.valueOf("totals/shots/@a")</td>
299:   <td class="align-center">$tool.math.add($!team.valueOf("totals/shots/@g"),$!team.valueOf("totals/shots/@a"))</td> ## PTS
300:   <td class="align-center">$team.valueOf("totals/shots/@sh")</td>
301:   <td class="align-center">$team.valueOf("totals/shots/@sog")</td>
302:   <td class="align-center">$team.valueOf("totals/misc/@gb")</td>
303:   #if ($gender == 'M')
304:     <td class="align-center">$team.valueOf("totals/misc/@facewon")-$!tool.math.add($!team.valueOf("totals/misc/@facewon"),$!team.valueOf("totals/misc/@facelost"))</td> ## FACEOFFS
305:   #elseif ($gender == 'F')
306:     <td class="align-center">$!team.valueOf("totals/misc/@dc")</td> ##  DRAW CONTROLS
307:   #end
308:    #if ($gender == 'F')<td class="align-center">$!team.valueOf("totals/shots/@freepos")</td>#end ## FREE POSITION
309:   <td class="align-center">$team.valueOf("totals/misc/@turnover")</td>
310:   <td class="align-center">$team.valueOf("totals/misc/@ct")</td>
311:   #if ($gender == 'M')
312:     <td class="align-center">$!team.valueOf("totals/penalty/@count")-$!team.valueOf("totals/penalty/@seconds")</td> ## PEN MIN
313:   #elseif ($gender == 'F')
314:     <td class="align-center">$!team.valueOf("totals/penalty/@foul")</td> ## FOULS
315:   #end
316:  </tr>
317: </table>
318: 
319: #if ($team.selectNodes("player/goalie").size() >= 1)
320: <br />
321: <table>
322:  <tr>
323:      <th class="align-left">#</th>
324:      <th class="align-left">GOALIES</th>
325:      <th>Min</th>
326:      <th>GA</th>
327:      <th>W/L</th>
328:      <th>Saves</th>
329:  </tr>
330:     #foreach ($stat in $team.selectNodes("player/goalie"))
331:         #if ($stat.valueOf("@minutes") != "0:00")
332:             #if ($velocityCount % 2 == 0)
333:                 #set ($row = "even")
334:             #else
335:                 #set ($row = "odd")
336:             #end
337: 
338:             <tr class="$row">
339:                 <td>$!stat.valueOf("../@uni")</td>
340:                 <td class="nowrap">#printPlayerName($stat, false)</td>
341:                 #set ($ga = $stat.numberValueOf("@ga"))
342:                 <td class="align-center">$!stat.valueOf("@minutes")</td>
343:                 <td class="align-center">$!formatter.formatNumber($ga, "#")</td>
344:                 #set ($winLoss = " ")
345:                 #if ($stat.valueOf("@win").length() > 0)
346:                     #set ($winLoss = "W")
347:                 #elseif ($stat.valueOf("@loss").length() > 0)
348:                     #set ($winLoss = "L")
349:                 #end
350:                 <td class="align-center">$winLoss</td>
351:                 <td class="align-center">$!stat.valueOf("@saves")</td>
352:             </tr>
353:         #end
354:     #end
355: </table>
356: #end
357: 
358: #end ##macro
359: 
360: #macro (capitalize $name)
361:     $name.substring(0,1).toUpperCase()$name.substring(1).toLowerCase()
362: #end
363: 
364: ## CAPITALIZE NAMES
365: #macro (printScoringName $name)
366:     #set ($name = $name.toLowerCase())
367:     ##$name[0] <br />
368:     ##$name.get(0) <br />
369:     ##$name.get(1) <br />
370:     #set ($comaIndex = $name.indexOf(','))
371:     #set ($comaIndexNext = $comaIndex + 1)
372:     #if ($comaIndex > -1)
373:         <span>#capitalize($name.substring($comaIndexNext)) #capitalize($name.substring(0, $comaIndex))</span>##
374:     #else
375:         #capitalize($name)
376:     #end
377: #end
378: 
379: #macro (printScoring $team)
380: <div class="align-left">
381:     $team.valueOf("@name") SCORING: GOALS:
382:     #set ($playerShown = false)##
383:     #foreach ($stat in $team.selectNodes("player/shots[@g]"))##
384:     #if ($stat.numberValueOf("@g") > 0)##
385:     #if ($playerShown); #end##
386:     #set ($playerShown = true)##
387:     #printScoringName($stat.valueOf('../@checkname')) $stat.valueOf('@g')##
388:     #end##
389:     #end##
390:     .
391: 
392:     <br /> ASSISTS:
393:     #set ($playerShown = false)
394:     #foreach ($stat in $team.selectNodes("player/shots[@a]"))##
395:     #if ($stat.numberValueOf("@a") > 0)##
396:     #if ($playerShown); #end##
397:     #set ($playerShown = true)##
398:     #printScoringName($stat.valueOf('../@checkname')) $stat.valueOf('@a')##
399:     #end##
400:     #end##
401:     .
402: </div>
403: #end ##macro
404: 
405: <div class="monostats clearfix">
406: 
407: <hr />
408: ## GAME INFORMATION
409: <div class="align-left bold">
410: #if($gender == 'M')Men's #elseif($gender == 'F') Women's #end Lacrosse Box Score #if ($stats.final)(Final)#end <br />
411: #if ($page.title.length() > 0)$!page.title <br />#end
412: $visname #if($isNeutralGame)vs.#else at #end $homename <br />
413: (#if($date.length() > 0)$date #if($time.length() > 0)at $time#end#end #if($location.length() > 0)at $location #if($stadium.length() > 0)($stadium)#end#end)
414: </div>
415: <br />
416: 
417: ## SCORING
418: <div class="clearfix">
419: <div class="monostats-halfbox-left">
420: <table>
421: <tr><td valign="top">
422: 	#foreach ($team in $document.selectNodes("lcgame/team"))
423: 		#set ($teamRecord = $team.valueOf("@record"))
424: 		$team.attributeValue("name") #if($teamRecord.length() > 0)($teamRecord)#end
425: 		#if ($velocityCount == 1)
426: 			#if($isNeutralGame)vs.#else at #end <br />
427: 		#end
428: 	#end
429: 	#if($date.length() > 0)<br /> Date: $date, #end
430: 	Attendance: $document.valueOf("lcgame/venue/@attend")
431: </td>
432: </tr></table>
433: </div>
434: 
435: ## TEAM SCORES
436: <div class="monostats-halfbox-right">
437: <table>
438: <tr>
439: 	<th class="align-left" style="padding-right:10px;">SCORE BY PERIOD</th>
440: 	#printPeriodHeadCoach()
441: 	<th style="width:40px" class="align-left">#if($stats.final)FINAL#else#period($status)#if($clock.length() > 0) - $clock#end#end</th>
442: </tr>
443: #if ($stats.view != "pdf")
444:     <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
445: #end
446: 
447: #foreach ($team in $document.selectNodes("lcgame/team"))
448: 	<tr>
449: 		<td>$team.attributeValue("name")</td>
450: 		#foreach ($i in $periodRange)
451: 			<td class="align-left">$team.valueOf("linescore/lineprd[$i]/@score")</td>
452: 		#end
453: 		<td class="align-left">$team.valueOf("linescore/@score")</td>
454: 	</tr>
455: #end
456: </table>
457: </div>
458: </div>
459: <br />
460: 
461: ## SCORING BY TEAM
462: #if($stats.view == "pdf")
463: <br /><br />
464: #end
465: #printScoring($document.selectSingleNode("lcgame/team[@vh='V']"))
466: <br />
467: #printScoring($document.selectSingleNode("lcgame/team[@vh='H']"))
468: <br />
469: 
470: ## TEAM STATS
471: ## SHOTS BY PERIOD
472: <div class="monostats-halfbox-left">
473: <table>
474: <tr>
475:   <th class="align-left" style="width:150px">SHOTS BY PERIOD</th>
476:   #printPeriodHeadCoach()
477:   <th style="width:50px" class="align-left">TOTAL</th>
478:  </tr>
479: 
480:     #if ($stats.view != "pdf")
481:         <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
482:     #end
483: 
484: ## TEAM SHOTS
485: #foreach ($team in $document.selectNodes("lcgame/team"))
486:  <tr>
487:   <td class="nowrap">$team.attributeValue("name")</td>
488: #foreach ($i in $periodRange)
489:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@shots")</td>
490: #end
491:   <td class="align-left">$team.valueOf("linescore/@shots")</td>
492:  </tr>
493: #end
494: </table>
495: </div>
496: <div class="clear"></div>
497: <br />
498: 
499: ## GROUND BALLS
500: <div class="monostats-halfbox-left">
501: <table>
502:  <tr>
503:   <th class="align-left" style="width:150px">GROUND BALLS BY PRD</th>
504:   #printPeriodHeadCoach()
505:   <th style="width:50px" class="align-left">TOTAL</th>
506:  </tr>
507: 
508:     #if ($stats.view != "pdf")
509:         <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
510:     #end
511: 
512: #foreach ($team in $document.selectNodes("lcgame/team"))
513:  <tr>
514:   <td class="nowrap">$team.attributeValue("name")</td>
515: #foreach ($i in $periodRange)
516:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@gb")</td>
517: #end
518:   <td class="align-left">$team.valueOf("totals/misc/@gb")</td>
519:  </tr>
520: #end
521: </table>
522: </div>
523: <div class="clear"></div>
524: <br />
525: 
526: #if ($gender == 'M')
527: ## FACE OFFS
528: <div class="monostats-halfbox-left">
529: <table>
530:  <tr>
531:   <th class="align-left" style="width:150px">FACE-OFFS BY PRD</th>
532:   #printPeriodHeadCoach()
533:   <th style="width:50px" class="align-left">TOTAL</th>
534:  </tr>
535: 
536:     #if ($stats.view != "pdf")
537:         <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
538:     #end
539: 
540: #foreach ($team in $document.selectNodes("lcgame/team"))
541:  <tr>
542:   <td class="nowrap">$team.attributeValue("name")</td>
543: #foreach ($i in $periodRange)
544:   #set ($tfo = $team.valueOf("linescore/lineprd[$i]/@fowon"))
545:   <td class="align-left">#calculateFaceoff($tfo $i $team)</td>
546: #end
547:   <td class="align-left">$team.valueOf("totals/misc/@facewon")-$tool.math.add($team.valueOf("totals/misc/@facewon"),$team.valueOf("totals/misc/@facelost"))</td>
548:  </tr>
549: #end
550: </table>
551: </div>
552: <div class="clear"></div>
553: <br />
554: #elseif ($gender == 'F')
555: <div class="monostats-halfbox-left">
556: <table>
557:  <tr>
558:   <th class="align-left" style="width:150px">DRAW CONTROLS BY PRD</th>
559:   #printPeriodHeadCoach()
560:   <th style="width:50px" class="align-left">TOTAL</th>
561:  </tr>
562:     #if ($stats.view != "pdf")
563:         <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
564:     #end
565: #foreach ($team in $document.selectNodes("lcgame/team"))
566:  <tr>
567:   <td class="nowrap">$team.attributeValue("name")</td>
568: #foreach ($i in $periodRange)
569:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@dc")</td>
570: #end
571:   <td class="align-left">$team.valueOf("totals/misc/@dc")</td>
572:  </tr>
573: #end
574: </table>
575: </div>
576: <div class="clear"></div>
577: <br />
578: 
579: #end
580: 
581: ## CLEARS
582: <div class="monostats-halfbox-left">
583: <table>
584:  <tr>
585:   <th class="align-left" style="width:150px">CLEARS</th>
586:   #printPeriodHeadCoach()
587:   <th class="align-left" style="width:50px">TOTAL</th>
588:  </tr>
589: 
590:     #if ($stats.view != "pdf")
591:         <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
592:     #end
593: 
594: #foreach ($team in $document.selectNodes("lcgame/team"))
595:  <tr>
596:   <td class="nowrap">$team.attributeValue("name")</td>
597: #foreach ($i in $periodRange)
598:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@clearm")-$team.valueOf("linescore/lineprd[$i]/@cleara")</td>
599: #end
600:   <td class="align-left">$team.valueOf("totals/clear/@clearm")-$team.valueOf("totals/clear/@cleara")</td>
601:  </tr>
602: #end
603: </table>
604: </div>
605: <div class="clear"></div>
606: <br />
607: 
608: #if ($gender == 'M')
609: ## MAN ADVANTAGE
610: <div class="monostats-halfbox-left">
611: <table>
612:  <tr>
613:   <th class="align-left" style="width:150px">EXTRA-MAN OPPS</th>
614:   #printPeriodHeadCoach()
615:   <th>TOTAL</th>
616:  </tr>
617: 
618:     #if ($stats.view != "pdf")
619:         <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
620:     #end
621: #foreach ($team in $document.selectNodes("lcgame/team"))
622:  <tr>
623:   <td class="nowrap">$team.attributeValue("name")</td>
624: #foreach ($i in $periodRange)
625:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@ppg")-$team.valueOf("linescore/lineprd[$i]/@ppatt")</td>
626: #end
627:   <td class="align-left">$team.valueOf("totals/powerplay/@ppg")-$team.valueOf("totals/powerplay/@ppopp")</td>
628:  </tr>
629: #end
630: </table>
631: </div>
632: <div class="clear"></div>
633: <br />
634: 
635: #elseif ($gender == 'F')
636: ## FREE POSITION SHOTS
637: <div class="monostats-halfbox-left">
638: <table>
639:  <tr>
640:   <th class="align-left" style="width:150px">FREE-POSITION SHOTS</th>
641:   #printPeriodHeadCoach()
642:   <th class="align-left" style="width:50px">TOTAL</th>
643:  </tr>
644: #if ($stats.view != "pdf")
645:     <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
646: #end
647: #foreach ($team in $document.selectNodes("lcgame/team"))
648:  <tr>
649:   <td class="nowrap">$team.attributeValue("name")</td>
650: #foreach ($i in $periodRange)
651:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@fpg")-$team.valueOf("linescore/lineprd[$i]/@fps")</td>
652: #end
653:   <td class="align-left">$team.valueOf("totals/goaltype/@freepos")-$team.valueOf("totals/shots/@freepos")</td>
654:  </tr>
655: #end
656: </table>
657: </div>
658: <div class="clear"></div>
659: <br />
660: #end
661: 
662: ## SAVES
663: <div class="monostats-halfbox-left">
664: <table>
665:  <tr>
666:   <th class="align-left" style="width:150px">SAVES BY PERIOD</th>
667:   #printPeriodHeadCoach()
668:   <th style="width:50px" class="align-left">TOTAL</th>
669:  </tr>
670: #if ($stats.view != "pdf")
671:     <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
672: #end
673: #foreach ($team in $document.selectNodes("lcgame/team"))
674:  <tr>
675:   <td class="nowrap">$team.attributeValue("name")</td>
676: #foreach ($i in $periodRange)
677:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@saves")</td>
678: #end
679:   <td class="align-left">$team.valueOf("totals/goalie/@saves")</td>
680:  </tr>
681: #end
682: </table>
683: </div>
684: <div class="clear"></div>
685: <br />
686: 
687: 
688: #if ($gender == 'F')
689: ## FOULS
690: <div class="monostats-halfbox-left">
691: <table>
692:  <tr>
693:   <th class="align-left" style="width:150px">FOULS BY PRD</th>
694:   #printPeriodHeadCoach()
695:   <th style="width:50px" class="align-left">TOTAL</th>
696:  </tr>
697: #if ($stats.view != "pdf")
698:     <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
699: #end
700: #foreach ($team in $document.selectNodes("lcgame/team"))
701: <tr>
702:   <td class="nowrap">$team.attributeValue("name")</td>
703: #set ($foulTotal = 0)
704: #foreach ($i in $periodRange)
705:   #set ($foulVal = $team.valueOf("linescore/lineprd[$i]/@fouls"))
706:   #if ($foulVal.length() > 0)
707:     #set ($foulTotal = $tool.math.add($foulTotal, $foulVal))
708: 	<td class="align-left">$foulVal</td>
709:   #else
710:     <td>&#160;</td>
711:   #end
712: #end
713:   <td class="align-left">$foulTotal</td>
714: </tr>
715: #end
716: </table>
717: </div>
718: <div class="clear"></div>
719: <br />
720: #end
721: 
722: 
723: 
724: ## TURNOVERS
725: <div class="monostats-halfbox-left">
726: <table>
727:  <tr>
728:   <th class="align-left" style="width:150px">TURNOVERS BY PRD</th>
729:   #printPeriodHeadCoach()
730:   <th style="width:50px" class="align-left">TOTAL</th>
731:  </tr>
732: #if ($stats.view != "pdf")
733:     <tr><td colspan="$tool.math.add($periods, 2)" class="hr">&#160;</td></tr>
734: #end
735: #foreach ($team in $document.selectNodes("lcgame/team"))
736:  <tr>
737:   <td class="nowrap">$team.attributeValue("name")</td>
738: #foreach ($i in $periodRange)
739:   <td class="align-left">$team.valueOf("linescore/lineprd[$i]/@turnover")</td>
740: #end
741:   <td class="align-left">$team.valueOf("totals/misc/@turnover")</td>
742:  </tr>
743: #end
744: </table>
745: </div>
746: <div class="clear"></div>
747: <br />
748: 
749: #if($stats.view == "pdf")
750:     </div>
751:     <p class="pagebreak">&nbsp;</p>
752:     #printPdfHeader("Visitor Individual Statistics")
753:     <div class="monostats clearfix">
754: #else
755:     <span class="pagebreak"></span>
756: #end
757: 
758: ## VISITOR STATISTICS
759: <div class="monostats-fullbox">#playerstatsCoach($document.selectSingleNode("lcgame/team[@vh='V']"))</div>
760: <br />
761: #if($stats.view == "pdf")
762:     </div>
763:     <p class="pagebreak">&nbsp;</p>
764:     #printPdfHeader("Home Individual Statistics")
765:     <div class="monostats clearfix">
766: #end
767: ## HOME STATISTICS
768: <div class="monostats-fullbox">#playerstatsCoach($document.selectSingleNode("lcgame/team[@vh='H']"))</div>
769: 
770: #if($stats.view == "pdf")
771:     </div>
772:     <p class="pagebreak">&nbsp;</p>
773:     #printPdfHeader("Scoring/Penalty Summary")
774:     <div class="monostats clearfix">
775: #else
776:     <span class="pagebreak"></span>
777: #end
778: 
779: ## SCORING SUMMARY
780: <div class="monostats-fullbox clearfix">
781: <table style="width:100%">
782:  <tr><th #if($hasPlayByPlay)colspan="8"#else colspan="7"
783:           #end class="align-left">SCORING
784:      SUMMARY</th></tr>
785:  <tr>
786: 	<th>&#160;</th>
787: 	<th class="align-left">Prd</th>
788: 	<th class="align-left">Time</th>
789: 	<th class="align-left">Team</th>
790: 	<th class="align-left">Type</th>
791: 	<th class="align-left" style="width:30%">Goal Scorer</th>
792: 	<th class="align-left" style="width:30%">Assists</th>
793: 	#if ($hasPlayByPlay)
794: 		<th class="align-left">H-V</th>
795: 	#end
796: </tr>
797: 
798: ## #foreach ($pd in $periodRange)
799: ## #set ($shownStats = "")
800: 
801: ## <th class="align-center">-- <span class="bold">#period($pd)</span> -- </th>
802: ## #if ($hasPlayByPlay)
803: ## <td class="align-center"><span class="bold">$visitor</span></td>
804: ## <td class="align-center"><span class="bold">$home</span></td>
805: ## #end
806: 
807: #set ($currentPeriod = '')
808: #set ($currentscoreNodes = $document.selectNodes("//currentscore"))
809: #foreach ($score in $document.selectNodes("lcgame/scores/score"))
810: 	#set ($pd = $score.valueOf("@prd"))
811: 	#set ($shownStats = "y")
812: 	#set ($type = $score.valueOf("@type"))
813: 
814: 	<tr>
815: 	<td>$velocityCount.</td>
816: 	<td>#if ($currentPeriod != $pd) #period($pd) #set ($currentPeriod = $pd) #else &#160; #end</td>
817: 	<td>$score.valueOf("@time")</td>
818: 	<td>
819: 		#if($score.valueOf("@vh") == 'H') $homeid #end
820: 		#if($score.valueOf("@vh") == 'V') $visid #end
821: 	</td>
822: 
823: 	## TYPE
824: 	<td>
825:         #if ($type == 'PP')
826:             UP
827:         #elseif ($type == 'SH')
828:             DN
829:         #else
830:             $!type
831:         #end
832: 	</td>
833: 	<td>
834: 		#if ($score.valueOf("@playerId").length() > 0 and $linkPlayers)
835: 			<a href="$!linkPlayersBase?id=${score.valueOf("@playerId")}">
836: 		#end
837: 		$score.valueOf("@name")
838: 		#if ($score.valueOf("@playerId").length() > 0 and $linkPlayers)
839: 			</a>
840: 		#end
841: 	</td>
842: 	<td>
843: 		#if($score.valueOf("@assist1").length() > 0)
844: 			#if ($score.valueOf("@assist1Id").length() > 0 and $linkPlayers)
845: 				<a href="$!linkPlayersBase?id=${score.valueOf("@assist1Id")}">
846: 			#end
847: 			$score.valueOf("@assist1")
848: 			#if ($score.valueOf("@assist1Id").length() > 0 and $linkPlayers)
849: 				</a>
850: 			#end
851: 		#else
852: 			#if ($hasPlayByPlay && $gender == 'F')
853: 				#set ($scoreTime = $score.valueOf("@time"))
854: 				#set ($fpsFlag = false)
855: 
856: 				#foreach ($fpsNode in $document.selectNodes("//play[@action='FPS']"))
857: 					#if ($fpsNode.valueOf("@clock") == $scoreTime)
858: 						#set ($fpsFlag = true)
859: 					#end
860: 				#end
861: 
862: 				#if ($fpsFlag)
863: 					Free position shot
864: 				#else
865: 					unassisted
866: 				#end
867: 			#else
868: 				unassisted
869: 			#end
870: 		#end
871: 		#if($score.valueOf("@assist2").length() > 0)
872: 			&amp;
873: 			#if ($score.valueOf("@assist2Id").length() > 0 and $linkPlayers)
874: 				<a href="$!linkPlayersBase?id=${score.valueOf("@assist2Id")}">
875: 			#end
876: 			$score.valueOf("@assist2")
877: 			#if ($score.valueOf("@assist2Id").length() > 0 and $linkPlayers)
878: 				</a>
879: 			#end
880: 		#end
881: 	</td>
882: 	#if ($hasPlayByPlay && $currentscoreNodes.size() >($tool.math.sub($velocityCount, 1)))
883: 		#set ($currentScore = $currentscoreNodes.get($tool.math.sub($velocityCount, 1)))
884: 		<td>$currentScore.valueOf("@hscore")-$currentScore.valueOf("@vscore")</td>
885: 	#end
886: 	</tr>
887: #end ## scoring foreach
888: 
889: #if ($shownStats == "") <tr><td #if($hasPlayByPlay)colspan="8"#else colspan="7"#end class="align-center">(no scoring)</td></tr> #end
890: 
891: ## #end ## period range
892: </table>
893: </div>
894: 
895: 
896: ## PENALTY SUMMARY
897: <div class="monostats-fullbox clearfix">
898: <table style="width:100%">
899: 	<tr><th colspan="6" class="align-left">PENALTY SUMMARY</th></tr>
900: 	###foreach ($pd in $periodRange)
901: 	## #set ($shownStats = "")
902: 	## <tr class="stats-highlight"><td colspan="4" class="align-center">-- <span class="bold">#period($pd)</span> -- </td></tr>
903: 
904: 	<tr>
905: 		<th class="align-left">Prd</th>
906: 		<th class="align-left">Time</th>
907: 		<th class="align-left">Team</th>
908: 		<th class="align-left" style="width:30%">#-Player</th>
909: 		<th class="align-left">Min</th>
910: 		<th class="align-left" style="width:30%">Offence</th>
911: 	</tr>
912: 
913: #foreach ($penalty in $document.selectNodes("lcgame/penalties/pen"))
914: 	#set ($shownStats = "y")
915: 	<tr>
916: 	<td>#period($penalty.valueOf("@prd"))</td>
917: 	<td>$penalty.valueOf("@time")</td>
918: 	<td>
919: 		#if($penalty.valueOf("@vh") == 'H') $homeid #end
920: 		#if($penalty.valueOf("@vh") == 'V') $visid #end
921: 	</td>
922: 	<td>
923: 		##$penalty.valueOf("@../uni")-
924: 		$penalty.valueOf("@name")
925: 	</td>
926: 	<td>
927: 		$!penalty.valueOf("@minutes") $!penalty.valueOf("@type")
928: 		## #if ($penalty.valueOf("@type") == 'PP')PP#end
929: 		## #if ($penalty.valueOf("@type") == 'SH')SH#end
930: 	</td>
931: 	<td>
932: 		$!penalty.valueOf("@desc")
933: 	</td></tr>
934: #end ## penalty foreach
935: 
936: #if ($shownStats == "")
937: <tr><td colspan="6" class="align-center">(no penalties)</td></tr>
938: #end
939: 
940: #if ($gender == 'M')
941: ## penalty minutes
942: ## MEN ONLY
943:  <tr><th colspan="6" class="align-left"><br /> PENALTY TOTALS</th></tr>
944:  <tr>
945:   <td colspan="6">
946: 
947:    <table>
948:     <tr>
949:      #foreach ($team in $document.selectNodes("lcgame/team"))
950: 	  #set ($penaltySeconds = $team.valueOf("totals/penalty/@seconds"))
951: 	  #set ($penaltyCount = $team.valueOf("totals/penalty/@count"))
952: 	  #if ($penaltySeconds.length() > 0 && $penaltyCount.length() > 0)
953: 	    #set ($penaltySeconds = $tool.math.toInteger($penaltySeconds))
954: 		#set ($remainder = 0)
955: 	    #set ($remainder = $penaltySeconds % 60)
956: 	    #set ($penaltyMinutes = $tool.math.toInteger($tool.math.div($penaltySeconds, 60)))
957: 	    #if ($penaltyMinutes > 1)
958: 	      #set ($minString = "${penaltyMinutes} minutes")
959: 	    #else
960: 	      #set ($minString = "${penaltyMinutes} minute")
961:         #end
962: 		#set ($secString = "")
963: 		#if ($remainder > 0)
964: 		  #if ($remainder > 1)
965: 		    #set ($secString = "${remainder} seconds")
966: 		  #else
967: 		    #set ($secString = "${remainder} second")
968: 		  #end
969: 		#end
970:         <td><span class="bold">$team.attributeValue("name")</span>:  $minString $secString on $penaltyCount infraction(s)</td>
971: 	  #else
972: 	    <td>&#160;</td>
973: 	  #end
974:      #end
975:     </tr>
976:    </table>
977: 
978:   </td>
979:  </tr>
980: #end
981: </table>
982: </div>
983: </div>
984: 
985: #if($stats.view != "pdf" )
986:     $wiki.su
987: #end