Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
 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);
 }