event.class.inc.php 4.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <?php
  2. /**
  3. * An application internal event
  4. *
  5. * @package iTopORM
  6. * @author Romain Quetiez <romainquetiez@yahoo.fr>
  7. * @author Denis Flaven <denisflave@free.fr>
  8. * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
  9. * @link www.itop.com
  10. * @since 1.0
  11. * @version 1.1.1.1 $
  12. */
  13. class Event extends cmdbAbstractObject
  14. {
  15. public static function Init()
  16. {
  17. $aParams = array
  18. (
  19. "category" => "core/cmdb",
  20. "name" => "Log Event",
  21. "description" => "An application internal event",
  22. "key_type" => "autoincrement",
  23. "key_label" => "",
  24. "name_attcode" => "",
  25. "state_attcode" => "",
  26. "reconc_keys" => array(),
  27. "db_table" => "priv_event",
  28. "db_key_field" => "id",
  29. "db_finalclass_field" => "realclass",
  30. "display_template" => "",
  31. );
  32. MetaModel::Init_Params($aParams);
  33. //MetaModel::Init_InheritAttributes();
  34. MetaModel::Init_AddAttribute(new AttributeString("message", array("label"=>"Message", "description"=>"one line description", "allowed_values"=>null, "sql"=>"message", "default_value"=>null, "is_null_allowed"=>false, "depends_on"=>array())));
  35. MetaModel::Init_AddAttribute(new AttributeDate("date", array("label"=>"date", "description"=>"date and time at which the changes have been recorded", "allowed_values"=>null, "sql"=>"date", "default_value"=>"", "is_null_allowed"=>false, "depends_on"=>array())));
  36. MetaModel::Init_AddAttribute(new AttributeString("userinfo", array("label"=>"misc. info", "description"=>"caller's defined information", "allowed_values"=>null, "sql"=>"userinfo", "default_value"=>null, "is_null_allowed"=>true, "depends_on"=>array())));
  37. //MetaModel::Init_InheritFilters();
  38. MetaModel::Init_AddFilterFromAttribute("message");
  39. MetaModel::Init_AddFilterFromAttribute("date");
  40. // Display lists
  41. MetaModel::Init_SetZListItems('details', array('finalclass', 'date', 'message')); // Attributes to be displayed for the complete details
  42. MetaModel::Init_SetZListItems('list', array('finalclass', 'date', 'message')); // Attributes to be displayed for a list
  43. // Search criteria
  44. // MetaModel::Init_SetZListItems('standard_search', array('name')); // Criteria of the std search form
  45. // MetaModel::Init_SetZListItems('advanced_search', array('name')); // Criteria of the advanced search form
  46. }
  47. }
  48. class EventNotification extends Event
  49. {
  50. public static function Init()
  51. {
  52. $aParams = array
  53. (
  54. "category" => "core/cmdb",
  55. "name" => "Notification event",
  56. "description" => "Trace of a notification that has been sent",
  57. "key_type" => "autoincrement",
  58. "key_label" => "",
  59. "name_attcode" => "",
  60. "state_attcode" => "",
  61. "reconc_keys" => array(),
  62. "db_table" => "priv_event_notification",
  63. "db_key_field" => "id",
  64. "db_finalclass_field" => "",
  65. "display_template" => "",
  66. );
  67. MetaModel::Init_Params($aParams);
  68. MetaModel::Init_InheritAttributes();
  69. MetaModel::Init_AddAttribute(new AttributeExternalKey("trigger_id", array("targetclass"=>"Trigger", "jointype"=> "", "label"=>"Trigger", "description"=>"user account", "allowed_values"=>null, "sql"=>"trigger_id", "is_null_allowed"=>false, "on_target_delete"=>DEL_AUTO, "depends_on"=>array())));
  70. MetaModel::Init_AddAttribute(new AttributeExternalKey("action_id", array("targetclass"=>"Action", "jointype"=> "", "label"=>"user", "description"=>"user account", "allowed_values"=>null, "sql"=>"action_id", "is_null_allowed"=>false, "on_target_delete"=>DEL_AUTO, "depends_on"=>array())));
  71. MetaModel::Init_AddAttribute(new AttributeInteger("object_id", array("label"=>"Object id", "description"=>"object id (class defined by the trigger ?)", "allowed_values"=>null, "sql"=>"object_id", "default_value"=>0, "is_null_allowed"=>false, "depends_on"=>array())));
  72. MetaModel::Init_AddAttribute(new AttributeText("overview", array("label"=>"Overview", "description"=>"Complete view of the resulting email", "allowed_values"=>null, "sql"=>"overview", "default_value"=>null, "is_null_allowed"=>false, "depends_on"=>array())));
  73. MetaModel::Init_InheritFilters();
  74. MetaModel::Init_AddFilterFromAttribute("trigger_id");
  75. MetaModel::Init_AddFilterFromAttribute("action_id");
  76. // Display lists
  77. MetaModel::Init_SetZListItems('details', array('date', 'message', 'userinfo', 'trigger_id', 'action_id', 'object_id', 'overview')); // Attributes to be displayed for the complete details
  78. MetaModel::Init_SetZListItems('list', array('date', 'message')); // Attributes to be displayed for a list
  79. // Search criteria
  80. // MetaModel::Init_SetZListItems('standard_search', array('name')); // Criteria of the std search form
  81. // MetaModel::Init_SetZListItems('advanced_search', array('name')); // Criteria of the advanced search form
  82. }
  83. }
  84. ?>