File Manager

Current Directory: /home/astoriaah/www/old15/plugins/system/admintools/feature
Viewing File: /home/astoriaah/www/old15/plugins/system/admintools/feature/saveusersignupip.php
<?php /** * @package AdminTools * @copyright Copyright (c)2010-2015 Nicholas K. Dionysopoulos * @license GNU General Public License version 3, or later */ defined('_JEXEC') or die; class AtsystemFeatureSaveusersignupip extends AtsystemFeatureAbstract { protected $loadOrder = 910; /** * Is this feature enabled? * * @return bool */ public function isEnabled() { if (!F0FPlatform::getInstance()->isFrontend()) { return false; } if ($this->cparams->getValue('saveusersignupip', 0) != 1) { return false; } return true; } public function onUserAfterSave($user, $isnew, $success, $msg) { $process = true; // Only trigger on successful user creation if (!$success) { $process = false; } // Only trigger on new user creation, not subsequent edits if (!$isnew) { $process = false; } // Only trigger on front-end user creation. if (!F0FPlatform::getInstance()->isFrontend()) { $process = false; } if (!$process) { return; } // Create a new user note // Get the user's ID $user_id = (int)$user['id']; // Get the IP address $ip = AtsystemUtilFilter::getIp(); if ((strpos($ip, '::') === 0) && (strstr($ip, '.') !== false)) { $ip = substr($ip, strrpos($ip, ':') + 1); } // Get the user agent string $user_agent = $_SERVER['HTTP_USER_AGENT']; // Get current date and time in database format JLoader::import('joomla.utilities.date'); $now = new JDate(); $now = $now->toSql(); // Load the component's administrator translation files $jlang = JFactory::getLanguage(); $jlang->load('com_admintools', JPATH_ADMINISTRATOR, 'en-GB', true); $jlang->load('com_admintools', JPATH_ADMINISTRATOR, $jlang->getDefault(), true); $jlang->load('com_admintools', JPATH_ADMINISTRATOR, null, true); // Create and save the user note $userNote = (object)array( 'user_id' => $user_id, 'catid' => 0, 'subject' => JText::_('ATOOLS_LBL_WAF_SIGNUPIP_SUBJECT'), 'body' => JText::sprintf('ATOOLS_LBL_WAF_SIGNUPIP_BODY', $ip, $user_agent), 'state' => 1, 'created_user_id' => 42, 'created_time' => $now ); try { $this->db->insertObject('#__user_notes', $userNote, 'id'); } catch (Exception $e) { // Do nothing if the save fails } } }