AQHA Versatility Ranch Horse World Championships

The 2025 AQHA Versatility Ranch Horse World Championships, AQHA Ranching Heritage Challenge Finals, and AQHA Cattle Level 1 Championships, presented by Four Sixes Ranch are tentatively scheduled for June 15-21, 2025, at the Tri State Exposition in Amarillo, Texas.

MOST REQUESTED PAGES

Jimmy Lee Taylor
Oklahoma horseman passed away March 4.
Mardi Gras Futurity Qualifiers
MC Blue Cartel is the fastest qualifier from two days of trials at Louisiana Downs.
Oklahoma Futurity Night 2 Qualifiers
The field is now set for the $435,395 final to be run on March 21.

All Forms and Resources

An error occurred while processing the template.
Can't convert this string to number: "{}"
The blamed expression:
==> item?number  [in template "20116#20152#83629" at line 116, column 35]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign linkPageId = item?number  [in template "20116#20152#83629" in function "getFriendlyURL" at line 116, column 13]
	- Reached through: ${getEntryViewURL(article)}  [in template "20116#20152#83629" at line 39, column 46]
----
1<#assign liferay_theme = PortletJspTagLibs["/META-INF/liferay-theme.tld"] /> 
2<@liferay_theme["defineObjects"] /> 
3 
4<#assign layout = themeDisplay['plid'] /> 
5<#assign portletID = themeDisplay.getPortletDisplay().getId() /> 
6 
7<#-- New Version --> 
8<#if entries?has_content> 
9    <#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
10    <#assign wcmutil = serviceLocator.findService("com.base22.liferay.wcm.api.WCMUtilities") /> 
11    <#assign ignoreVocabularies = ["User Segment", "Portal Locations", "Portal Components", "Time", "Geographic Locations"]> 
12    <#assign ignoreCategories = []> 
13    <#assign index = wcmutil.getCategories(entries, ignoreVocabularies, ignoreCategories, portletPreferences['queryValues0']) /> 
14     
15    <div class="center-categories-menu nav-side-menu"> 
16        <div class="menu-list"> 
17            <ul id="categories-menu-content" class="categories-menu"> 
18                <#if index?has_content> 
19                    <span><@liferay.language key="translations.text.topicDirectory.thereAre"/>&nbsp;<strong>${getNumOfServices(index)}</strong>&nbsp;<@liferay.language key="translations.text.topicDirectory.resourceAvailable"/>&nbsp;<strong>${index?size}</strong>&nbsp;<@liferay.language key="translations.text.topicDirectory.categories"/></span> 
20                    <#list index as indexEntry> 
21                        <li data-toggle="collapse" data-target="#${portletID}-${indexEntry.getCategoryId()}" class="collapsed active hasChildrens"> 
22                            <div class="row"> 
23                                <div class="col-xs-7 col-md-9"> 
24                                    <strong>${indexEntry.getName()?upper_case}</strong> 
25                                </div> 
26                                <div class="col-xs-5 col-md-3"> 
27                                    <div class="b-categories-menu__arrow">   
28                                    <i class="b-chevron--down fa fa-angle-down" aria-hidden="true"></i> 
29                                    </div> 
30                                    <div class="b-categories-menu__num-of-elements"> 
31                                        ${getNumOfElements(indexEntry)} <@pluralize numOfElements "item" "items" /> 
32                                    </div> 
33                                </div> 
34                            </div> 
35                        </li> 
36                        <ul class="sub-menu collapse" id="${portletID}-${indexEntry.getCategoryId()}"> 
37                            <#list indexEntry.getArticles() as article> 
38                                <li class="">    
39                                    <a href="${getEntryViewURL(article)}" class=""> 
40                                        ${article.getTitle(locale)} 
41                                    </a> 
42                                </li> 
43                            </#list> 
44                        </ul> 
45                    </#list> 
46                </#if> 
47            </ul> 
48        </div> 
49    </div> 
50</#if> 
51<#-- New Version --> 
52 
53<#-- Start Macros --> 
54<#macro pluralize number singular plural > 
55    <#if (number == 1) > 
56        ${singular} 
57    <#else> 
58        ${plural} 
59    </#if> 
60</#macro> 
61<#-- End Macros --> 
62 
63<#-- Start Functions --> 
64<#function getNumOfElements entries> 
65    <#assign numOfElements =  0 /> 
66    <#if entries.getArticles()?size gt 0> 
67        <#assign numOfElements =  entries.getArticles()?size /> 
68    </#if> 
69    <#return numOfElements> 
70</#function> 
71 
72<#function getNumOfServices entries> 
73    <#assign numOfservices =  0 /> 
74    <#if entries?size gt 0> 
75      <#list entries as entry> 
76        <#list entry.getArticles() as article> 
77            <#assign numOfservices = numOfservices + 1 /> 
78        </#list> 
79      </#list> 
80    </#if> 
81    <#return numOfservices> 
82</#function> 
83 
84<#function getEntryViewURL entry> 
85    <#assign entryViewURL = "" /> 
86    <#assign document = saxReaderUtil.read(entry.getContentByLocale(locale))/> 
87    <#assign internalLink = getFriendlyURL(clean_string(document.valueOf("//dynamic-element[@name='internalLink']")))!"" /> 
88    <#assign externalLink = document.valueOf("//dynamic-element[@name='externalLink']")!"" /> 
89     
90    <#if internalLink?trim != ""> 
91        <#assign entryViewURL = internalLink?trim /> 
92    <#elseif externalLink?trim != ""> 
93        <#assign entryViewURL = externalLink?trim /> 
94    <#else> 
95        <#assign layout = themeDisplay.getLayout() /> 
96        <#assign pageGroup = layout.getGroup() /> 
97        <#assign siteDefaultURL = htmlUtil.escape(pageGroup.getDisplayURL(themeDisplay, false)) /> 
98        <#assign entryViewURL = siteDefaultURL+"/-/"+entry.getUrlTitle()  + "?redirect=" + themeDisplay.getURLCurrent() /> 
99    </#if> 
100 
101    <#return entryViewURL> 
102</#function> 
103 
104<#function clean_string string> 
105	<#if string != ""> 
106		<#return string?replace("\n", "")?replace("\t", "")?replace("\r", "")> 
107	<#else> 
108		<#return ""> 
109	</#if> 
110</#function> 
111 
112<#function getFriendlyURL string> 
113    <#if string != ""> 
114      <#list string?split("@") as item> 
115          <#if item_index == 0> 
116            <#assign linkPageId = item?number> 
117          </#if> 
118          <#if item_index == 1> 
119            <#if item == "private"> 
120              <#assign linkPrivate = true> 
121            <#else> 
122              <#assign linkPrivate = false> 
123            </#if> 
124          </#if> 
125          <#if item_index = 2> 
126            <#assign linkGroupId = item?number> 
127          </#if> 
128      </#list> 
129      <#assign layoutLocalService = staticUtil["com.liferay.portal.kernel.service.LayoutLocalServiceUtil"]> 
130      <#assign pageLayout = layoutLocalService.getLayout(linkGroupId, linkPrivate, linkPageId)> 
131      <#-- get Friendly URL --> 
132      <#assign portalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"]> 
133      <#assign friendly_page_link = portalUtil.getLayoutFriendlyURL(pageLayout, themeDisplay)> 
134 
135      <#return friendly_page_link> 
136    <#else> 
137      <#return ""> 
138    </#if> 
139</#function> 
140<#-- End functions --> 
141 
142<script> 
143    AUI().ready(function(){ 
144      var $currentWE = $(".center-categories-menu"); 
145      $currentWE.find(".hasChildrens").on("click", function(element) { 
146        $currentWE.find(".collapse").collapse('hide'); 
147 
148        var $currentE = $(element.currentTarget); 
149 
150 
151        $currentWE.find("i").not($currentE.find("i")).removeClass("fa-angle-up").addClass("fa-angle-down"); 
152 
153        $currentE.find(".b-categories-menu__arrow i").toggleClass("fa-angle-down"); 
154        $currentE.find(".b-categories-menu__arrow i").toggleClass("fa-angle-up"); 
155      }); 
156    }); 
157</script>