Exemplo n.º 1
0
 /**
  * Logs the JDefender log message, and preforms automatic fixes
  * @param $logType
  * @param $url
  * @param $data
  * @param $status
  * @return unknown_type
  */
 function handleLog($logType, $url, $data, $issue = '', $status = '')
 {
     $log = new stdClass();
     $log->type = $logType;
     $log->url = $url;
     $log->post = serialize($data);
     $log->status = $status;
     $log->issue = $issue;
     $actionManager =& JD_Action_Manager::getInstance();
     $log = $actionManager->addActionFromLog($log);
     if (strpos($log->url, 'http://') === false && file_exists($log->url)) {
         $ext = JD_Extension_Resolver::resolveExtension($log->url);
         if ($ext) {
             $log->extension = $ext->type . '::' . $ext->group . '::' . $ext->extension;
         }
     }
     $this->_logData[] =& $log;
     if (count($this->_logData) >= $this->_maxLogBufferSize) {
         // Flush the log buffer
         if (!$this->flushLogs()) {
             JError::raiseError(1234, JText::_('Error writing log') . ' - ' . $this->getError());
             return false;
         }
         return true;
     }
 }