diff --git a/default.build b/default.build
index 087c0ca1dc..e3835c93fa 100644
--- a/default.build
+++ b/default.build
@@ -93,6 +93,8 @@
+
+
@@ -107,7 +109,7 @@
-
+
diff --git a/umbraco/cms/Actions/Action.cs b/umbraco/cms/Actions/Action.cs
index 8e558159ca..ef984f7f2c 100644
--- a/umbraco/cms/Actions/Action.cs
+++ b/umbraco/cms/Actions/Action.cs
@@ -45,7 +45,7 @@ namespace umbraco.BusinessLogic.Actions
if (_actionHandlers.Count > 0)
return;
- List foundIActionHandlers = TypeFinder.FindClassesOfType();
+ List foundIActionHandlers = TypeFinder.FindClassesOfType(true);
foreach (Type type in foundIActionHandlers)
{
IActionHandler typeInstance;
@@ -63,7 +63,7 @@ namespace umbraco.BusinessLogic.Actions
if (_actions.Count > 0)
return;
- List foundIActions = TypeFinder.FindClassesOfType();
+ List foundIActions = TypeFinder.FindClassesOfType(true);
foreach (Type type in foundIActions)
{
IAction typeInstance;
@@ -250,4 +250,6 @@ namespace umbraco.BusinessLogic.Actions
);
}
}
+
+
}
diff --git a/umbraco/cms/Actions/IActionHandler.cs b/umbraco/cms/Actions/IActionHandler.cs
index 418dc9e4ed..7e28b7bd78 100644
--- a/umbraco/cms/Actions/IActionHandler.cs
+++ b/umbraco/cms/Actions/IActionHandler.cs
@@ -11,19 +11,19 @@ using umbraco.interfaces;
namespace umbraco.BusinessLogic.Actions
{
- ///
- /// Implement the IActionHandler interface in order to automatically get code
- /// run whenever a document, member or media changed, deleted, created etc.
- /// The Clases implementing IActionHandler are loaded at runtime which means
- /// that there are no other setup when creating a custom actionhandler.
- ///
- ///
- ///
- ///
- public interface IActionHandler
- {
- bool Execute(Document documentObject, IAction action);
- IAction[] ReturnActions();
- string HandlerName();
- }
+ ///
+ /// Implement the IActionHandler interface in order to automatically get code
+ /// run whenever a document, member or media changed, deleted, created etc.
+ /// The Clases implementing IActionHandler are loaded at runtime which means
+ /// that there are no other setup when creating a custom actionhandler.
+ ///
+ ///
+ ///
+ ///
+ public interface IActionHandler
+ {
+ bool Execute(Document documentObject, IAction action);
+ IAction[] ReturnActions();
+ string HandlerName();
+ }
}
diff --git a/umbraco/cms/businesslogic/web/Document.cs b/umbraco/cms/businesslogic/web/Document.cs
index eb95bb4c6c..aaa2ae29fa 100644
--- a/umbraco/cms/businesslogic/web/Document.cs
+++ b/umbraco/cms/businesslogic/web/Document.cs
@@ -1479,6 +1479,11 @@ namespace umbraco.cms.businesslogic.web
public delegate void MoveToTrashEventHandler(Document sender, MoveToTrashEventArgs e);
+ ///
+ /// The index event handlers
+ ///
+ public delegate void IndexEventHandler(Document sender, AddToIndexEventArgs e);
+
///
/// Occurs when [before save].
///
@@ -1734,6 +1739,33 @@ namespace umbraco.cms.businesslogic.web
AfterRollBack(this, e);
}
+ ///
+ /// Occurs when [before add to index].
+ ///
+ public static event IndexEventHandler BeforeAddToIndex;
+ ///
+ /// Raises the event.
+ ///
+ /// The instance containing the event data.
+ protected virtual void FireBeforeAddToIndex(AddToIndexEventArgs e) {
+ if (BeforeAddToIndex != null)
+ BeforeAddToIndex(this, e);
+ }
+
+ ///
+ /// Occurs when [after add to index].
+ ///
+ public static event IndexEventHandler AfterAddToIndex;
+ ///
+ /// Raises the event.
+ ///
+ /// The instance containing the event data.
+ protected virtual void FireAfterAddToIndex(AddToIndexEventArgs e)
+ {
+ if (AfterAddToIndex != null)
+ AfterAddToIndex(this, e);
+ }
+
private Dictionary _knownProperties;
private Func, string, bool> propertyTypeByAlias = (pt, alias) => pt.Key.PropertyType.Alias == alias;
public object this[string alias]
diff --git a/umbraco/presentation/library.cs b/umbraco/presentation/library.cs
index d81258a7e7..e434e43785 100644
--- a/umbraco/presentation/library.cs
+++ b/umbraco/presentation/library.cs
@@ -26,6 +26,8 @@ using System.Web.Security;
using umbraco.cms.businesslogic.language;
using umbraco.IO;
using umbraco.presentation;
+using System.Collections;
+using System.Collections.Generic;
namespace umbraco
{
@@ -176,7 +178,7 @@ namespace umbraco
new Guid("27ab3022-3dfa-47b6-9119-5945bc88fd66"),
DocumentId);
else
- content.Instance.UnPublishNode(DocumentId);
+ content.Instance.ClearDocumentCache(DocumentId);
}
///
@@ -863,7 +865,7 @@ namespace umbraco
/// A string with the DayOfWeek matching the current contexts culture settings
public static string GetWeekDay(string Date)
{
- return DateTime.Parse(Date).DayOfWeek.ToString();
+ return DateTime.Parse(Date).ToString("dddd");
}
///
@@ -1149,6 +1151,8 @@ namespace umbraco
{
if (UmbracoSettings.UseAspNetMasterPages)
{
+ System.Collections.Generic.Dictionary