Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: eknori am 15.04.11 - 16:23:36
-
Habe heute ein bisschen Code zusammengeworfen, um das "See attached file: " in XPages durch einen Link zu dem Attachment zu ersetzen.
Ich finde das wesentlich praktischer und bedienerfreundlicher für den Anwender, wenn man Attachments direkt aus dem Kontext heraus öffnen kann, als sich erst durch eine möglicherweise längere Liste von Anhängen im File Download Control zu wühlen.
function replaceSeeAttached() {
var the_id = "entryBody";
h=getComponent(the_id).getValue().toString();
h=h.replace(/\<i class=\"domino-attachment-ref\"\>\(.*\:\s(.+?)\)\<\/i\>/g,
//h=h.replace(/\(See attached file:\s(.+?)\)/g,
"\<a href=\"" + @Word(context.getUrl(),'.nsf',1) +
".nsf/xsp/.ibmmodres/domino/OpenAttachment/" +
database.getFilePath().replace(/\\/,"/") + "/" +
currentDocument.getDocument().getUniversalID() +
"/body/$1\"\>$1\<a\/\> ");
getComponent(the_id).setValue(h);
}
Der Code kann in eine SSJS Lib kopiert werden und wird im AfterPageLoad event der Seite mit replaceSeeAttached(); aufgerufen.
Hinweis: Im Client wird der Code so nicht funktionieren, da der Link anders aufgebaut sein muss.
-
Habe den Code noch einmal korrigiert, da sonst auch normale Texte in () als Link dargestellt werden.
19:00 Uhr: Noch ein Update. Kein Vergleich mit sprchabhängigen String. Sollte jetzt mit allen möglichen Sprachen funktionieren.
-
Der Code lässt sich auch prima direkt als xp:CustomConverter im RichText Control verwenden. Damit entfällt die Angabe der ID.
-
Habe den Code so erweitert, daß er auch die entsprechenden Bildchen zu den Attachments anzeigt.
-
Sehr schick - sieht gut aus
-
Hallo,
ich habe den Code in meine XPage eingebunden. Klappt auch prima.
Nur wenn man mehrere Anhänge in einem Dokument hat, dann wird immer nur
das letzte Dokument angezeigt.
Gibt es hier evtl noch einen Ansatz ohne jeden Anhang in eine Zeile zu platzieren?
Danke für die Unterstützung.