26 - Caleb Brown
Caleb Brown
Position: Defensive Back
Year: Sophomore
Height: 5-11
Weight: 173
Hometown: Crownsville, Md.
High School:Old Mill
gp 9
tk 9
sac -
int -
ffum -

As a sophomore (2012):  Appeared in all but one of the teams 10 games making one start ... totaled nine total tackles including five solo ... deflected two passes ... recorded four tackles in the season-finale against FDU-Florham (11/10).

As a freshman (2011):  Appeared in all but one of the team’s 10 games with two starts … totaled 26 tackles, including 17 solo and nine assisted … recorded six solo tackles at Delaware Valley (10/1) … totaled a career-high seven tackles, four solo and three assisted, in a game against King’s (Pa.) (9/17) … posted one tackle for loss in the first-ever win over Christopher Newport (9/10).

Before Stevenson:  Played defensive back for head coach Damian Ferragamo at Old Mill High School … recorded three interceptions, including one for a touchdown as a senior … named all-county and all-metro … graduated in 2011.

Personal:  Full name is Caleb Cedric Brown … born on November 6, 1992 … is the son of Cedric and Bobette Brown … plans to major in psychology.

CAREER STATISTICS

SeasonG-GSSOLOASSIT.TOTALSACKS-YDSTFL-YARDSFFFRPDINT-YDS
20119-2179260-0.01.0-30020-0.0
20129-15490-0.01.5-30020-0.0
Career18-32213350-0.02.5-60040-0.0
Recent Games
Sep 29 at Misericordia W, 35-7
Oct 6 at Widener L, 56-20
Oct 20 Wilkes L, 38-35
Oct 27 at King's (Pa.) L, 34-21
Nov 3 at Lycoming L, 32-7
Nov 10 FDU-Florham W, 28-13
Statistics category Overall Conf
Solo tackles 5 5
Assists 4 4
Tackles 9 9
Tackles per game 1.0 1.0
Sacks - -
Sack yards - -
Interceptions - -
Returned for touchdown - -
Fumble recoveries - -
Fumble return TDs - -
Date Opponent Score tack ast tot sack lost tfl yds ff fr td int yds td brup blk saf
Sep 1 Shenandoah L, 26-16 - - - - - - - - - - - - - - - -
Sep 8 at Albright L, 29-22 - - 0 - - 0 - - - - - - - - - -
Sep 15 Delaware Valley L, 34-10 0 1 1 - - 0 - - - - - - - - - -
Sep 22 Lebanon Valley L, 31-28 1 0 1 - - 0 - - - - - - - - - -
Sep 29 at Misericordia W, 35-7 - - 0 - - 0 - - - - - - - - - -
Oct 6 at Widener L, 56-20 1 0 1 - - 0 - - - - - - - - - -
Oct 20 Wilkes L, 38-35 - - 0 - - 0 - - - - - - - - - -
Oct 27 at King's (Pa.) L, 34-21 0 1 1 - - 0 - - - - - - - - - -
Nov 3 at Lycoming L, 32-7 1 0 1 - - 0 - - - - - - - - - -
Nov 10 FDU-Florham W, 28-13 2 2 4 - - 1.5 3 - - - - - - 2 - -
  gp tkl ast tot tkl/g sck yds tfl yds ff fr yds int yds brup blk
