26
I Use This!
Very High Activity

Commits : Listings

Analyzed about 21 hours ago. based on code collected 1 day ago.
May 15, 2023 — May 15, 2024
Commit Message Contributor Files Modified Lines Added Lines Removed Code Location Date
Upgraded DynamicNode to do some type inferrence from the IProperty type .Value which is a string Already had support for YesNoType (where the string value is 1 or 0) being converted/parsed to boolean Added some TryParse calls to int and decimal respecitvely so that if a IProperty.Value is a valid decimal or int it will be returned from DynamicNode.TryGetMember as such This enables the .Where operator to have the correct type after property retrieval so that some numerical comparisons will work More... over 13 years ago
Added support for some more Func<> types in my Where implementation Refactored GenerateEqual into a Factory method HandleDynamicNodeLambdas that takes an ExpressionType Implemented Expression.NotEqual @Model.Children.Where("shouldBeVisible != true") => children that are hidden More... over 13 years ago
Changed some type comparisons where I determine if the LambdaExpression is Func<DynamicNode,object> to handle simple equality operations: e.g. @Model.Children.Where("shouldBeVisible == true") Also changed internal where implementation to handle Func<DynamicNode,bool> as well as Func<DynamicNode,object> Both left & right side as lambda expressions should work (though I haven't tested this yet) e.g. @Model.Children.Where("property1 == property2") Only == (Expression.Equals) is supported currently due to the extra code required to invoke the lambda when generating the final comparison expression More... over 13 years ago
Added missing DynamicQueryable and DynamicQueryableBinders class files for previous commit More... over 13 years ago
Added support for DynamicLinq in place of Lambda syntax. The short version is you can't use a Lambda with a DynamicNode e.g. @Model.Children.Where(node=>node.shouldBeVisible) To solve this, I used the DynamicQueryable class from the Linq samples which has a parser that can take a string then modified the internals a bit so that if your object is a DynamicObject, an additional expression tree is generated which calls the TryGetMember on it The end result is that you can now do this [I have Random(this DynamicNodeList nodes, int max) in my bin folder] @Model.Children.Where("shouldBeVisible").Random(2) => two nodes, randomly picked, from the ones that should be visible *Only* Where is implemented here currently, I'll add support by OrderBy and ThenBy after I've tested some more complex scenarios. I need to fix a small issue with my DynamicLoading of extensions - under some scenarios the class doesn't get found and i'm not sure why. More... over 13 years ago
Added a wmode parameter to DMU badge to prevent it displaying on top of the lock modal popup More... over 13 years ago
Merge More... over 13 years ago
Added DMU Flex source Changed all TheOutfield namesspaces to Umbraco Added DMU dasboards Removed ZipUpload dashboards Added air mimetype to web.config More... over 13 years ago
Overloads for DynamicMedia and DynamicNode constructors that take object and string respectively New DynamicNode .MediaById (because @Model is DynamicNode) to find a media item by id, e.g. if you are using it with @Model.Parameters.imageId Overloads for MediaById and NodeById that take object and string to match constructors More... over 13 years ago
Changed reflection of assemblies to all assemblies in bin folder via BuildManager instead of currently loaded assemblies More... over 13 years ago
Refactored my implementation of IEnumerables being returned from .Children etc to return a new type called DynamicNodeList instead of a DynamicNode (singular) containing a nested list. This makes the code cleaner and also allows for the .Items (underlying initialization data for DynamicNodeList) to be exposed when you have an instance and hide all of the singular properties etc (Url, Name) that are on DynamicNode - they're not applicable for a List. Rewrote the reflection code for calling methods on DynamicNodeList to allow mix-ins (e.g. external dlls) to have an extension method defined for DynamicNodeList (e.g. Random(nodeCount)) Lambda syntax still doesn't work (e.g. Children.Where(item=>item.shouldBeVisible)) however methods that don't take lamdas (Take, Random[external], Skip, ElementAt, First, etc) work More... over 13 years ago
fix #29949 - do not hide errors when loading xslt ext More... over 13 years ago
fix #29989 - refactor TypeFinder and TypeResolver More... over 13 years ago
Fixed an issue with boolean casting in razor file for if shorthand when properties didn't have value More... over 13 years ago
Workitem: 29976 - Additional fix, sometimes the niceUrl does NOT start with a slash, in which case you wouldn´t want to strip the first character More... over 13 years ago
Workitem: 29976 - Additional fix in wording, the word for ´login´ in Dutch is not ´aanmelden´ (which means: ´to register´), but ´inloggen´. More... over 13 years ago
Fixes 29976 NiceUrlFetch now uses the new niceUrlJuno function. The result of niceUrlJuno does not include a leading slash. The old NiceUrl (used in the presentation of the URL) does include one, leading to wrong URLs. More... over 13 years ago
Forgot to save project file before commiting More... over 13 years ago
Added Desktop Media Uploader factories, HttpHandler and initial Dashboard control. Need to finish dashboard control, swap with ZipUpload and test. More... over 13 years ago
*Breaking Change* Removed Parameter & Culture Dictionaries - results in easier to read razor More... over 13 years ago
Fixed a bad check in my patch for booleans that wasn't installation-portable by making it check the DataTypeDefinition instead of ContentTypeId. Added a cache for the propertyType lookup (within a single DynamicNode instance) in case the razor logic needs to check the same boolean multiple times within a node. Should improve performance if working with large trees & repeatedly checking a boolean value More... over 13 years ago
Workitem 26949 - Fixed: Login field doesn't fit Dutch translation More... over 13 years ago
Added Pascal Case support to DynamicMedia and .Media helper More... over 13 years ago
Improves access to media items when working in Razor Added a new DynamicMedia class that wraps umbraco.cms.businesslogic.media.Media which caches GetProperty calls (while DynamicMedia is instantiated) Added method to DynamicNode to retrieve a property as DynamicMedia: @Model.Media("catPicture"); or @Model.Media("catPicture").umbracoFile; Added overload to DynamicNode Media method for shorthand if you only want one property; @Model.Media("catPicture","umbracoFile"); @Model.catPicture will still return the nodeId of the media item because we can't easily check the propertyType (no propertyType on IProperty) More... over 13 years ago
Special casing in DynamicNode property retrieval for when the property being retrieved is True/False. I'm not sure how comfortable I am with having to go to Document to get the proerty info or the check of the ContentTypeId but the syntactic sugar of being able to go: if(@Model.shouldBeVisible) {...} where shouldBeVisible is a true/false property on the datatype is pretty nice More... over 13 years ago
If you're dealing with dynamicNode such as using: var someNode = new umbraco.MacroEngines.DynamicNode(1046) in your template, it instantiates a DynamicNode like you'd expect, but then it doesn't function as a dynamic object because it wasn't initialised as a dynamic variable [dynamic someNode = new umbraco.MacroEngines.DynamicNode(1046)] More... over 13 years ago
Added DynamicNode constructor that takes an int and passes it to NodeFactory so you can go var @clientNode = new umbraco.MacroEngines.DynamicNode(1560); More... over 13 years ago
Didn't test the AncestorOrSelf changes on a non-parent node. Changed implementation to call into Func<DynamicNode,bool> to check Level == 1 Also fixed post-build rule on umbraco.MacroEngines which had an incorrect path for copying umbraco.MacroEngines to presentation (allows debug without manual file copy, I think) More... over 13 years ago
Fixed support for AncestorOrSelf when in Test mode (the INode passed to the razor script in testing has a null parent) Added AncestorOrSelf overload which doesn't require a Func<DynamicNode,bool> argument More... over 13 years ago
fix #29829 - Edit datatype -> Richtext editor displays incorrect icons for remove formatting and media More... over 13 years ago