/** * Constructor. Sets the connection, the database name and other default values. * Also sets the transaction type. * @param object KT_Connection &$connection the connection object * @access public */ function tNG_login(&$connection) { parent::tNG_custom($connection); $this->transactionType = '_login'; //TODO: Check that $GLOBALS['tNG_login_config']['table'] really exist. If not, die w/error if ($GLOBALS['tNG_login_config']['table'] == "") { die("Internal error. Please configure your login table in InterAKT Control Panel > Login Settings."); } if ($GLOBALS['tNG_login_config']['pk_field'] == "" || $GLOBALS['tNG_login_config']['pk_type'] == "") { die("Internal error. Please configure your login primary key in InterAKT Control Panel > Login Settings."); } $this->setPrimaryKey($GLOBALS['tNG_login_config']['pk_field'], $GLOBALS['tNG_login_config']['pk_type']); $this->exportRecordset = true; $this->registerTrigger("AFTER", "Trigger_Login_CheckLogin", -20); if ($GLOBALS['tNG_login_config']['activation_field'] != "") { $this->registerTrigger("AFTER", "Trigger_Login_CheckUserActive", -16); } if (isset($GLOBALS['tNG_login_config']['registration_date_field']) && isset($GLOBALS['tNG_login_config']['expiration_interval_field']) && isset($GLOBALS['tNG_login_config']['expiration_interval_default']) && $GLOBALS['tNG_login_config']['registration_date_field'] != '' && $GLOBALS['tNG_login_config']['expiration_interval_default'] != '' && $GLOBALS['tNG_login_config']['expiration_interval_field'] != '') { $this->registerTrigger("AFTER", "Trigger_Login_Account_Expiration", -12); } $this->registerTrigger("AFTER", "Trigger_Login_AddDynamicFields", -6); $this->registerTrigger("AFTER", "Trigger_Login_SaveDataToSession", -4); $this->registerTrigger("AFTER", "Trigger_Login_AutoLogin", -2); if (isset($GLOBALS['tNG_login_config']['max_tries']) && isset($GLOBALS['tNG_login_config']['max_tries_field']) && isset($GLOBALS['tNG_login_config']['max_tries_disableinterval']) && isset($GLOBALS['tNG_login_config']['max_tries_disabledate_field']) && $GLOBALS['tNG_login_config']['max_tries'] != '' && $GLOBALS['tNG_login_config']['max_tries_field'] != '' && $GLOBALS['tNG_login_config']['max_tries_disableinterval'] != '' && $GLOBALS['tNG_login_config']['max_tries_disabledate_field'] != '') { $this->registerTrigger("AFTER", "Trigger_Login_MaxTriesCheck", -30); $this->registerTrigger("AFTER", "Trigger_Login_MaxTriesReset", 110); $this->registerTrigger("ERROR", "Trigger_Login_MaxTriesIncrement", -10); } if (isset($GLOBALS['tNG_login_config']['logger_table']) && isset($GLOBALS['tNG_login_config']['logger_pk']) && isset($GLOBALS['tNG_login_config']['logger_user_id']) && isset($GLOBALS['tNG_login_config']['logger_ip']) && isset($GLOBALS['tNG_login_config']['logger_datein']) && isset($GLOBALS['tNG_login_config']['logger_datelastactivity']) && isset($GLOBALS['tNG_login_config']['logger_session']) && $GLOBALS['tNG_login_config']['logger_table'] != '' && $GLOBALS['tNG_login_config']['logger_pk'] != '' && $GLOBALS['tNG_login_config']['logger_user_id'] != '' && $GLOBALS['tNG_login_config']['logger_ip'] != '' && $GLOBALS['tNG_login_config']['logger_datein'] != '' && $GLOBALS['tNG_login_config']['logger_datelastactivity'] != '' && $GLOBALS['tNG_login_config']['logger_session'] != '') { $this->registerTrigger("AFTER", "Trigger_Login_LoggerIn", 2); } }
/** * Constructor. Sets the connection, the database name and register the download trigger. * @param object KT_Connection &$connection the connection object * @access public */ function tNG_logoutTransaction(&$connection) { parent::tNG_custom($connection); if (isset($GLOBALS['tNG_login_config']['logger_table']) && isset($GLOBALS['tNG_login_config']['logger_pk']) && isset($GLOBALS['tNG_login_config']['logger_user_id']) && isset($GLOBALS['tNG_login_config']['logger_ip']) && isset($GLOBALS['tNG_login_config']['logger_datein']) && isset($GLOBALS['tNG_login_config']['logger_datelastactivity']) && isset($GLOBALS['tNG_login_config']['logger_session']) && $GLOBALS['tNG_login_config']['logger_table'] != '' && $GLOBALS['tNG_login_config']['logger_pk'] != '' && $GLOBALS['tNG_login_config']['logger_user_id'] != '' && $GLOBALS['tNG_login_config']['logger_ip'] != '' && $GLOBALS['tNG_login_config']['logger_datein'] != '' && $GLOBALS['tNG_login_config']['logger_datelastactivity'] != '' && $GLOBALS['tNG_login_config']['logger_session'] != '') { $this->registerTrigger("AFTER", "Trigger_Login_LoggerOut", 98); } $this->addColumn('kt_login_id', 'STRING_TYPE', 'EXPRESSION', '{SESSION.kt_login_id}'); }