Files
Umbraco-CMS/umbraco.MacroEngines.Juno/RazorDynamicNode/RazorLibraryCore.cs
agrath@gmail.com f2d8363556 Added IsHelper methods back into DynamicNode after I accidentally removed them while refactoring
Added new IsHelper methods for IsModZero, IsNotModZero, IsPosition, IsNotPosition, IsNotFirst, IsNotLast
Added .Count to DynamicXML
Fixed Media .Url and .NiceUrl to bring back umbracoFile
Moved MediaById and NodeById implementations to RazorLibraryCore and deprecated original methods with redirection
Fixed parsing issue with ExamineBackedMedia XPathNodeIterator cast method
2011-06-12 08:23:10 -02:00

94 lines
2.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using umbraco.interfaces;
namespace umbraco.MacroEngines.Library
{
public class RazorLibraryCore
{
private INode _node;
public INode Node
{
get { return _node; }
}
public RazorLibraryCore(INode node)
{
this._node = node;
}
public DynamicNode NodeById(int Id)
{
return new DynamicNode(Id);
}
public DynamicNode NodeById(string Id)
{
return new DynamicNode(Id);
}
public DynamicNode NodeById(object Id)
{
return new DynamicNode(Id);
}
public DynamicNodeList NodeById(List<object> Ids)
{
List<DynamicNode> nodes = new List<DynamicNode>();
foreach (object eachId in Ids)
nodes.Add(new DynamicNode(eachId));
return new DynamicNodeList(nodes);
}
public DynamicNodeList NodeById(List<int> Ids)
{
List<DynamicNode> nodes = new List<DynamicNode>();
foreach (int eachId in Ids)
nodes.Add(new DynamicNode(eachId));
return new DynamicNodeList(nodes);
}
public DynamicNodeList NodeById(params object[] Ids)
{
return NodeById(Ids.ToList());
}
public DynamicNode MediaById(int Id)
{
return new DynamicNode(new DynamicBackingItem(ExamineBackedMedia.GetUmbracoMedia(Id)));
}
public DynamicNode MediaById(string Id)
{
int mediaId = 0;
if (int.TryParse(Id, out mediaId))
{
return MediaById(mediaId);
}
return null;
}
public DynamicNode MediaById(object Id)
{
int mediaId = 0;
if (int.TryParse(string.Format("{0}", Id), out mediaId))
{
return MediaById(mediaId);
}
return null;
}
public DynamicNodeList MediaById(List<object> Ids)
{
List<DynamicNode> nodes = new List<DynamicNode>();
foreach (object eachId in Ids)
nodes.Add(MediaById(eachId));
return new DynamicNodeList(nodes);
}
public DynamicNodeList MediaById(List<int> Ids)
{
List<DynamicNode> nodes = new List<DynamicNode>();
foreach (int eachId in Ids)
nodes.Add(MediaById(eachId));
return new DynamicNodeList(nodes);
}
public DynamicNodeList MediaById(params object[] Ids)
{
return MediaById(Ids.ToList());
}
}
}