Beispiel #1
0
        public ActionResult Index(int?id, string key)
        {
            if (id == null || db.Toplantilar.Find(id) == null)
            {
                return(RedirectToAction("Index", "Toplantilar"));
            }
            var  toplanti       = db.Toplantilar.Find(id);
            Izin izin           = Izin.Dinleyici;
            var  currentUser    = User.Identity.GetUserId();
            var  katilimcidegil = db.Katilimcilar.Where(x => x.ApplicationUserID == currentUser && x.ToplantiID == toplanti.ID).Count() == 0;

            if (toplanti.OzelMi)
            {
                if (string.IsNullOrEmpty(key))
                {
                    if ((!User.Identity.IsAuthenticated) || (katilimcidegil && toplanti.YoneticiID != currentUser))
                    {
                        return(RedirectToAction("Index", "Toplantilar"));
                    }
                }
                else
                {
                    var link = db.Linkler.Where(x => x.ToplantiID == toplanti.ID && x.Anahtar == key).FirstOrDefault();
                    if (link == null || (link.OzelMi && link.Giriss.Count > 0))
                    {
                        return(RedirectToAction("Index", "Toplantilar"));
                    }
                }
            }
            if (katilimcidegil)
            {
                izin = Izin.Konusmaci;
            }
            else
            {
                var davet = db.Katilimcilar.Where(x => x.ApplicationUserID == currentUser && x.ToplantiID == toplanti.ID).FirstOrDefault();
                izin = davet.Izin;
            }


            if (toplanti.BaslamaZamani > DateTime.Now)
            {
                var model = new BaslamamisToplantiViewModel()
                {
                    Yonetici              = toplanti.Yonetici.Ad + " " + toplanti.Yonetici.Soyad,
                    ToplantiAdi           = toplanti.ToplantiAdi,
                    ToplantiBaslamaZamani = toplanti.BaslamaZamani,
                    ToplantiKonusu        = toplanti.Konu,
                    ToplantiSuresi        = (toplanti.BitisZamani - toplanti.BaslamaZamani)
                };
                return(View("baslamamis", model));
            }
            else if (toplanti.BitisZamani < DateTime.Now)
            {
                var model = new BitmisToplantiViewModel()
                {
                    Yonetici            = toplanti.Yonetici.Ad + " " + toplanti.Yonetici.Soyad,
                    ToplantiAdi         = toplanti.ToplantiAdi,
                    ToplantiBitisZamani = toplanti.BitisZamani,
                    ToplantiKonusu      = toplanti.Konu,
                    ToplantiCiktisi     = toplanti.Cikti
                };
                return(View("bitmis", model));
            }
            else
            {
                if (User.Identity.IsAuthenticated)
                {
                    var user  = db.Users.Find(User.Identity.GetUserId());
                    var model = new ToplantiViewModel()
                    {
                        ToplantiId            = toplanti.ID,
                        mesajlar              = db.Mesajlar.Where(x => x.ToplantiID == toplanti.ID).ToList(),
                        Yonetici              = toplanti.Yonetici.Ad + " " + toplanti.Yonetici.Soyad,
                        ToplantiAdi           = toplanti.ToplantiAdi,
                        ToplantiBaslamaZamani = toplanti.BaslamaZamani,
                        ToplantiKonusu        = toplanti.Konu,
                        KullaniciIsmi         = user.Ad + " " + user.Soyad,
                        YoneticiProfile       = toplanti.Yonetici.DosyaID.HasValue ? toplanti.Yonetici.DosyaID.Value : -1,
                        profilResmi           = user.DosyaID.HasValue ? user.DosyaID.Value : -1,
                        izin = izin
                    };
                    if (izin == Izin.Dinleyici)
                    {
                        return(View("Toplanti", model));
                    }
                    else
                    {
                        return(View("ToplantiKonusmaci", model));
                    }
                }
                else
                {
                    var model = new ToplantiyaKatilViewModel()
                    {
                        ToplantiID = toplanti.ID,
                        anahtar    = key,
                        Avatarlar  = db.Avatarlar.ToList()
                    };
                    return(View("Index", model));
                }
            }
        }
Beispiel #2
0
        public ActionResult Join()
        {
            var form = Request.Form;

            var TopId = form["toplantiId"];
            var avaId = form["avatar"];
            int toplantiId, avatarId;

            try
            {
                toplantiId = Convert.ToInt32(TopId);
                avatarId   = Convert.ToInt32(avaId);
            }
            catch (Exception e)
            {
                return(RedirectToAction("Index", "Toplantilar"));
            }

            var isim = form["isim"];

            if (string.IsNullOrEmpty(isim))
            {
                isim = "Anonymous";
            }

            if (db.Toplantilar.Find(toplantiId) == null)
            {
                return(RedirectToAction("Index", "Toplantilar"));
            }

            var toplanti = db.Toplantilar.Find(toplantiId);

            if (User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Index", "Toplantilar"));
            }
            if (toplanti.OzelMi && form["anahtar"] != null)
            {
                var anahtar = form["anahtar"];
                var link    = db.Linkler.Where(x => x.ToplantiID == toplanti.ID && x.Anahtar == anahtar).FirstOrDefault();
                if (link == null || (link.OzelMi && link.Giriss.Count > 0))
                {
                    return(RedirectToAction("Index", "Toplantilar"));
                }
            }
            else if (toplanti.OzelMi)
            {
                return(RedirectToAction("Index", "Toplantilar"));
            }

            if (toplanti.BaslamaZamani > DateTime.Now)
            {
                var model = new BaslamamisToplantiViewModel()
                {
                    Yonetici              = toplanti.Yonetici.Ad + " " + toplanti.Yonetici.Soyad,
                    ToplantiAdi           = toplanti.ToplantiAdi,
                    ToplantiBaslamaZamani = toplanti.BaslamaZamani,
                    ToplantiKonusu        = toplanti.Konu,
                    ToplantiSuresi        = (toplanti.BitisZamani - toplanti.BaslamaZamani)
                };
                return(View("baslamamis", model));
            }
            else if (toplanti.BitisZamani < DateTime.Now)
            {
                var model = new BitmisToplantiViewModel()
                {
                    Yonetici            = toplanti.Yonetici.Ad + " " + toplanti.Yonetici.Soyad,
                    ToplantiAdi         = toplanti.ToplantiAdi,
                    ToplantiBitisZamani = toplanti.BitisZamani,
                    ToplantiKonusu      = toplanti.Konu,
                    ToplantiCiktisi     = toplanti.Cikti
                };
                return(View("bitmis", model));
            }
            else
            {
                var session = new Giris()
                {
                    AvatarID = avatarId,
                    Isim     = isim,
                    Tarih    = DateTime.Now,
                };
                db.Girisler.Add(session);
                session.Avatar = db.Avatarlar.Find(avatarId);
                db.SaveChanges();
                var model = new ToplantiViewModel()
                {
                    ToplantiId            = toplanti.ID,
                    mesajlar              = db.Mesajlar.Where(x => x.ToplantiID == toplanti.ID).ToList(),
                    Yonetici              = toplanti.Yonetici.Ad + " " + toplanti.Yonetici.Soyad,
                    ToplantiAdi           = toplanti.ToplantiAdi,
                    ToplantiBaslamaZamani = toplanti.BaslamaZamani,
                    ToplantiKonusu        = toplanti.Konu,
                    SessionId             = session.ID,
                    izin          = Izin.Dinleyici,
                    KullaniciIsmi = session.Isim,
                    profilResmi   = session.Avatar.DosyaID
                };
                return(View("Toplanti", model));
            }
        }