Class: I2CE Module: Difference between revisions

From IHRIS Wiki
No edit summary
(Redirected page to Class: I2CE Module (4.1.7))
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
This article describes the ''abstract'' class ''I2CE_Module''.
#REDIRECT [[Class: I2CE_Module (4.1.7)]]
*Extends the class: [[Class: I2CE_Fuzzy | I2CE_Fuzzy]].
*Parent Classses:  [[Class: I2CE_Fuzzy | I2CE_Fuzzy]]
*Child Classes:
** [[Class: I2CE_BackgroundProcess | I2CE_BackgroundProcess]]
** [[Class: I2CE_Module_BinaryFiles | I2CE_Module_BinaryFiles]]
** [[Class: iHRIS_Module_CEUs | iHRIS_Module_CEUs]]
** [[Class: I2CE_Module_CachedForms | I2CE_Module_CachedForms]]
** [[Class: I2CE_Module_ColorPicker | I2CE_Module_ColorPicker]]
** [[Class: iHRIS_Module_Contact | iHRIS_Module_Contact]]
** [[Class: iHRIS_Module_Currency | iHRIS_Module_Currency]]
** [[Class: I2CE_Module_CustomReports | I2CE_Module_CustomReports]]
** [[Class: I2CE_DisplayData | I2CE_DisplayData]]
** [[Class: iHRIS_Module_Facility | iHRIS_Module_Facility]]
** [[Class: iHRIS_Module_FacilityContact | iHRIS_Module_FacilityContact]]
** [[Class: I2CE_Module_Float | I2CE_Module_Float]]
** [[Class: I2CE_Module_FormWorm | I2CE_Module_FormWorm]]
** [[Class: iHRIS_Module_Geography | iHRIS_Module_Geography]]
** [[Class: I2CE_Module_Core | I2CE_Module_Core]]
** [[Class: I2CE_Import_Export | I2CE_Import_Export]]
** [[Class: I2CE_Module_Lists | I2CE_Module_Lists]]
** [[Class: I2CE_Module_Login | I2CE_Module_Login]]
** [[Class: iHRIS_Module_ManageRegistration | iHRIS_Module_ManageRegistration]]
** [[Class: I2CE_MootoolsCore | I2CE_MootoolsCore]]
** [[Class: I2CE_Module_Debugging | I2CE_Module_Debugging]]
** [[Class: I2CE_Module_MenuSelect | I2CE_Module_MenuSelect]]
** [[Class: I2CE_Module_StretchPage | I2CE_Module_StretchPage]]
** [[Class: I2CE_Module_TreeSelect | I2CE_Module_TreeSelect]]
** [[Class: I2CE_Template_Options | I2CE_Template_Options]]
** [[Class: iHRIS_Module_Person | iHRIS_Module_Person]]
** [[Class: iHRIS_Module_PersonContact | iHRIS_Module_PersonContact]]
** [[Class: iHRIS_Module_PersonDemographic | iHRIS_Module_PersonDemographic]]
** [[Class: iHRIS_Module_PersonEducation | iHRIS_Module_PersonEducation]]
** [[Class: iHRIS_Module_PersonEmployment | iHRIS_Module_PersonEmployment]]
** [[Class: iHRIS_Module_PersonID | iHRIS_Module_PersonID]]
** [[Class: iHRIS_Module_PersonLanguage | iHRIS_Module_PersonLanguage]]
** [[Class: iHRIS_Module_PersonNotes | iHRIS_Module_PersonNotes]]
** [[Class: iHRIS_Module_PersonPassport | iHRIS_Module_PersonPassport]]
** [[Class: iHRIS_Module_Resume | iHRIS_Module_Resume]]
** [[Class: I2CE_Module_Tags | I2CE_Module_Tags]]
** [[Class: I2CE_Timer | I2CE_Timer]]
** [[Class: I2CE_Module_YAML | I2CE_Module_YAML]]
** [[Class: I2CE_Module_FormLimits | I2CE_Module_FormLimits]]
** [[Class: I2CE_Module_Forms | I2CE_Module_Forms]]
** [[Class: I2CE_FormStorage | I2CE_FormStorage]]
** [[Class: I2CE_Module_FormStorageEntry | I2CE_Module_FormStorageEntry]]
** [[Class: iHRIS_Module | iHRIS_Module]]
** [[Class: iHRIS_Module_Manage | iHRIS_Module_Manage]]
** [[Class: iHRIS_Module_Application | iHRIS_Module_Application]]
** [[Class: iHRIS_Module_Benefit | iHRIS_Module_Benefit]]
** [[Class: iHRIS_Module_ManageJob | iHRIS_Module_ManageJob]]
** [[Class: iHRIS_Module_PersonPosition | iHRIS_Module_PersonPosition]]
** [[Class: iHRIS_Module_ManageSalary | iHRIS_Module_ManageSalary]]
** [[Class: iHRIS_Module_Manage_SampleData | iHRIS_Module_Manage_SampleData]]
** [[Class: iHRIS_Module_Qualify | iHRIS_Module_Qualify]]
** [[Class: iHRIS_Module_Qualify_BaseData | iHRIS_Module_Qualify_BaseData]]
** [[Class: iHRIS_Module_Qualify_MedicalData | iHRIS_Module_Qualify_MedicalData]]
** [[Class: iHRIS_Module_Qualify_SampleData | iHRIS_Module_Qualify_SampleData]]
** [[Class: I2CE_Module_Jumper | I2CE_Module_Jumper]]
** [[Class: I2CE_Module_LocaleSelector | I2CE_Module_LocaleSelector]]
** [[Class: I2CE_MessageBox | I2CE_MessageBox]]
** [[Class: I2CE_MessageHandler | I2CE_MessageHandler]]
** [[Class: I2CE_MessageNotice | I2CE_MessageNotice]]
** [[Class: I2CE_Module_ModulePrompter | I2CE_Module_ModulePrompter]]
** [[Class: iHRIS_Module_PersonSimpleCompetency | iHRIS_Module_PersonSimpleCompetency]]
** [[Class: iHRIS_Module_SimpleCompetency | iHRIS_Module_SimpleCompetency]]
** [[Class: I2CE_Stub | I2CE_Stub]]
** [[Class: I2CE_Module_SwissFactory | I2CE_Module_SwissFactory]]
** [[Class: I2CE_Module_TemplateData | I2CE_Module_TemplateData]]
** [[Class: iHRIS_Module_Training_Course | iHRIS_Module_Training_Course]]
** [[Class: iHRIS_Module_TrainingInstitution | iHRIS_Module_TrainingInstitution]]
** [[Class: iHRIS_Module_TrainingSimpleCompetency | iHRIS_Module_TrainingSimpleCompetency]]
** [[Class: I2CE_Module_User | I2CE_Module_User]]
*Location: Part of the module [[iHRIS Module List#I2CE|I2CE]] in the package [https://launchpad.net/i2ce I2CE]
*Source: Defined in the file [http://bazaar.launchpad.net/~intrahealth+informatics/i2ce/4.0.0-release/annotate/head:/lib/I2CE_Module.php lib/I2CE_Module.php]
The abstract class for that all modules must implement
==Methods==
===__construct()===
Construct this object
*Signature: public function __construct()
===action_configure()===
Method called to perform the configuration for this module All the configuration should take place within the div with id 'moduleConfiguration'
*Signature: public function action_configure()
===action_disable()===
Perform any actions that a module needs to when it is disabled.
*Signature: public function action_disable()
*Returns: boolean.<br/>Returns true on success, returns false on failure and prevents the module from being disabled.
===action_enable()===
Perform any actions that a module needs to when it is enabled.
*Signature: public function action_enable()
*Returns: boolean.<br/>Returns true on success, returns false on failure and prevents the module from being enabled.
===action_initialize()===
Method called before the module is enabled for the first time. @param boolean -- returns true on success. false on error.
*Signature: public function action_initialize()
===conflict_external()===
Checks to see if a an external conflict is matched
*Signature: public function conflict_external($ext,$req_data)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $ext <br/>The external conflicy
** [http://www.php.net/manual/en/language.types.array.php array ] $req_data <br/>The array of conflict data. such as array(0=>array('operator'=>'atLeast','version'=>'3.1'))
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]<br/>true if the external conflict is NOT met.  In other words, if you have a valid conflict you should return false, otherwise you should return true
===getCLIHooks()===
Method called to get the modules' hooks which are run from the command line pages
*Signature: static public function getCLIHooks()
*Returns: an<br/>associative array where the key is the hookname and the value is mixed. The first option for the value is that it is a string.  This string is the method name to call. <br/> The second option for the value is that it is an array. This array has key 'method' with value the method of the class to call at the indicated hook.  It also has key 'proiority'  which gives a scheduling priority to the action. <br/> Example we may return: array('pre_page_display'=>array('method'=>'doSomething,'prioriy'=>10), 'post_page_display'=>'array('method'=>doSomethingElse,'priority'=>50), 'post_configure'=>'andNowForSomethingCompletelyDifferent') Each of the methods takes either 0 or 1 argument depending on the hook. For a complete list of hooks and their arguments see....
===getCLIMethods()===
Any 'fuzzy' methods that this module implements on the command line.
*Signature: static public function getCLIMethods()
*Returns: an<br/>associative array. the keys are the form of $key = '$class::$method' where $class is the name of a class which is an instance of I2CE_FuzzyMethod and $method is the name of a $method we wish to add to the class $class and which is not already in the class. the value is the name of a public function in the I2CE_Module subclass which will handle the call to $method. Example: array('I2CE_Template->setForm'=>'setForm') You also have the option of array('I2CE_Template->setForm'=>array('method'=>'setForm','priority'=>100) If you wish to set a priority.  The default proiority is the priority of the module
===getConfig()===
Get the configuration data for this module
*Signature: public function getConfig()
*Returns: [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]]
===getHooks()===
Method called to get the modules' hooks
*Signature: static public function getHooks()
*Returns: an<br/>associative array where the key is the hookname and the value is mixed. The first option for the value is that it is a string.  This string is the method name to call.  The priority for the method in this case is the priority of the module <br/> The second options is is that each value consists of an array with keys integers, the priority, and values the methods <br/> Example we may return: array('post_configure'=>'andNowForSomethingCompletelyDifferent', 'post_junk'=>array( -10=>'method0' 10=>'method1' 100=>'method2' 1004=>'method3' ) ) <br/> Each of the methods takes either 0 or 1 argument depending on the hook. For a complete list of hooks and their arguments see....
===getMethods()===
Any 'fuzzy' methods that this module implements.
*Signature: static public function getMethods()
*Returns: an<br/>associative array. the keys are the form of $key = '$class::$method' where $class is the name of a class which is an instance of I2CE_FuzzyMethod and $method is the name of a $method we wish to add to the class $class and which is not already in the class. the value is the name of a public function in the I2CE_Module subclass which will handle the call to $method. Example: array('I2CE_Template->setForm'=>'setForm') You also have the option of array('I2CE_Template->setForm'=>array('method'=>'setForm','priority'=>100) If you wish to set a priority.  The default proiority is the priority of the module
===post_update()===
Post Update this module if necessary
*Signature: public function post_update($old_vers,$new_vers)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $old_vers
** [http://www.php.net/manual/en/language.types.string.php string ] $new_vers
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]
===pre_upgrade()===
Run the pre upgrade for this module.  This can use the old config data before it has been changed from the config.
*Signature: public function pre_upgrade($old_vers,$new_vers,$new_storage)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $old_vers
** [http://www.php.net/manual/en/language.types.string.php string ] $new_vers
** [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $new_storage
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]
===requirement_external()===
Checks to see if a an external requirement is avaialable
*Signature: public function requirement_external($ext,$req_data)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $ext <br/>The external requirement.
** [http://www.php.net/manual/en/language.types.array.php array ] $req_data <br/>The array of conflict data. such as array(0=>array('operator'=>'atLeast','version'=>'3.1'))
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]<br/>true if the external reuqirement is available
===upgrade()===
Upgrade this module if necessary
*Signature: public function upgrade($old_vers,$new_vers)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $old_vers
** [http://www.php.net/manual/en/language.types.string.php string ] $new_vers
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]
==Inherited Methods==
===_hasMethod()===
This public method is inherited from [[Class: I2CE_Fuzzy#_hasMethod() | I2CE_Fuzzy->_hasMethod()]]
==Inherited Fuzzy Methods==
===userMessage()===
This method is inherited from [[Class: I2CE_Fuzzy#userMessage() | I2CE_Fuzzy->userMessage()]]
==Fuzzy Methods==
===launchBackgroundProcess()===
This method is implemented by [[Class: I2CE_BackgroundProcess#launchBackgroundProcess() | I2CE_BackgroundProcess->launchBackgroundProcess() ]]
===launchBackgroundPHPScript()===
This method is implemented by [[Class: I2CE_BackgroundProcess#launchBackgroundPHPScript() | I2CE_BackgroundProcess->launchBackgroundPHPScript() ]]
===launchBackgroundPage()===
This method is implemented by [[Class: I2CE_BackgroundProcess#launchBackgroundPage() | I2CE_BackgroundProcess->launchBackgroundPage() ]]
 
 
[[Category:Class Documentation]]

Latest revision as of 08:42, 23 August 2013