Exemple #1
0
        public ActionResult CreateOffer([Bind(Include = "viesti_Id,inbox,viestiLoki,opiskelija_Id,yritys_Id,paaKayttaja_Id")] Viesti viesti, int?opisId)
        {
            if (ModelState.IsValid)
            {
                using (Stud1Entities dc = new Stud1Entities())
                {
                    Viesti uusiViesti = new Viesti();
                    uusiViesti.inbox          = viesti.inbox;
                    uusiViesti.viestiLoki     = viesti.viestiLoki;
                    uusiViesti.opiskelija_Id  = opisId;
                    uusiViesti.yritys_Id      = Convert.ToInt32(Session["corporate_id"]);
                    uusiViesti.onkoVastaus    = false;
                    uusiViesti.onkoLuettu     = false;
                    uusiViesti.viestinPaivays = DateTime.Now;

                    db.Viesti.Add(uusiViesti);
                    db.SaveChanges();
                }

                return(RedirectToAction("Index"));
            }

            ViewBag.opiskelija_Id  = new SelectList(db.Opiskelija, "opiskelija_Id", "etunimi", viesti.opiskelija_Id);
            ViewBag.paaKayttaja_Id = new SelectList(db.PaaKayttaja, "paaKayttaja_Id", "nimi", viesti.paaKayttaja_Id);
            ViewBag.yritys_Id      = new SelectList(db.Yritys, "yritys_Id", "yrityksenNimi", viesti.yritys_Id);
            return(View(viesti));
        }
Exemple #2
0
        //************************************************************************
        //Admin viestiedit
        //************************************************************************

        // GET: Viestis/Edit/5
        public ActionResult Edit(int?id)
        {
            //BaseControllerilta saadaan käyttäjätodennus (vain admin)
            if (TryGetRedirectUrl(RedirectToAction("OpisSisalto", "OmaSisaltos"),
                                  RedirectToAction("YritysSisalto", "OmaSisaltos"),
                                  out var redirectResult))
            {
                return(redirectResult);
            }

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Viesti viesti = db.Viesti.Find(id);

            if (viesti == null)
            {
                return(HttpNotFound());
            }
            ViewBag.opiskelija_Id  = new SelectList(db.Opiskelija, "opiskelija_Id", "etunimi", viesti.opiskelija_Id);
            ViewBag.paaKayttaja_Id = new SelectList(db.PaaKayttaja, "paaKayttaja_Id", "nimi", viesti.paaKayttaja_Id);
            ViewBag.yritys_Id      = new SelectList(db.Yritys, "yritys_Id", "yrityksenNimi", viesti.yritys_Id);
            return(View(viesti));
        }
Exemple #3
0
        //****************************************************************
        //viestiluetuksi
        //****************************************************************
        //**HOX! tällä hetkellä mahdollisesti pystyy suoraan selaimen osoiteriville kirjoitettuaan kirjoittaa viestin luetuksi. ei paha.
        public ActionResult ViestiLuetuksi(int id) //id tulee suoraan osoitekenttään linkistä saatavalla item.viesti_Id:llä
        {
            using (Stud1Entities update = new Stud1Entities())
            {
                Viesti viestiLuetuksi = (from c in update.Viesti
                                         where c.viesti_Id == id
                                         select c).FirstOrDefault();
                viestiLuetuksi.onkoLuettu = true;
                update.SaveChanges();
            }

            //Viesti f = db.Viesti.FirstOrDefault(x => x.viesti_Id == id);
            //f.onkoLuettu = true;
            //db.SaveChanges();

            //uudelleenlinkkaus takaisin käyttäjän sivulle onnistuneen tietokantatallennuksen jälkeen:
            if (Convert.ToInt32(Session["admin_id"]) != 1)
            {
                if (Session["student_id"] != null)
                {
                    return(RedirectToAction("HaeOpiskelijanViestit", "Viestis", null));
                }
                if (Session["corporate_id"] != null)
                {
                    return(RedirectToAction("HaeYrityksenViestit", "Viestis", null));
                }
                return(RedirectToAction("Index", "Viestis", null));
            }
            else
            {
                return(RedirectToAction("Login", "Logins", null));
            }
        }
Exemple #4
0
        public ActionResult Reply([Bind(Include = "viesti_Id,inbox,viestiLoki,opiskelija_Id,yritys_Id,paaKayttaja_Id")] Viesti viesti, int?yritysId, string vastausAihe)
        {
            if (ModelState.IsValid)
            {
                using (Stud1Entities dc = new Stud1Entities())
                {
                    Viesti uusiVastausViesti = new Viesti();
                    uusiVastausViesti.inbox          = vastausAihe;
                    uusiVastausViesti.viestiLoki     = viesti.viestiLoki;
                    uusiVastausViesti.opiskelija_Id  = Convert.ToInt32(Session["student_id"]);
                    uusiVastausViesti.yritys_Id      = yritysId;
                    uusiVastausViesti.onkoLuettu     = false;
                    uusiVastausViesti.onkoVastaus    = true;
                    uusiVastausViesti.viestinPaivays = DateTime.Now;

                    db.Viesti.Add(uusiVastausViesti);
                    db.SaveChanges();
                }

                return(RedirectToAction("HaeOpiskelijanViestit", "Viestis"));
            }

            ViewBag.opiskelija_Id  = new SelectList(db.Opiskelija, "opiskelija_Id", "etunimi", viesti.opiskelija_Id);
            ViewBag.paaKayttaja_Id = new SelectList(db.PaaKayttaja, "paaKayttaja_Id", "nimi", viesti.paaKayttaja_Id);
            ViewBag.yritys_Id      = new SelectList(db.Yritys, "yritys_Id", "yrityksenNimi", viesti.yritys_Id);
            return(View(viesti));
        }
