|
9 | 9 | using System.Web; |
10 | 10 | using System.Web.Hosting; |
11 | 11 | using umbraco; |
| 12 | + using Umbraco.Web; |
12 | 13 |
|
13 | 14 | internal static class Helper |
14 | 15 | { |
@@ -129,16 +130,47 @@ internal static string GetDataFromUrl(string url) |
129 | 130 | } |
130 | 131 |
|
131 | 132 | /// <summary> |
132 | | - /// replacement for built-in uQuery method (as that hits the database) |
| 133 | + /// temp replacement for built-in uQuery method (as that hits the database) |
133 | 134 | /// </summary> |
134 | | - /// <param name="id"></param> |
135 | | - /// <returns></returns> |
| 135 | + /// <param name="id">the id of a content, media or member item</param> |
| 136 | + /// <returns>an enum instance of the UmbracoObjectType</returns> |
136 | 137 | internal static uQuery.UmbracoObjectType GetUmbracoObjectType(int id) |
137 | 138 | { |
138 | | - // TODO: |
| 139 | + // return variable |
| 140 | + uQuery.UmbracoObjectType umbracoObjectType = uQuery.UmbracoObjectType.Unknown; |
139 | 141 |
|
140 | | - // HACK: returning uQuery call, to prevent breaking |
141 | | - return uQuery.GetUmbracoObjectType(id); |
| 142 | + UmbracoHelper umbracoHelper = new UmbracoHelper(UmbracoContext.Current); |
| 143 | + |
| 144 | + // attempt to get content |
| 145 | + if (umbracoHelper.TypedContent(id) != null) |
| 146 | + { |
| 147 | + umbracoObjectType = uQuery.UmbracoObjectType.Document; |
| 148 | + } |
| 149 | + else |
| 150 | + { |
| 151 | + // attempt to get media |
| 152 | + if(umbracoHelper.TypedMedia(id) != null) |
| 153 | + { |
| 154 | + umbracoObjectType = uQuery.UmbracoObjectType.Media; |
| 155 | + } |
| 156 | + else |
| 157 | + { |
| 158 | + // attempt to get member |
| 159 | + try |
| 160 | + { |
| 161 | + if (umbracoHelper.TypedMember(id) != null) |
| 162 | + { |
| 163 | + umbracoObjectType = uQuery.UmbracoObjectType.Member; |
| 164 | + } |
| 165 | + } |
| 166 | + catch |
| 167 | + { |
| 168 | + // HACK: suppress Umbraco error |
| 169 | + } |
| 170 | + } |
| 171 | + } |
| 172 | + |
| 173 | + return umbracoObjectType; |
142 | 174 | } |
143 | 175 | } |
144 | 176 | } |
0 commit comments