X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fobjects%2FCalDAV%2FCalDAV.h;h=e95c03bfd7c1a12596415f5bbdd3fdea70fe6b42;hb=63dac73eaf34576dd6bfb5251307ae61ed1d94f3;hp=8934d5afe562f8bb84c4d919a209f402b6312801;hpb=733bd635fc1774a5e680bb3fe16cec1e0603b972;p=xestiacalendar%2F.git diff --git a/source/objects/CalDAV/CalDAV.h b/source/objects/CalDAV/CalDAV.h index 8934d5a..e95c03b 100644 --- a/source/objects/CalDAV/CalDAV.h +++ b/source/objects/CalDAV/CalDAV.h @@ -26,6 +26,10 @@ #include #include #include +#include +#include "../../common/colour.h" +#include "../../common/text.h" +#include "../../common/uuid.h" using namespace std; @@ -40,6 +44,22 @@ enum CalDAVQueryResult { }; struct CalDAVCalendarList { + + map Name; + map HREF; + map Order; + map Description; + map CalColour; + map Tag; + map TagURL; + +}; + +struct CalDAVEntryList { + + map HREF; + map Data; + map Tag; }; @@ -111,8 +131,18 @@ class CalDAV{ private: string ProcessXMLUserPrincipal(); string ProcessXMLCalendarHome(); - bool MatchXMLName(xmlNodePtr *NodePtr, string NodeName); + CalDAVCalendarList ProcessXMLCalendarList(); + CalDAVEntryList ProcessXMLEntryList(); + CalDAVEntryList ProcessXMLSyncTokenList(); + string ProcessXMLEntryETag(); + bool MatchXMLNameTransverse(xmlNodePtr *NodePtr, string NodeName); + bool MatchXMLName(xmlNodePtr *NodePtrOriginal, string NodeName); string FetchXMLData(xmlNodePtr *NodePtr); + CalDAVServerResult EditCalendarProcess(string *CalendarHREF, + string *CalendarName, + Colour *CalendarColour, + string *CalendarDescription, + int *CalendarOrder); CalDAVConnectionData ConnectionData; CalDAVServerResult ConnectionServerResult; @@ -129,8 +159,36 @@ class CalDAV{ CalDAVServerResult GetServerResult(); CalDAVServerSupport GetServerSupport(); CalDAVCalendarList GetCalendars(); + CalDAVEntryList GetEntryList(string *CalendarHREF); + CalDAVEntryList GetEntryList(string *CalendarHREF, string *CalendarTag); + + CalDAVServerResult AddCalendar(string CalendarName); + CalDAVServerResult AddCalendar(string *CalendarName, string *CalendarShortName); + + CalDAVServerResult EditCalendar(string *CalendarHREF, + string *CalendarName, + Colour *CalendarColour, + string *CalendarDescription, + int *CalendarOrder); + CalDAVServerResult EditCalendar(string *CalendarHREF, + Colour *CalendarColour); + CalDAVServerResult EditCalendar(string *CalendarHREF, + string *CalendarName); + CalDAVServerResult EditCalendar(string *CalendarHREF, + int *CalendarOrder); + CalDAVServerResult EditCalendarDescription(string *CalendarHREF, + string *CalendarDescription); + + CalDAVServerResult DeleteCalendar(string *CalendarHREF); + + CalDAVServerResult AddEntry(string *CalendarEntryHREF, string *EntryData); + CalDAVServerResult EditEntry(string *CalendarEntryHREF, string *EntryData, string *EntryETag); + CalDAVServerResult DeleteEntry(string *CalendarEntryHREF); string GetUserPrincipal(); + string GetCalendarHome(string UserPrincipalURI); + + CalDAVServerResult GetEntryETag(string *CalendarEntryHREF, string *ETagValue); };