MCPcopy Create free account
hub / github.com/MailCore/mailcore2 / templateValuesForHeader

Method templateValuesForHeader

src/core/renderer/MCHTMLRendererCallback.cpp:26–157  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

24}
25
26mailcore::HashMap * HTMLRendererTemplateCallback::templateValuesForHeader(mailcore::MessageHeader * header)
27{
28 mailcore::HashMap * result = mailcore::HashMap::hashMap();
29
30 if (header->from() != NULL) {
31 result->setObjectForKey(MCSTR("HASFROM"), mailcore::HashMap::hashMap());
32 result->setObjectForKey(MCSTR("FROM"), mailcore::AddressDisplay::displayStringForAddress(header->from())->htmlEncodedString());
33 result->setObjectForKey(MCSTR("SHORTFROM"), mailcore::AddressDisplay::shortDisplayStringForAddress(header->from())->htmlEncodedString());
34 result->setObjectForKey(MCSTR("VERYSHORTFROM"), mailcore::AddressDisplay::veryShortDisplayStringForAddress(header->from())->htmlEncodedString());
35 }
36 else {
37 result->setObjectForKey(MCSTR("NOFROM"), mailcore::HashMap::hashMap());
38 }
39
40 if ((header->to() != NULL) && (header->to()->count() > 0)) {
41 result->setObjectForKey(MCSTR("HASTO"), mailcore::HashMap::hashMap());
42 result->setObjectForKey(MCSTR("TO"), mailcore::AddressDisplay::displayStringForAddresses(header->to())->htmlEncodedString());
43 result->setObjectForKey(MCSTR("SHORTTO"), mailcore::AddressDisplay::shortDisplayStringForAddresses(header->to())->htmlEncodedString());
44 result->setObjectForKey(MCSTR("VERYSHORTTO"), mailcore::AddressDisplay::veryShortDisplayStringForAddresses(header->to())->htmlEncodedString());
45 }
46 else {
47 result->setObjectForKey(MCSTR("NOTO"), mailcore::HashMap::hashMap());
48 }
49
50 if ((header->cc() != NULL) && (header->cc()->count() > 0)) {
51 result->setObjectForKey(MCSTR("HASCC"), mailcore::HashMap::hashMap());
52 result->setObjectForKey(MCSTR("CC"), mailcore::AddressDisplay::displayStringForAddresses(header->cc())->htmlEncodedString());
53 result->setObjectForKey(MCSTR("SHORTCC"), mailcore::AddressDisplay::shortDisplayStringForAddresses(header->cc())->htmlEncodedString());
54 result->setObjectForKey(MCSTR("VERYSHORTCC"), mailcore::AddressDisplay::veryShortDisplayStringForAddresses(header->cc())->htmlEncodedString());
55 }
56 else {
57 result->setObjectForKey(MCSTR("NOCC"), mailcore::HashMap::hashMap());
58 }
59
60 if ((header->bcc() != NULL) && (header->bcc()->count() > 0)) {
61 result->setObjectForKey(MCSTR("HASBCC"), mailcore::HashMap::hashMap());
62 result->setObjectForKey(MCSTR("BCC"), mailcore::AddressDisplay::displayStringForAddresses(header->bcc())->htmlEncodedString());
63 result->setObjectForKey(MCSTR("SHORTBCC"), mailcore::AddressDisplay::shortDisplayStringForAddresses(header->bcc())->htmlEncodedString());
64 result->setObjectForKey(MCSTR("VERYSHORTBCC"), mailcore::AddressDisplay::veryShortDisplayStringForAddresses(header->bcc())->htmlEncodedString());
65 }
66 else {
67 result->setObjectForKey(MCSTR("NOBCC"), mailcore::HashMap::hashMap());
68 }
69
70 mailcore::Array * recipient = new mailcore::Array();
71 recipient->addObjectsFromArray(header->to());
72 recipient->addObjectsFromArray(header->cc());
73 recipient->addObjectsFromArray(header->bcc());
74
75 if (recipient->count() > 0) {
76 result->setObjectForKey(MCSTR("HASRECIPIENT"), mailcore::HashMap::hashMap());
77 result->setObjectForKey(MCSTR("RECIPIENT"), mailcore::AddressDisplay::displayStringForAddresses(recipient)->htmlEncodedString());
78 result->setObjectForKey(MCSTR("SHORTRECIPIENT"), mailcore::AddressDisplay::shortDisplayStringForAddresses(recipient)->htmlEncodedString());
79 result->setObjectForKey(MCSTR("VERYSHORTRECIPIENT"), mailcore::AddressDisplay::veryShortDisplayStringForAddresses(recipient)->htmlEncodedString());
80 }
81 else {
82 result->setObjectForKey(MCSTR("NORECIPIENT"), mailcore::HashMap::hashMap());
83 }

Callers

nothing calls this directly

Calls 15

setObjectForKeyMethod · 0.80
htmlEncodedStringMethod · 0.80
releaseMethod · 0.80
setDateStyleMethod · 0.80
setTimeStyleMethod · 0.80
stringFromDateMethod · 0.80
fromMethod · 0.45
toMethod · 0.45
countMethod · 0.45
ccMethod · 0.45
bccMethod · 0.45
addObjectsFromArrayMethod · 0.45

Tested by

no test coverage detected