Esempio n. 1
0
        public ActionResult EmmsACS()
        {
            User user = new User();

            try
            {
                string cer = certificate;

                Saml.Response samlResponse = new Saml.Response(cer);

                samlResponse.LoadXmlFromBase64(Request.Form["SAMLResponse"]);

                if (samlResponse.IsValid())
                {
                    try
                    {
                        user.UserName  = samlResponse.GetNameID();
                        user.email     = samlResponse.GetEmail();
                        user.firstname = samlResponse.GetFirstName();
                        user.lastname  = samlResponse.GetLastName();
                        user.country   = samlResponse.GetCountry();


                        //    user.UserName = "******";
                        //user.email = "*****@*****.**";
                        //user.firstname = "YP";
                        //user.lastname = "YP";
                        //user.country = "in";
                        //emaialID = "*****@*****.**";

                        emaialID            = user.email;
                        Session["EmailiID"] = emaialID;
                        Session["UserName"] = user.UserName;
                        Session["EmailiID"] = emaialID;
                        List <Assets> asetsList = plantSetup.GetUserDetails((emaialID).Trim());
                        if (asetsList == null)
                        {
                            return(RedirectToAction("ErrorMsg", "Auth"));
                        }
                        if (asetsList.Count > 1)
                        {
                            int roleId = 0;
                            foreach (var item in asetsList)
                            {
                                roleId = asetsList.Max(r => r.RoleId);
                            }
                            Session["RoleId"] = roleId;
                            return(RedirectToAction("PlantList", "Auth"));
                        }
                        else if (asetsList.Count > 0)
                        {
                            int roleId = 0;
                            foreach (var item in asetsList)
                            {
                                roleId               = asetsList.Max(r => r.RoleId);
                                Session["PlantId"]   = item.PlantID;
                                Session["PlantName"] = item.PlantName;
                            }
                            Session["RoleId"] = roleId;
                            if (Session["PlantId"].ToString() == "0" && Session["RoleId"].ToString() == "2")
                            {
                                return(RedirectToAction("adminConfiguration", "Admin"));
                            }
                            else
                            {
                                if ((Session["PlantId"].ToString() == "0" && Session["RoleId"].ToString() == "1"))
                                {
                                    return(RedirectToAction("PlantErrorMsg", "Auth"));
                                }
                                else
                                {
                                    return(RedirectToAction("HomePage", "HomePage"));
                                }
                            }
                        }
                        else
                        {
                            return(RedirectToAction("ErrorMsg", "Auth"));
                        }
                    }
                    catch (Exception ex)
                    {
                        Logger.Log("error in AddAcutalInputConsumption" + ex.ToString());
                        //insert error handling code
                        //no, really, please do
                        user.Error = ex.Message;
                    }
                }
                else
                {
                    user.Error = "Valid Failed....";
                }
            }
            catch (Exception ex)
            {
                user.Error = "Initial Fail";
                return(RedirectToAction("ErrorMsg", "Auth"));
            }

            return(RedirectToAction("ErrorMsg", "Auth"));
        }