Helpdesk Benachrichtigung Fehler im Link bei integrierten Bildern

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • typofix
    Contao-Nutzer
    • 16.07.2009
    • 245

    #1

    Helpdesk Benachrichtigung Fehler im Link bei integrierten Bildern

    Bei uns läuft das Helpdesk schon lange zufriedenstellend, die Migration auf Contao 2.10.x hat inzwischen auch geklappt.

    Wir hatten schon immer das Problem, dass bei einer Integration von Bildern in der Benachrichtigung für jedes Bild am Ende der Link zur Message angezeigt wird, allerdings die Message Nummer abgeschnitten bzw. unterteilt wird.

    Code:
    <img src="http://www.xxxx.de/1" /> <br />
    <br />
    <img src="http://www.xxxx.de/2" /><br />
    <br />
    Ich muss mal einiges für die E-Mail Benachrichtigung testen.<br />
    Gruß<br />
    </div><hr />Die Nachricht befindet sich in:<br /><a href="http://www.xxxx.de/index.php/forum/message/40http://www.xxxx.de/149.html">http://www.xxxx.de/index.php/forum/message/40http://www.xxxx.de/149.html</a><br />---<br /> Das Admin Team<br />
    Also statt Message 40149 wird der oben angezeigte Quatsch erzeugt.
    Hat jemand eine Idee, woran das liegt bzw. wie man das abstellen kann.

    Gruß Typofix
  • typofix
    Contao-Nutzer
    • 16.07.2009
    • 245

    #2
    ich konnte den Fehler auf die Funktion convertRelativeLinks($text) in der Datei HelpdeskNotify.php eingrenzen. Ab da komme ich nicht weiter.

    Gruß
    Typofix

    Kommentar

    • typofix
      Contao-Nutzer
      • 16.07.2009
      • 245

      #3
      Inzwischen ist der Fehler halbwegs behoben. Allerdings werden die eingebundenen Bilder selbst nicht richtig angezeigt (waren es bisher auch nicht) Emoticons dafür schon.
      Bitte die Funktion convertRelativeLinks($text) in der Datei HelpdeskNotify.php austauschen.

      Um das Bild mit auszugeben mus die Variable $qrec und dort qrec->msg_id ausgewertet werden. Vorher muss noch bestimmt werden, dass es sich nicht um einen normalen Link handelt sondern um ein Bild, dass über eine ID Aufgerufen wird.

      Gruß
      Typofix

      PHP-Code:
          /    /**
           * Convert relative links
           */
          private function convertRelativeLinks($text)
          {
              $links = array();
              preg_match_all('/href="([^"]+)"/i', $text, $links);
              foreach ($links[1] as $link) {
                  if (!preg_match('@^(http://|https://|ftp:|mailto:)@i', $link)) {
                      if ($link == '/')
                          $text = str_replace('href="/"', 'href="' . $this->Environment->base . '"', $text);
                      else
                          $text = str_replace($link, $this->Environment->base . $link, $text);
                  } // if
              } // foreach
              preg_match_all('/src="([^"]+)"/i', $text, $links);
              foreach ($links[1] as $link) {
                  if (!preg_match('@^(http://|https://)@i', $link)) {
                      if ($link == '/')
                          $text = str_replace('src="/"', 'src="' . $this->Environment->base . '"', $text);
                      else
                          $text = str_replace('src="' . $link . '"', 'src="' . $this->Environment->base . 'system/modules/helpdesk/HelpdeskFrontendDownload.php?msg='  .'&id='. $link . '"', $text);
                      //    $text = str_replace($link, $this->Environment->base . $link, $text);
                  } // if
              } // foreach
      
              return $text;
          } // convertRelativeLinks 
      

      Kommentar

      • typofix
        Contao-Nutzer
        • 16.07.2009
        • 245

        #4
        Nachdem das letzte Update meine Änderungen überschrieben hat und jetzt wieder falsche Links ausgegeben werden, wollte ich das Thema noch einmal nach oben holen.

        Könntet Ihr bitte die Änderung beim nächsten Update dauerhaft in den Code einbauen.

        Gruß Typofix

        Kommentar

        Lädt...