Exemple #5
0
        public ActionResult DeleteConfirmed(int id)
        {
            Viesti viesti = db.Viesti.Find(id);

            db.Viesti.Remove(viesti);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #6
0
 public ActionResult Edit([Bind(Include = "viesti_Id,inbox,viestiLoki,opiskelija_Id,yritys_Id,paaKayttaja_Id")] Viesti viesti)
 {
     if (ModelState.IsValid)
     {
         db.Entry(viesti).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.opiskelija_Id  = new SelectList(db.Opiskelija, "opiskelija_Id", "etunimi", viesti.opiskelija_Id);
     ViewBag.paaKayttaja_Id = new SelectList(db.PaaKayttaja, "paaKayttaja_Id", "nimi", viesti.paaKayttaja_Id);
     ViewBag.yritys_Id      = new SelectList(db.Yritys, "yritys_Id", "yrityksenNimi", viesti.yritys_Id);
     return(View(viesti));
 }
Exemple #7
0
        //****************************************************************
        //luodaan id:n avulla uusi viesti opiskelijalle
        //****************************************************************

        public ActionResult CreateOffer(int?opisId)
        {
            //BaseControllerilta saadaan käyttäjätodennus (vain yritys)
            if (TryGetRedirectUrlWhereYritys(RedirectToAction("OpisSisalto", "OmaSisaltos"),
                                             RedirectToAction("Login", "Logins"),
                                             out var redirectResultCorporate))
            {
                return(redirectResultCorporate);
            }
            Viesti model = new Viesti();

            model.opiskelija_Id = opisId;

            return(View(model));
        }
Exemple #8
0
        //****************************************************************
        //luodaan id:n avulla vastaus yritykselle v1
        //****************************************************************
        public ActionResult Reply(int?yritysId, string vastausAihe)
        {
            if (TryGetRedirectUrlWhereStudent(RedirectToAction("Login", "Logins"), //BaseControllerilta saadaan käyttäjätodennus (vain opiskelija)
                                              RedirectToAction("YritysSisalto", "OmaSisaltos"),
                                              out var redirectResultStudent))
            {
                return(redirectResultStudent);
            }
            Viesti replyModel = new Viesti();

            replyModel.yritys_Id = yritysId;
            replyModel.inbox     = vastausAihe;

            return(View(replyModel));
        }
Exemple #9
0
        //****************************************************************
        //luodaan id:n avulla vastaus opiskelijalle v2
        //****************************************************************
        public ActionResult ReplyToStudent(int?opiskelijaId, string vastausAihe)
        {
            //BaseControllerilta saadaan käyttäjätodennus (vain yritys)
            if (TryGetRedirectUrlWhereYritys(RedirectToAction("OpisSisalto", "OmaSisaltos"),
                                             RedirectToAction("Login", "Logins"),
                                             out var redirectResultCorporate))
            {
                return(redirectResultCorporate);
            }
            Viesti replyToStudModel = new Viesti();

            replyToStudModel.opiskelija_Id = opiskelijaId;
            replyToStudModel.inbox         = vastausAihe;

            return(View(replyToStudModel));
        }
Exemple #10
0
        // GET: Viestis/Delete/5
        public ActionResult Delete(int?id)
        {
            //jos admin ei ole kirjautunut, niin opiskelijaprofiilien adminsivua ei näytetä
            if (Convert.ToInt32(Session["admin_id"]) != 1)                            //jos joku muu kuin admin niin tarkastetaan ketä
            {
                if (Session["student_id"] == null && Session["corporate_id"] == null) //jos käyttäjä ei ole kirjautunut, niin hänet ohjataan login sivulle kutsuessaan tätä
                {
                    return(RedirectToAction("Login", "Logins"));
                }
            }
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Viesti viesti = db.Viesti.Find(id);

            if (viesti == null)
            {
                return(HttpNotFound());
            }
            return(View(viesti));
        }
Exemple #11
0
        public IHttpActionResult PostViesti([FromBody] dynamic value)
        {
            Kayttaja k = Kirjautuminen.HaeKirjautuminen(Request.Headers.Authorization?.ToString().Substring(7) ?? null);

            if (!k.OnKirjautunut)
            {
                return(Unauthorized());
            }

            Viesti viesti = new Viesti();

            try
            {
                viesti.otsikko     = value.otsikko.Value;
                viesti.viesti      = value.viesti.Value;
                viesti.lanka_id    = int.Parse(value.lanka_id.Value);
                viesti.aika        = DateTime.Now;
                viesti.kayttaja_id = k.kayttaja_id;
            }
            catch (Exception)
            {
                return(BadRequest());
            }
            if (viesti.otsikko == null || viesti.viesti == null || viesti.lanka_id == 0)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Viestit.Add(viesti);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = viesti.viesti_id }, viesti));
        }