annotate src/lib-imap/imap-util.c @ 1958:4dec6a3d79fd HEAD

s/custom flags/keywords/
author Timo Sirainen <tss@iki.fi>
date Sun, 02 May 2004 23:32:15 +0300
parents 79790750c349
children aae574ed7f4c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1 /* Copyright (C) 2002 Timo Sirainen */
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
3 #include "lib.h"
833
41ec8cadd238 Replaced TempString with a String which can use any memory pool and uses
Timo Sirainen <tss@iki.fi>
parents: 805
diff changeset
4 #include "str.h"
1915
79790750c349 importing new index code. mbox still broken.
Timo Sirainen <tss@iki.fi>
parents: 1638
diff changeset
5 #include "mail-types.h"
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
6 #include "imap-util.h"
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7
1638
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
8 const char *imap_write_flags(const struct mail_full_flags *flags)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
9 {
903
fd8888f6f037 Naming style changes, finally got tired of most of the typedefs. Also the
Timo Sirainen <tss@iki.fi>
parents: 896
diff changeset
10 string_t *str;
1915
79790750c349 importing new index code. mbox still broken.
Timo Sirainen <tss@iki.fi>
parents: 1638
diff changeset
11 const char *sysflags;
450
925d6eb5f8be MailStorage interface change. We now let storage call several sync-functions
Timo Sirainen <tss@iki.fi>
parents: 184
diff changeset
12 unsigned int i;
925d6eb5f8be MailStorage interface change. We now let storage call several sync-functions
Timo Sirainen <tss@iki.fi>
parents: 184
diff changeset
13
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
14 if (flags == 0)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
15 return "";
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
16
1638
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
17 sysflags = t_strconcat(
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
18 (flags->flags & MAIL_ANSWERED) ? " \\Answered" : "",
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
19 (flags->flags & MAIL_FLAGGED) ? " \\Flagged" : "",
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
20 (flags->flags & MAIL_DELETED) ? " \\Deleted" : "",
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
21 (flags->flags & MAIL_SEEN) ? " \\Seen" : "",
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
22 (flags->flags & MAIL_DRAFT) ? " \\Draft" : "",
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
23 (flags->flags & MAIL_RECENT) ? " \\Recent" : "",
e95c0e462591 API change for updating message flags.
Timo Sirainen <tss@iki.fi>
parents: 903
diff changeset
24 NULL);
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
25
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
26 if (*sysflags != '\0')
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
27 sysflags++;
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
28
1958
4dec6a3d79fd s/custom flags/keywords/
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
29 if (flags->keywords_count == 0)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
30 return sysflags;
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
31
1958
4dec6a3d79fd s/custom flags/keywords/
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
32 /* we have keywords too */
833
41ec8cadd238 Replaced TempString with a String which can use any memory pool and uses
Timo Sirainen <tss@iki.fi>
parents: 805
diff changeset
33 str = t_str_new(256);
41ec8cadd238 Replaced TempString with a String which can use any memory pool and uses
Timo Sirainen <tss@iki.fi>
parents: 805
diff changeset
34 str_append(str, sysflags);
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
35
1958
4dec6a3d79fd s/custom flags/keywords/
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
36 for (i = 0; i < flags->keywords_count; i++) {
1915
79790750c349 importing new index code. mbox still broken.
Timo Sirainen <tss@iki.fi>
parents: 1638
diff changeset
37 if (str_len(str) > 0)
79790750c349 importing new index code. mbox still broken.
Timo Sirainen <tss@iki.fi>
parents: 1638
diff changeset
38 str_append_c(str, ' ');
1958
4dec6a3d79fd s/custom flags/keywords/
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
39 str_append(str, flags->keywords[i]);
1915
79790750c349 importing new index code. mbox still broken.
Timo Sirainen <tss@iki.fi>
parents: 1638
diff changeset
40 }
833
41ec8cadd238 Replaced TempString with a String which can use any memory pool and uses
Timo Sirainen <tss@iki.fi>
parents: 805
diff changeset
41 return str_c(str);
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
42 }