// Omansisällön muokkaus...missa (int? id) = opiskelija_Id //********************************************************* public ActionResult Edit(int?id) { //adminin pitäisi aina päästä muokkaamaan... if (Convert.ToInt32(Session["admin_id"]) != 1) { //käyttäjä ei pääse muokkaamaan omasisältöä, jos loginissa saatu Session["student_id"] ei vastaa edittiin menossa olevaa opiskelija_id:tä if (Convert.ToInt32(Session["student_id"]) != id) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } OmaSisalto omaSisalto = db.OmaSisalto.Where(c => c.opiskelija_Id == id).SingleOrDefault(); if (omaSisalto == null) { return(HttpNotFound()); } ViewBag.opiskelija_Id = new SelectList(db.Opiskelija, "opiskelija_Id", "etunimi", omaSisalto.opiskelija_Id); return(View(omaSisalto)); }
public ActionResult DeleteConfirmed(int id) { OmaSisalto omaSisalto = db.OmaSisalto.Find(id); db.OmaSisalto.Remove(omaSisalto); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "omaSisalto_Id,omatAsetukset,omaKuva,omaTeksti,opiskelija_Id")] OmaSisalto omaSisalto) { if (ModelState.IsValid) { db.Entry(omaSisalto).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.opiskelija_Id = new SelectList(db.Opiskelija, "opiskelija_Id", "etunimi", omaSisalto.opiskelija_Id); return(View(omaSisalto)); }
// Omasisällön poisto-oikeus vain adminilla (taulujen linkkaukset tuo varmasti omat ongelmansa) EI TESTATTU //********************************************************************************************************** public ActionResult Delete(int?id) { if (Convert.ToInt32(Session["admin_id"]) != 1) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } OmaSisalto omaSisalto = db.OmaSisalto.Find(id); if (omaSisalto == null) { return(HttpNotFound()); } return(View(omaSisalto)); }
public ActionResult Edit([Bind(Include = "omaSisalto_Id,omatAsetukset,omaKuva,omaTeksti,opiskelija_Id")] OmaSisalto omaSisalto) { if (ModelState.IsValid) { try { db.Entry(omaSisalto).State = EntityState.Modified; db.SaveChanges(); TempData["paivitysOnnistui"] = "Profiili päivitetty onnistuneesti!"; return(RedirectToAction("OpisSisalto", "OmaSisaltos")); } catch (Exception) { TempData["paivitysEpaonnistui"] = "Profiilin päivityksessä ilmeni virhe. Yritä uudelleen tai ole yhteydessä tukeemme."; return(RedirectToAction("OpisSisalto", "OmaSisaltos")); } } ViewBag.opiskelija_Id = new SelectList(db.Opiskelija, "opiskelija_Id", "etunimi", omaSisalto.opiskelija_Id); return(View(omaSisalto)); }
//OppilasRekisterointi.cshtml käyttää Tuple -määritystä modeleihin(luokkiin) kirjoittamista varten ja ne ovar array -muodossa(Item1,Item2,Item3 jne.) //Määritellään OppilasRekisterointi.cshtml syötettyjen tietojen tallennuspaikka (luokkaan)... public ActionResult OppilasRekisterointi( [Bind(Prefix = "Item1")] LoginModel oppkirjautuminen, [Bind(Prefix = "Item2")] OpiskelijaModel opiskelija, [Bind(Prefix = "Item3")] PostitoimipaikkaModel pstmp, [Bind(Prefix = "Item4")] PuhelinNumeroModel puhelinnro ) { bool Status = false; string message = ""; // // Model Validation if (ModelState.IsValid) { #region //Email already Exist //Login oppTarkastus = new Login(); var isExist = IsEmailExist(oppkirjautuminen.kayttajaNimi); if (isExist) { //TempData["EmailExist"] = "Tämä sähköpostiosoite on jo rekisteröity"; //ModelState.AddModelError("EmailExist", "Tämä sähköpostiosoite on jo rekisteröity"); ModelState.AddModelError("", "Tämä sähköpostiosoite on jo rekisteröity"); return(View()); //jos sähköposti löytyy niin käyttäjä palautetaan samaan näkymään. Tämän ei pitäisi poistaa jo syötettyjä tietoja. } #endregion #region Generate Activation Code oppkirjautuminen.aktivointiKoodi = Guid.NewGuid(); #endregion //#region Password Hashing //user.salasana = Crypto.Hash(user.salasana); ////salasanan tarkastus user.cs -tiedostosta (en tiedä miten toimii) //confirm.ConfirmPassword = Crypto.Hash(confirm.ConfirmPassword); // //#endregion oppkirjautuminen.onkoEmailAktivoitu = true;//muutettu trueksi koska helpompi kehittäessä... #region Tallennus tietokantaan using (Stud1Entities dc = new Stud1Entities()) { //Tietojen tallennus modelista tietokantaan... Opiskelija uusiOpis = new Opiskelija(); uusiOpis.etunimi = opiskelija.etunimi; uusiOpis.etunimi = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(uusiOpis.etunimi.ToLower()); //muutetaan ensimmäinen kirjain isoksi, koska käyttäjä uusiOpis.sukunimi = opiskelija.sukunimi; uusiOpis.sukunimi = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(uusiOpis.sukunimi.ToLower()); //muutetaan ensimmäinen kirjain isoksi, koska käyttäjä uusiOpis.opiskelija_Id = opiskelija.opiskelija_Id; string opiskelijanpostinumero = pstmp.postinumero; //Postitoimipaikka id:n haku postinumeron perusteella uusiOpis.postitoimipaikka_Id = (from x in db.Postitoimipaikka where x.postinumero == opiskelijanpostinumero select x.postitoimipaikka_Id).First(); Login uusiKirj = new Login(); uusiKirj.opiskelija_Id = opiskelija.opiskelija_Id; uusiKirj.kayttajaNimi = oppkirjautuminen.kayttajaNimi; uusiKirj.salasana = oppkirjautuminen.salasana; uusiKirj.aktivointiKoodi = oppkirjautuminen.aktivointiKoodi; uusiKirj.onkoEmailAktivoitu = oppkirjautuminen.onkoEmailAktivoitu; PuhelinNumero uusiPuhO = new PuhelinNumero(); uusiPuhO.numero = puhelinnro.numero; uusiPuhO.opiskelija_Id = opiskelija.opiskelija_Id; Sahkoposti uusiSpostiO = new Sahkoposti(); uusiSpostiO.sahkopostiOsoite = oppkirjautuminen.kayttajaNimi; uusiSpostiO.opiskelija_Id = opiskelija.opiskelija_Id; OmaSisalto uusiOmasis = new OmaSisalto(); uusiOmasis.opiskelija_Id = opiskelija.opiskelija_Id; dc.Opiskelija.Add(uusiOpis); dc.PuhelinNumero.Add(uusiPuhO); dc.Sahkoposti.Add(uusiSpostiO); dc.OmaSisalto.Add(uusiOmasis); dc.Login.Add(uusiKirj); dc.SaveChanges(); ////Kutsutaan aktivointisähköpostin lähetysmetodia... //SendVerificationLinkEmail(user.kayttajaNimi, user.aktivointiKoodi.ToString()); //message = "Rekisteröityminen onnistui. Rekisteröitymisen aktivointilinkki " + // " on lähetetty sähköpostiinne:" + user.kayttajaNimi; //Status = true; } #endregion } else { message = "Virhe käsiteltäessä pyyntöä!"; } ViewBag.Message = message; ViewBag.Status = Status; return(RedirectToAction("Login")); //palautuu tällä hetkellä login viewiin, pitäisi varmaan käyttää sähköpostiosoitteen validointia tai rekisteröityminen onnistui sivua jos aikaa jää.... }