示例#1
0
        // GET: UzytkowkiHome
        public ActionResult Index()
        {
            ModelUserProfil p = new ModelUserProfil();
            Uzytkownik      u = new Uzytkownik();

            try
            {
                var uzytkownikID = db.AspNetUsers.SingleOrDefault(x => x.Email == User.Identity.Name);
                u             = db.Uzytkownik.SingleOrDefault(m => m.id_aspUser == uzytkownikID.Id);
                p.user        = u;
                p.adres       = db.Adres.SingleOrDefault(n => n.id_uzytkownik == u.Id);
                p.spolecznosc = db.Spolecznosc.SingleOrDefault(n => n.id_uzytkownik == u.Id);


                return(View(p));
            }
            catch
            {
                return(RedirectToAction("Create", "Uzytkowniks", new { area = "" }));
            }
        }
示例#2
0
        public ActionResult Index()
        {
            var listOfUsers = (from u in db1.Users
                               let query = (from ur in db1.Set <IdentityUserRole>()
                                            where ur.UserId.Equals(u.Id)
                                            join r in db1.Roles on ur.RoleId equals r.Id
                                            select r.Name)
                                           select new UserRoleInfo()
            {
                User = u, Roles = query.ToList <string>()
            })
                              .ToList();

            var trenerzy  = listOfUsers.Where(x => x.Roles.ElementAtOrDefault(0) == "trener").ToList();
            var dietetycy = listOfUsers.Where(x => x.Roles.ElementAtOrDefault(0) == "dietetyk").ToList();

            List <Uzytkownik> listaTrener = new List <Uzytkownik>();

            List <Uzytkownik>      listaDietetyk = new List <Uzytkownik>();
            List <ModelUserProfil> listaM        = new List <ModelUserProfil>();

            foreach (UserRoleInfo user in listOfUsers)
            {
                if (user.Roles.FirstOrDefault() != "administrator" && user.Roles.FirstOrDefault() != "klient")
                {
                    Uzytkownik t = db.Uzytkownik.SingleOrDefault(k => k.id_aspUser == user.User.Id);
                    if (t != null)
                    {
                        ModelUserProfil m = new ModelUserProfil();
                        m.user = t;
                        m.rola = user.Roles.ElementAtOrDefault(0);
                        listaM.Add(m);
                    }
                }
            }

            return(View(listaM));
        }
示例#3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!String.IsNullOrEmpty(Request.QueryString["adres"]) && !String.IsNullOrEmpty(Request.QueryString["typwyszukania"]))
            {
                adres = Request.QueryString["adres"];
                typ   = Request.QueryString["typwyszukania"];
                string requestUri = string.Format("http://maps.googleapis.com/maps/api/geocode/xml?address={0}&sensor=false", Uri.EscapeDataString(adres));
                try
                {
                    WebRequest  request  = WebRequest.Create(requestUri);
                    WebResponse response = request.GetResponse();
                    XDocument   xdoc     = XDocument.Load(response.GetResponseStream());

                    XElement result          = xdoc.Element("GeocodeResponse").Element("result");
                    XElement locationElement = result.Element("geometry").Element("location");
                    XElement lat             = locationElement.Element("lat");
                    XElement lng             = locationElement.Element("lng");

                    szerokosc = (string)lat;
                    dlugosc   = (string)lng;
                }

                catch
                {
                    Response.Redirect(Request.RawUrl);
                }

                /*var distance = new Coordinates(Convert.ToDouble(szerokosc), Convert.ToDouble(dlugosc))
                 * .DistanceTo(new Coordinates(48.237867, 16.389477),UnitOfLength.Kilometers);*/


                var listOfUsers = (from u in db1.Users
                                   let query = (from ur in db1.Set <IdentityUserRole>()
                                                where ur.UserId.Equals(u.Id)
                                                join r in db1.Roles on ur.RoleId equals r.Id
                                                select r.Name)
                                               select new UserRoleInfo()
                {
                    User = u, Roles = query.ToList <string>()
                })
                                  .ToList();

                List <UserRoleInfo> listaTyp = new List <UserRoleInfo>();
                if (typ == "trener")
                {
                    listaTyp = listOfUsers.Where(x => x.Roles.ElementAtOrDefault(0) == "trener").ToList();
                }
                else
                {
                    listaTyp = listOfUsers.Where(x => x.Roles.ElementAtOrDefault(0) == "dietetyk").ToList();
                }


                List <ModelUserProfil> listaM = new List <ModelUserProfil>();


                foreach (UserRoleInfo user in listaTyp)
                {
                    if (user.Roles.FirstOrDefault() != "administrator" && user.Roles.FirstOrDefault() != "klient")
                    {
                        Uzytkownik t = db.Uzytkownik.SingleOrDefault(k => k.id_aspUser == user.User.Id);
                        if (t != null)
                        {
                            Adres           a = db.Adres.SingleOrDefault(k => k.id_uzytkownik == t.Id);
                            ModelUserProfil m = new ModelUserProfil();
                            m.user  = t;
                            m.adres = a;
                            m.rola  = user.Roles.FirstOrDefault();
                            listaM.Add(m);
                        }
                    }
                }

                ModelUserProfil        wynik;
                List <ModelUserProfil> lista = new List <ModelUserProfil>();;

                foreach (var item in listaM)
                {
                    tempSzer = item.adres.szerokosc;
                    tempDlug = item.adres.dlugosc;

                    var distance = new Coordinates(Convert.ToDouble(tempSzer, CultureInfo.InvariantCulture), Convert.ToDouble(tempDlug, CultureInfo.InvariantCulture)).DistanceTo(new Coordinates(Convert.ToDouble(szerokosc, CultureInfo.InvariantCulture), Convert.ToDouble(dlugosc, CultureInfo.InvariantCulture)), UnitOfLength.Kilometers);
                    if (distance < 15)
                    {
                        iloscWynikow++;
                        wynik         = item;
                        wynik.dystans = distance;
                        lista.Add(wynik);
                    }
                }

                ////TUUUUU
                List <ModelUserProfil> SortedList = lista.OrderBy(o => o.dystans).ToList();
                htmlText += "<div class='searchBoxes'>";
                foreach (var item in SortedList)
                {
                    htmlText += "<div class='containerSearchCard'>";
                    htmlText += "<div class='img-container'>";
                    if (typ == "trener")
                    {
                        htmlText += "<img src='images/trainerIcon2.png'/>";
                    }
                    else
                    {
                        htmlText += "<img src='images/dietIcon.png'/>";
                    }
                    htmlText += "</div>";
                    htmlText += "<div class='contentSearchCard'>";
                    htmlText += "<div class='titleSearchCard'>";
                    htmlText += "  <h5><a href='/profil?id=" + item.user.Id + "'>" + item.user.imie + " " + item.user.nazwisko + "</a></h5>";
                    if (typ == "trener")
                    {
                        htmlText += "  <span>Trener personalny</span>";
                    }
                    else
                    {
                        htmlText += "  <span>Dietetyk</span>";
                    }
                    htmlText += " </div>";
                    htmlText += "<div class='distance'><img src='images/distance.png'/><br>";
                    htmlText += Math.Round(item.dystans, 1) + " km </div>";

                    htmlText += "  <div class='followSearchCard'><a href='/profil?id=" + item.user.Id + "'>Przejdz do profilu </a></div>";
                    htmlText += " </div>";
                    htmlText += " </div>";
                }
                htmlText += "</div>";

                if (iloscWynikow == 0)
                {
                    htmlText += "Brak wyników";
                }
            }

            else
            {
                Response.Redirect("~");
            }
        }