public string DeleteMailbox(HttpServerContext context) { try { if (context.session.Data["user_id"] <= 0) { throw new InvalidRequest(1, "您还未登录"); } var mailbox_model = new MailboxModel(context.DBConnection); var mailbox_id = (int)Json.Decode(context.Request)["mailbox_id"]; var db_mailbox = mailbox_model.GetMailboxByID(mailbox_id); if (db_mailbox == null) { throw new InvalidRequest(1, "您没有权限"); } else { if (db_mailbox.user_id != (int)context.session.Data["user_id"]) { throw new InvalidRequest(1, "您没有权限"); } mailbox_model.DeleteMailbox(mailbox_id); } context.Write(GenerateResponse(new Json()).Encode()); } catch (InvalidRequest a) { context.Write(GenerateResponse(a.Code, a.Message, null).Encode()); } return(null); }
public string GetMailboxs(HttpServerContext context) { try { var mailbox_model = new MailboxModel(Connection); var user_id = (int?)context.session.Data["user_id"] ?? 0; if (user_id <= 0) { throw new InvalidRequest(1, "还未登录"); } var mailboxs = mailbox_model.GetUserMailbox(user_id); var tmp = new Json(); tmp["mailboxs"] = Json.Import <Mailbox>(mailboxs); context.Write(GenerateResponse(tmp).Encode()); } catch (InvalidRequest a) { context.Write(GenerateResponse(a.Code, a.Message, null).Encode()); } return(null); }
public string ReceiveMail(HttpServerContext context) { try { var mailbox_model = new MailboxModel(context.DBConnection); var matter_model = new MatterModel(context.DBConnection); var ret = mailbox_model.GetAllMailbox(); foreach (var mailbox in ret) { try { var mails = EmailReceiver.GetEmails(mailbox.Email_address, mailbox.email_password, mailbox.pop3_address, mailbox.pop3_port, mailbox.use_ssl, mailbox.end_uid, 20); if (mails.Count > 0) { mailbox_model.UpdateMailboxLastUid(mailbox.mailbox_id, mails[0].email_uid); foreach (var matter in mails) { matter.user_id = mailbox.user_id; matter.is_noticed = 1; matter.matter_addion_info["email_uid"] = matter.email_uid; matter_model.NewMatter(matter); } } } catch { } } context.Write(GenerateResponse(new Json()).Encode()); } catch (InvalidRequest a) { context.Write(GenerateResponse(a.Code, a.Message, null).Encode()); } return(null); }