80 if (!args.Decode(&call.
tuple)) {
81 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
86 return new PyInt(
m_db->
SendMail(sender, args.toCharacterIDs, args.toListID, args.toCorpOrAllianceID, args.title, args.body, args.isReplyTo, args.isForwardedFrom));
91 Call_SingleIntList
args;
92 if (!args.Decode(&call.
tuple)) {
93 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
102 int firstId = 0, secondId = 0;
106 Call_TwoIntegerArgs
args;
107 if (!args.Decode(&call.
tuple)) {
108 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
113 int firstId = args.arg1, secondId = args.arg2;
120 return new PyObject(
"util.KeyVal", dummy);
125 Call_AssignLabels
args;
126 if (!args.Decode(&call.
tuple)) {
127 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
131 int labelID = args.labelId;
139 Call_CreateLabel
args;
140 if (!args.Decode(&call.
tuple)) {
141 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
147 return new PyInt(ret);
153 Call_SingleIntegerArg
args;
154 if (!args.Decode(&call.
tuple)) {
155 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
166 Call_SingleIntList
args;
167 if (!args.Decode(&call.
tuple)) {
168 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
172 std::vector<int32> messageIDs = args.ints;
174 for (
int i = 0; i < messageIDs.size(); i++) {
175 int32 messageID = messageIDs[i];
185 if (!args.Decode(&call.
tuple)) {
186 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
203 Call_MailGetBody
args;
204 if (!args.Decode(&call.
tuple)) {
205 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
209 if (!args.isUnread) {
227 Call_SingleIntList
args;
228 if (!args.Decode(&call.
tuple)) {
229 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
252 Call_SingleIntList
args;
253 if (!args.Decode(&call.
tuple)) {
254 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
265 Call_SingleIntegerArg
args;
266 if (!args.Decode(&call.
tuple)) {
267 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
271 int labelId = args.arg;
279 Call_SingleIntegerArg
args;
280 if (!args.Decode(&call.
tuple)) {
281 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
285 int listId = args.arg;
293 Call_SingleIntList
args;
294 if (!args.Decode(&call.
tuple)) {
295 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
306 Call_SingleIntegerArg
args;
307 if (!args.Decode(&call.
tuple)) {
308 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
312 int labelId = args.arg;
321 Call_SingleIntegerArg
args;
322 if (!args.Decode(&call.
tuple)) {
323 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
327 int listId = args.arg;
347 Call_SingleIntList
args;
348 if (!args.Decode(&call.
tuple)) {
349 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
361 Call_SingleIntList
args;
362 if (!args.Decode(&call.
tuple)) {
363 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
375 Call_SingleIntegerArg
args;
376 if (!args.Decode(&call.
tuple)) {
377 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
381 int labelId = args.arg;
390 Call_SingleIntegerArg
args;
391 if (!args.Decode(&call.
tuple)) {
392 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
396 int listId = args.arg;
404 Call_AssignLabels
args;
405 if (!args.Decode(&call.
tuple)) {
406 codelog(SERVICE__ERROR,
"%s: Failed to decode arguments.",
GetName());
PyRep * GetLabels(int characterID) const
void DeleteMail(int32 messageID)
void MarkAllAsUnreadByLabel(uint32 characterID, int labelID)
Dispatcher *const m_dispatch
void DeleteLabel(int characterID, int labelID) const
PyRep * GetItem(size_t index) const
Returns Python object.
void EditLabel(int characterID, Call_EditLabel &args) const
void MoveAllToTrash(uint32 characterID)
int32 GetCharacterID() const
const char * GetName() const
void RemoveStatusMasks(std::vector< int32 > messageIDs, int mask)
void SetMailUnread(int id)
void MarkAllAsReadByLabel(uint32 characterID, int labelID)
#define codelog(type, fmt,...)
void EmptyTrash(uint32 characterID)
void MarkAllAsRead(uint32 characterID)
void ApplyLabels(std::vector< int32 > messageIDs, int labelID)
void MarkAllAsUnread(uint32 characterID)
Dispatcher *const m_dispatch
PyCallable_Make_InnerDispatcher(MailMgrService) MailMgrService
int SendMail(int sender, std::vector< int > &toCharacterIDs, int toListID, int toCorpOrAllianceID, std::string &title, std::string &body, int isReplyTo, int isForwardedFrom)
#define PyCallable_REG_CALL(c, m)
static PyRep * PrimeOwners(std::vector< int32 > &itemIDs)
PyRep * GetNewMail(int charId)
PyString * GetMailBody(int id) const
PyRep * GetMailStatus(int charId)
void SetMailsRead(std::vector< int32 > ids)
bool CreateLabel(int characterID, Call_CreateLabel &args, uint32 &newID) const
virtual ~MailMgrService()
void RemoveLabels(std::vector< int32 > messageIDs, int labelID)
void ApplyStatusMasks(std::vector< int32 > messageIDs, int mask)
void SetItemString(const char *key, PyRep *value)
SetItemString adds or sets a database entry.
void SetMailsUnread(std::vector< int32 > ids)
void MoveAllFromTrash(uint32 characterID)