Example #1
0
        public Invite CreateInvite(InviteDataStruct inviteData)
        {
            if (string.IsNullOrWhiteSpace(inviteData.Name) || string.IsNullOrWhiteSpace(inviteData.Surname) || string.IsNullOrWhiteSpace(inviteData.Patronymic))
                throw new BusinessLogicException("Не заполнены ФИО");

            string key = null;
            if(inviteData.State != InviteState.Requested)
                key = Guid.NewGuid().ToString();

            var invite = new Invite()
            {
                Email = inviteData.Email,
                Facebook = inviteData.FacebookId,
                Key = key,
                LiveJournal = inviteData.LiveJournalId,
                Name = inviteData.Name,
                Surname = inviteData.Surname,
                Patronymic = inviteData.Patronymic,
                State = (byte)(inviteData.State ?? InviteState.NotSent),
                UserInfo = inviteData.UserInfo,
                CreationDate = DateTime.Now,
                Phone = inviteData.Phone
            };

            DataService.PerThread.InviteSet.AddObject(invite);
            DataService.PerThread.SaveChanges();

            return invite;
        }
 public AccountRequestedInvites_InviteViewModel(Invite invite)
 {
     if (invite != null)
     {
         InviteId = invite.Id;
         FullName = invite.Surname + " " + invite.Name + " " + invite.Patronymic;
         FacebookUrl = invite.Facebook;
         LiveJournalUrl = invite.LiveJournal;
     }
 }
Example #3
0
 private static void ParseLine(string line)
 {
     string[] results = line.Split(' ', '\t');
     Invite result = new Invite()
                               {
                                   Surname = results[0],
                                   Name = results[1],
                                   Patronymic = results[2],
                                   Key = "20110" + results[3],
                                   Email =  results[4]
                               };
     container.InviteSet.AddObject(result);
 }
        public UserInvites_InviteViewModel(Invite invite)
        {
            if (invite != null)
            {
                Id = invite.Id;
                FullName = invite.FullName;
                Email = invite.Email;
                State = invite.GetStateSting();
                CreationDate = invite.CreationDate;

                if(invite.State == (byte)InviteState.Used) {
                    UserUrl = UrlHelper.GetUrl<User>(invite.InvitedUser.Id);
                    var theUser = DataService.PerThread.BaseUserSet.OfType<User>().SingleOrDefault(u => u.Id == invite.InvitedUser.Id);
                    if (theUser != null)
                        UserAvatar = ImageService.GetImageUrl<User>(theUser.Avatar);
                }

                if (invite.State == (byte)InviteState.NotSent || invite.State == (byte)InviteState.Sent)
                    if (DateTime.Now - invite.CreationDate > ConstHelper.MinInviteResendInterval)
                        IsResendEnabled = true;
            }
        }
Example #5
0
        private void _SendInvite(Invite invite)
        {
            if (!string.IsNullOrWhiteSpace(invite.Email))
            {
                MailMessage message = new MailMessage();
                message.From = new MailAddress("*****@*****.**");
                message.To.Add(new MailAddress(invite.Email));
                message.Subject = "Приглашение на Демократия2";

                if (invite.Referal != null)
                    message.Body = MessageComposer.ComposeInvitationMessage(invite.Referal.Id, invite.Name + " " + invite.Patronymic, invite.Key);
                else
                    message.Body = MessageComposer.ComposeInvitationMessage(invite.Name + " " + invite.Patronymic, invite.Key);

                message.IsBodyHtml = true;
                SmtpClient smtp = new SmtpClient();
                smtp.Send(message);

                smtp.Dispose();
                message.Dispose();

                invite.CreationDate = DateTime.Now;
                invite.State = (byte)InviteState.Sent;

                DataService.PerThread.SaveChanges();
            }
        }