From 2bbf3c8af2770b35a27335065dec413ef9bdb40a Mon Sep 17 00:00:00 2001 From: slace Date: Sat, 25 Dec 2010 22:45:32 -1100 Subject: [PATCH] changin the DLR macro engine also contain a dynamic object --- umbraco.MacroEngines.Juno/DLRScriptingEngine.cs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/umbraco.MacroEngines.Juno/DLRScriptingEngine.cs b/umbraco.MacroEngines.Juno/DLRScriptingEngine.cs index 37c3acb2d2..2985e82c18 100644 --- a/umbraco.MacroEngines.Juno/DLRScriptingEngine.cs +++ b/umbraco.MacroEngines.Juno/DLRScriptingEngine.cs @@ -11,38 +11,41 @@ namespace umbraco.MacroEngines { #region IMacroEngine Members - public string Name + public virtual string Name { get { return "Umbraco DLR Macro Engine"; } } - public List SupportedExtensions + public virtual List SupportedExtensions { get { - var exts = new List {"py", "rb"}; + var exts = new List { "py", "rb" }; return exts; } } - public Dictionary SupportedProperties + public virtual Dictionary SupportedProperties { get { throw new NotImplementedException(); } } - public bool Validate(string code, INode currentPage, out string errorMessage) + public virtual bool Validate(string code, INode currentPage, out string errorMessage) { throw new NotImplementedException(); } - public string Execute(MacroModel macro, INode currentPage) + public virtual string Execute(MacroModel macro, INode currentPage) { string fileEnding = macro.ScriptName.Substring(macro.ScriptName.LastIndexOf('.')).Trim('.'); MacroScriptEngine mse = MacroScriptEngine.LoadEngineByFileExtension(fileEnding); - var vars = new SortedDictionary {{"currentPage", currentPage}}; + var vars = new SortedDictionary + { + {"currentPage", new DynamicNode(currentPage)} + }; foreach (MacroPropertyModel prop in macro.Properties) { vars.Add(prop.Key, prop.Value);