/* note: match MARK_AMP_URI_STR as well, because after txt->html, a '&' will look like $(MARK_AMP_URI_STR)"amp;" */
#define MAIL_VIEWER_URL_MATCH_PATTERNS { \
- { "(file|rtsp|http|ftp|https|mms|mmsh|rtsp|rdp|lastfm)://[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR \
+ { "(file|rtsp|http|ftp|https|mms|mmsh|webcal|feed|rtsp|rdp|lastfm)://[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR \
"]+[-a-z0-9_$%" MARK_AMP_URI_STR "=?/~#]", \
NULL, NULL },\
{ "www\\.[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR "]+[-a-z0-9_$%" MARK_AMP_URI_STR "=?/~#]",\
NULL, "http://" }, \
{ "ftp\\.[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR "]+[-a-z0-9_$%" MARK_AMP_URI_STR "=?/~#]",\
NULL, "ftp://" },\
- { "(jabberto|voipto|sipto|sip|chatto|xmpp):[-_a-z@0-9.+]+", \
+ { "(jabberto|voipto|sipto|sip|chatto|skype|xmpp):[-_a-z@0-9.+]+", \
NULL, NULL}, \
{ "mailto:[-_a-z0-9.\\+]+@[-_a-z0-9.]+", \
NULL, NULL},\
g_return_val_if_fail (text, NULL);
g_return_val_if_fail (content_type, NULL);
- if (!signature)
- retval = g_strdup ("");
- else if (strcmp(content_type, "text/html") == 0) {
- tmp_sig = g_strconcat ("\n", SIGNATURE_MARKER,"\n", signature, NULL);
- retval = modest_text_utils_convert_to_html_body(tmp_sig, -1, TRUE);
+ if (!signature) {
+ tmp_sig = g_strdup (text);
+ } else {
+ tmp_sig = g_strconcat (text, "\n", SIGNATURE_MARKER, "\n", signature, NULL);
+ }
+
+ if (strcmp (content_type, "text/html") == 0) {
+ retval = modest_text_utils_convert_to_html_body (tmp_sig, -1, TRUE);
g_free (tmp_sig);
} else {
- retval = g_strconcat (text, "\n", SIGNATURE_MARKER, "\n", signature, NULL);
+ retval = tmp_sig;
}
return retval;
iter = text;
len = strlen(text);
+ remaining = g_string_new ("");
do {
l = get_next_line (text, len, iter);
iter = iter + l->len + 1;
"<body>\n<br/>\n");
if (text || cite || signature) {
+ GString *quoted_text;
g_string_append (result_string, "<pre>\n");
if (signature) {
quote_html_add_to_gstring (result_string, SIGNATURE_MARKER);
quote_html_add_to_gstring (result_string, signature);
}
quote_html_add_to_gstring (result_string, cite);
- quote_html_add_to_gstring (result_string, text);
+ quoted_text = g_string_new ("");
+ quoted_text = modest_text_utils_quote_body (quoted_text, text, ">", limit);
+ quote_html_add_to_gstring (result_string, quoted_text->str);
+ g_string_free (quoted_text, TRUE);
if (attachments) {
gchar *attachments_string = quoted_attachments (attachments);
quote_html_add_to_gstring (result_string, attachments_string);
for (i = 0; address[i]; ++i) {
if (address[i] == '<') {
- if (G_UNLIKELY(i == 0))
- return; /* there's nothing else, leave it */
- else {
+ if (G_UNLIKELY(i == 0)) {
+ break; /* there's nothing else, leave it */
+ }else {
address[i] = '\0'; /* terminate the string here */
- return;
+ break;
}
}
}
+
+ g_strchomp (address);
}
const guint MB=1024 * KB;
const guint GB=1024 * MB;
+ if (size == 0)
+ return g_strdup_printf (_FM("sfil_li_size_kb"), 0);
if (0 <= size && size < KB)
- return g_strdup_printf (_FM("sfil_li_size_kb"), 1);
+ return g_strdup_printf (_FM("sfil_li_size_1kb_99kb"), 1);
else if (KB <= size && size < 100 * KB)
return g_strdup_printf (_FM("sfil_li_size_1kb_99kb"), size / KB);
else if (100*KB <= size && size < MB)