There was a problem with a Velocity script
Page/sports/fball/2012-13/bios/bio-template
ErrorVM #split: too few arguments to macro. Wanted 4 got 3 at bio-template[line 745, column 1]
Page source:
1: #if ($browser.getIphone() || $browser.getMobile())
2:    #set ($includeURL = "$page.url?tmpl=mobile-bios-template")  ##for roster templates
3:    $website.includeAgain($includeURL)
4:    #stop
5: #else
6: 
7: <head>
8: 	<link rel="stylesheet" type="text/css" href="/bio-styles.css" />
9: </head>
10: 
11: ## PICK UP OPTIONS
12: $website.include("options")
13: #set ($options = $request.getAttribute("options"))
14: 
15: ## CHANGES FOR STATS
16: 
17: ## HACK TO GET STATS URL FROM RENDERER... NEEDS SERVER CHANGE
18: #set ($bioObject = $page.getDataAsObject())
19: #set ($statsURL = $bioObject.statsURL)
20: ## END OF HACK
21: 
22: #if ($statsURL.length() > 0)
23:   $website.includeAgain("${statsURL}?tmpl=bio-stats-template")
24:   ## various settings to get the variables set
25:   #set ($events = $request.getAttribute("bio_events"))
26:   #set ($labels = $request.getAttribute("bio_labels"))
27:   #set ($briefs = $request.getAttribute("bio_briefs"))
28:   #set ($gamelogs =$request.getAttribute("bio_gamelogs"))
29:   #set ($splits = $request.getAttribute("bio_splits"))
30:   #set ($positions = $request.getAttribute("bio_positions"))
31:   #set ($playerId = $request.getAttribute("bio_player_id"))
32:   #set ($highlights = $request.getAttribute("bio_highlights"))
33:   #set ($formats = $request.getAttribute("bio_formats"))
34: #end
35: 
36: ## END CHANGES FOR STATS
37: 
38: #set ($pos = "")
39: #set ($pos = $attributes.get("position"))
40: #set ($pos = $pos.toLowerCase())
41: #set ($pos = $positions.get($pos))
42: #set ($highlights = $highlights.get($pos))
43: #set ($showHighlights = true)
44: #if ($options.get("bio_show_highlights") && $options.get("bio_show_highlights") == false)
45: 	#set ($showHighlights = false)
46: #end
47: #if ($request.getParameter("pos"))
48: 	#set ($pos = $request.getParameter("pos"))
49: 	#set ($pos = $pos.toLowerCase())
50: 	#set ($pos = $positions.get($pos))
51: #end
52: #set ($labels = $labels.get($pos))
53: #set ($briefs = $briefs.get($pos))
54: #set ($gamelogs = $gamelogs.get($pos))
55: #set ($stats = $splits.overall)
56: #set ($hasEvents = $events.size() > 0)
57: #set ($hasSynopsis = $synopsis.length() > 1 && $synopsis.indexOf("<center>") == -1)
58: #set ($htmlStatsURL = "${page.url}-stats")
59: #set ($hasHTMLStats = $website.exists($htmlStatsURL))
60: #set ($bioBriefURL = "${page.url}-brief")
61: #set ($hasBioBrief = $website.exists("$bioBriefURL"))
62: #set ($showRoster = ($page.contentType == "loki/bio" && $page.headlinesFeatured.size() > 0) || ($page.contentType == "loki/bio-network" && $page.sectionPage.children.size() > 1))
63: #if ($options.get("bio_hide_roster") == true)
64: 	#set ($showRoster = false)
65: #end
66: #set ($playerId = $attributes.get("playerId"))
67: #set ($url = ${page.url})
68: 
69: ## Always default to the bio page if available
70: #set ($view = "bio")
71: 
72: #if ($hasSynopsis || $hasBioBrief)
73: 	#set ($view = "bio")
74: #elseif ($hasEvents)
75: 	#set ($view = "profile")
76: #elseif ($hasHTMLStats)
77: 	#set ($view = "htmlstats")
78: #else
79: 	#set ($view = "")
80: #end
81: 
82: #if ($options.get("bio_default_view").length() > 0)
83: 	#set ($checkView = $options.get("bio_default_view"))
84: #end
85: 
86: #if ($request.getParameter("view").length() > 0)
87: 	#set ($checkView = $request.getParameter("view"))
88: #end
89: 
90: #if ($checkView == "profile" && $hasEvents)
91: 	#set ($view = "profile")
92: #elseif ($checkView == "bio" && ($hasSynopsis || $hasBioBrief))
93: 	#set ($view = "bio")
94: #elseif ($checkView == "gamelog" && $hasEvents)
95: 	#set ($view = "gamelog")
96: #elseif ($checkView == "splits" && $hasEvents)
97: 	#set ($view = "splits")
98: #elseif ($checkView == "htmlstats" && $hasHTMLStats)
99: 	#set ($view = "htmlstats")
100: #end
101: 
102: #if ($attributes.get("full_name"))
103: 	#set ($fullName = $attributes.get("full_name"))
104: #else
105: 	#set ($firstName = $!attributes.get("first_name"))
106: 	#set ($lastName = $!attributes.get("last_name"))
107: 	#set ($fullName = "${firstName} ${lastName}")
108: #end
109: 
110: <head>
111:   <title>$fullName #if ($attributes.get("team")) | $attributes.get("team")#end</title>
112: </head>
113: 
114: ## FULL ROSTER
115: <div class="bio-wrap clearfix">
116: 
117: <div class="head clearfix">
118: 
119: <div class="bio-title">#if ($attributes.get("number"))<span class="number">$!attributes.get("number") - #end</span><span class="name">$fullName</span></div>
120: 
121: <div class="about">
122: 
123: <div class="clearfix">
124: 
125: #if ($headshot.url)
126: 	<img src="$headshot.url?max_width=150&max_height=200" alt="$fullName" title="$fullName" class="bio-headshot" />
127: #else
128: 	#if ($website.exists("/images/setup/headshot_default.jpg"))
129: 		<img src="/images/setup/headshot_default.jpg" alt="$fullName" title="$fullName" class="bio-headshot" />
130: 	#else
131: 		<img src="/info/images/default_headshot.jpg" alt="$fullName" title="$fullName" class="bio-headshot" />
132: 	#end
133: #end
134: 
135: #set ($counter = 0)
136: 
137: #if ($!attributes.get("position") == "QB")
138: #set ($j_pos = "Quarterback")
139: #end
140: 
141: #if ($!attributes.get("position") == "RB")
142: #set ($j_pos = "Running Back")
143: #end
144: 
145: #if ($!attributes.get("position") == "FB")
146: #set ($j_pos = "Fullback")
147: #end
148: 
149: #if ($!attributes.get("position") == "WR")
150: #set ($j_pos = "Wide Receiver")
151: #end
152: 
153: #if ($!attributes.get("position") == "TE")
154: #set ($j_pos = "Tight End")
155: #end
156: 
157: #if ($!attributes.get("position") == "K")
158: #set ($j_pos = "Kicker/Punter")
159: #end
160: 
161: #if ($!attributes.get("position") == "P")
162: #set ($j_pos = "Punter/Kicker")
163: #end
164: 
165: #if ($!attributes.get("position") == "KR")
166: #set ($j_pos = "Kick Returner")
167: #end
168: 
169: #if ($!attributes.get("position") == "OL")
170: #set ($j_pos = "Offensive Line")
171: #end
172: 
173: #if ($!attributes.get("position") == "DE")
174: #set ($j_pos = "Defensive End")
175: #end
176: 
177: #if ($!attributes.get("position") == "DT")
178: #set ($j_pos = "Defensive Tackle")
179: #end
180: 
181: #if ($!attributes.get("position") == "DB")
182: #set ($j_pos = "Defensive Back")
183: #end
184: 
185: #if ($!attributes.get("position") == "LB")
186: #set ($j_pos = "Linebacker")
187: #end
188: 
189: <table cellpadding="5" cellspacing="5" border="0">
190: 
191: <tr><td class="lbl">Position:   </td><td class="val">$j_pos</td></tr>
192: <tr><td class="lbl">Year:       </td><td class="val">$!attributes.get("year")</td></tr>
193: <tr><td class="lbl">Height:     </td><td class="val">$!attributes.get("height")</td></tr>
194: <tr><td class="lbl">Weight:     </td><td class="val">$!attributes.get("weight")</td></tr>
195: <tr><td class="lbl">Hometown:   </td><td class="val">$!attributes.get("hometown")</td></tr>
196: <tr><td class="lbl">High School:</td><td class="val">$!attributes.get("highschool")</td></tr>
197: 
198: #*******************************************************
199: 
200: #foreach ($i in [1..10])
201: 	#set ($stickyKey = "bio_custom${i}_sticky")
202: 	#if ($options.get($stickyKey).length() > 0 && $attributes.get("custom${i}").length() > 0)
203: 		<tr><td class="lbl">$options.get($stickyKey): </td><td class="val">$!attributes.get("custom${i}")</td></tr>
204: 		#set ($counter = $counter + 1)
205: 	#end
206: #end
207: 
208: #foreach ($field in $fields)
209: 	#if (! $field.key.startsWith("custom"))
210: 		#if ($attributes.get($field.key).length() > 0 && ($field.key != "first_name" && $field.key != "last_name" && $field.key != "number" && $field.key != "full_name"))
211: 
212: 			#if ($field.key == "phone1" || $field.key == "phone2")
213: 				<tr><td class="lbl">Phone: </td><td class="val">$!attributes.get($field.key)</td></tr>
214: 			#elseif ($field.key == "email_address")
215: 				#set ($emailAdd = $attributes.get($field.key))
216: 				<tr><td class="lbl">Email: </td><td class="val"><a href="mailto:${emailAdd}">$emailAdd</a></td></tr>
217: 			#else
218: 				<tr><td class="lbl">$field.value: </td><td class="val">$!attributes.get($field.key)</td></tr>
219: 			#end
220: 
221: 			#set ($counter = $counter + 1)
222: 		#end
223: 	#end
224: #end
225: 
226: #foreach ($i in [1..10])
227: 	#set ($customKey = "bio_custom${i}")
228: 	#if ($options.get($customKey).length() > 0 && $attributes.get("custom${i}"))
229: 		<tr><td class="lbl">$options.get($customKey): </td><td class="val">$!attributes.get("custom${i}")</td></tr>
230: 		#set ($counter = $counter + 1)
231: 	#end
232: #end
233: 
234: ***********************************************************#
235: 
236: </table>
237: 
238: </div> ## clearfix
239: 
240: </div> ## ends about
241: 
242: #if ($highlights && $showHighlights)
243: <div class="headstats">
244: 	#foreach ($highlight in $highlights.keySet())
245: 		<div class="hst">
246: 		<span class="title" title="$!highlights.get($highlight)">$!highlights.get($highlight)</span>
247: 		#set ($value = "-")
248: 		#set ($value = $formatter.formatNumber($stats.get($highlight), $formats.get($highlight)))
249: 		#if ($value.length() > 0)
250: 			<span class="value">$value</span>
251: 		#else
252: 			<span class="value">-</span>
253: 		#end
254: 		</div>
255: 	#end
256: </div>
257: #end ## if-highlights
258: 
259: </div> ## ends head
260: 
261: #if ($hasSynopsis || $hasBioBrief || $hasEvents || $hasHTMLStats || $showRoster)
262: <div class="tabs-wrapper clearfix">
263: 	#if (($hasSynopsis || $hasBioBrief || $hasEvents || $hasHTMLStats) && $view.length() > 0)
264: 	<ul class="tabs clearfix">
265: 		#if ($hasSynopsis || $hasBioBrief)
266: 			#if ($view == "bio")
267: 				<li class="tab active"><a href="${url}?view=bio" class="tab-link brief">Bio</a></li>
268: 			#else
269: 				<li class="tab"><a href="${url}?view=bio" class="tab-link brief">Bio</a></li>
270: 			#end
271: 		#end
272: 		
273: 		#if ($hasEvents)
274: 			#if ($view == "profile")
275: 				<li class="tab active"><a href="${url}?view=profile" class="tab-link profile">Player Profile</a></li>
276: 			#else
277: 				<li class="tab"><a href="${url}?view=profile" class="tab-link profile">Player Profile</a></li>
278: 			#end
279: 			
280: 			#if ($view == "gamelog")
281: 				<li class="tab active"><a href="${url}?view=gamelog" class="tab-link gamelog">Game Log</a></li>
282: 			#else
283: 				<li class="tab"><a href="${url}?view=gamelog" class="tab-link gamelog">Game Log</a></li>
284: 			#end
285: 			
286: 			#if ($view == "splits")
287: 				<li class="tab active"><a href="${url}?view=splits" class="tab-link splits">Split Stats</a></li>
288: 			#else
289: 				<li class="tab"><a href="${url}?view=splits" class="tab-link splits">Split Stats</a></li>
290: 			#end
291: 		#end
292: 
293: 		#if ($hasHTMLStats)
294: 			#if ($view == "htmlstats")
295: 				<li class="tab active"><a href="$htmlStatsURL" class="tab-link htmlstats">HTML Stats</a></li>
296: 			#else
297: 				<li class="tab"><a href="$htmlStatsURL" class="tab-link htmlstats">HTML Stats</a></li>
298: 			#end
299: 		#end
300: 	</ul>
301: 	#end
302: 	#if ($showRoster)
303: 		#if ($page.contentType == "loki/bio")
304: 			#set ($headlinesFeaturedSize = 0)
305: 			#foreach ($featuredPage in $page.headlinesFeatured)
306: 				#if ($featuredPage.contentType == "loki/headlines")
307: 					#set ($headlinesFeaturedSize = $headlinesFeaturedSize + 1)
308: 				#end
309: 			#end
310: 			#if ($headlinesFeaturedSize > 0)
311: 				<select class="roster-select-list">
312: 					<option selected="selected" class="bold">Related Bios</option>
313:     			#foreach ($featuredPage in $page.headlinesFeatured)
314:     				#if ($featuredPage.contentType == "loki/headlines")
315:     					$website.includeAgain("${featuredPage.url}?tmpl=roster-list-template&current_url=${page.url}")
316:     				#end
317: 				#end
318: 				</select>
319: 			#end
320: 		#elseif ($page.contentType == "loki/bio-network")
321: 			#set ($relatedPlayers = $page.sectionPage.children)
322: 			#set ($teamNames = {})
323: 			#foreach ($relatedPlayer in $relatedPlayers)
324: 				#if ($relatedPlayer.contentType == "loki/bio-network")
325: 					#set ($relatedPlayerObj = $relatedPlayer.getDataAsObject().getAttributes())
326: 					## <span class="none relatedplayeratt">$relatedPlayerObj</span>
327: 					#set ($teamName = $relatedPlayerObj.get("team"))
328: 					#if ($teamName.length() > 0)
329:     					#if (!$teamNames.containsValue($teamName))
330:     						$!teamNames.put($tool.math.add($teamNames.size(), 1), $teamName)
331:     					#end
332: 					#end
333: 				#end
334: 			#end
335: 			##<span class="none teamnames">$teamNames</span>
336: 			<select class="roster-select-list">
337: 			#foreach ($i in [1..$teamNames.size()])
338: 				#if ($teamNames.size() > 1)
339: 					<optgroup label="$teamNames.get($i)">
340: 				#end
341: 				
342: 				#foreach ($relatedPlayer in $relatedPlayers)
343: 					#if ($relatedPlayer.contentType == "loki/bio-network")
344: 						#set ($relatedPlayerObj = $relatedPlayer.getDataAsObject().getAttributes())
345: 						#set ($teamName = $relatedPlayerObj.get("team"))
346: 						#if ($teamName.length() > 0 && $teamName == $teamNames.get($i))
347: 							#set ($playerFirstName = $relatedPlayerObj.get("first_name"))
348: 							#set ($playerLastName = $relatedPlayerObj.get("last_name"))
349: 							#if ($page.url == $relatedPlayer.url)
350: 								<option value="$relatedPlayer.url" selected="selected" class="bold">${playerFirstName} ${playerLastName}</option>
351: 							#else
352: 								<option value="$relatedPlayer.url">${playerFirstName} ${playerLastName}</option>
353: 							#end
354: 						#end
355: 					#end
356: 				#end
357: 				
358: 				#if ($teamNames.size() > 1)
359: 					</optgroup>
360: 				#end
361: 			#end
362: 			</select>
363: 		#end
364: 	#end
365: </div>
366: #end
367: 
368: ## BIO TAB
369: #if ($hasSynopsis || $hasBioBrief)
370: 
371: #if ($view == "bio")
372: 	<div class="tab-content active" id="bio">
373: #else
374: 	<div class="tab-content" id="bio">
375: #end
376: 
377: <div class="synopsis clearfix">
378: #if ($hasSynopsis)
379: 	$synopsis
380: #elseif ($hasBioBrief)
381: 	$website.include("$bioBriefURL")
382: #end
383: </div>
384: 
385: </div> ## tab-content
386: #end ## BIO TAB ENDS
387: 
388: ## PROFILE TAB
389: #if ($hasEvents)
390: 
391: #if ($view == "profile")
392: 	<div class="tab-content active" id="profile">
393: #else
394: 	<div class="tab-content" id="profile">
395: #end
396: 
397: #if ($hasEvents)
398: <div class="stats-wrapper">
399: 
400: ## LAST SIX GAMES
401: <div class="stats-halfbox-left">
402: <table>
403: <tr><th colspan="3">Recent Games</th></tr>
404: #set ($eventEnd = -1)
405: #foreach ($event in $events)
406: 	#if ($event.event.result.resolved)
407: 		#set ($eventEnd = $velocityCount)
408: 	#end
409: #end
410: #set ($eventStart = $eventEnd - 5)
411: #if ($eventStart < 0) 
412: 	#set ($eventStart = 0) 
413: #end
414: #set ($counter = 0)
415: #foreach ($event in $events)
416: 	#if ($velocityCount >= $eventStart && $velocityCount <= $eventEnd)
417: 		#set ($counter = $counter + 1)
418: 		#if ($counter % 2 == 0)
419: 			#set ($row = "even")
420: 		#else
421: 			#set ($row = "odd")
422: 		#end
423: 		<tr class="$row">
424: 		<td>$formatter.formatDate($event.event.date, "MMM d")</td>
425: 		<td>
426: 		#if ($event.event.neutralSite.length() > 0) vs.
427: 		#elseif (!$event.event.home) at
428: 		#else ## nothing for a home game
429: 		#end
430: 		$event.event.opponent.name</td>
431: 		<td>
432: 		#if ($event.event.statusCode >= 0)
433: 			#if ($event.event.eventId.length() > 0 && $event.stats.size() > 0)
434: 				<a href="$statsURL/../../boxscores/${formatter.formatDate($event.event.date, "yyyyMMdd")}_${event.event.eventId.substring(0, 4)}.xml">${event.event.APResult}</a>
435: 			#else
436: 				${event.event.APResult}
437: 			#end
438: 		#end
439: 		</tr>
440: 	#end ## if
441: #end
442: </table>
443: </div>
444: 
445: ## RANKING
446: $website.include("$statsURL/../players?tmpl=stats-bios-rank-template&rank=${playerId}&pos=${pos}")
447: 
448: </div> ## stats-wrapper
449: #end
450: 
451: </div> ## tab-content
452: #end ## PROFILE TAB ENDS
453: 
454: ## GAME LOG TAB
455: #if ($hasEvents)
456: 
457: #if ($view == "gamelog")
458: 	<div class="tab-content active" id="gamelog">
459: #else
460: 	<div class="tab-content" id="gamelog">
461: #end
462: 
463: <div class="stats-wrapper">
464: 
465: ##<h2 class="align-center">${fullName} Game-by-Game Stats</h2>
466: 
467: #if ($sport.enumCode == 0) ## Football
468: 	<div class="sub-tabs">
469:     #if ($pos == "qb")
470: 		<span class="bold">Passing</span>
471: 	#else
472: 		<a href="${url}?view=gamelog&pos=qb">Passing</a>
473:     #end
474: |
475:     #if ($pos == "rb")
476: 		<span class="bold">Rushing</span>
477: 	#else
478: 		<a href="${url}?view=gamelog&pos=rb">Rushing</a>
479:     #end
480: |
481:     #if ($pos == "wr")
482: 		<span class="bold">Receiving</span>
483: 	#else
484: 		<a href="${url}?view=gamelog&pos=wr">Receiving</a>
485:     #end
486: |
487:     #if ($pos == "k")
488: 		<span class="bold">Kicking</span>
489: 	#else
490: 		<a href="${url}?view=gamelog&pos=k">Kicking</a>
491:     #end
492: |
493:     #if ($pos == "p")
494: 		<span class="bold">Punting</span>
495: 	#else
496: 		<a href="${url}?view=gamelog&pos=p">Punting</a>
497:     #end
498: |
499:     #if ($pos == "kr")
500: 		<span class="bold">Returns</span>
501: 	#else
502: 		<a href="${url}?view=gamelog&pos=kr">Returns</a>
503:     #end
504: |
505:     #if ($pos == "d")
506: 		#if ($locale == "en_gb")
507: 			#set ($printVal = "Defence")
508: 		#else
509: 			#set ($printVal = "Defense")
510: 		#end
511: 		<span class="bold">$printVal</span>
512: 	#else
513: 		<a href="${url}?view=gamelog&pos=d">$printVal</a>
514:     #end
515:   </div>
516:   
517: #elseif ($sport.enumCode == 1) ## Baseball
518: 	<div class="sub-tabs">
519:     #if ($pos == "h")
520: 		<span class="bold">Hitting</span>
521: 	#else
522: 		<a href="${url}?view=gamelog&pos=h">Hitting</a>
523:     #end
524: |
525:     #if ($pos == "p")
526: 		<span class="bold">Pitching</span>
527: 	#else
528: 		<a href="${url}?view=gamelog&pos=p">Pitching</a>
529:     #end
530: |
531:     #if ($pos == "f")
532: 		<span class="bold">Fielding</span>
533: 	#else
534: 		<a href="${url}?view=gamelog&pos=f">Fielding</a>
535:     #end
536: 	</div>
537:   
538: #elseif ($sport.enumCode == 2) ## Basketball
539: 	<div class="sub-tabs">
540:     #if ($pos == "sh")
541: 		<span class="bold">Shooting per game</span>
542: 	#else
543: 		<a href="${url}?view=gamelog&pos=sh">Shooting per game</a>
544:     #end
545: |
546:     #if ($pos == "st")
547: 		<span class="bold">Shooting</span>
548: 	#else
549: 		<a href="${url}?view=gamelog&pos=st">Shooting</a>
550:     #end
551: |
552:     #if ($pos == "bc")
553: 		<span class="bold">Ball control per game</span>
554: 	#else
555: 		<a href="${url}?view=gamelog&pos=bc">Ball control per game</a>
556:     #end
557: |
558:     #if ($pos == "bt")
559: 		<span class="bold">Ball control</span>
560: 	#else
561: 		<a href="${url}?view=gamelog&pos=bt">Ball control</a>
562:     #end
563: 	</div>
564: #end
565: 
566: 
567: <div class="stats-fullbox">
568: <table>
569:   <tr>
570:     <th>Date</th>
571:     <th>Opponent</th>
572:     <th>Score</th>
573:     #foreach ($gamelog in $gamelogs)
574:     <th>$gamelog</th>
575:     #end
576:   </tr>
577:   
578: 	#foreach ($event in $events)
579: 		#if ($velocityCount % 2 == 0)
580: 			#set ($row = "even")
581: 		#else
582: 			#set ($row = "odd")
583: 		#end
584: 		<tr class="$row">
585: 		<td>$formatter.formatDate($event.event.date, "MMM d")</td>
586: 		<td>
587: 		#if ($event.event.neutralSite.length() > 0) vs.
588: 		#elseif (!$event.event.home) at
589: 		#else ## nothing for a home game
590: 		#end
591: 		$event.event.opponent.name</td>
592: 		<td>
593: 		#if ($event.event.statusCode >= 0)
594: 			#if ($event.event.eventId.length() > 0 && $event.stats.size() > 0)
595: 				<a href="$statsURL/../../boxscores/${formatter.formatDate($event.event.date, "yyyyMMdd")}_${event.event.eventId.substring(0, 4)}.xml">${event.event.APResult}</a>
596: 			#else
597: 				${event.event.APResult}
598: 			#end
599: 		#else &nbsp; #end
600: 		</td>
601: 		#foreach ($gamelog in $gamelogs.keySet())
602: 			#set ($value = "-")
603: 			#set ($value = $formatter.formatNumber($event.stats.get($gamelog), $formats.get($gamelog)))
604: 			#if ($value.length() > 0)
605: 				<td class="align-center">$value</td>
606: 			#else
607: 				<td class="align-center">-</td>
608: 			#end
609: 		#end
610: 		</tr>
611: 	#end
612: </table>
613: </div>
614: </div>
615: </div> ## tab-content
616: #end ## if-hasEvents
617: ## GAME LOG TAB ENDS
618: 
619: ## SPLITS TAB
620: #if ($hasEvents)
621: 
622: #if ($view == "splits")
623: 	<div class="tab-content active" id="splits">
624: #else
625: 	<div class="tab-content" id="splits">
626: #end
627: 
628: <div class="stats-wrapper">
629: 
630: ##<h2 class="align-center">${fullName} Splits</h2>
631: 
632: #if ($sport.enumCode == 0) ## Football
633: 	<div class="sub-tabs">
634:     #if ($pos == "qb")
635: 		<span class="bold">Passing</span>
636: 	#else
637: 		<a href="${url}?view=splits&pos=qb">Passing</a>
638:     #end
639: |
640:     #if ($pos == "rb")
641: 		<span class="bold">Rushing</span>
642: 	#else
643: 		<a href="${url}?view=splits&pos=rb">Rushing</a>
644:     #end
645: |
646:     #if ($pos == "wr")
647: 		<span class="bold">Receiving</span>
648: 	#else
649: 		<a href="${url}?view=splits&pos=wr">Receiving</a>
650:     #end
651: |
652:     #if ($pos == "k")
653: 		<span class="bold">Kicking</span>
654: 	#else
655: 		<a href="${url}?view=splits&pos=k">Kicking</a>
656:     #end
657: |
658:     #if ($pos == "p")
659: 		<span class="bold">Punting</span>
660: 	#else
661: 		<a href="${url}?view=splits&pos=p">Punting</a>
662:     #end
663: |
664:     #if ($pos == "kr")
665: 		<span class="bold">Returns</span>
666: 	#else
667: 		<a href="${url}?view=splits&pos=kr">Returns</a>
668:     #end
669: |
670:     #if ($pos == "d")
671: 		#if ($locale == "en_gb")
672: 			#set ($printVal = "Defence")
673: 		#else
674: 			#set ($printVal = "Defense")
675: 		#end
676: 		<span class="bold">$printVal</span>
677: 	#else
678: 		<a href="${url}?view=splits&pos=d">$printVal</a>
679:     #end
680:   </div>
681:   
682: #elseif ($sport.enumCode == 1) ## Baseball
683: 	<div class="sub-tabs">
684:     #if ($pos == "h")
685: 		<span class="bold">Hitting</span>
686: 	#else
687: 		<a href="${url}?view=splits&pos=h">Hitting</a>
688:     #end
689: |
690:     #if ($pos == "p")
691: 		<span class="bold">Pitching</span>
692: 	#else
693: 		<a href="${url}?view=splits&pos=p">Pitching</a>
694:     #end
695: |
696:     #if ($pos == "f")
697: 		<span class="bold">Fielding</span>
698: 	#else
699: 		<a href="${url}?view=splits&pos=f">Fielding</a>
700:     #end
701: 	</div>
702: #elseif ($sport.enumCode == 2) ## Basketball
703: 	<div class="sub-tabs">
704:     #if ($pos == "sh")
705: 		<span class="bold">Shooting</span>
706: 	#else
707: 		<a href="${url}?view=splits&pos=sh">Shooting</a>
708:     #end
709: |
710:     #if ($pos == "bc")
711: 		<span class="bold">Ball control</span>
712: 	#else
713: 		<a href="${url}?view=splits&pos=bc">Ball control</a>
714:     #end
715: 	</div>
716: #end
717: 
718: <div class="stats-fullbox">
719: <table>
720: 
721:   <tr>
722:     <th>&nbsp;</th>
723:     #foreach ($brief in $briefs)
724:       <th>$brief</th>
725:     #end
726:   </tr>
727: 
728: #macro(split $label $stats $row)
729: 	<tr class="${row}">
730: 	<td>${label}</td>
731: 	#foreach ($brief in $briefs.keySet())
732: 		#set ($value = "-")
733: 		#set ($value = $!formatter.formatNumber($stats.get($brief), $formats.get($brief)))
734: 		#if ($value.length() > 0)
735: 			<td class="align-center">$value</td>
736: 		#else
737: 			<td class="align-center">-</td>
738: 		#end
739:     #end
740: 	</tr>
741: #end
742: 
743: #set ($colspan = $briefs.size() + 1)
744: 
745: #split("Total", $splits.overall, "odd totals")
746: #split("Conference", $splits.conference, "even")
747: #split("Exhibition", $splits.exhibition, "odd")
748: <tr><td colspan="${colspan}"><hr /></td></tr>
749: #split("Home", $splits.home, "even")
750: #split("Away", $splits.away, "odd")
751: <tr><td colspan="${colspan}"><hr /></td></tr>
752: #split("Wins", $splits.inWins, "even")
753: #split("Losses", $splits.inLosses, "odd")
754: #if ($sport.enumCode == 5) ## Ice hockey
755: #split("Ties", $splits.inTies, "even")
756: #end
757: <tr><td colspan="${colspan}"><hr /></td></tr>
758: ## Going to need to replace this with sound logic that does not use the sport to determine dates
759: #if ($sport.enumCode == 5) ## Ice hockey
760:  #split("September", $splits.september, "odd")
761:  #split("October", $splits.october, "even")
762:  #split("November", $splits.november, "odd")
763:  #split("December", $splits.december, "even")
764:  #split("January", $splits.january, "odd")
765:  #split("February", $splits.february, "even")
766:  #split("March", $splits.march, "odd")
767:  #split("April", $splits.april, "even")
768: #elseif ($sport.enumCode == 2) ## Basketball
769:  #split("November", $splits.november, "even")
770:  #split("December", $splits.december, "odd")
771:  #split("January", $splits.january, "even")
772:  #split("February", $splits.february, "odd")
773:  #split("March", $splits.march, "even")
774: #elseif ($sport.enumCode == 3 or $sport.enumCode == 9) ## Soccer or field hockey
775:  #split("September", $splits.september, "even")
776:  #split("October", $splits.october, "odd")
777:  #split("November", $splits.november, "even")
778:  #split("December", $splits.december, "odd")
779: #elseif ($sport.enumCode == 0) ## Football
780:  #split("August", $splits.august, "even")
781:  #split("September", $splits.september, "odd")
782:  #split("October", $splits.october, "even")
783:  #split("November", $splits.november, "odd")
784:  #split("December", $splits.december, "even")
785: #elseif ($sport.enumCode == 6 or $sport.enumCode == 10) ## Men's or women's lacrosse
786:  #split("January", $splits.january, "even")
787:  #split("February", $splits.february, "odd")
788:  #split("March", $splits.march, "even")
789:  #split("April", $splits.april, "odd")
790:  #split("May", $splits.may, "even")
791: #end
792: 
793: </table>
794: </div>
795: </div>
796: </div> ## tab-content
797: #end ## if-hasEvents
798: ## SPLITS TAB ENDS
799: 
800: ## HTML TAB
801: #if ($hasHTMLStats)
802: 
803: #if ($view == "htmlstats")
804: 	<div class="tab-content active" id="htmlstats">
805: #else
806: 	<div class="tab-content" id="htmlstats">
807: #end
808: 
809: Loading...
810: 
811: </div> ## tab-content
812: 
813: #end ## hasHTMLStats
814: ## HTML TAB ENDS
815: 
816: </div> ## ends bio-wrap
817: 
818: <script type="text/javascript">
819: $(function() {
820: 	$('.bio-wrap .tab').click(function(e) {
821: 		e.preventDefault();
822: 		if (!$(this).hasClass('active')) {
823: 			//var targetContainer = $(this).children('a').attr('rel');
824: 			$('.bio-wrap > .tab-content.active').first().removeClass('active');
825: 			//$('#' + targetContainer).addClass('active');
826: 			$('.bio-wrap > .tab-content').eq($(this).index()).addClass('active');
827: 			$('.bio-wrap .tab').removeClass('active');
828: 			$(this).addClass('active');
829: 		}
830: 	});
831: 	
832: 	#if ($hasHTMLStats)
833: 	jQuery.get('${htmlStatsURL}', function(data) {
834: 		var htmlStats = $(data).find('center').first();
835: 		htmlStats.add(htmlStats.siblings('center'));
836: 		if (htmlStats.children().length > 0) {
837: 			$('#htmlstats').html(htmlStats);
838: 		} else {
839: 			$('#htmlstats').html('No stats found for this bio');
840: 		}
841: 	});
842: 	#end
843: 	
844: 	#if ($showRoster)
845: 	$('.bio-wrap .roster-select-list').change(function() {
846: 		window.location.href = $(this).val();
847: 	});
848: 	#end
849: });
850: </script>
851: 
852: $wiki
853: #end ## mobile check