Exemple #1
0
        public async Task <ActionResult> ForgotPassword(ForgotPasswordViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = await UserManager.FindByNameAsync(model.Email);

                if (user == null /*|| !(await UserManager.IsEmailConfirmedAsync(user.Id))*/)
                {
                    // Don't reveal that the user does not exist or is not confirmed
                    return(View("ForgotPasswordConfirmation"));
                }

                // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771
                // Send an email with this link
                string code = await UserManager.GeneratePasswordResetTokenAsync(user.Id);

                var  callbackUrl = Url.Action("ResetPassword", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                Guid guid        = Guid.NewGuid();
                FastArbitreEmails.ReinitiatingPassword(user.Email, callbackUrl, Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                //  await UserManager.SendEmailAsync(user.Id, "Réinitialisation de votre mot de passe", "Merci de réinitialiser votre mot de passe en cliquant sur ce <a href=\"" + callbackUrl + "\">lien</a>");
                return(RedirectToAction("ForgotPasswordConfirmation", "Account"));
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Exemple #2
0
        public ActionResult AskArbitrationValidation(int conflictId, Company company)
        {
            var conflict = BLLConflicts.GetConflictForUser(conflictId, User.Identity.GetId());


            var com = BLLUsers.AddOrUpdateCompany(company);

            BLLUsers.UpdateUserMainCompany(com.Id, User.Identity.GetId());

            var uic = conflict.UsersInConflicts.Where(c => c.IdUser == User.Identity.GetId()).FirstOrDefault();

            uic.HasAcceptedArbitration = true;
            BLLConflicts.UpdateUserInConflict(uic);

            conflict = BLLConflicts.GetFullConflict(conflictId);
            if (conflict.UsersInConflicts.All(c => c.HasAcceptedArbitration != null && c.HasAcceptedArbitration.Value) ||
                conflict.HasArbitralClause && conflict.UsersInConflicts.Any(c => c.HasAcceptedArbitration != null && c.HasAcceptedArbitration.Value) &&
                conflict.PaymentState == (int)PaymentStateEnum.Complete)
            {
                conflict.State = (int)ConflictState.ArbitrationReady;
                BLLConflicts.UpdateConflict(conflict);

                foreach (var item in conflict.UsersInConflicts)
                {
                    var hasPayed = false;
                    if (!hasPayed && (item.HasAcceptedArbitration == null || !item.HasAcceptedArbitration.Value))
                    {
                        Guid guid = Guid.NewGuid();
                        FastArbitreEmails.ArbitrationAsked(item.User.Email, conflict.Id,
                                                           Request.UrlReferrer.DnsSafeHost + Url.Action("AskArbitration", "Viewer", new { conflictId = conflict.Id }),
                                                           Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                        hasPayed = true;
                    }
                    else
                    {
                        Guid guid = Guid.NewGuid();
                        FastArbitreEmails.ArbitrationSentToCentre(item.User.Email, conflict.Id,
                                                                  Request.UrlReferrer.DnsSafeHost + Url.Action("AskArbitration", "Viewer", new { conflictId = conflict.Id }),
                                                                  Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                    }
                }
            }
            else
            {
                foreach (var item in conflict.UsersInConflicts.Where(c => c.HasAcceptedArbitration == null || !c.HasAcceptedArbitration.Value))
                {
                    Guid guid = Guid.NewGuid();
                    FastArbitreEmails.ArbitrationAsked(item.User.Email, conflict.Id,
                                                       Request.UrlReferrer.DnsSafeHost + Url.Action("AskArbitration", "Viewer", new { conflictId = conflict.Id }),
                                                       Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                }
            }
            return(RedirectToAction("Conflict", new { conflictId = conflictId }));
        }
Exemple #3
0
        public ActionResult MailDebateAdd(int debatId, string mailBody)
        {
            var debate = BLLDebates.GetDebate(debatId);

            if (String.IsNullOrWhiteSpace(mailBody) && Request.Files["FileUpload"] != null && Request.Files["FileUpload"].ContentLength > 0)
            {
                HttpPostedFileBase hpf = Request.Files["FileUpload"] as HttpPostedFileBase;

                var blockBlob = AzureFileHelper.AddFile(debate.Event.IdConflict, hpf);

                var f = new ProofFile();
                f.FilePath   = blockBlob.Uri.AbsoluteUri;
                f.IdConflict = debate.Event.IdConflict;
                f.Name       = blockBlob.Name;

                var file       = BLLConflicts.AddFile(f);
                var mailDebate = BLLDebates.AddMailDebate(new MailDebate()
                {
                    IdDebate   = debatId,
                    Body       = "<a href='" + file.FilePath + "'>" + file.Name + "</a>",
                    CreateDate = DateTime.Now,
                    CreatedBy  = User.Identity.GetId(),
                    IdFile     = file.Id
                });

                foreach (var item in BLLDebates.GetUsersForDebate(debatId))
                {
                    Guid guid = Guid.NewGuid();
                    FastArbitreEmails.YouHaveMail(item, debate, Url.Action("MailDebate", "Arbitre", new
                    {
                        debatId = debate.Id
                    },
                                                                           this.Request.Url.Scheme) + "#mail_" + mailDebate.Id,
                                                  Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                }
            }
            else
            {
                var mailDebate = BLLDebates.AddMailDebate(new MailDebate()
                {
                    IdDebate = debatId, Body = mailBody, CreateDate = DateTime.Now, CreatedBy = User.Identity.GetId()
                });

                foreach (var item in BLLDebates.GetUsersForDebate(debatId))
                {
                    Guid guid = Guid.NewGuid();
                    FastArbitreEmails.YouHaveMail(item, debate,
                                                  Url.Action("MailDebate", "Arbitre", new { debatId = debate.Id }, this.Request.Url.Scheme) + "#mail_" + mailDebate.Id,
                                                  Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                }
            }
            return(RedirectToAction("MailDebate", new { debatId = debatId }));
        }
Exemple #4
0
        public ActionResult ResendInvitation(string id)
        {
            var invit    = BLLInvitations.GetInvitation(Guid.Parse(id));
            var conflict = BLLConflicts.GetConflict(invit.IdConflict);
            var guid     = Guid.NewGuid();
            var url      = Url.Action("Conflict", "Viewer", new { conflictId = invit.IdConflict });

            FastArbitreEmails.InvitationToJoinConflict(invit, conflict,
                                                       String.Format("{0}?i={1}", Request.Url.Authority.ToLower() + url, invit.Id),
                                                       conflict.CreatedBy.DisplayName,
                                                       Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
            return(View());
        }
Exemple #5
0
        public ActionResult AskForVisio(int conflictId, string reason)
        {
            var  conflict = BLLConflicts.GetConflictForArbitration(conflictId);
            Guid guid     = Guid.NewGuid();

            FastArbitreEmails.VisioAsked(conflict.Arbiter.Email, User.Identity.FirstName() + " " + User.Identity.LastName(), conflictId, reason,
                                         Request.UrlReferrer.DnsSafeHost + Url.Action("Conflict", "Viewer", new { conflictId = conflictId }), Request.UrlReferrer.DnsSafeHost + Url.Action("RefuseVisio", new { conflictId = conflictId }),
                                         Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);

            TempData["info"] = "Votre message vient d'être envoyé a l'arbitre. Celui vous proposera rapidement des dates s'il accepte le motif de votre visio conférence.";

            return(RedirectToAction("Conflict", new { conflictId = conflictId }));
        }
Exemple #6
0
        public ActionResult Refuse(int conflictId, string text)
        {
            var conflict = BLLConflicts.GetFullConflict(conflictId);

            conflict.State = (int)ConflictState.RefusedByPlateform;
            BLLConflicts.UpdateConflict(conflict);

            foreach (var item in conflict.UsersInConflicts)
            {
                Guid guid = Guid.NewGuid();

                FastArbitreEmails.CaseRefused(item.User.Email, text, Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
            }
            return(RedirectToAction("Centre"));
        }
Exemple #7
0
        public ContentResult SendAllMails()
        {
            var to   = "*****@*****.**";
            var fake = "http://fakeaddress.com";

            // FastArbitreEmails.AccountCreated(to, "test emails", "testEmails", fake, Guid.NewGuid());
            //FastArbitreEmails.AccountCreatedForUserByLawyer(to, "TestEmails", fake, fake, Guid.NewGuid());
            //FastArbitreEmails.ArbitrationAsked(to, 412, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.CaseRefused(to, "La raison du refus apparait ici!", fake, Guid.NewGuid());
            //FastArbitreEmails.ConfirmAccount(to, "Test emails", fake, fake, Guid.NewGuid());
            FastArbitreEmails.InvitationToJoinConflict(new Common.Invitation()
            {
                Email = to
            }, new Common.Conflict()
            {
                HasArbitralClause = false, Id = 42, IdCreationUser = "******", UsersInConflicts = new List <UsersInConflict>()
                {
                    new UsersInConflict()
                    {
                        UserDescriptionOfTheConflict = "Ma description", IdUser = "******"
                    }
                }
            }, fake, "test emails", fake, Guid.NewGuid());
            //FastArbitreEmails.LawyerCalledOnCase(to, "lawyer name", 412, "test client name", fake, "testlogin", "testpassword", fake, Guid.NewGuid());
            //FastArbitreEmails.LawyerStartedCase(to, fake,412, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.NewMissionOrder(to, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.PreConclusion(to,"user", 442, fake, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.ReinitiatingPassword(to, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.Sentence(to, 442, fake, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.VisioAsked(to, "test email", 412, "raison de la demande de visio", fake, "refus", fake, Guid.NewGuid());
            //FastArbitreEmails.VisioConferencePlanned(to, DateTime.Now, "titre visio", "description visio", fake, "login", "password", fake, Guid.NewGuid());
            //FastArbitreEmails.VisioMultipleDateChoice(to, "titre conf", 442, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.VisioNotProgrammable(to, "titre conf", 442, fake, fake, Guid.NewGuid());
            //FastArbitreEmails.VisioProgrammed(to,412, "url", "titre conf", new Common.MeetingProposition() { DateTimeProposition = DateTime.Now }, fake, Guid.NewGuid());
            //FastArbitreEmails.VisioProgrammedForArbiter(to, "titre conf", 442, fake, new Common.MeetingProposition() { DateTimeProposition = DateTime.Now }, fake, Guid.NewGuid());
            //FastArbitreEmails.YouHaveMail(to, new Common.Debate() { Title = "titre débat" }, fake, fake, Guid.NewGuid());

            //Guid guid = Guid.NewGuid();
            //FastArbitreEmails.EndFreePhase("*****@*****.**", "Pierre Lasvigne", string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~")) + Url.Action("Conflict", "Viewer", new { conflictId = 808 }),
            //  Request.Url.Host.ToLower() + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
            //FastArbitreEmails.ConfirmContestationFilledIn("*****@*****.**", string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~")) + Url.Action("Conflict", "Viewer", new { conflictId = 808 }),
            //   Request.Url.Host.ToLower() + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);

            return(new ContentResult()
            {
                Content = "OK"
            });
        }
Exemple #8
0
        public ActionResult RefuseAssignation(int conflictId, string text, string whereFrom)
        {
            var conflict = BLLConflicts.GetConflict(conflictId);

            conflict.State = (int)ConflictState.ArbitrationReady;
            BLLConflicts.UpdateConflict(conflict);
            Guid guid = Guid.NewGuid();

            FastArbitreEmails.ArbitreRefuseAssignation(text, conflictId, User.Identity.FirstName() + " " + User.Identity.LastName(), Url.Action("Index", "Email", new { id = guid.ToString() }, this.Request.Url.Scheme), guid);
            if (whereFrom == "Centre")
            {
                return(RedirectToAction("Centre"));
            }
            else
            {
                return(RedirectToAction("Detail", new { id = User.Identity.GetId() }));
            }
        }
Exemple #9
0
        public ActionResult StartProcedure(int conflictId, int debatTime, string mailBody, string mailTitle)
        {
            var evt = BLLConflicts.AddEvent(new Event()
            {
                DateBegin   = DateTime.Now,
                Description = mailBody,
                IdConflict  = conflictId,
                Name        = mailTitle,
                Type        = (int)EventTypeEnum.OfficialDocuments,
                IdUser      = User.Identity.GetId()
            });
            var debate = new Debate();

            debate.CreateDate = DateTime.Now;
            debate.IdEvent    = evt.Id;
            debate.CountDown  = debatTime;
            debate.Type       = (int)DebateTypeEnum.Mail;
            debate.Title      = mailTitle;
            debate            = BLLDebates.CreateDebate(debate);

            var mailDebate = new MailDebate();

            mailDebate.CreateDate = DateTime.Now;
            mailDebate.CreatedBy  = User.Identity.GetId();
            mailDebate.IdDebate   = debate.Id;
            mailDebate.Body       = mailBody;
            mailDebate            = BLLDebates.AddMailDebate(mailDebate);

            if (debate.MailDebates == null)
            {
                debate.MailDebates = new List <MailDebate>();
            }
            foreach (var item in BLLDebates.GetUsersForDebate(debate.Id))
            {
                Guid guid = Guid.NewGuid();
                FastArbitreEmails.YouHaveMail(item, debate, Url.Action("MailDebate", "Arbitre", new { debatId = debate.Id }, this.Request.Url.Scheme) + "#mail_" + mailDebate.Id, Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
            }

            debate.MailDebates.Add(mailDebate);
            return(RedirectToAction("Conflict", "Viewer", new { conflictId = conflictId }));
        }
Exemple #10
0
        public ActionResult ContactArbitre(int conflictId, string text)
        {
            Message m = new Message();

            m.CreateDate  = DateTime.Now;
            m.IdConflict  = conflictId;
            m.IdCreatedBy = User.Identity.GetId();
            m.Text        = text;
            m             = BLLConflicts.AddMessage(m);

            var conflict = BLLConflicts.GetConflictForArbitration(conflictId);

            if (User.Identity.Email() == conflict.Arbiter.Email)
            {
                foreach (var item in conflict.UsersInConflicts)
                {
                    if (!item.IsRepresented)
                    {
                        Guid guid = Guid.NewGuid();
                        FastArbitreEmails.SendMessageToArbiter(item.User.Email, conflict.Arbiter.DisplayName, conflictId, Url.Action("Messages", "Arbitre", new { conflictId = conflictId }, this.Request.Url.Scheme), Url.Action("Index", "Email", new { id = guid.ToString() }, this.Request.Url.Scheme), guid);
                    }
                }
            }
            else
            {
                foreach (var item in conflict.UsersInConflicts)
                {
                    if (!item.IsRepresented && item.IdUser != User.Identity.GetId())
                    {
                        Guid guid = Guid.NewGuid();
                        FastArbitreEmails.SendMessageToArbiter(item.User.Email, User.Identity.FirstName() + " " + User.Identity.LastName(), conflictId, Url.Action("Messages", "Arbitre", new { conflictId = conflictId }, this.Request.Url.Scheme), Url.Action("Index", "Email", new { id = guid.ToString() }, this.Request.Url.Scheme), guid);
                    }
                }
                Guid gud = Guid.NewGuid();
                FastArbitreEmails.SendMessageToArbiter(conflict.Arbiter.Email, User.Identity.FirstName() + " " + User.Identity.LastName(), conflictId, Url.Action("Messages", "Arbitre", new { conflictId = conflictId }, this.Request.Url.Scheme), Url.Action("Index", "Email", new { id = gud.ToString() }, this.Request.Url.Scheme), gud);
            }


            TempData["Success"] = "Votre message a bien été envoyé!";
            return(RedirectToAction("Conflict", "Viewer", new { conflictId = conflictId }));
        }
Exemple #11
0
        public ActionResult Assign(int conflictId, string arbiterId)
        {
            var conflict  = BLLConflicts.GetConflictForArbitration(conflictId);
            var demandeur = conflict.UsersInConflicts.First(c => c.IdUser == conflict.IdCreationUser);

            if (demandeur.IsLawyer != null && demandeur.IsLawyer.Value)
            {
                demandeur = conflict.UsersInConflicts.First(c => c.IdLawyer == conflict.IdCreationUser);
            }
            var defendeur = conflict.UsersInConflicts.First(c => (c.IsLawyer == null || !c.IsLawyer.Value) && c.IdUser != demandeur.IdUser);

            if (demandeur.UserCompany == null || demandeur.UserCompany.Company == null || !demandeur.UserCompany.Company.isFilled() ||
                defendeur.UserCompany == null || defendeur.UserCompany.Company == null || !defendeur.UserCompany.Company.isFilled())
            {
                TempData["Error"] = "Vous devez avoir rempli les formulaires administratif des parties (adresses,rcs,etc) avant de pouvoir assigner le cas.";
                return(RedirectToAction("Conflict", "Viewer", new { conflictId = conflictId }));
            }



            BLLArbiter.AssignArbiterToConflict(conflictId, arbiterId);
            var arbiter = BLLUsers.GetUserById(arbiterId);


            //Generate Mission Order and save it on cloud
            var stream = DocGenerator.GenerateMissionOrder(conflictId);
            var blob   = AzureFileHelper.AddFile(conflictId, stream.FileStream, stream.FileName);

            stream.FileStream.Dispose();
            BLLLegalDocuments.AddLegalDocument(new LegalDocument()
            {
                IdConflict = conflictId, Filename = stream.FileName, Url = blob.Uri.AbsoluteUri, Type = (int)LegalDocumentTypeEnum.MissionAct
            });
            Guid guid = Guid.NewGuid();

            FastArbitreEmails.NewMissionOrder(arbiter.Email, blob.Uri.AbsoluteUri, Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);

            return(RedirectToAction("Centre"));
        }
Exemple #12
0
        public ActionResult StartDebate(int conflictId, int eventId, string debatType, string mailTitle, string mailBody, string visioTitle, string visioDescription, DateTime?rdv, int?debatTime)
        {
            var debate = new Debate();

            debate.CreateDate = DateTime.Now;
            debate.IdEvent    = eventId;
            debate.CountDown  = debatTime;
            debate.Type       = debatType == "mail" ? (int)DebateTypeEnum.Mail : (int)DebateTypeEnum.Visio;
            debate.Title      = debate.Type == (int)DebateTypeEnum.Mail ? mailTitle : visioTitle;
            debate            = BLLDebates.CreateDebate(debate);

            if (debate.Type == (int)DebateTypeEnum.Mail)
            {
                var mailDebate = new MailDebate();
                mailDebate.CreateDate = DateTime.Now;
                mailDebate.CreatedBy  = User.Identity.GetId();
                mailDebate.IdDebate   = debate.Id;
                mailDebate.Body       = mailBody;
                mailDebate            = BLLDebates.AddMailDebate(mailDebate);

                if (debate.MailDebates == null)
                {
                    debate.MailDebates = new List <MailDebate>();
                }
                foreach (var item in BLLDebates.GetUsersForDebate(debate.Id))
                {
                    Guid guid = Guid.NewGuid();
                    FastArbitreEmails.YouHaveMail(item, debate, Url.Action("MailDebate", "Arbitre", new { debatId = debate.Id }, this.Request.Url.Scheme) + "#mail_" + mailDebate.Id, Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                }

                debate.MailDebates.Add(mailDebate);
                return(RedirectToAction("MailDebate", new { debatId = debate.Id }));
            }
            else if (debate.Type == (int)DebateTypeEnum.Visio)
            {
                var conflict = BLLConflicts.GetConflictWithUsers(conflictId);
                var chatRoom = new ClickNClaim.OpenFireConnector.chatRoom(debate.Title, visioDescription, rdv.Value);
                OpenFireConnector.Connector connector = new OpenFireConnector.Connector("http://openfire-444e60hk.cloudapp.net:9090/", "admin", "SF211084agantio");
                foreach (var item in conflict.UsersInConflicts)
                {
                    var visioDebate = new MeetingDebate();
                    visioDebate.CreateDate  = DateTime.Now;
                    visioDebate.Date        = rdv.Value;
                    visioDebate.Description = visioDescription;

                    // visioDebate.IdUser = item.IdUser;
                    visioDebate.Link  = "https://openfire-444e60hk.cloudapp.net:7443/ofmeet/?b=1-1461653024012";
                    visioDebate.Title = debate.Title;
                    //visioDebate.IdDebate = debate.Id;
                    //visioDebate = BLLDebates.AddMeetingDate(visioDebate);
                    //if (debate.MeetingDebates == null)
                    //{
                    //    debate.MeetingDebates = new List<MeetingDebate>();
                    //}
                    //debate.MeetingDebates.Add(visioDebate);
                    var user = BLLUsers.GetUserById(item.IdUser);
                    var existingUserInOpenFire = connector.UserExists(user.DisplayName.Replace(" ", "."));
                    if (existingUserInOpenFire == null)
                    {
                        existingUserInOpenFire = connector.CreateUser(new OpenFireConnector.user()
                        {
                            email = user.Email, name = user.DisplayName.Replace(' ', '.'), password = user.Email, username = user.DisplayName.Replace(' ', '.')
                        });
                    }

                    chatRoom.members.Add(new OpenFireConnector.member()
                    {
                        value = user.DisplayName.Replace(" ", ".").ToLower() + "@openfire"
                    });
                    Guid guid = Guid.NewGuid();
                    FastArbitreEmails.VisioConferencePlanned(user.Email, rdv, visioTitle, visioDescription, connector.RoomLink + chatRoom.naturalName,
                                                             user.DisplayName.Replace(" ", ".").ToLower(), user.Email,
                                                             Request.UrlReferrer.DnsSafeHost + Url.Action("Index", "Email", new { id = guid.ToString() }), guid);
                }
                if (chatRoom.members.Where(c => c.value == conflict.Arbiter.DisplayName.Replace(" ", ".") + "@openfire").FirstOrDefault() != null)
                {
                    chatRoom.members.RemoveAll(c => c.value == conflict.Arbiter.DisplayName.Replace(" ", ".") + "@openfire");
                }
                chatRoom.owners.Add(new OpenFireConnector.owner()
                {
                    value = conflict.Arbiter.DisplayName.Replace(" ", ".") + "@openfire"
                });

                var link = connector.CreateChatroom(chatRoom);

                connector = null;
            }
            return(RedirectToAction("Conflict", "Viewer", new { conflictId = conflictId }));
        }