2020-21 Volleyball Statistics - Oklahoma

Matches 18
Kills per set 11.60
Hitting % .210
Assists per set 10.72
Blocks per set 2.39
Service Aces per set 1.03
Digs per set 12.33
Schedule Summary
Overall (Pct.)4-14 (.222)
Conference (Pct.) 3-11 (.214)
StreakLost 2
Home3-5
Away1-9
Neutral0-0
Full Scores and Schedule »
Recent Games
Mar 5 at TCU W, 3-0
Mar 6 at Baylor
Mar 19 at Iowa St.
Mar 20 at Iowa St.
Mar 26 TCU L, 3-1
Mar 27 TCU L, 3-1
Statistics category Overall Conf
Matches 18 9th 14 9th
Sets 67 9th 54 9th
Kills 777 9th 606 9th
Kills per set 11.60 9th 11.22 9th
Errors 334 8th 276 7th
Total Attacks 2112 9th 1712 9th
Hitting Percentage .210 7th .193 7th
Assists 718 9th 567 9th
Assists per set 10.72 9th 10.50 9th
Service Aces 69 9th 56 9th
Service Errors 166 6th 129 5th
Service Aces per set 1.03 6th 1.04 7th
Receptions 1369 9th 1106 6th
Reception Errors 96 3rd 80 3rd
Digs 826 9th 674 9th
Digs per set 12.33 9th 12.48 9th
Block Solo 19 8th 14 9th
Block Assist 282 5th 232 3rd
Block Total 160 7th 130 4th
Blocks per set 2.39 3rd 2.41 3rd
Block Errors 24 3rd 19 5th
Ball Handling Errors 45 1st 38 1st
Points 1006.0 9th 792.0 9th
Points per set 15.0 9th 14.7 9th
Home Attendance 954 9th 954 9th
Home Attendance average 120 8th 120 9th
Players
No. Yr Pos
01 Kelsey Carrigton D I 13 34 28 0.82 14 75 .187 0 0.00 0 0.00 5 0 7 0.21 2 40 42 1.24 50.0 1.5
02 Paige Anderson D I - - - - - - - - - - - - - - - - - - - - -
There was a problem with a Velocity script
Page/httpd/prestosports/site-public/WEB-INF/themes/generic/stats-bios-template
ErrorError invoking method 'get(java.lang.Integer)' in [Ljava.lang.String; at /httpd/prestosports/site-public/WEB-INF/themes/generic/stats-bios-template[line 350, column 50]
Page source:
1: ## PICK UP OPTIONS
2: $website.include("options")
3: #set ($options = $request.getAttribute("options"))
4: #set ($locale = "en_us")
5: #set ($locale = $options.get("locale"))
6: #set ($showconf = true)
7: #if ($options.get("stats_hide_conference") and $options.get("stats_hide_conference").equalsIgnoreCase("hide"))
8: #set ($showconf = false)
9: #end
10: #set ($paginate = false)
11: #if ($options.get("stats_individual_pagination") and $options.get("stats_individual_pagination").equalsIgnoreCase("yes"))
12:   #set ($paginate = true)
13: #end
14: #set ($limit = $options.get("stats_individual_limit"))
15: 
16: #set ($isSharedMeets = true)
17: #if ($sport and $sport.statistics == true)
18:   #set ($isSharedMeets = false)
19: #end
20: 
21: #set ($isIncluded = $website.isIncluded())
22: 
23: #set ($isAjax = false)
24: #if ($request.getParameter('ajax').length() > 0)
25:   #set ($isAjax = true)
26: #end
27: 
28: #set ($idLength = 0)
29: #set ($idLength = $formatter.escapeXml($request.getParameter("id")).length())
30: #set ($teamCount = $page.getTeamIDs().size())
31: 
32: #set ($teamId = '')
33: #if ($request.getParameter("teamId").length() > 0)
34:   #set ($teamId = $request.getParameter("teamId"))
35: #end
36: 
37: #set ($isSingleTeam = false)
38: #if ($teamId.length() != 0 or $teamCount == 1)
39:   #set ($isSingleTeam = true)
40: #end
41: 
42: #if ($teamCount == 1 and (not $isIncluded) and $idLength == 0 and not $isSharedMeets)
43:   $website.decorate("")
44:   #set ($targetURL = "${page.url}/../teams?view=lineup")
45:   $response.sendRedirect($targetURL)
46:   #stop
47: #end
48: 
49: #set ($pos = "")
50: #set ($pos = $formatter.escapeXml($request.getParameter("pos")))
51: 
52: #if ($pos.length() == 0 and $briefsDefaultCategoryPosition and not $isIncluded and not $isSharedMeets)
53:   $website.decorate("")
54:   #set ($targetURL = "${page.url}?pos=" + $briefsDefaultCategoryPosition)
55:   #if($briefsDefaultSorting and $briefsDefaultSorting.containsKey($briefsDefaultCategoryPosition))
56:       #set ($targetURL = $targetURL + "&sort=" + $briefsDefaultSorting.get($briefsDefaultCategoryPosition))
57:   #end
58:   #if($paginate)
59:     #set ($targetURL = $targetURL + "&page=1")
60:   #end
61:   #if($limit)
62:     #set ($targetURL = $targetURL + "&limit=" + $limit)
63:   #end
64:   $response.sendRedirect($targetURL)
65:   #stop
66: #end
67: 
68: ## We want to leave this undefined so we can test for that
69: #set ($minEsc = $formatter.escapeXml($request.getParameter("min")))
70: #if ($minEsc.length() > 0)
71:   #set ($min = $minEsc)
72: #end
73: 
74: #set ($cansort = $formatter.escapeXml($request.getParameter("cs")))
75: 
76: ## #set ($labels = $labels.get($positions.get($pos)))
77: 
78: #set ($url = $request.requestURI)
79: #set ($paginationParameters = "")
80: #if($paginate and $!request.getParameter("page"))
81:   #set ($paginationParameters = $paginationParameters + "&page=1")
82: #end
83: #if($limit and $!request.getParameter("limit"))
84:   #set ($paginationParameters = $paginationParameters + "&limit=" + $limit)
85: #end
86: 
87: #set ($view = "")
88: #set ($view = $formatter.escapeXml($!request.getParameter("view")))
89: 
90: #set ($restriction = "0")
91: #set ($restrictionEsc = $formatter.escapeXml($request.getParameter("r")))
92: #if ($restrictionEsc.length() > 0)
93:   #set ($restriction = $restrictionEsc)
94: #end
95: 
96: $website.include("standings?tmpl=stats-standings-abbr-template")
97: #set ($teamAbbr = $request.getAttribute("teamAbbr"))
98: 
99: #*
100: <!--
101: Debug
102: URL: $url
103: isIncluded: $isIncluded
104: View: ${view}
105: Position: $pos
106: Sort: $sort
107: isAjax: $isAjax
108: isSharedMeets = $isSharedMeets
109: page.getTeamIDs.size() = $page.getTeamIDs().size()
110: teamId = $teamId
111: page.teams.entrySet() = $page.teams.entrySet().size()
112: isSingleTeam = $isSingleTeam
113: -->
114: *#
115: 
116: #if ($locale == "en_us")
117:   #set ($defLabel = "Defense")
118: #elseif ($locale == "en_gb")
119:   #set ($defLabel = "Defence")
120: #end
121: 
122: #macro(printBriefsCategories $r)
123: #set ($ariaLabel = "Overall Stats")
124: #if ($r == "1")
125: 	#set ($ariaLabel = "Conference Stats")
126: #end
127: #set ($briefsCategories = [])
128:   #if ($teamId.length() == 0 && $briefsCategoriesLabels)
129:   <div class="tab-container secondary clearfix" data-module="stats/tabs" data-type="secondary">
130:   <div class="tab-nav" data-module="jscroll" data-momentum="false">
131:   <div>
132:   <ul class="clearfix">
133: 
134:     #if($briefsCategoriesLabels.containsKey("Game"))
135: 
136:       ## So we need to print Season, Games and Minutes (for some sports)  tabs
137: 
138:       #set($briefsCategoriesSeason = $briefsCategoriesLabels.get("Season"))
139:       #set($briefsCategoriesGame = $briefsCategoriesLabels.get("Game"))
140:       #set($briefsCategoriesMinutes = $briefsCategoriesLabels.get("Minutes"))
141:       ## Iterate over the brief categories labels
142: 
143:       #set ($isFirstCategory = true)
144:       #foreach($briefsCat in $briefsCategoriesSeason.entrySet())
145:         #set($briefsCatKey = $briefsCat.key)
146:         #set($briefsCatLabel = $briefsCat.value)
147: 
148:       <li class="tabs-category" data-skip="true"><span>$briefsCatLabel:</span></li>
149:         #foreach($briefsCatGame in $briefsCategoriesGame.entrySet())
150:           #if($briefsCatGame.value == $briefsCatLabel)
151:             #set($gamePos = $briefsCatGame.key)
152:           #end
153:         #end
154: 
155:         ## Print the Game stuff
156:         #set($gameDefaultSorting = $briefsDefaultSorting.get($gamePos))
157:         <li #if ($pos == $gamePos) class="active" #end>
158:           <a href="${url}?sort=$gameDefaultSorting&view=${view}&pos=${gamePos}&r=${r}${paginationParameters}" role="button" aria-label="${ariaLabel}: ${briefsCatLabel}: game">Game</a>
159:         </li>
160: 
161:         ## Print the Season stuff
162:         #set($seasonDefaultSorting = $briefsDefaultSorting.get($briefsCatKey))
163:         #if ($pos.length() == 0 || $pos == $briefsCatKey)<li class="active">#else <li> #end
164:           <a href="${url}?sort=$seasonDefaultSorting&view=${view}&pos=${briefsCatKey}&r=${r}${paginationParameters}" role="button" aria-label="${ariaLabel}: ${briefsCatLabel}: season">Season</a>
165:         </li>
166: 
167:         #if ($briefsCategories.add({ "pos" : $gamePos}))#end
168:         #if ($briefsCategories.add({ "pos" : $briefsCatKey, "isFirstCategory" : $isFirstCategory}))#end
169: 
170:         #if ($isFirstCategory)
171:           #set ($isFirstCategory = false)
172:         #end
173: 
174:         #if ($briefsCategoriesMinutes)
175:           #foreach($briefsCatMinutes in $briefsCategoriesMinutes.entrySet())
176:             #if($briefsCatMinutes.value == $briefsCatLabel)
177:               #set($minutesPos = $briefsCatMinutes.key)
178:             #end
179:           #end
180: 
181:           ## Print the minutes stuff
182:           #set($minutesDefaultSorting = $briefsDefaultSorting.get($minutesPos))
183:           <li #if ($pos == $minutesPos) class="active" #end>
184:             <a href="${url}?sort=$minutesDefaultSorting&view=${view}&pos=${minutesPos}&r=${r}${paginationParameters}" role="button" aria-label="${ariaLabel}: ${briefsCatLabel}: minutes">Minutes</a>
185:           </li>
186: 
187:           #if ($briefsCategories.add({ "pos" : $minutesPos}))#end
188: 
189:         #end
190:       #end
191:     #else
192: 
193:       ## So there are no Games or minutes subgroup for this sport so just print the categories
194:       #set($briefsCategoriesSeason = $briefsCategoriesLabels.get("Season"))
195:       #foreach($briefCat in $briefsCategoriesSeason.entrySet())
196:         #set($categoryLabel = $briefCat.value)
197:         #set($briefCatKey = $briefCat.key)
198: 
199:         #if($locale == "en_gb")
200:           #if($categoryLabel == "Defense")
201:             #set($categoryLabel = "Defence")
202:           #end
203: 
204:           #if($categoryLabel == "Defensemen")
205:             #set($categoryLabel = "Defencemen")
206:           #end
207:         #end
208: 
209:         #set($categorySort = $briefsDefaultSorting.get($briefCatKey))
210: 
211:         ## Check if the current position category can set a sorting that comes
212:         ## from antoher tabs category or maybe from a stat alphabet-filter-column
213: 
214:         #if($briefKeepPreviousSorting)
215:           #if($briefKeepPreviousSorting.contains($pos) && $briefKeepPreviousSorting.contains($briefCatKey))
216:             #set($categorySort = $sort)
217:           #end
218:         #end
219: 
220:         <li #if ($pos == ${briefCatKey}) class="active" #end>
221:           <a href="${url}?sort=$!categorySort&view=$!view&pos=$!briefCatKey&r=$!r${paginationParameters}" role="button" aria-label="${ariaLabel}: ${categoryLabel}">$categoryLabel</a>
222:         </li>
223: 
224:         #if ($briefsCategories.add({ "pos" : $briefCatKey }))#end
225: 
226:       #end
227:     #end
228: 
229:   </ul>
230:   </div>
231:   </div> ## tab-nav
232: 
233:   <div class="tab-panels clearfix">
234:   #foreach ($category in $briefsCategories)
235:     #set ($isActive = false)
236: 
237: #*
238: <br><br><br>
239: 	$briefsCategories <br >
240:     DEBUG <br>
241:     r = $r <br>
242:     restriction = $restriction <br>
243:     pos = $pos <br>
244:     category.pos = $category.pos <br>
245: 	isFirstCategory = $isFirstCategory
246: <br><br><br>
247: *#
248: 
249: 	#if ($r == $restriction && ($pos == $category.pos || (!$pos && $isFirstCategory) || $briefsCategories.size() == 1))
250:       #set ($isActive = true)
251:     #end
252: 
253:     #if ($isActive)
254:       <div class="tab-panel active">
255:           #printPlayers($category.pos, $r)
256:       </div>
257:     #else
258:       <div class="tab-panel tab-panel-ondemand"></div>
259:     #end
260:   #end
261:   </div>
262: 
263:   </div> ## tab-container
264: 
265:   #else
266:     #printPlayers($pos, $r)
267:   #end
268: #end  ## printBriefsCategories
269: 
270: #macro(printPlayerName $isIncluded $individual)
271:   #if ($isIncluded)
272:     ${individual.firstName}
273:   #elseif ($individual.firstName.length() > 0)
274:     ${individual.firstName.substring(0, 1)}
275:   #end
276:   ${individual.lastName}
277: #end
278: 
279: #macro(printPlayers $p $r)
280:   #set ($briefs = $briefs.get($positions.get($p)))
281:   <div class="stats-wrap clearfix">
282:     <div class="stats-box stats-box-alternate full clearfix">
283:       <div class="scrollable">
284:         <div>
285:           <table>
286:             <tr class="thead accent-bg">
287:               #if ($isIncluded)
288:                 <th class="text">No.</th>
289:               #elseif ($sort != 'name' && ! $isSharedMeets)
290:                 <th class="text">Rk</th>
291:               #end
292: 
293:               <th class="text pinned-col" title="Name">
294:                 #if ($cansort == 'n' || $isSharedMeets)
295:                   Name
296:                 #else
297:                   <button value="${url}?sort=name&view=${view}&pos=${p}&r=${r}${paginationParameters}"
298:                           class="sortable"
299:                           aria-label="sort table using name">
300:                     Name
301:                   </button>
302:                 #end
303:               </th>
304: 
305:               #if ($isIncluded)
306:                 <th>Yr</th>
307:                 <th>Pos</th>
308:               #elseif ($isSharedMeets)
309:                 <th>Yr</th>
310:               #else
311:                 <th>&nbsp;</th>
312:               #end
313: 
314:               ## Hack for now
315:               #set ($pos = "")
316:               #set ($pos = $formatter.escapeXml($request.getParameter("pos")))
317:               #set ($labels = $labels.get($pos))
318: 
319:               #foreach ($key in $briefs.keySet())
320:                 #if ($cansort == 'n')
321:                   <th>${briefs.get($key)}</th>
322:                 #else
323:                   <th>
324:                     <button value="${url}?sort=${key}&view=${view}&pos=${p}&r=${r}${paginationParameters}"
325:                             title="$!{labels.get($key)}"
326:                             class="sortable"
327:                             aria-label="sort table using ${briefs.get($key)}"
328:                     >
329:                       ${briefs.get($key)}
330:                     </button>
331:                   </th>
332:                 #end
333:               #end
334:             </tr>
335: 
336:             #set ($showCount = 0)
337:             #set ($rankValue = "abb")
338:             #set ($counter = 0)
339: 
340:             #foreach ($individual in $individuals)
341:               #if ($restriction == "1")
342:                 #set ($stats = $individual.statsConference)
343:               #else
344:                 #set ($stats = $individual.stats)
345:               #end
346: 
347:               #set ($individualPosition = "")
348:               #set ($individualPosition = $individual.position)
349:               #set ($posVec = $individualPosition.split("/"))
350:               #set ($individualPosition = $posVec[0])
351: 
352:               #set ($show = "")
353: 
354:               #set ($showAllPlayers = $options.get("stats_show_all_players"))
355:               #set ($showPosition = $lineupShowPosition && $lineupShowPosition.containsKey($p))
356:               #set ($showStat = $lineupShowStat && $lineupShowStat.containsKey($p))
357:               #if (!$showAllPlayers.equalsIgnoreCase("yes") and ($showPosition or $showStat or $min))
358:                 #if ($showPosition)
359:                   #set ($indPositionsList = $lineupShowPosition.get($p))
360:                   #foreach ($indPos in $indPositionsList)
361:                     #if ($individualPosition.equalsIgnoreCase($indPos))
362:                       #set ($show = "y")
363:                     #end
364:                   #end
365:                 #end
366: 
367:                 #if ($showStat)
368:                   #set ($statsList = $lineupShowStat.get($p))
369:                   #foreach ($statElem in $statsList)
370:                     #if ($stats.get($statElem) > 0)
371:                       #set ($show = "y")
372:                     #end
373:                   #end
374:                 #end
375: 
376:                 #if ($min)
377:                   #set ($test = 0)
378:                   #set ($test = $stats.get($min))
379:                   #if ($test > 0)
380:                     #set ($show = "y")
381:                   #end
382:                 #end
383:               #else
384:                 #set ($show = "y")
385:               #end
386: 
387:               #if ($show.length() > 0)
388:                 #set ($showCount = $showCount + 1)
389:                 <tr>
390:                     #if ($isIncluded)
391:                       <td class="text">${individual.uniform}</td>
392:                     #elseif ($sort != 'name' && ! $isSharedMeets)
393:                       <td class="text">
394:                         ## Need to figure out what value is
395:                         #set ($value = ${stats.get($sort)})
396:                         #if (!($value == $rankValue))
397:                         ##This is a new rank value... let's update our ranking
398:                           #set ($rank = $showCount)
399:                           #set ($rankValue = $value)
400:                         #end
401:                         #if($request.getParameter("page"))
402:                           ${individual.getRank()}
403:                         #else
404:                           ${rank}
405:                         #end
406:                       </td>
407:                     #end
408: 
409:                     <td class="text pinned-col">
410:                       #if ($isSharedMeets)
411:                         ${individual.firstName} ${individual.lastName}
412:                       #else
413:                         #if ($page.contentType == "tournament/bios")
414:                           <a href="players/${individual.pageName}">
415:                             #printPlayerName($isIncluded, $individual)
416:                           </a>
417:                         #else
418:                           <a href="${page.url}/${individual.pageName}">
419:                             #printPlayerName($isIncluded, $individual)
420:                           </a>
421:                         #end
422:                       #end
423:                     </td>
424: 
425:                     #if ($isIncluded)
426:                       <td>$!{individual.year}</td>
427:                       <td>
428:                         #if($individual.positionAbbreviation)
429:                           $!individual.positionAbbreviation
430:                         #else
431:                           $!individual.position
432:                         #end
433:                       </td>
434:                     #elseif ($isSharedMeets)
435:                       <td>$!{individual.year}</td>
436:                     #else
437:                       #set ($teamname = "")
438:                       #set ($teamname = $individual.team)
439:                       #set ($teamname = $teamAbbr.get($individual.teamId))
440:                       #set ($teamname = $teamAbbr.get($individual.team))
441:                       <td class="text">
442:                         #if ($teamname.length() > 0)
443:                           <a href="teams?id=$!{individual.teamId}">${teamname}</a>
444:                         #end
445:                       </td>
446:                     #end
447: 
448:                     #foreach ($key in $briefs.keySet())
449:                       #set ($value = "-")
450:                       #set ($value = $formatter.formatNumber(${stats.get($key)}, $!formats.get($key)))
451:                       <td #if ($key == $sort) class="sort" #end>
452:                         #if ($value.length() > 0)
453:                           $value
454:                         #else
455:                           -
456:                         #end
457:                       </td>
458:                     #end
459:                   </tr>
460:               #end ## showing
461:             #end ## foreach individual
462: 
463:             #if ($isIncluded)
464:               #set ($teamStats = $request.getAttribute("teamStats"))
465:               <tr class="totals">
466:                 <td>&nbsp;</td>
467:                 <td class="text pinned-col">Totals</td>
468:                 <td>&nbsp;</td> ## YR
469:                 <td>&nbsp;</td> ## POS
470:                 #foreach ($key in $briefs.keySet())
471:                   #set ($value = "-")
472:                   #set ($value = $formatter.formatNumber(${teamStats.get($key)}, $!formats.get($key)))
473:                   <td #if ($key == $sort) class="sort" #end>
474:                     #if ($value.length() > 0)
475:                       $value
476:                     #else
477:                       -
478:                     #end
479:                   </td>
480:                 #end
481:               </tr>
482: 
483:               <tr class="totals">
484:                 <td>&nbsp;</td>
485:                 <td class="text pinned-col">Opponent</td>
486:                 <td>&nbsp;</td> ## YR
487:                 <td>&nbsp;</td> ## POS
488:                 #foreach ($key in $briefs.keySet())
489:                   #set ($keyopp = "${key}opp")
490:                   #set ($value = "-")
491:                   #set ($value = $formatter.formatNumber(${teamStats.get($keyopp)}, $!formats.get($key)))
492:                   <td #if ($key == $sort) class="sort" #end>
493:                     #if ($value.length() > 0)
494:                       $value
495:                     #else
496:                       -
497:                     #end
498:                   </td>
499:                 #end
500:               </tr>
501:             #end
502: 
503:             #if ($individuals.size() == 0)
504:               <tr class="totals">
505:                 <td colspan="5">
506:                   #if ($isSharedMeets)
507:                     This team's roster is empty
508:                   #elseif ($hasBiosBeforeFilter)
509:                     No players meet the minimum
510:                   #else
511:                     No stats are available at this time
512:                   #end
513:                 </td>
514:               </tr>
515:             #end
516:             #if($totals)
517:               <tfoot>
518:                   <tr class="font-weight-bold">
519:                       <td colspan="3" class="text-center">TOTALS</td>
520:                        #foreach ($key in $briefs.keySet())
521:                           #set ($value = "-")
522:                           #set ($value = $formatter.formatNumber(${totals.get($key)}, $!formats.get($key)))
523:                           <td class="text-right text-nowrap" #if($key == $sort) #end>
524:                               #if ($value.length() > 0)
525:                                   $value
526:                               #else
527:                                   -
528:                               #end
529:                           </td>
530:                       #end
531:                   </tr>
532:               </tfoot>
533:             #end
534:           </table>
535:           #if($request.getParameter("page"))
536:             Page ${request.getParameter("page")}/${totalPages} - Showing: ${showCount}, Total: ${individualsTotalLength} Players
537:           #end
538:         </div>
539:       </div> ## scrollable
540:     </div> ## stats-box
541:   </div> ## stats-wrap
542: #end ## printPlayers
543: 
544: ### END MACROS ###
545: 
546: ## TEAMS LAYOUTS FOR SHARED MEETS
547: #if ($isSharedMeets && !$isSingleTeam)
548: 
549: #set ($teams = $tool.sorter.sort($page.teams.entrySet(), "value"))
550: #set ($teamsThreshold = 20)
551: 
552: #if ($page.title.length() > 0)
553:   <h1>$page.title</h1>
554: #else
555:   <h1>Teams</h1>
556: #end
557: 
558: #if ($teams.size() > $teamsThreshold)
559: 
560: #set ($alphabets = "ABCDEFGHIJKLMNOPQRSTUVWXYZ")
561: 
562: <div class="alphabet-filter" data-module="stats/alphabet-filter">
563: <div class="alphabet-filter-chars">
564:   <span class="alphabet-filter-border"> | </span>
565:   #foreach ($alphabet in $alphabets.split(""))
566:     #if ($alphabet.length() > 0)
567:       <a href="#alphabet-filter-${alphabet}" class="alphabet-filter-char">$alphabet</a>
568:       <span class="alphabet-filter-border"> | </span>
569:     #end
570:   #end
571: </div> ## alphabet-filter-char
572: 
573: <div class="alphabet-filter-list">
574:   <div class="alphabet-filter-column">
575:       #set ($lastAlphabet = "")
576:       #set ($counter = 0)
577: 
578:       #foreach ($team in $teams)
579:         #set ($teamName = $team.value)
580: 
581:         #if ($teamName.charAt(0) != $lastAlphabet)
582:           #set ($counter = $counter + 1)
583:           #if ($counter > 1)
584:             </div> ## alphabet-filter-section
585:           #end
586:           #if ($counter == 8 || $counter == 15)
587:             </div> ## alphabet-filter-column
588:             <div class="alphabet-filter-column">
589:           #end
590:           #set ($lastAlphabet = $teamName.charAt(0))
591:           <div class="alphabet-filter-section" id="alphabet-filter-${lastAlphabet}">
592:             <h4 class="alphabet-filter-char-title">| $lastAlphabet |</h4>
593:         #end
594:         <a href="${page.url}?teamId=${team.key}" class="alphabet-filter-link">$teamName</a>
595:       #end
596:       </div> ## alphabet-filter-section
597:       </div> ## alphabet-filter-column
598: </div> ## alphabet-filter-list
599: </div> ## alphabet-filter
600: 
601: #else ## plain list
602: 
603: <div class="stats-wrap clearfix">
604:   <div class="stats-box full clearfix">
605:     <table>
606:       #foreach ($team in $teams)
607:         <tr><td class="text"><a href="${page.url}?teamId=${team.key}">$team.value</a></td></tr>
608:       #end
609:       #if ($teams.size() == 0)
610:         <tr><td>There are no teams that match this criteria</td></tr>
611:       #end
612:     </table>
613:   </div>
614: </div>
615: 
616: #end ## teams threshold
617: 
618: ## TEAMINFO ROSTER LAYOUT
619: #elseif ($isIncluded && $view == 'roster')
620:   #set ($baseball = $sport && $sport.XMLCode == "bsgame")
621:   <div class="stats-wrap clearfix">
622:     <div class="stats-box stats-box-alternate full clearfix">
623:       <div class="scrollable">
624:         <div>
625:           <table>
626:             <tr class="thead accent-bg">
627:               <th class="text">No.</th>
628:               <th class="text pinned-col">Name</th>
629:               <th>Position</th>
630:               <th>Year</th>
631:               <th>Player Status</th>
632:               #if ($baseball)
633:                 <th>Height</th>
634:                 <th>Weight</th>
635:                 <th>Bats</th>
636:                 <th>Throws</th>
637:                 <th>DOB</th>
638:                 <th>Hometown</th>
639:               #end
640:             </tr>
641:             #foreach ($individual in $individuals)
642:               <tr data-additional-roster-status="$additionalRosterStatus" data-player-status="$individual.playerStatus" data-active="$individual.active" #if($additionalRosterStatus && $individual.playerStatus == "Inactive") class="table-warning #if(!$wiki.valid()) d-none #end" #end>
643:                 <td class="text">
644:                   ${individual.uniform}
645:                 </td>
646:                 <td class="text pinned-col">
647:                   <a href="${page.url}/${individual.pageName}">${individual.firstName} ${individual.lastName}</a>
648:                 </td>
649:                 <td>
650:                   #if ($individual.positionAbbreviation)
651:                     $!individual.positionAbbreviation
652:                   #else
653:                     $!individual.position
654:                   #end
655:                 </td>
656:                 <td>$!{individual.year}</td>
657:                 <td>
658:                   #if($additionalRosterStatus)
659:                      $individual.playerStatus
660:                  #elseif ($individual.active)
661:                      Active
662:                    #else
663:                      Inactive
664:                    #end
665:                 </td>
666:                 #if ($baseball)
667:                   <td>$!{individual.dataMap["height"]}</td>
668:                   <td>$!{individual.dataMap["weight"]}</td>
669:                   <td>$!{individual.dataMap["bats"]}</td>
670:                   <td>$!{individual.dataMap["throws"]}</td>
671:                   <td>$!{individual.dataMap["born"]}</td>
672:                   <td>$!{individual.dataMap["hometown"]}</td>
673:                 #end
674:               </tr>
675:             #end
676:           </table>
677:         </div>
678:       </div>
679:     </div>
680:   </div>
681: 
682: ## SHARED MEETS PLAYERS
683: #elseif ($isSharedMeets)
684: 
685: #if ($teamId)
686:   #set ($playersPageTitle = $page.title)
687:   #foreach($team in $page.teams.entrySet())
688:     #if ($teamId == $team.key)
689:       #set ($playersPageTitle = $team.value)
690:     #end
691:   #end
692:   <h1>$playersPageTitle</h1>
693: #end
694: 
695: #printPlayers($pos, $restriction)
696: 
697: ## PLAYERS / LINEUP
698: #else
699: 
700: ## do not show these options on the lineup page
701: #if (not $isIncluded)
702: 
703:   #if ($isAjax)
704:     $website.decorate('')
705:       #printPlayers($pos $restriction)
706:     #stop
707:   #end
708: 
709:   #if ($page.contentType == "stat/bios")
710:     ## ARCHIVES
711:     <div class="align-right">$website.include("navbar-playerstats-archive?tmpl=schedule-archive-list-template")</div>
712:   #end
713: 
714:   #if ($page.title.length() > 0 && !$isSharedMeets)
715:     <h1>$page.title</h1>
716:   #end
717: 
718:   #if ($minimum.length() > 0)
719:     <div class="clearfix align-right">$!minimum</div>
720:   #end
721: 
722:   #if ($showconf && !$isSharedMeets)
723:     <div class="tab-container primary clearfix" data-module="stats/tabs" data-type="primary">
724:       <div class="tab-nav" data-module="jscroll" data-momentum="false">
725:         <div>
726:           <ul class="clearfix">
727:             <li #if ($restriction == "0")class="active"#end>
728:               <a href="${url}?sort=${sort}&view=${view}&pos=${pos}&r=0${paginationParameters}">Overall</a>
729:             </li>
730:             <li #if ($restriction == "1")class="active"#end>
731:               <a href="${url}?sort=${sort}&view=${view}&pos=${pos}&r=1${paginationParameters}">Conference</a>
732:             </li>
733:           </ul>
734:         </div>
735:       </div>
736: 
737:       <div class="tab-panels clearfix">
738:         <div class="tab-panel
739: 			#if ($restriction.equals("0"))
740: 				active
741: 			#else
742: 				#if ($teamId.length() != 0 || !$briefsCategoriesLabels) tab-panel-ondemand #else tab-panel-primary-ondemand #end
743: 			#end">
744:           #printBriefsCategories(0)
745:         </div>
746:         <div class="tab-panel
747: 			#if ($restriction.equals("1"))
748: 				active
749: 			#else
750: 				#if ($teamId.length() != 0 || !$briefsCategoriesLabels) tab-panel-ondemand #else tab-panel-primary-ondemand #end
751: 			#end">
752:           #printBriefsCategories(1)
753:         </div>
754:       </div>
755:     </div> ## tab-container overall/conf
756:   #else
757:     #printBriefsCategories($restriction)
758:   #end
759: 
760: #else
761:   #printBriefsCategories($restriction)
762: #end ## not isIncluded
763: #end ## LAYOUTS
764: 
765: $wiki.su

Players
No. Yr Pos
01 Kelsey Carrigton D I 9 23 19 0.83 12 54 .130 0 0.00 0 0.00 2 0 1 0.04 0 28 28 1.22 33.0 1.4
02 Paige Anderson D I - - - - - - - - - - - - - - - - - - - - -
There was a problem with a Velocity script
Page/httpd/prestosports/site-public/WEB-INF/themes/generic/stats-bios-template
ErrorError invoking method 'get(java.lang.Integer)' in [Ljava.lang.String; at /httpd/prestosports/site-public/WEB-INF/themes/generic/stats-bios-template[line 350, column 50]
Page source:
1: ## PICK UP OPTIONS
2: $website.include("options")
3: #set ($options = $request.getAttribute("options"))
4: #set ($locale = "en_us")
5: #set ($locale = $options.get("locale"))
6: #set ($showconf = true)
7: #if ($options.get("stats_hide_conference") and $options.get("stats_hide_conference").equalsIgnoreCase("hide"))
8: #set ($showconf = false)
9: #end
10: #set ($paginate = false)
11: #if ($options.get("stats_individual_pagination") and $options.get("stats_individual_pagination").equalsIgnoreCase("yes"))
12:   #set ($paginate = true)
13: #end
14: #set ($limit = $options.get("stats_individual_limit"))
15: 
16: #set ($isSharedMeets = true)
17: #if ($sport and $sport.statistics == true)
18:   #set ($isSharedMeets = false)
19: #end
20: 
21: #set ($isIncluded = $website.isIncluded())
22: 
23: #set ($isAjax = false)
24: #if ($request.getParameter('ajax').length() > 0)
25:   #set ($isAjax = true)
26: #end
27: 
28: #set ($idLength = 0)
29: #set ($idLength = $formatter.escapeXml($request.getParameter("id")).length())
30: #set ($teamCount = $page.getTeamIDs().size())
31: 
32: #set ($teamId = '')
33: #if ($request.getParameter("teamId").length() > 0)
34:   #set ($teamId = $request.getParameter("teamId"))
35: #end
36: 
37: #set ($isSingleTeam = false)
38: #if ($teamId.length() != 0 or $teamCount == 1)
39:   #set ($isSingleTeam = true)
40: #end
41: 
42: #if ($teamCount == 1 and (not $isIncluded) and $idLength == 0 and not $isSharedMeets)
43:   $website.decorate("")
44:   #set ($targetURL = "${page.url}/../teams?view=lineup")
45:   $response.sendRedirect($targetURL)
46:   #stop
47: #end
48: 
49: #set ($pos = "")
50: #set ($pos = $formatter.escapeXml($request.getParameter("pos")))
51: 
52: #if ($pos.length() == 0 and $briefsDefaultCategoryPosition and not $isIncluded and not $isSharedMeets)
53:   $website.decorate("")
54:   #set ($targetURL = "${page.url}?pos=" + $briefsDefaultCategoryPosition)
55:   #if($briefsDefaultSorting and $briefsDefaultSorting.containsKey($briefsDefaultCategoryPosition))
56:       #set ($targetURL = $targetURL + "&sort=" + $briefsDefaultSorting.get($briefsDefaultCategoryPosition))
57:   #end
58:   #if($paginate)
59:     #set ($targetURL = $targetURL + "&page=1")
60:   #end
61:   #if($limit)
62:     #set ($targetURL = $targetURL + "&limit=" + $limit)
63:   #end
64:   $response.sendRedirect($targetURL)
65:   #stop
66: #end
67: 
68: ## We want to leave this undefined so we can test for that
69: #set ($minEsc = $formatter.escapeXml($request.getParameter("min")))
70: #if ($minEsc.length() > 0)
71:   #set ($min = $minEsc)
72: #end
73: 
74: #set ($cansort = $formatter.escapeXml($request.getParameter("cs")))
75: 
76: ## #set ($labels = $labels.get($positions.get($pos)))
77: 
78: #set ($url = $request.requestURI)
79: #set ($paginationParameters = "")
80: #if($paginate and $!request.getParameter("page"))
81:   #set ($paginationParameters = $paginationParameters + "&page=1")
82: #end
83: #if($limit and $!request.getParameter("limit"))
84:   #set ($paginationParameters = $paginationParameters + "&limit=" + $limit)
85: #end
86: 
87: #set ($view = "")
88: #set ($view = $formatter.escapeXml($!request.getParameter("view")))
89: 
90: #set ($restriction = "0")
91: #set ($restrictionEsc = $formatter.escapeXml($request.getParameter("r")))
92: #if ($restrictionEsc.length() > 0)
93:   #set ($restriction = $restrictionEsc)
94: #end
95: 
96: $website.include("standings?tmpl=stats-standings-abbr-template")
97: #set ($teamAbbr = $request.getAttribute("teamAbbr"))
98: 
99: #*
100: <!--
101: Debug
102: URL: $url
103: isIncluded: $isIncluded
104: View: ${view}
105: Position: $pos
106: Sort: $sort
107: isAjax: $isAjax
108: isSharedMeets = $isSharedMeets
109: page.getTeamIDs.size() = $page.getTeamIDs().size()
110: teamId = $teamId
111: page.teams.entrySet() = $page.teams.entrySet().size()
112: isSingleTeam = $isSingleTeam
113: -->
114: *#
115: 
116: #if ($locale == "en_us")
117:   #set ($defLabel = "Defense")
118: #elseif ($locale == "en_gb")
119:   #set ($defLabel = "Defence")
120: #end
121: 
122: #macro(printBriefsCategories $r)
123: #set ($ariaLabel = "Overall Stats")
124: #if ($r == "1")
125: 	#set ($ariaLabel = "Conference Stats")
126: #end
127: #set ($briefsCategories = [])
128:   #if ($teamId.length() == 0 && $briefsCategoriesLabels)
129:   <div class="tab-container secondary clearfix" data-module="stats/tabs" data-type="secondary">
130:   <div class="tab-nav" data-module="jscroll" data-momentum="false">
131:   <div>
132:   <ul class="clearfix">
133: 
134:     #if($briefsCategoriesLabels.containsKey("Game"))
135: 
136:       ## So we need to print Season, Games and Minutes (for some sports)  tabs
137: 
138:       #set($briefsCategoriesSeason = $briefsCategoriesLabels.get("Season"))
139:       #set($briefsCategoriesGame = $briefsCategoriesLabels.get("Game"))
140:       #set($briefsCategoriesMinutes = $briefsCategoriesLabels.get("Minutes"))
141:       ## Iterate over the brief categories labels
142: 
143:       #set ($isFirstCategory = true)
144:       #foreach($briefsCat in $briefsCategoriesSeason.entrySet())
145:         #set($briefsCatKey = $briefsCat.key)
146:         #set($briefsCatLabel = $briefsCat.value)
147: 
148:       <li class="tabs-category" data-skip="true"><span>$briefsCatLabel:</span></li>
149:         #foreach($briefsCatGame in $briefsCategoriesGame.entrySet())
150:           #if($briefsCatGame.value == $briefsCatLabel)
151:             #set($gamePos = $briefsCatGame.key)
152:           #end
153:         #end
154: 
155:         ## Print the Game stuff
156:         #set($gameDefaultSorting = $briefsDefaultSorting.get($gamePos))
157:         <li #if ($pos == $gamePos) class="active" #end>
158:           <a href="${url}?sort=$gameDefaultSorting&view=${view}&pos=${gamePos}&r=${r}${paginationParameters}" role="button" aria-label="${ariaLabel}: ${briefsCatLabel}: game">Game</a>
159:         </li>
160: 
161:         ## Print the Season stuff
162:         #set($seasonDefaultSorting = $briefsDefaultSorting.get($briefsCatKey))
163:         #if ($pos.length() == 0 || $pos == $briefsCatKey)<li class="active">#else <li> #end
164:           <a href="${url}?sort=$seasonDefaultSorting&view=${view}&pos=${briefsCatKey}&r=${r}${paginationParameters}" role="button" aria-label="${ariaLabel}: ${briefsCatLabel}: season">Season</a>
165:         </li>
166: 
167:         #if ($briefsCategories.add({ "pos" : $gamePos}))#end
168:         #if ($briefsCategories.add({ "pos" : $briefsCatKey, "isFirstCategory" : $isFirstCategory}))#end
169: 
170:         #if ($isFirstCategory)
171:           #set ($isFirstCategory = false)
172:         #end
173: 
174:         #if ($briefsCategoriesMinutes)
175:           #foreach($briefsCatMinutes in $briefsCategoriesMinutes.entrySet())
176:             #if($briefsCatMinutes.value == $briefsCatLabel)
177:               #set($minutesPos = $briefsCatMinutes.key)
178:             #end
179:           #end
180: 
181:           ## Print the minutes stuff
182:           #set($minutesDefaultSorting = $briefsDefaultSorting.get($minutesPos))
183:           <li #if ($pos == $minutesPos) class="active" #end>
184:             <a href="${url}?sort=$minutesDefaultSorting&view=${view}&pos=${minutesPos}&r=${r}${paginationParameters}" role="button" aria-label="${ariaLabel}: ${briefsCatLabel}: minutes">Minutes</a>
185:           </li>
186: 
187:           #if ($briefsCategories.add({ "pos" : $minutesPos}))#end
188: 
189:         #end
190:       #end
191:     #else
192: 
193:       ## So there are no Games or minutes subgroup for this sport so just print the categories
194:       #set($briefsCategoriesSeason = $briefsCategoriesLabels.get("Season"))
195:       #foreach($briefCat in $briefsCategoriesSeason.entrySet())
196:         #set($categoryLabel = $briefCat.value)
197:         #set($briefCatKey = $briefCat.key)
198: 
199:         #if($locale == "en_gb")
200:           #if($categoryLabel == "Defense")
201:             #set($categoryLabel = "Defence")
202:           #end
203: 
204:           #if($categoryLabel == "Defensemen")
205:             #set($categoryLabel = "Defencemen")
206:           #end
207:         #end
208: 
209:         #set($categorySort = $briefsDefaultSorting.get($briefCatKey))
210: 
211:         ## Check if the current position category can set a sorting that comes
212:         ## from antoher tabs category or maybe from a stat alphabet-filter-column
213: 
214:         #if($briefKeepPreviousSorting)
215:           #if($briefKeepPreviousSorting.contains($pos) && $briefKeepPreviousSorting.contains($briefCatKey))
216:             #set($categorySort = $sort)
217:           #end
218:         #end
219: 
220:         <li #if ($pos == ${briefCatKey}) class="active" #end>
221:           <a href="${url}?sort=$!categorySort&view=$!view&pos=$!briefCatKey&r=$!r${paginationParameters}" role="button" aria-label="${ariaLabel}: ${categoryLabel}">$categoryLabel</a>
222:         </li>
223: 
224:         #if ($briefsCategories.add({ "pos" : $briefCatKey }))#end
225: 
226:       #end
227:     #end
228: 
229:   </ul>
230:   </div>
231:   </div> ## tab-nav
232: 
233:   <div class="tab-panels clearfix">
234:   #foreach ($category in $briefsCategories)
235:     #set ($isActive = false)
236: 
237: #*
238: <br><br><br>
239: 	$briefsCategories <br >
240:     DEBUG <br>
241:     r = $r <br>
242:     restriction = $restriction <br>
243:     pos = $pos <br>
244:     category.pos = $category.pos <br>
245: 	isFirstCategory = $isFirstCategory
246: <br><br><br>
247: *#
248: 
249: 	#if ($r == $restriction && ($pos == $category.pos || (!$pos && $isFirstCategory) || $briefsCategories.size() == 1))
250:       #set ($isActive = true)
251:     #end
252: 
253:     #if ($isActive)
254:       <div class="tab-panel active">
255:           #printPlayers($category.pos, $r)
256:       </div>
257:     #else
258:       <div class="tab-panel tab-panel-ondemand"></div>
259:     #end
260:   #end
261:   </div>
262: 
263:   </div> ## tab-container
264: 
265:   #else
266:     #printPlayers($pos, $r)
267:   #end
268: #end  ## printBriefsCategories
269: 
270: #macro(printPlayerName $isIncluded $individual)
271:   #if ($isIncluded)
272:     ${individual.firstName}
273:   #elseif ($individual.firstName.length() > 0)
274:     ${individual.firstName.substring(0, 1)}
275:   #end
276:   ${individual.lastName}
277: #end
278: 
279: #macro(printPlayers $p $r)
280:   #set ($briefs = $briefs.get($positions.get($p)))
281:   <div class="stats-wrap clearfix">
282:     <div class="stats-box stats-box-alternate full clearfix">
283:       <div class="scrollable">
284:         <div>
285:           <table>
286:             <tr class="thead accent-bg">
287:               #if ($isIncluded)
288:                 <th class="text">No.</th>
289:               #elseif ($sort != 'name' && ! $isSharedMeets)
290:                 <th class="text">Rk</th>
291:               #end
292: 
293:               <th class="text pinned-col" title="Name">
294:                 #if ($cansort == 'n' || $isSharedMeets)
295:                   Name
296:                 #else
297:                   <button value="${url}?sort=name&view=${view}&pos=${p}&r=${r}${paginationParameters}"
298:                           class="sortable"
299:                           aria-label="sort table using name">
300:                     Name
301:                   </button>
302:                 #end
303:               </th>
304: 
305:               #if ($isIncluded)
306:                 <th>Yr</th>
307:                 <th>Pos</th>
308:               #elseif ($isSharedMeets)
309:                 <th>Yr</th>
310:               #else
311:                 <th>&nbsp;</th>
312:               #end
313: 
314:               ## Hack for now
315:               #set ($pos = "")
316:               #set ($pos = $formatter.escapeXml($request.getParameter("pos")))
317:               #set ($labels = $labels.get($pos))
318: 
319:               #foreach ($key in $briefs.keySet())
320:                 #if ($cansort == 'n')
321:                   <th>${briefs.get($key)}</th>
322:                 #else
323:                   <th>
324:                     <button value="${url}?sort=${key}&view=${view}&pos=${p}&r=${r}${paginationParameters}"
325:                             title="$!{labels.get($key)}"
326:                             class="sortable"
327:                             aria-label="sort table using ${briefs.get($key)}"
328:                     >
329:                       ${briefs.get($key)}
330:                     </button>
331:                   </th>
332:                 #end
333:               #end
334:             </tr>
335: 
336:             #set ($showCount = 0)
337:             #set ($rankValue = "abb")
338:             #set ($counter = 0)
339: 
340:             #foreach ($individual in $individuals)
341:               #if ($restriction == "1")
342:                 #set ($stats = $individual.statsConference)
343:               #else
344:                 #set ($stats = $individual.stats)
345:               #end
346: 
347:               #set ($individualPosition = "")
348:               #set ($individualPosition = $individual.position)
349:               #set ($posVec = $individualPosition.split("/"))
350:               #set ($individualPosition = $posVec[0])
351: 
352:               #set ($show = "")
353: 
354:               #set ($showAllPlayers = $options.get("stats_show_all_players"))
355:               #set ($showPosition = $lineupShowPosition && $lineupShowPosition.containsKey($p))
356:               #set ($showStat = $lineupShowStat && $lineupShowStat.containsKey($p))
357:               #if (!$showAllPlayers.equalsIgnoreCase("yes") and ($showPosition or $showStat or $min))
358:                 #if ($showPosition)
359:                   #set ($indPositionsList = $lineupShowPosition.get($p))
360:                   #foreach ($indPos in $indPositionsList)
361:                     #if ($individualPosition.equalsIgnoreCase($indPos))
362:                       #set ($show = "y")
363:                     #end
364:                   #end
365:                 #end
366: 
367:                 #if ($showStat)
368:                   #set ($statsList = $lineupShowStat.get($p))
369:                   #foreach ($statElem in $statsList)
370:                     #if ($stats.get($statElem) > 0)
371:                       #set ($show = "y")
372:                     #end
373:                   #end
374:                 #end
375: 
376:                 #if ($min)
377:                   #set ($test = 0)
378:                   #set ($test = $stats.get($min))
379:                   #if ($test > 0)
380:                     #set ($show = "y")
381:                   #end
382:                 #end
383:               #else
384:                 #set ($show = "y")
385:               #end
386: 
387:               #if ($show.length() > 0)
388:                 #set ($showCount = $showCount + 1)
389:                 <tr>
390:                     #if ($isIncluded)
391:                       <td class="text">${individual.uniform}</td>
392:                     #elseif ($sort != 'name' && ! $isSharedMeets)
393:                       <td class="text">
394:                         ## Need to figure out what value is
395:                         #set ($value = ${stats.get($sort)})
396:                         #if (!($value == $rankValue))
397:                         ##This is a new rank value... let's update our ranking
398:                           #set ($rank = $showCount)
399:                           #set ($rankValue = $value)
400:                         #end
401:                         #if($request.getParameter("page"))
402:                           ${individual.getRank()}
403:                         #else
404:                           ${rank}
405:                         #end
406:                       </td>
407:                     #end
408: 
409:                     <td class="text pinned-col">
410:                       #if ($isSharedMeets)
411:                         ${individual.firstName} ${individual.lastName}
412:                       #else
413:                         #if ($page.contentType == "tournament/bios")
414:                           <a href="players/${individual.pageName}">
415:                             #printPlayerName($isIncluded, $individual)
416:                           </a>
417:                         #else
418:                           <a href="${page.url}/${individual.pageName}">
419:                             #printPlayerName($isIncluded, $individual)
420:                           </a>
421:                         #end
422:                       #end
423:                     </td>
424: 
425:                     #if ($isIncluded)
426:                       <td>$!{individual.year}</td>
427:                       <td>
428:                         #if($individual.positionAbbreviation)
429:                           $!individual.positionAbbreviation
430:                         #else
431:                           $!individual.position
432:                         #end
433:                       </td>
434:                     #elseif ($isSharedMeets)
435:                       <td>$!{individual.year}</td>
436:                     #else
437:                       #set ($teamname = "")
438:                       #set ($teamname = $individual.team)
439:                       #set ($teamname = $teamAbbr.get($individual.teamId))
440:                       #set ($teamname = $teamAbbr.get($individual.team))
441:                       <td class="text">
442:                         #if ($teamname.length() > 0)
443:                           <a href="teams?id=$!{individual.teamId}">${teamname}</a>
444:                         #end
445:                       </td>
446:                     #end
447: 
448:                     #foreach ($key in $briefs.keySet())
449:                       #set ($value = "-")
450:                       #set ($value = $formatter.formatNumber(${stats.get($key)}, $!formats.get($key)))
451:                       <td #if ($key == $sort) class="sort" #end>
452:                         #if ($value.length() > 0)
453:                           $value
454:                         #else
455:                           -
456:                         #end
457:                       </td>
458:                     #end
459:                   </tr>
460:               #end ## showing
461:             #end ## foreach individual
462: 
463:             #if ($isIncluded)
464:               #set ($teamStats = $request.getAttribute("teamStats"))
465:               <tr class="totals">
466:                 <td>&nbsp;</td>
467:                 <td class="text pinned-col">Totals</td>
468:                 <td>&nbsp;</td> ## YR
469:                 <td>&nbsp;</td> ## POS
470:                 #foreach ($key in $briefs.keySet())
471:                   #set ($value = "-")
472:                   #set ($value = $formatter.formatNumber(${teamStats.get($key)}, $!formats.get($key)))
473:                   <td #if ($key == $sort) class="sort" #end>
474:                     #if ($value.length() > 0)
475:                       $value
476:                     #else
477:                       -
478:                     #end
479:                   </td>
480:                 #end
481:               </tr>
482: 
483:               <tr class="totals">
484:                 <td>&nbsp;</td>
485:                 <td class="text pinned-col">Opponent</td>
486:                 <td>&nbsp;</td> ## YR
487:                 <td>&nbsp;</td> ## POS
488:                 #foreach ($key in $briefs.keySet())
489:                   #set ($keyopp = "${key}opp")
490:                   #set ($value = "-")
491:                   #set ($value = $formatter.formatNumber(${teamStats.get($keyopp)}, $!formats.get($key)))
492:                   <td #if ($key == $sort) class="sort" #end>
493:                     #if ($value.length() > 0)
494:                       $value
495:                     #else
496:                       -
497:                     #end
498:                   </td>
499:                 #end
500:               </tr>
501:             #end
502: 
503:             #if ($individuals.size() == 0)
504:               <tr class="totals">
505:                 <td colspan="5">
506:                   #if ($isSharedMeets)
507:                     This team's roster is empty
508:                   #elseif ($hasBiosBeforeFilter)
509:                     No players meet the minimum
510:                   #else
511:                     No stats are available at this time
512:                   #end
513:                 </td>
514:               </tr>
515:             #end
516:             #if($totals)
517:               <tfoot>
518:                   <tr class="font-weight-bold">
519:                       <td colspan="3" class="text-center">TOTALS</td>
520:                        #foreach ($key in $briefs.keySet())
521:                           #set ($value = "-")
522:                           #set ($value = $formatter.formatNumber(${totals.get($key)}, $!formats.get($key)))
523:                           <td class="text-right text-nowrap" #if($key == $sort) #end>
524:                               #if ($value.length() > 0)
525:                                   $value
526:                               #else
527:                                   -
528:                               #end
529:                           </td>
530:                       #end
531:                   </tr>
532:               </tfoot>
533:             #end
534:           </table>
535:           #if($request.getParameter("page"))
536:             Page ${request.getParameter("page")}/${totalPages} - Showing: ${showCount}, Total: ${individualsTotalLength} Players
537:           #end
538:         </div>
539:       </div> ## scrollable
540:     </div> ## stats-box
541:   </div> ## stats-wrap
542: #end ## printPlayers
543: 
544: ### END MACROS ###
545: 
546: ## TEAMS LAYOUTS FOR SHARED MEETS
547: #if ($isSharedMeets && !$isSingleTeam)
548: 
549: #set ($teams = $tool.sorter.sort($page.teams.entrySet(), "value"))
550: #set ($teamsThreshold = 20)
551: 
552: #if ($page.title.length() > 0)
553:   <h1>$page.title</h1>
554: #else
555:   <h1>Teams</h1>
556: #end
557: 
558: #if ($teams.size() > $teamsThreshold)
559: 
560: #set ($alphabets = "ABCDEFGHIJKLMNOPQRSTUVWXYZ")
561: 
562: <div class="alphabet-filter" data-module="stats/alphabet-filter">
563: <div class="alphabet-filter-chars">
564:   <span class="alphabet-filter-border"> | </span>
565:   #foreach ($alphabet in $alphabets.split(""))
566:     #if ($alphabet.length() > 0)
567:       <a href="#alphabet-filter-${alphabet}" class="alphabet-filter-char">$alphabet</a>
568:       <span class="alphabet-filter-border"> | </span>
569:     #end
570:   #end
571: </div> ## alphabet-filter-char
572: 
573: <div class="alphabet-filter-list">
574:   <div class="alphabet-filter-column">
575:       #set ($lastAlphabet = "")
576:       #set ($counter = 0)
577: 
578:       #foreach ($team in $teams)
579:         #set ($teamName = $team.value)
580: 
581:         #if ($teamName.charAt(0) != $lastAlphabet)
582:           #set ($counter = $counter + 1)
583:           #if ($counter > 1)
584:             </div> ## alphabet-filter-section
585:           #end
586:           #if ($counter == 8 || $counter == 15)
587:             </div> ## alphabet-filter-column
588:             <div class="alphabet-filter-column">
589:           #end
590:           #set ($lastAlphabet = $teamName.charAt(0))
591:           <div class="alphabet-filter-section" id="alphabet-filter-${lastAlphabet}">
592:             <h4 class="alphabet-filter-char-title">| $lastAlphabet |</h4>
593:         #end
594:         <a href="${page.url}?teamId=${team.key}" class="alphabet-filter-link">$teamName</a>
595:       #end
596:       </div> ## alphabet-filter-section
597:       </div> ## alphabet-filter-column
598: </div> ## alphabet-filter-list
599: </div> ## alphabet-filter
600: 
601: #else ## plain list
602: 
603: <div class="stats-wrap clearfix">
604:   <div class="stats-box full clearfix">
605:     <table>
606:       #foreach ($team in $teams)
607:         <tr><td class="text"><a href="${page.url}?teamId=${team.key}">$team.value</a></td></tr>
608:       #end
609:       #if ($teams.size() == 0)
610:         <tr><td>There are no teams that match this criteria</td></tr>
611:       #end
612:     </table>
613:   </div>
614: </div>
615: 
616: #end ## teams threshold
617: 
618: ## TEAMINFO ROSTER LAYOUT
619: #elseif ($isIncluded && $view == 'roster')
620:   #set ($baseball = $sport && $sport.XMLCode == "bsgame")
621:   <div class="stats-wrap clearfix">
622:     <div class="stats-box stats-box-alternate full clearfix">
623:       <div class="scrollable">
624:         <div>
625:           <table>
626:             <tr class="thead accent-bg">
627:               <th class="text">No.</th>
628:               <th class="text pinned-col">Name</th>
629:               <th>Position</th>
630:               <th>Year</th>
631:               <th>Player Status</th>
632:               #if ($baseball)
633:                 <th>Height</th>
634:                 <th>Weight</th>
635:                 <th>Bats</th>
636:                 <th>Throws</th>
637:                 <th>DOB</th>
638:                 <th>Hometown</th>
639:               #end
640:             </tr>
641:             #foreach ($individual in $individuals)
642:               <tr data-additional-roster-status="$additionalRosterStatus" data-player-status="$individual.playerStatus" data-active="$individual.active" #if($additionalRosterStatus && $individual.playerStatus == "Inactive") class="table-warning #if(!$wiki.valid()) d-none #end" #end>
643:                 <td class="text">
644:                   ${individual.uniform}
645:                 </td>
646:                 <td class="text pinned-col">
647:                   <a href="${page.url}/${individual.pageName}">${individual.firstName} ${individual.lastName}</a>
648:                 </td>
649:                 <td>
650:                   #if ($individual.positionAbbreviation)
651:                     $!individual.positionAbbreviation
652:                   #else
653:                     $!individual.position
654:                   #end
655:                 </td>
656:                 <td>$!{individual.year}</td>
657:                 <td>
658:                   #if($additionalRosterStatus)
659:                      $individual.playerStatus
660:                  #elseif ($individual.active)
661:                      Active
662:                    #else
663:                      Inactive
664:                    #end
665:                 </td>
666:                 #if ($baseball)
667:                   <td>$!{individual.dataMap["height"]}</td>
668:                   <td>$!{individual.dataMap["weight"]}</td>
669:                   <td>$!{individual.dataMap["bats"]}</td>
670:                   <td>$!{individual.dataMap["throws"]}</td>
671:                   <td>$!{individual.dataMap["born"]}</td>
672:                   <td>$!{individual.dataMap["hometown"]}</td>
673:                 #end
674:               </tr>
675:             #end
676:           </table>
677:         </div>
678:       </div>
679:     </div>
680:   </div>
681: 
682: ## SHARED MEETS PLAYERS
683: #elseif ($isSharedMeets)
684: 
685: #if ($teamId)
686:   #set ($playersPageTitle = $page.title)
687:   #foreach($team in $page.teams.entrySet())
688:     #if ($teamId == $team.key)
689:       #set ($playersPageTitle = $team.value)
690:     #end
691:   #end
692:   <h1>$playersPageTitle</h1>
693: #end
694: 
695: #printPlayers($pos, $restriction)
696: 
697: ## PLAYERS / LINEUP
698: #else
699: 
700: ## do not show these options on the lineup page
701: #if (not $isIncluded)
702: 
703:   #if ($isAjax)
704:     $website.decorate('')
705:       #printPlayers($pos $restriction)
706:     #stop
707:   #end
708: 
709:   #if ($page.contentType == "stat/bios")
710:     ## ARCHIVES
711:     <div class="align-right">$website.include("navbar-playerstats-archive?tmpl=schedule-archive-list-template")</div>
712:   #end
713: 
714:   #if ($page.title.length() > 0 && !$isSharedMeets)
715:     <h1>$page.title</h1>
716:   #end
717: 
718:   #if ($minimum.length() > 0)
719:     <div class="clearfix align-right">$!minimum</div>
720:   #end
721: 
722:   #if ($showconf && !$isSharedMeets)
723:     <div class="tab-container primary clearfix" data-module="stats/tabs" data-type="primary">
724:       <div class="tab-nav" data-module="jscroll" data-momentum="false">
725:         <div>
726:           <ul class="clearfix">
727:             <li #if ($restriction == "0")class="active"#end>
728:               <a href="${url}?sort=${sort}&view=${view}&pos=${pos}&r=0${paginationParameters}">Overall</a>
729:             </li>
730:             <li #if ($restriction == "1")class="active"#end>
731:               <a href="${url}?sort=${sort}&view=${view}&pos=${pos}&r=1${paginationParameters}">Conference</a>
732:             </li>
733:           </ul>
734:         </div>
735:       </div>
736: 
737:       <div class="tab-panels clearfix">
738:         <div class="tab-panel
739: 			#if ($restriction.equals("0"))
740: 				active
741: 			#else
742: 				#if ($teamId.length() != 0 || !$briefsCategoriesLabels) tab-panel-ondemand #else tab-panel-primary-ondemand #end
743: 			#end">
744:           #printBriefsCategories(0)
745:         </div>
746:         <div class="tab-panel
747: 			#if ($restriction.equals("1"))
748: 				active
749: 			#else
750: 				#if ($teamId.length() != 0 || !$briefsCategoriesLabels) tab-panel-ondemand #else tab-panel-primary-ondemand #end
751: 			#end">
752:           #printBriefsCategories(1)
753:         </div>
754:       </div>
755:     </div> ## tab-container overall/conf
756:   #else
757:     #printBriefsCategories($restriction)
758:   #end
759: 
760: #else
761:   #printBriefsCategories($restriction)
762: #end ## not isIncluded
763: #end ## LAYOUTS
764: 
765: $wiki.su

Download roster: VRO (First Last) | VRO (Last, First)
Date Opponent Score s k e ta pct a sa se r re digs bs ba be tot bhe pts
Sep 24 Texas L, 3-0 3 24 13 74 .149 22 3 7 60 4 25 1 8 0 5 0 32.0
Sep 25 Texas L, 3-1 4 43 24 125 .152 40 5 5 87 2 43 1 18 5 10 0 58.0
Oct 8 at Baylor L, 3-2 5 51 21 137 .219 51 5 12 91 6 62 1 10 1 6 2 62.0
Oct 9 at Baylor L, 3-0 3 23 20 101 .030 23 1 9 65 3 42 0 14 0 7 6 31.0
Oct 16 Kansas W, 3-2 5 61 20 149 .275 57 7 7 88 13 68 3 6 0 6 6 74.0
Oct 17 Kansas W, 3-0 3 38 21 104 .163 32 7 9 64 3 34 1 14 2 8 4 53.0
Oct 22 at Kansas St. L, 3-0 3 22 14 87 .092 19 3 2 62 9 39 0 12 3 6 3 31.0
Oct 23 at Kansas St. L, 3-2 5 46 27 158 .120 43 8 13 91 5 60 1 36 2 19 2 73.0
Oct 30 at Iowa St.   - - - - - - - - - - - - - - - - -
Oct 31 at Iowa St.   - - - - - - - - - - - - - - - - -
Nov 5 TCU   - - - - - - - - - - - - - - - - -
Nov 6 TCU   - - - - - - - - - - - - - - - - -
Nov 12 at Texas Tech L, 3-1 4 55 17 134 .284 50 3 14 89 3 48 2 22 1 13 5 71.0
Nov 13 at Texas Tech L, 3-0 3 36 18 105 .171 36 1 8 67 7 46 0 10 0 5 2 42.0
Nov 19 West Virginia W, 3-1 4 53 17 126 .286 51 4 13 81 6 45 1 30 2 16 1 73.0
Nov 20 West Virginia L, 3-1 4 58 19 146 .267 57 4 13 93 7 56 2 12 3 8 3 70.0
Feb 26 at Texas L, 3-0 3 38 12 94 .277 31 1 6 65 3 34 0 8 0 4 2 43.0
Feb 27 at Texas L, 3-0 3 31 15 85 .188 28 3 11 64 4 27 2 12 0 8 1 42.0
Mar 4 at North Texas L, 3-1 4 56 21 129 .271 48 4 14 82 8 52 3 18 5 12 4 72.0
Mar 5 at TCU W, 3-0 3 46 10 92 .391 44 5 6 52 1 39 0 12 0 6 0 57.0
Mar 6 at Baylor   - - - - - - - - - - - - - - - - -
Mar 19 at Iowa St.   - - - - - - - - - - - - - - - - -
Mar 20 at Iowa St.   - - - - - - - - - - - - - - - - -
Mar 26 TCU L, 3-1 4 45 21 120 .200 41 1 10 83 6 42 1 20 0 11 1 57.0
Mar 27 TCU L, 3-1 4 51 24 146 .185 45 4 7 85 6 64 0 20 0 10 3 65.0
  m s k k/s e ta pct a a/s sa sa/s r re digs d/s bs ba tot b/s pts pts/s
Total 18 67 777 11.60 334 2112 .210 718 10.72 69 1.03 1369 96 826 12.33 19 282 160 2.39 1006.0 15.0
Conference 14 54 606 11.22 276 1712 .193 567 10.50 56 1.04 1106 80 674 12.48 14 232 130 2.41 792.0 14.7
Exhibition - - - - - - - - - - - - - - - - - - - - -
 
-
Home 8 31 373 12.03 159 990 .216 345 11.13 35 1.13 641 47 377 12.16 10 128 74 2.39 482.0 15.5
Away 10 36 404 11.22 175 1122 .204 373 10.36 34 0.94 728 49 449 12.47 9 154 86 2.39 524.0 14.6
Neutral - - - - - - - - - - - - - - - - - - - - -
 
-
Wins 4 15 198 13.20 68 471 .276 184 12.27 23 1.53 285 23 186 12.40 5 62 36 2.40 257.0 17.1
Losses 14 52 579 11.13 266 1641 .191 534 10.27 46 0.88 1084 73 640 12.31 14 220 124 2.38 749.0 14.4
 
-
September 2 7 67 9.57 37 199 .151 62 8.86 8 1.14 147 6 68 9.71 2 26 15 2.14 90.0 12.9
October 6 24 241 10.04 123 736 .160 225 9.38 31 1.29 461 39 305 12.71 6 92 52 2.17 324.0 13.5
November 4 15 202 13.47 71 511 .256 194 12.93 12 0.80 330 23 195 13.00 5 74 42 2.80 256.0 17.1
February 2 6 69 11.50 27 179 .235 59 9.83 4 0.67 129 7 61 10.17 2 20 12 2.00 85.0 14.2
March 4 15 198 13.20 76 487 .251 178 11.87 14 0.93 302 21 197 13.13 4 70 39 2.60 251.0 16.7
Date Opponent Score Attend
Sep 24 Texas L, 3-0 131
Sep 25 Texas L, 3-1 127
Oct 8 at Baylor L, 3-2 518
Oct 9 at Baylor L, 3-0 861
Oct 16 Kansas W, 3-2 124
Oct 17 Kansas W, 3-0 131
Oct 22 at Kansas St. L, 3-0 355
Oct 23 at Kansas St. L, 3-2 528
Oct 30 at Iowa St.   -
Oct 31 at Iowa St.   -
Nov 5 TCU   -
Nov 6 TCU   -
Nov 12 at Texas Tech L, 3-1 319
Nov 13 at Texas Tech L, 3-0 331
Nov 19 West Virginia W, 3-1 125
Nov 20 West Virginia L, 3-1 127
Feb 26 at Texas L, 3-0 52
Feb 27 at Texas L, 3-0 28
Mar 4 at North Texas L, 3-1 82
Mar 5 at TCU W, 3-0 256
Mar 6 at Baylor   -
Mar 19 at Iowa St.   -
Mar 20 at Iowa St.   -
Mar 26 TCU L, 3-1 94
Mar 27 TCU L, 3-1 95