]
)
+dnl Checks for the discount markdown library.
+AC_CHECK_LIB(markdown,
+ markdown,
+ [
+ LDFLAGS="$LDFLAGS -lmarkdown"
+ AC_DEFINE(HAVE_MARKDOWN,[],[whether we have markdown message rendering])
+])
dnl Check for libcitadel
AC_CHECK_HEADER(libcitadel.h,
Priority: extra
Maintainer: Wilfried Goesgens <w.goesgens@outgesourced.org>
Build-Depends: debhelper (>= 4), po-debconf, libical-dev (>=0.43), gettext, locales,
- libcitadel-dev (> 8.13), quilt (>= 0.40), autotools-dev, libssl-dev
+ libcitadel-dev (> 8.13), quilt (>= 0.40), autotools-dev, libssl-dev, libmarkdown-dev
Standards-Version: 3.8.0
Package: citadel-webcit
Mime->Data = Buf;
}
+#ifdef HAVE_MARKDOWN
+void render_MAIL_markdown(StrBuf *Target, WCTemplputParams *TP, StrBuf *FoundCharset)
+{
+#include <mkdio.h>
+ wc_mime_attachment *Mime = (wc_mime_attachment *) CTX(CTX_MIME_ATACH);
+ MMIOT *doc;
+ char *md_as_html = NULL;
+
+ if (StrLength(Mime->Data) == 0)
+ return;
+
+ doc = mkd_string(ChrPtr(Mime->Data), StrLength(Mime->Data), 0);
+ mkd_compile(doc, 0);
+ if (mkd_document(doc, &md_as_html) != EOF) {
+ FreeStrBuf(&Mime->Data);
+ Mime->Data = NewStrBufPlain(md_as_html, -1);
+ }
+// free(md_as_html);
+ mkd_cleanup(doc);
+
+}
+#endif
+
void render_MAIL_UNKNOWN(StrBuf *Target, WCTemplputParams *TP, StrBuf *FoundCharset)
{
wc_mime_attachment *Mime = (wc_mime_attachment *) CTX(CTX_MIME_ATACH);
RegisterMimeRenderer(HKEY("text/plain"), render_MAIL_text_plain, 1, 3);
RegisterMimeRenderer(HKEY("text"), render_MAIL_text_plain, 1, 1);
RegisterMimeRenderer(HKEY("text/html"), render_MAIL_html, 1, 100);
+#ifdef HAVE_MARKDOWN
+ RegisterMimeRenderer(HKEY("text/x-markdown"), render_MAIL_markdown, 1, 30);
+#endif
RegisterMimeRenderer(HKEY(""), render_MAIL_UNKNOWN, 0, 0);
/* these headers are citserver replies to MSG4 and friends. one evaluator for each */