* clean up warnings, especialy on 64 bit
[citadel.git] / webcit / ical_subst.c
1 #include "webcit.h"
2
3
4 extern IcalEnumMap icalproperty_kind_map[];
5
6
7 HashList *IcalComponentMap = NULL;
8
9 void SortPregetMatter(HashList *Cals)
10 {
11         disp_cal *Cal;
12         void *vCal;
13         const char *Key;
14         long KLen;
15         IcalEnumMap *SortMap[10];
16         IcalEnumMap *Map;
17         void *vSort;
18         const char *Next = NULL;
19         const StrBuf *SortVector;
20         StrBuf *SortBy;
21         int i = 0;
22         HashPos *It;
23
24         SortVector = SBSTR("ICALSortVec");
25         if (SortVector == NULL)
26                 return;
27
28         for (i = 0; i < 10; i++) SortMap[i] = NULL;
29         SortBy = NewStrBuf();
30         while (StrBufExtract_NextToken(SortBy, SortVector, &Next, ':') > 0) {
31                 GetHash(IcalComponentMap, SKEY(SortBy), &vSort);
32                 Map = (IcalEnumMap*) vSort;
33                 SortMap[i] = Map;
34                 i++;
35                 if (i > 9)
36                         break;
37         }
38
39         if (i == 0)
40                 return;
41
42         switch (SortMap[i - 1]->map) {
43                 ///     case 
44
45         default:
46                 break;
47         }
48
49
50         It = GetNewHashPos(Cals, 0);
51         while (GetNextHashPos(Cals, It, &KLen, &Key, &vCal)) {
52                 i = 0;
53                 Cal = (disp_cal*) vCal;
54                 Cal->Status = icalcomponent_get_status(Cal->cal);
55                 Cal->SortBy = Cal->cal;
56                 
57
58                 while ((SortMap[i] != NULL) && 
59                        (Cal->SortBy != NULL)) 
60                 {
61                         /****Cal->SortBy = icalcomponent_get_first_property(Cal->SortBy, SortMap[i++]->map); */
62                 }
63         }
64         
65                 
66 }
67
68
69 void tmplput_ICalItem(StrBuf *Target, WCTemplputParams *TP)
70 {
71
72 }
73
74 void CreateIcalComponendKindLookup(void)
75 {
76         int i = 0;
77
78         IcalComponentMap = NewHash (1, NULL);
79         while (icalproperty_kind_map[i].NameLen != 0) {
80                 RegisterNS(icalproperty_kind_map[i].Name, 
81                            icalproperty_kind_map[i].NameLen, 
82                            0, 
83                            10, 
84                            tmplput_ICalItem,
85                            NULL, 
86                            CTX_ICAL);
87                 Put(IcalComponentMap, 
88                     icalproperty_kind_map[i].Name, 
89                     icalproperty_kind_map[i].NameLen, 
90                     &icalproperty_kind_map[i],
91                     reference_free_handler);
92                            
93                            
94                 i++;
95         }
96 }
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113 void 
114 InitModule_ICAL_SUBST
115 (void)
116 {
117         CreateIcalComponendKindLookup ();
118
119 }
120
121 void 
122 ServerShutdownModule_ICAL
123 (void)
124 {
125         DeleteHash(&IcalComponentMap);
126 }