浏览代码

Plugin API: added OnIsModified()

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@1239 a333f486-631f-4898-b8df-5754b55c2be0
romainq 14 年之前
父节点
当前提交
0128a46826
共有 2 个文件被更改,包括 19 次插入0 次删除
  1. 1 0
      application/applicationextension.inc.php
  2. 18 0
      application/cmdbabstract.class.inc.php

+ 1 - 0
application/applicationextension.inc.php

@@ -40,6 +40,7 @@ interface iApplicationUIExtension
 
 interface iApplicationObjectExtension
 {
+	public function OnIsModified($oObject);
 	public function OnCheckToWrite($oObject);
 	public function OnCheckToDelete($oObject);
 	public function OnDBUpdate($oObject, $oChange = null);

+ 18 - 0
application/cmdbabstract.class.inc.php

@@ -2253,6 +2253,24 @@ EOF
 		return parent::BulkDeleteTracked_Internal($oFilter);
 	}
 
+	public function IsModified()
+	{
+		if (parent::IsModified())
+		{
+			return true;
+		}
+
+		// Plugins
+		//
+		foreach (MetaModel::EnumPlugins('iApplicationObjectExtension') as $oExtensionInstance)
+		{
+			if ($oExtensionInstance->OnIsModified($this))
+			{
+				return true;
+			}
+		}
+	}
+
 	public function DoCheckToWrite()
 	{
 		parent::DoCheckToWrite();