Beispiel #1
0
    // Uuden lajin lisäysnapin funktio
    protected void btnAddNewSport_Click(object sender, EventArgs e)
    {
        // Uusi entiteetin instanssi
        ctx = new G7934Entities();
        // Luodaan uusi lajin olio
        Sport s = new Sport();
        // Asetetaan sille nimi tekstikentästä
        s.Name = txtNewSport.Text;
        // Lisätään se entiteettiin
        ctx.Sports.Add(s);
        // Ja tallennetaan se
        ctx.SaveChanges();
        // Täytetään lajivalikko uudestaan
        FillDateAndSports();
        // Ja asetataan juuri luotu laji valituksi
        ddlSport.SelectedValue = s.Name;

        // Piilotetaan lajinlisäyssälät
        trNewSport.Visible = false;
    }
Beispiel #2
0
    // Lisäysnäppäimen painallus
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        // Luodaan uusi entiteetin instanssi
        ctx = new G7934Entities();

        // Jos kyseessä suorituksen muokkaus...
        if (Request.QueryString["id"] != null)
        {
            // Haetaan suoritus _id:n perusteella
            int id = int.Parse(Request.QueryString["id"]);
            var result = from c in ctx.Accoplishments
                         // Tässä merkataan id
                         where c.idAccoplishmnet == id
                         select c;
            // Haetaan lajin _id minkä nimi on tekstikentässä
            var s = from c in ctx.Sports
                    where c.Name == ddlSport.SelectedValue
                    select c;
            // Luodaan apumuuttuja lajin _id:lle...
            int sportId = 0;
            foreach (var i in s)
            {
                // ...ja merkataan siihen arvo
                sportId = i.idSport;
            }
            foreach (var a in result)
            {
                // Merkataan suoritukseen uudet arvot
                a.Date = DateTime.Parse(ddlDate.SelectedValue);
                a.Duration = int.Parse(txtDuration.Text);
                a.Sport = sportId;
            }

            // Ja tallennetaan se..
            ctx.SaveChanges();

            // ...ja näytetään käyttäjälle ilmoitus
            lblMessage.Text = "Muutos tallennettu";
            lblMessage.Visible = true;
        }
        // Jos taas kyseessä on uusi suoritus
        else
        {
            // Luodaan apumuuttuja...
            string name = "";
            // ...ja jos uusien nimien lisäys on mahdollista...
            if (AllowNewUsersAndSports)
            {
                // ...haetaan nimi tekstikentästä...
                name = txtName.Text;
            }
            // ...jos taas lisäys ei ole käytössä
            else
            {
                // ...haetaan nimi alasvetovalikosta.
                name = ddlName.SelectedValue;
            }

            // Haetaan tallennettavan henkilön _id kenttä entiteetistä...
            var person = from c in ctx.People
                    where c.Name == name
                    select c.idPerson;
            int personId = 0;
            foreach (var i in person)
            {
                // ...ja merkataan se apumuuttujaan.
                personId = i;
            }
            // Haetaan henkilön suoritukset...
            var results = from c in ctx.Accoplishments
                         where c.Person == personId
                         select c;
            int counter = 0;
            foreach (var i in results)
            {
                // ...ja jos henkilöllä on jo suorituksia valitulle päivälle niin lasketaan ne.
                if (i.Date.ToString("dd.MM.yyyy").Equals(ddlDate.SelectedValue)) {
                    counter++;
                }
            }

            // Jos suorituksiä päivälle on 5...
            if (counter > 4)
            {
                // ...ilmoitetaan siitä käyttäjälle...
                lblMessage.Text = "Sinulla on tällä päivällä jo " + counter + " suoritusta, et voi lisätä enempää.";
                lblMessage.Visible = true;
                // ...ja piilotetaan lisäysnapit.
                btnAdd.Visible = false;
                btnConfirmedAdd.Visible = false;
            }
            // Jos taas suorituksia on mutta ei vielä viittä...
            else if (counter > 0)
            {
                // ...piilotetaan peruslisäysnappi ja näytetään sekondäärilisäysnappi...
                btnAdd.Visible = false;
                btnConfirmedAdd.Visible = true;
                // ...ja ilmoitetaan tästä käyttäjälle.
                lblMessage.Text = "Sinulla on tällä päivällä jo " + counter.ToString() + " suoritusta, lisätäänkö uusi?";
                lblMessage.Visible = true;
            }
            // Jos suorituksia ei vielä kyseiselle päivälle ole, lisätään suoritus
            else
            {
                AddNew();
            }
        }
    }