/**
  * Progresses the extra data and adds some aditional informations
  *
  * @param mixed $extraData
  *
  * @return array
  */
 protected function progressExtraData($extraData)
 {
     // force extra_data to be an array!
     if (!is_array($extraData)) {
         $extraData = array('extra' => $extraData);
     }
     // add userdata
     \tx_rnbase::load('tx_rnbase_util_TYPO3');
     $extraData['__feuser'] = \tx_rnbase_util_TYPO3::getFEUserUID();
     $extraData['__beuser'] = \tx_rnbase_util_TYPO3::getBEUserUID();
     // add trace to extradata
     $extraData['__trace'] = $this->getBacktrace();
     return $extraData;
 }
 protected static function getErrorMailHtml($e, $actionName)
 {
     $htmlPart = '<strong>This is an automatic email from TYPO3. Don\'t answer!</strong>';
     $htmlPart .= '<div><strong>UNCAUGHT EXCEPTION FOR VIEW: ' . $actionName . '</strong></div>';
     $htmlPart .= '<p><strong>Message:</strong><br />' . $e->getMessage() . '</p>';
     $htmlPart .= '<p><strong>Stacktrace:</strong><pre>' . $e->__toString() . '</pre></p>';
     $htmlPart .= '<p><strong>SITE_URL</strong><br />' . tx_rnbase_util_Misc::getIndpEnv('TYPO3_SITE_URL') . '</p>';
     $get = self::removePasswordParams($_GET);
     if (count($get)) {
         $htmlPart .= '<p><strong>_GET</strong><br />' . var_export($get, TRUE) . '</p>';
     }
     $post = self::removePasswordParams($_POST);
     if (count($post)) {
         $htmlPart .= '<p><strong>_POST</strong><br />' . var_export($post, TRUE) . '</p>';
     }
     $cookie = self::removePasswordParams($_COOKIE);
     if (count($cookie)) {
         $htmlPart .= '<p><strong>_COOKIE</strong><br />' . var_export($cookie, TRUE) . '</p>';
     }
     $htmlPart .= '<p><strong>_SERVER</strong><br />' . var_export(self::removePasswordParams($_SERVER), TRUE) . '</p>';
     if ($e instanceof tx_rnbase_util_Exception) {
         $additional = $e->getAdditional();
         if ($additional) {
             $htmlPart .= '<p><strong>Additional Data:</strong><br />' . strval($additional) . '</p>';
         }
     }
     tx_rnbase::load('tx_rnbase_util_TYPO3');
     $htmlPart .= '<p><strong>BE_USER:</strong> ' . tx_rnbase_util_TYPO3::getBEUserUID() . '</p>';
     $htmlPart .= '<p><strong>FE_USER:</strong> ' . tx_rnbase_util_TYPO3::getFEUserUID() . '</p>';
     return $htmlPart;
 }
 /**
  * Do the magic and publish all new messages thu the transport.
  *
  * @return bool Returns TRUE on successful execution, FALSE on error
  */
 public function execute()
 {
     $failures = $successes = array();
     $transport = $this->getTransport();
     // initialize the transport
     $transport->initialize($this->getOptions());
     /* @var $message \DMK\Mklog\Domain\Model\DevlogEntryModel */
     foreach ($this->findMessages() as $message) {
         try {
             $transport->publish($message);
             // mark entry as send for current transport
             $this->markAsTransported($message);
             $successes[$message->getUid()] = '';
         } catch (\Exception $e) {
             $failures[$message->getUid()] = $e->getMessage();
         }
     }
     // shutdown the transport
     $transport->shutdown();
     \tx_rnbase::load('tx_rnbase_util_Logger');
     $success = empty($failures);
     $msg = sprintf('WatchDog %1$s has %2$d messages send and %3$d failures.', $this->getTransportId(), count($successes), count($failures));
     \tx_rnbase_util_Logger::devLog($msg, 'mklog', $success ? \tx_rnbase_util_Logger::LOGLEVEL_DEBUG : \tx_rnbase_util_Logger::LOGLEVEL_WARN, array('transport' => $this->getTransportId(), 'successes' => $successes, 'failures' => $failures));
     // create a flash message for the beuser
     \tx_rnbase::load('tx_rnbase_util_TYPO3');
     if (\tx_rnbase_util_TYPO3::getBEUserUID()) {
         \tx_rnbase::load('tx_rnbase_util_Misc');
         \tx_rnbase_util_Misc::addFlashMessage($msg, 'MK LOGGER WatchDog', $success ? 0 : 2, false);
     }
     return $success;
 }