public static Ansatt AgressoRessursTilFkAnsatt(Resource ressurs)
        {
            string epostadresse = null;
            var    adress       = ressurs.Addresses?.FirstOrDefault();

            if (adress != null)
            {
                epostadresse = adress.EMailList?.FirstOrDefault();
            }

            var ansatt = new Ansatt()
            {
                identifikatorer = new Identifikator[]
                {
                    new Identifikator()
                    {
                        identifikatortype = "ressursnummer", identifikatorverdi = ressurs.ResourceId
                    }
                },
                navn = new Personnavn()
                {
                    etternavn = ressurs.Surname, fornavn = ressurs.FirstName
                },
                fulltNavn          = ressurs.Name,
                kontaktinformasjon = new Kontaktinformasjon()
                {
                    epostadresse = epostadresse
                }
            };

            return(ansatt);
        }
        protected void EditButton_Click(object sender, EventArgs e)
        {
            var allAnsatte = UpdateDataSource();

            var button = (LinkButton)sender;
            var id     = Convert.ToInt32(button.CommandArgument);

            var ansattForEdit = allAnsatte.First(a => a.Id == id);

            if (ansattForEdit.IsChanged)
            {
                var ansatt = ansattForEdit.Save();
                id = ansatt.Id;
            }

            if (allAnsatte.Any(ansatt => ansatt.IsChanged))
            {
                WebUtilities.ShowMessageBoxPopUp(this, "Det er ulagrede endringer på siden. Lagre (eller avbryt) disse for å unngå å miste data.");
            }
            else if (Ansatt.GetById(id) == null)
            {
                WebUtilities.ShowMessageBoxPopUp(this, "Elev '" + ansattForEdit.Navn + "' finnes ikke lenger i systemet!");

                allAnsatte.Remove(ansattForEdit);
                UpdateBinding(allAnsatte, sort: false);
            }
            else
            {
                Response.Redirect("../Details/AnsattDetails.aspx?Id=" + HttpUtility.UrlEncode(ansattForEdit.Id.ToString()));
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            AdjustScrollPosition();

            if (IsPostBack == false)
            {
                //Stopwatch stopwatch = new Stopwatch();
                //stopwatch.Start();

                ViewState["dummyId"] = 0;

                if (Session["AnsattList - hidedColumns"] == null)
                {
                    Session["AnsattList - hidedColumns"] = new Dictionary <string, string>();
                }

                IList <Ansatt> allAnsatte = Ansatt.GetAll().ToList();

                Session["AnsattList - SortDirection"]  = Session["AnsattList - SortDirection"] ?? SortDirection.Ascending;
                Session["AnsattList - SortExpression"] = Session["AnsattList - SortExpression"] ?? "Navn";

                UpdateBinding(allAnsatte, sort: true);

                //stopwatch.Stop();
            }
        }
        public void CreateGetEmployeeResponseMedAnsattTest()
        {
            var ansatt = new Ansatt()
            {
                navn = new Personnavn()
                {
                    etternavn = "Olsen", fornavn = "Ole"
                }
            };
            var getEmployee = new global::Event()
            {
                data  = new object[] { ansatt },
                verb  = "getEmployee",
                type  = type.RESPONSE,
                time  = DateTime.Now,
                id    = "123",
                orgId = ""
            };
            var getEmployeeJson = JsonConvert.SerializeObject(getEmployee);

            var getEmployeeResponse     = JsonConvert.DeserializeObject <global::Event>(getEmployeeJson);
            var getEmployeeResponseJson = JsonConvert.SerializeObject(getEmployeeResponse);

            Assert.IsTrue(getEmployeeJson.Equals(getEmployeeResponseJson));
        }
Example #5
0
        public AnsattDto GetAnsattes(Ansatt ansatt)
        {
            Ansatt tempAnsatt = _context.Ansatte.Where(a => a.Username == ansatt.Username && a.Password == ansatt.Password && a.SkoleId == ansatt.SkoleId).SingleOrDefault();
            var    ansattDto  = DTOHelper.MapAnsattToDoDto(tempAnsatt);

            return(ansattDto);
        }
        private void BindToListView(Ansatt ansatt)
        {
            var ukeTyper = UkeType.GetAll().OrderBy(u => u.Navn);

            var ansattTilstedeViewList = new List <object>();

            if (ansatt.AnsattTilstedes.Count == 0)
            {
                ansatt.AddAnsattTilstede();
            }

            var ansattTilstedes = ansatt.AnsattTilstedes;

            foreach (var ansattTilstede in ansattTilstedes)
            {
                ansattTilstedeViewList.Add(new
                {
                    ansattTilstede.Id,
                    MandagStart = TimeAsString(ansattTilstede.MandagStart),
                    MandagSlutt = TimeAsString(ansattTilstede.MandagSlutt),
                    ansattTilstede.MandagFri,
                    TirsdagStart = TimeAsString(ansattTilstede.TirsdagStart),
                    TirsdagSlutt = TimeAsString(ansattTilstede.TirsdagSlutt),
                    ansattTilstede.TirsdagFri,
                    OnsdagStart = TimeAsString(ansattTilstede.OnsdagStart),
                    OnsdagSlutt = TimeAsString(ansattTilstede.OnsdagSlutt),
                    ansattTilstede.OnsdagFri,
                    TorsdagStart = TimeAsString(ansattTilstede.TorsdagStart),
                    TorsdagSlutt = TimeAsString(ansattTilstede.TorsdagSlutt),
                    ansattTilstede.TorsdagFri,
                    FredagStart = TimeAsString(ansattTilstede.FredagStart),
                    FredagSlutt = TimeAsString(ansattTilstede.FredagSlutt),
                    ansattTilstede.FredagFri,
                    ansattTilstede.Skole
                });
            }

            AnsattTilstedeListView.DataSource = ansattTilstedeViewList;
            AnsattTilstedeListView.DataBind();

            foreach (var item in AnsattTilstedeListView.Items)
            {
                if (item.ItemType == ListViewItemType.DataItem)
                {
                    var idButton       = (Button)item.FindControl("IdButton");
                    var ansattTilstede = ansattTilstedes.FirstOrDefault(e => e.Id.ToString() == idButton.Text);

                    var ukeTypeDropDown = (DropDownList)item.FindControl("UkeTypeDropDown");
                    ukeTypeDropDown.DataSource     = ukeTyper;
                    ukeTypeDropDown.DataValueField = Utilities.GetPropertyName(() => ansattTilstede.UkeType.Id);
                    ukeTypeDropDown.DataTextField  = Utilities.GetPropertyName(() => ansattTilstede.UkeType.Navn);
                    ukeTypeDropDown.DataBind();

                    if (ansattTilstede.UkeType != null)
                    {
                        ukeTypeDropDown.SelectedValue = ansattTilstede.UkeType.Id.ToString();
                    }
                }
            }
        }
Example #7
0
        private void BindToListView(IList <StillingsType> allStillingsTyper)
        {
            var ansatte = Ansatt.GetAll().OrderBy(a => a.Navn).ToList();

            var stillingsTypeViewList = new List <object>();

            foreach (var klasse in allStillingsTyper)
            {
                stillingsTypeViewList.Add(new
                {
                    klasse.Id,
                    klasse.Navn,
                    klasse.TimerElevarbeid,
                    klasse.TimerSamarbeid
                });
            }

            StillingsTypeListView.DataSource = stillingsTypeViewList;
            StillingsTypeListView.DataBind();

            foreach (var item in StillingsTypeListView.Items)
            {
                if (item.ItemType == ListViewItemType.DataItem)
                {
                    var idButton = (Button)item.FindControl("IdButton");

                    var stillingsType = allStillingsTyper.First(s => s.Id.ToString() == idButton.Text);

                    var ansatteListBox       = (ListBox)item.FindControl("AnsatteListBox");
                    var ansattTeller         = 0;
                    var ansattSelectedTeller = 0;
                    foreach (var ansatt in ansatte)
                    {
                        var listItem = new ListItem(ansatt.Navn, ansatt.Id.ToString());

                        if (stillingsType.Ansatts.Any(a => a.Id == ansatt.Id))
                        {
                            listItem.Selected = true;
                            listItem.Attributes.Add("class", WebUtilities.CSS_CLASS_DISABLED);
                        }

                        if (listItem.Selected)
                        {
                            ansatteListBox.Items.Insert(ansattSelectedTeller++, listItem);
                            ansattTeller++;
                        }
                        else
                        {
                            ansatteListBox.Items.Insert(ansattTeller++, listItem);
                        }
                    }

                    if (stillingsType.Ansatts.Count > 0)
                    {
                        var deleteLinkButton = (LinkButton)item.FindControl("DeleteLinkButton");
                        WebUtilities.DisableLinkButton(deleteLinkButton, @"Alle ansatte må overføres til andre stillingstyper før stillingstype '" + stillingsType.Navn + "' kan slettes.");
                    }
                }
            }
        }
Example #8
0
        public ActionResult DeleteConfirmed(int id)
        {
            Ansatt ansatt = db.Ansatte.Find(id);

            db.Ansatte.Remove(ansatt);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        private bool AnsattTilstedePåTid(Ansatt ansatt, TimeSpan time, PropertyInfo propertyInfo)
        {
            var ukeTypeId = Convert.ToInt32(UkeTypeDropDown.SelectedValue);

            return((ukeTypeId == (int)UkeTypeEnum.LikUke && ansatt.AnsattTilstedes.Count(t => propertyInfo.GetValue(t) != null && (TimeSpan)propertyInfo.GetValue(t) == time && t.UkeType.Id == ukeTypeId) > 0) ||
                   (ukeTypeId == (int)UkeTypeEnum.UlikUke &&
                    (ansatt.AnsattTilstedes.Count(t => t.UkeType.Id == ukeTypeId) > 0 && ansatt.AnsattTilstedes.Count(t => propertyInfo.GetValue(t) != null && (TimeSpan)propertyInfo.GetValue(t) == time && t.UkeType.Id == ukeTypeId) > 0) ||
                    (ansatt.AnsattTilstedes.Count(t => t.UkeType.Id == ukeTypeId) == 0 && ansatt.AnsattTilstedes.Count(t => propertyInfo.GetValue(t) != null && (TimeSpan)propertyInfo.GetValue(t) == time) > 0)));
        }
Example #10
0
 public ActionResult Edit([Bind(Include = "AnsattId,Fornavn,Etternavn,Username,Password,SkoleId")] Ansatt ansatt)
 {
     if (ModelState.IsValid)
     {
         db.Entry(ansatt).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.SkoleId = new SelectList(db.Skoler, "SkoleId", "SkoleNavn", ansatt.SkoleId);
     return(View(ansatt));
 }
Example #11
0
        /// <summary>
        /// Mapper en ansatt til en DTO
        /// </summary>
        /// <param name="ansatt"></param>
        /// <returns></returns>
        public static AnsattDto MapAnsattToDoDto(Ansatt ansatt)
        {
            AnsattDto dto = new AnsattDto();

            dto.AnsattId  = ansatt.AnsattId;
            dto.SkoleId   = ansatt.SkoleId;
            dto.Fornavn   = ansatt.Fornavn;
            dto.Etternavn = ansatt.Etternavn;
            dto.Username  = ansatt.Username;
            dto.Password  = ansatt.Password;

            return(dto);
        }
        protected void DeleteButton_Click(object sender, EventArgs e)
        {
            var id     = Convert.ToInt32(IdTextBox.Text);
            var ansatt = id > 0 ? Ansatt.GetById(id) : null;

            if (ansatt != null)
            {
                ansatt.Delete();
                var allAnsatte = (IList <Ansatt>)Session["allAnsatte"];
                allAnsatte.Remove(ansatt);
            }

            GoTo(0);
        }
Example #13
0
        // GET: Ansatts/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Ansatt ansatt = db.Ansatte.Find(id);

            if (ansatt == null)
            {
                return(HttpNotFound());
            }
            return(View(ansatt));
        }
Example #14
0
        // GET: Ansatts/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Ansatt ansatt = db.Ansatte.Find(id);

            if (ansatt == null)
            {
                return(HttpNotFound());
            }
            ViewBag.SkoleId = new SelectList(db.Skoler, "SkoleId", "SkoleNavn", ansatt.SkoleId);
            return(View(ansatt));
        }
        protected void SaveButton_Click(object sender, EventArgs e)
        {
            if (IsValid)
            {
                var ansatt = UpdateDataSource();

                if (ansatt.IsChanged)
                {
                    ansatt.Save();

                    ansatt = Ansatt.GetById(ansatt.Id);

                    UpdateBinding(ansatt);
                }
            }
        }
        protected void CancelButton_Click(object sender, EventArgs e)
        {
            var id = Convert.ToInt32(IdTextBox.Text);

            if (id > 0)
            {
                var ansatt = Ansatt.GetById(id);
                UpdateBinding(ansatt);
            }
            else
            {
                object refUrl = ViewState["RefUrl"];
                if (refUrl != null)
                {
                    Response.Redirect((string)refUrl);
                }
            }
        }
        private void SaveAllAnsatte()
        {
            var allAnsatte = UpdateDataSource();

            if (allAnsatte.Any(ansatt => ansatt.IsChanged))
            {
                foreach (var ansatt in allAnsatte)
                {
                    if (ansatt.IsChanged)
                    {
                        ansatt.Save();
                    }
                }

                allAnsatte = Ansatt.GetAll().ToList();

                UpdateBinding(allAnsatte, sort: true);
            }
        }
        public void KjonnEnumTest()
        {
            JsonConvert.DefaultSettings = () => new JsonSerializerSettings()
            {
                Converters = new List <JsonConverter>()
                {
                    new StringEnumConverter()
                }
            };

            var ansatt = new Ansatt()
            {
                kjonn = kjonn.MANN
            };
            var     ansattJson  = JsonConvert.SerializeObject(ansatt);
            dynamic ansattListe = JsonConvert.DeserializeObject <dynamic>(ansattJson);

            Assert.AreEqual("MANN", ansattListe.kjonn.Value);
        }
        protected void CreateNewButton_Click(object sender, EventArgs e)
        {
            var allAnsatte = UpdateDataSource();

            var dummyId = (int)ViewState["dummyId"];

            var ansatt = new Ansatt {
                Id = dummyId
            };

            allAnsatte.Add(ansatt);

            //Response.Redirect("AnsattDetails.aspx?Id=" + HttpUtility.UrlEncode(dummyId.ToString()));

            ViewState["dummyId"] = --dummyId;

            UpdateBinding(allAnsatte, sort: false);

            WebUtilities.AdjustScrollPosition(this, 0, Int32.MaxValue);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack == false)
            {
                if (Request.UrlReferrer != null)
                {
                    ViewState["RefUrl"] = Request.UrlReferrer.ToString();
                }

                var allAnsatte = (IList <Ansatt>)Session["allAnsatte"];

                var ansattId = Convert.ToInt32(Request.QueryString["Id"]);

                if (ansattId > 0)
                {
                    Session["AnsattDetails - CurrentIndex"] = allAnsatte.IndexOf(allAnsatte.First(ansatt => ansatt.Id == ansattId));
                }

                var currentAnsatt = ansattId > 0 ? Ansatt.GetById(ansattId) : new Ansatt();

                UpdateBinding(currentAnsatt);
            }
        }
        private void BindToListView(IList <Klasse> allKlasser)
        {
            var avdelinger = Avdeling.GetAll().OrderBy(a => a.Navn).ToList();
            var elever     = Elev.GetAll().OrderBy(e => e.Navn).ToList();
            var ansatte    = Ansatt.GetAll().OrderBy(a => a.Navn).ToList();

            var klasseViewList = new List <object>();

            foreach (var klasse in allKlasser)
            {
                klasseViewList.Add(new
                {
                    klasse.Id,
                    klasse.Navn,
                    klasse.MaksAntallElever
                });
            }

            KlasseListView.DataSource = klasseViewList;
            KlasseListView.DataBind();

            foreach (var item in KlasseListView.Items)
            {
                if (item.ItemType == ListViewItemType.DataItem)
                {
                    var idButton = (Button)item.FindControl("IdButton");

                    var avdelingDropDown = (DropDownList)item.FindControl("AvdelingDropDown");

                    var klasse = allKlasser.First(k => k.Id.ToString() == idButton.Text);

                    avdelingDropDown.DataSource     = avdelinger;
                    avdelingDropDown.DataValueField = Utilities.GetPropertyName(() => klasse.Avdeling.Id);
                    avdelingDropDown.DataTextField  = Utilities.GetPropertyName(() => klasse.Avdeling.Navn);
                    avdelingDropDown.DataBind();

                    if (klasse.Avdeling != null)
                    {
                        avdelingDropDown.SelectedValue = klasse.Avdeling.Id.ToString();
                    }

                    var eleverListBox      = (ListControl)item.FindControl("EleverListBox");
                    var elevTeller         = 0;
                    var elevSelectedTeller = 0;
                    foreach (var elev in elever)
                    {
                        var listItem = new ListItem(elev.Navn, elev.Id.ToString());

                        if (klasse.Elevs.Any(e => e.Id == elev.Id))
                        {
                            listItem.Selected = true;
                            listItem.Enabled  = false;
                        }

                        if (listItem.Selected)
                        {
                            eleverListBox.Items.Insert(elevSelectedTeller++, listItem);
                            elevTeller++;
                        }
                        else
                        {
                            eleverListBox.Items.Insert(elevTeller++, listItem);
                        }
                    }

                    var ansatteListBox       = (ListControl)item.FindControl("AnsatteListBox");
                    var ansattTeller         = 0;
                    var ansattSelectedTeller = 0;
                    foreach (var ansatt in ansatte)
                    {
                        var listItem = new ListItem(ansatt.Navn, ansatt.Id.ToString());

                        if (klasse.Ansatts.Any(a => a.Id == ansatt.Id))
                        {
                            listItem.Selected = true;
                        }

                        if (listItem.Selected)
                        {
                            ansatteListBox.Items.Insert(ansattSelectedTeller++, listItem);
                            ansattTeller++;
                        }
                        else
                        {
                            ansatteListBox.Items.Insert(ansattTeller++, listItem);
                        }
                    }

                    if (klasse.Elevs.Count > 0)
                    {
                        var deleteLinkButton = (LinkButton)item.FindControl("DeleteLinkButton");
                        WebUtilities.DisableLinkButton(deleteLinkButton, @"Alle elever må overføres til andre klasser før klasse '" + klasse.Navn + "' kan slettes.");
                    }
                }
            }
        }
Example #22
0
        private void BindToListView(IList <Sfo> allSfos)
        {
            var elever  = Elev.GetAll().Where(e => e.Sfo != null).OrderBy(e => e.Navn).ToList();
            var ansatte = Ansatt.GetAll().Where(a => (a.StillingsType.Id == (int)StillingsTypeEnum.Miljøterapeut) || (a.StillingsType.Id == (int)StillingsTypeEnum.PedagogiskMedarbeider)).OrderBy(a => a.Navn).ToList();

            var sfoViewList = new List <object>();

            foreach (var sfo in allSfos)
            {
                sfoViewList.Add(new
                {
                    sfo.Id,
                    sfo.Navn
                });
            }

            SfoListView.DataSource = sfoViewList;
            SfoListView.DataBind();

            foreach (var item in SfoListView.Items)
            {
                if (item.ItemType == ListViewItemType.DataItem)
                {
                    var idButton = (Button)item.FindControl("IdButton");

                    var sfo = allSfos.First(s => s.Id.ToString() == idButton.Text);

                    var eleverListBox      = (ListControl)item.FindControl("EleverListBox");
                    var elevTeller         = 0;
                    var elevSelectedTeller = 0;
                    foreach (var elev in elever)
                    {
                        var listItem = new ListItem(elev.Navn, elev.Id.ToString());

                        if (sfo.Elevs.Any(e => e.Id == elev.Id))
                        {
                            listItem.Selected = true;
                        }

                        if (listItem.Selected)
                        {
                            eleverListBox.Items.Insert(elevSelectedTeller++, listItem);
                            elevTeller++;
                        }
                        else
                        {
                            eleverListBox.Items.Insert(elevTeller++, listItem);
                        }
                    }

                    var ansatteListBox       = (ListControl)item.FindControl("AnsatteListBox");
                    var ansattTeller         = 0;
                    var ansattSelectedTeller = 0;
                    foreach (var ansatt in ansatte)
                    {
                        var listItem = new ListItem(ansatt.Navn, ansatt.Id.ToString());

                        if (sfo.Ansatts.Any(a => a.Id == ansatt.Id))
                        {
                            listItem.Selected = true;
                        }

                        if (listItem.Selected)
                        {
                            ansatteListBox.Items.Insert(ansattSelectedTeller++, listItem);
                            ansattTeller++;
                        }
                        else
                        {
                            ansatteListBox.Items.Insert(ansattTeller++, listItem);
                        }
                    }

                    //var tidsInndelingDropDown = (DropDownList)item.FindControl("TidsInndelingDropDown");
                    //tidsInndelingDropDown.DataSource = tidsInndeling;
                    //tidsInndelingDropDown.DataValueField = Utilities.GetPropertyName(() => sfo.ÅpningsTider.Id);
                    //tidsInndelingDropDown.DataTextField = Utilities.GetPropertyName(() => sfo.ÅpningsTider.Navn);
                    //tidsInndelingDropDown.DataBind();
                    //tidsInndelingDropDown.SelectedValue = sfo.Id > 0 ? sfo.ÅpningsTider.Id.ToString() : ((int)TidsInndelingEnum.Sfo).ToString();

                    //var tidligvaktTidsInndelingDropDown = (DropDownList)item.FindControl("TidligvaktTidsInndelingDropDown");
                    //tidligvaktTidsInndelingDropDown.DataSource = tidsInndeling;
                    //tidligvaktTidsInndelingDropDown.DataValueField = Utilities.GetPropertyName(() => sfo.TidligvaktTider.Id);
                    //tidligvaktTidsInndelingDropDown.DataTextField = Utilities.GetPropertyName(() => sfo.TidligvaktTider.Navn);
                    //tidligvaktTidsInndelingDropDown.DataBind();
                    //tidligvaktTidsInndelingDropDown.SelectedValue = sfo.Id > 0 ? sfo.TidligvaktTider.Id.ToString() : ((int)TidsInndelingEnum.Tidlig).ToString();

                    //var seinvaktTidsInndelingDropDown = (DropDownList)item.FindControl("SeinvaktTidsInndelingDropDown");
                    //seinvaktTidsInndelingDropDown.DataSource = tidsInndeling;
                    //seinvaktTidsInndelingDropDown.DataValueField = Utilities.GetPropertyName(() => sfo.SeinvaktTider.Id);
                    //seinvaktTidsInndelingDropDown.DataTextField = Utilities.GetPropertyName(() => sfo.SeinvaktTider.Navn);
                    //seinvaktTidsInndelingDropDown.DataBind();
                    //seinvaktTidsInndelingDropDown.SelectedValue = sfo.Id > 0 ? sfo.SeinvaktTider.Id.ToString() : ((int)TidsInndelingEnum.Seint).ToString();
                }
            }
        }
        private void BindToListView(IList <Avdeling> allAvdelinger)
        {
            var ansatte = Ansatt.GetAll().OrderBy(a => a.Navn).ToList();
            var klasser = Klasse.GetAll().OrderBy(k => k.Navn).ToList();

            var avdelingViewList = new List <object>();

            foreach (var avdeling in allAvdelinger)
            {
                avdelingViewList.Add(new
                {
                    avdeling.Id,
                    avdeling.Navn,
                });
            }

            AvdelingListView.DataSource = avdelingViewList;
            AvdelingListView.DataBind();

            foreach (var item in AvdelingListView.Items)
            {
                if (item.ItemType == ListViewItemType.DataItem)
                {
                    var idButton = (Button)item.FindControl("IdButton");

                    var avdelingsLederDropDown = (DropDownList)item.FindControl("AvdelingsLederDropDown");

                    var avdeling = allAvdelinger.First(a => a.Id.ToString() == idButton.Text);

                    avdelingsLederDropDown.DataSource     = ansatte;
                    avdelingsLederDropDown.DataValueField = Utilities.GetPropertyName(() => avdeling.Id);
                    avdelingsLederDropDown.DataTextField  = Utilities.GetPropertyName(() => avdeling.Navn);
                    avdelingsLederDropDown.DataBind();

                    if (avdeling.AvdelingsLeder != null)
                    {
                        avdelingsLederDropDown.SelectedValue = avdeling.AvdelingsLeder.Id.ToString();
                    }

                    var ansatteListBox       = (ListBox)item.FindControl("AnsatteListBox");
                    var ansatteTeller        = 0;
                    var ansattSelectedTeller = 0;
                    foreach (var ansatt in ansatte)
                    {
                        var listItem = new ListItem(ansatt.Navn, ansatt.Id.ToString());

                        if (avdeling.Ansatts.Any(a => a.Id == ansatt.Id))
                        {
                            listItem.Selected = true;
                            listItem.Attributes.Add("class", WebUtilities.CSS_CLASS_DISABLED);
                        }

                        if (listItem.Selected)
                        {
                            ansatteListBox.Items.Insert(ansattSelectedTeller++, listItem);
                            ansatteTeller++;
                        }
                        else
                        {
                            ansatteListBox.Items.Insert(ansatteTeller++, listItem);
                        }
                    }

                    var klasserListBox = (ListBox)item.FindControl("KlasserListBox");

                    var klasseTeller         = 0;
                    var klasseSelectedTeller = 0;
                    foreach (var klasse in klasser)
                    {
                        var listItem = new ListItem(klasse.Navn, klasse.Id.ToString());

                        if (avdeling.Klasses.Any(k => k.Id == klasse.Id))
                        {
                            listItem.Selected = true;
                            listItem.Attributes.Add("class", WebUtilities.CSS_CLASS_DISABLED);
                        }

                        if (listItem.Selected)
                        {
                            klasserListBox.Items.Insert(klasseSelectedTeller++, listItem);
                            klasseTeller++;
                        }
                        else
                        {
                            klasserListBox.Items.Insert(klasseTeller++, listItem);
                        }
                    }

                    if (avdeling.Ansatts.Count > 0 || avdeling.Klasses.Count > 0)
                    {
                        var deleteLinkButton = (LinkButton)item.FindControl("DeleteLinkButton");
                        WebUtilities.DisableLinkButton(deleteLinkButton, @"Alle ansatte og klasser må overføres til andre avdelinger før avdeling '" + avdeling.Navn + "' kan slettes.");
                    }
                }
            }
        }
        protected void CancelButton_Click(object sender, EventArgs e)
        {
            var allAnsatte = Ansatt.GetAll().ToList();

            UpdateBinding(allAnsatte, sort: true);
        }
Example #25
0
        private void UpdateBinding(Elev elev)
        {
            Session["currentElev"] = elev;

            var klasser        = Klasse.GetAll().OrderBy(k => k.Navn);
            var sfoes          = Sfo.GetAll().OrderBy(s => s.Navn);
            var trinn          = Trinn.GetAll().OrderBy(t => Utilities.DigitPart(t.Navn));
            var ansatte        = Ansatt.GetAll().Where(a => a.StillingsType.Id == (int)StillingsTypeEnum.Pedagog).OrderBy(a => a.Navn);
            var bemanningsNorm = BemanningsNorm.GetAll().OrderBy(b => b.Navn);

            IdTextBox.Text = elev.Id.ToString();

            //TextBox1.Attributes["type"] = "time";

            NavnTextBox.Text            = elev.Navn;
            SkoleTimerPrUkeTextBox.Text = elev.Trinn != null?elev.Trinn.UkeTimeTall.ToString() : trinn.First().UkeTimeTall.ToString();

            SfoProsentTextBox.Text = (elev.SfoProsent % 1 == 0) ? elev.SfoProsent.ToString("N0") : elev.SfoProsent.ToString("N2");
            TlfnrTextBox.Text      = elev.TlfNr;


            KlasseDropDown.DataSource     = klasser;
            KlasseDropDown.DataValueField = Utilities.GetPropertyName(() => elev.Klasse.Id);
            KlasseDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.Klasse.Navn);
            KlasseDropDown.DataBind();

            if (elev.Klasse != null)
            {
                KlasseDropDown.SelectedValue = elev.Klasse.Id.ToString();
            }

            SfoDropDown.DataSource     = sfoes;
            SfoDropDown.DataValueField = Utilities.GetPropertyName(() => elev.Sfo.Id);
            SfoDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.Sfo.Navn);
            SfoDropDown.DataBind();

            // Default value
            SfoDropDown.Items.Insert(0, new ListItem("Velg sfo", "0"));
            SfoDropDown.SelectedValue = elev.Sfo != null?elev.Sfo.Id.ToString() : "0";

            TrinnDropDown.DataSource     = trinn;
            TrinnDropDown.DataValueField = Utilities.GetPropertyName(() => elev.Trinn.Id);
            TrinnDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.Trinn.Navn);
            TrinnDropDown.DataBind();

            if (elev.Trinn == null)
            {
                elev.Trinn = trinn.First();
            }

            TrinnDropDown.SelectedValue = elev.Trinn.Id.ToString();

            HovedPedagogDropDown.DataSource     = ansatte;
            HovedPedagogDropDown.DataValueField = Utilities.GetPropertyName(() => elev.HovedPedagog.Id);
            HovedPedagogDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.HovedPedagog.Navn);
            HovedPedagogDropDown.DataBind();

            if (elev.HovedPedagog != null)
            {
                HovedPedagogDropDown.SelectedValue = elev.HovedPedagog.Id.ToString();
            }

            BemanningsNormSkoleDropDown.DataSource     = bemanningsNorm;
            BemanningsNormSkoleDropDown.DataValueField = Utilities.GetPropertyName(() => elev.BemanningsNormSkole.Id);
            BemanningsNormSkoleDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.BemanningsNormSkole.Navn);
            BemanningsNormSkoleDropDown.DataBind();
            BemanningsNormSkoleDropDown.SelectedValue = elev.BemanningsNormSkole != null?elev.BemanningsNormSkole.Id.ToString() : ((int)BemanningsNormEnum.OneToOne).ToString();

            BemanningsNormSfoDropDown.DataSource     = bemanningsNorm;
            BemanningsNormSfoDropDown.DataValueField = Utilities.GetPropertyName(() => elev.BemanningsNormSfo.Id);
            BemanningsNormSfoDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.BemanningsNormSfo.Navn);
            BemanningsNormSfoDropDown.DataBind();

            // Default value
            BemanningsNormSfoDropDown.Items.Insert(0, new ListItem("Velg BN", "0"));
            BemanningsNormSfoDropDown.SelectedValue = elev.BemanningsNormSfo != null?elev.BemanningsNormSfo.Id.ToString() : "0";

            BindToListView(elev);
        }
        private void UpdateBinding(Ansatt ansatt)
        {
            Session["currentAnsatt"] = ansatt;

            var avdelinger     = Avdeling.GetAll().OrderBy(a => a.Navn).ToList();
            var stillingsTyper = StillingsType.GetAll().OrderBy(s => s.Navn).ToList();
            var klasser        = Klasse.GetAll().OrderBy(k => k.Navn).ToList();
            var sfos           = Sfo.GetAll().OrderBy(s => s.Navn).ToList();

            IdTextBox.Text   = ansatt.Id.ToString();
            NavnTextBox.Text = ansatt.Navn;
            StillingsStørrelseTextBox.Text = ansatt.Stillingsstørrelse.ToString();
            TlfNrTextBox.Text = ansatt.Tlfnr;

            TimerPrUkeTextBox.Text = ansatt.TimerPrUke().ToString("N2");

            DiffTimerTextBox.Text = ansatt.DiffTimer().ToString("N2");

            AvdelingDropDown.DataSource     = avdelinger;
            AvdelingDropDown.DataValueField = Utilities.GetPropertyName(() => ansatt.Avdeling.Id);
            AvdelingDropDown.DataTextField  = Utilities.GetPropertyName(() => ansatt.Avdeling.Navn);
            AvdelingDropDown.DataBind();

            if (ansatt.Avdeling != null)
            {
                AvdelingDropDown.SelectedValue = ansatt.Avdeling.Id.ToString();
            }

            StillingsTypeDropDown.DataSource     = stillingsTyper;
            StillingsTypeDropDown.DataValueField = Utilities.GetPropertyName(() => ansatt.StillingsType.Id);
            StillingsTypeDropDown.DataTextField  = Utilities.GetPropertyName(() => ansatt.StillingsType.Navn);
            StillingsTypeDropDown.DataBind();

            if (ansatt.StillingsType != null)
            {
                StillingsTypeDropDown.SelectedValue = ansatt.StillingsType.Id.ToString();
            }

            var klasseTeller         = 0;
            var klasseSelectedTeller = 0;

            JobberIKlasserListBox.Items.Clear();

            foreach (var klasse in klasser)
            {
                var listItem = new ListItem(klasse.Navn, klasse.Id.ToString());

                if (ansatt.JobberIKlasser.Any(k => k.Id == klasse.Id))
                {
                    listItem.Selected = true;
                }

                if (listItem.Selected)
                {
                    JobberIKlasserListBox.Items.Insert(klasseSelectedTeller++, listItem);
                    klasseTeller++;
                }
                else
                {
                    JobberIKlasserListBox.Items.Insert(klasseTeller++, listItem);
                }
            }

            var sfoTeller         = 0;
            var sfoSelectedTeller = 0;

            JobberISfosListBox.Items.Clear();

            foreach (var sfo in sfos)
            {
                var listItem = new ListItem(sfo.Navn, sfo.Id.ToString());

                if (ansatt.JobberISfos.Any(s => s.Id == sfo.Id))
                {
                    listItem.Selected = true;
                }

                if (listItem.Selected)
                {
                    JobberISfosListBox.Items.Insert(sfoSelectedTeller++, listItem);
                    sfoTeller++;
                }
                else
                {
                    JobberISfosListBox.Items.Insert(sfoTeller++, listItem);
                }
            }

            BindToListView(ansatt);
        }
Example #27
0
        private void BindToListView(IList <Elev> allElever)
        {
            Stopwatch stopwatch = new Stopwatch();

            stopwatch.Start();

            var klasser        = Klasse.GetAll().OrderBy(k => k.Navn).ToList();
            var sfoes          = Sfo.GetAll().OrderBy(s => s.Navn).ToList();
            var trinn          = Trinn.GetAll().OrderBy(t => Utilities.DigitPart(t.Navn)).ToList();
            var ansatte        = Ansatt.GetAll().Where(a => a.StillingsType.Id == (int)StillingsTypeEnum.Pedagog).OrderBy(a => a.Navn).ToList();
            var bemanningsNorm = BemanningsNorm.GetAll().OrderBy(b => b.Navn).ToList();

            stopwatch.Stop();

            var elevViewList = new List <object>();

            foreach (var elev in allElever)
            {
                var sfoProsent      = (elev.SfoProsent % 1 == 0) ? elev.SfoProsent.ToString("N0") : elev.SfoProsent.ToString("N2");
                var skoleTimerPrUke = elev.Trinn != null ? elev.Trinn.UkeTimeTall : trinn.First().UkeTimeTall;
                elevViewList.Add(new
                {
                    elev.Id,
                    elev.Navn,
                    skoleTimerPrUke,
                    sfoProsent
                });
            }

            ElevListView.DataSource = elevViewList;
            ElevListView.DataBind();



            foreach (var item in ElevListView.Items)
            {
                if (item.ItemType == ListViewItemType.DataItem)
                {
                    var idButton = (Button)item.FindControl("IdButton");
                    var elev     = allElever.First(e => e.Id.ToString() == idButton.Text);

                    var klasseDropDown = (DropDownList)item.FindControl("KlasseDropDown");
                    klasseDropDown.DataSource     = klasser;
                    klasseDropDown.DataValueField = Utilities.GetPropertyName(() => elev.Klasse.Id);
                    klasseDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.Klasse.Navn);
                    klasseDropDown.DataBind();

                    if (elev.Klasse != null)
                    {
                        klasseDropDown.SelectedValue = elev.Klasse.Id.ToString();
                    }

                    var sfoDropDown = (DropDownList)item.FindControl("SfoDropDown");
                    sfoDropDown.DataSource     = sfoes;
                    sfoDropDown.DataValueField = Utilities.GetPropertyName(() => elev.Sfo.Id);
                    sfoDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.Sfo.Navn);
                    sfoDropDown.DataBind();

                    // Default value
                    sfoDropDown.Items.Insert(0, new ListItem("Velg sfo", "0"));
                    sfoDropDown.SelectedValue = elev.Sfo != null?elev.Sfo.Id.ToString() : "0";

                    var trinnDropDown = (DropDownList)item.FindControl("TrinnDropDown");
                    trinnDropDown.DataSource     = trinn;
                    trinnDropDown.DataValueField = Utilities.GetPropertyName(() => elev.Trinn.Id);
                    trinnDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.Trinn.Navn);
                    trinnDropDown.DataBind();

                    if (elev.Trinn != null)
                    {
                        trinnDropDown.SelectedValue = elev.Trinn.Id.ToString();
                    }

                    var hovedPedagogDropDown = (DropDownList)item.FindControl("HovedPedagogDropDown");
                    hovedPedagogDropDown.DataSource     = ansatte;
                    hovedPedagogDropDown.DataValueField = Utilities.GetPropertyName(() => elev.HovedPedagog.Id);
                    hovedPedagogDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.HovedPedagog.Navn);
                    hovedPedagogDropDown.DataBind();

                    if (elev.HovedPedagog != null)
                    {
                        hovedPedagogDropDown.SelectedValue = elev.HovedPedagog.Id.ToString();
                    }

                    var bemanningsNormSkoleDropDown = (DropDownList)item.FindControl("BemanningsNormSkoleDropDown");
                    bemanningsNormSkoleDropDown.DataSource     = bemanningsNorm;
                    bemanningsNormSkoleDropDown.DataValueField = Utilities.GetPropertyName(() => elev.BemanningsNormSkole.Id);
                    bemanningsNormSkoleDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.BemanningsNormSkole.Navn);
                    bemanningsNormSkoleDropDown.DataBind();
                    bemanningsNormSkoleDropDown.SelectedValue = elev.BemanningsNormSkole != null?elev.BemanningsNormSkole.Id.ToString() : ((int)BemanningsNormEnum.OneToOne).ToString();

                    var bemanningsNormSfoDropDown = (DropDownList)item.FindControl("BemanningsNormSfoDropDown");
                    bemanningsNormSfoDropDown.DataSource     = bemanningsNorm;
                    bemanningsNormSfoDropDown.DataValueField = Utilities.GetPropertyName(() => elev.BemanningsNormSfo.Id);
                    bemanningsNormSfoDropDown.DataTextField  = Utilities.GetPropertyName(() => elev.BemanningsNormSfo.Navn);
                    bemanningsNormSfoDropDown.DataBind();

                    // Default value
                    bemanningsNormSfoDropDown.Items.Insert(0, new ListItem("Velg BN", "0"));
                    bemanningsNormSfoDropDown.SelectedValue = elev.BemanningsNormSfo != null?elev.BemanningsNormSfo.Id.ToString() : "0";
                }
            }

            //stopwatch.Stop();
        }
        private void CreateMetaData()
        {
            _db.UkeTypes.Add(new UkeType()
            {
                Id = 1, Navn = "Ulik uke"
            });
            _db.UkeTypes.Add(new UkeType()
            {
                Id = 2, Navn = "Lik uke"
            });

            for (int i = 1; i <= 6; i++)
            {
                _db.BemanningsNorms.Add(new BemanningsNorm()
                {
                    Id     = i,
                    Navn   = "1:" + i,
                    Antall = i
                });
            }

            for (int i = 1; i <= 10; i++)
            {
                _db.Trinns.Add(new Trinn()
                {
                    Id           = i,
                    Navn         = i + ".trinn",
                    UkeTimeTall  = 20 + i,
                    MandagStart  = new TimeSpan(i, i, 00),
                    MandagSlutt  = new TimeSpan(i, i, 00),
                    TirsdagStart = new TimeSpan(i, i, 00),
                    TirsdagSlutt = new TimeSpan(i, i, 00),
                    OnsdagStart  = new TimeSpan(i, i, 00),
                    OnsdagSlutt  = new TimeSpan(i, i, 00),
                    TorsdagStart = new TimeSpan(i, i, 00),
                    TorsdagSlutt = new TimeSpan(i, i, 00),
                    FredagStart  = new TimeSpan(i, i, 00),
                    FredagSlutt  = new TimeSpan(i, i, 00),
                });
            }

            _db.TidsInndelings.Add(new TidsInndeling()
            {
                Id = 1, Navn = "Tidsinndeling1", StartTid = new TimeSpan(7, 0, 0), SluttTid = new TimeSpan(17, 0, 0), TidsIntervall = new TimeSpan(0, 15, 0)
            });
            _db.TidsInndelings.Add(new TidsInndeling()
            {
                Id = 2, Navn = "Tidsinndeling2", StartTid = new TimeSpan(8, 45, 0), SluttTid = new TimeSpan(14, 30, 0), TidsIntervall = new TimeSpan(0, 15, 0)
            });
            _db.TidsInndelings.Add(new TidsInndeling()
            {
                Id = 3, Navn = "Tidsinndeling3", StartTid = new TimeSpan(7, 0, 0), SluttTid = new TimeSpan(8, 45, 0), TidsIntervall = new TimeSpan(0, 15, 0)
            });
            _db.TidsInndelings.Add(new TidsInndeling()
            {
                Id = 4, Navn = "Tidsinndeling4", StartTid = new TimeSpan(16, 15, 0), SluttTid = new TimeSpan(17, 0, 0), TidsIntervall = new TimeSpan(0, 15, 0)
            });

            for (int i = 1; i <= 8; i++)
            {
                _db.StillingsTypes.Add(new StillingsType()
                {
                    Id              = i,
                    Navn            = "Stillingstype" + i,
                    TimerElevarbeid = 10 + i,
                    TimerSamarbeid  = i
                });
            }

            _db.Skoles.Add(new Skole()
            {
                Id   = 1,
                Navn = "Skole",
                fk_TidsInndelingId = 2
            });


            for (int i = 1; i <= 3; i++)
            {
                _db.Sfoes.Add(new Sfo()
                {
                    Id   = i,
                    Navn = "Sfo" + i,
                    fk_TidsInndelingId           = 1,
                    fk_TidligvaktTidsInndelingId = 3,
                    fk_SeinvaktTidsInndelingId   = 4
                });
            }

            for (int i = 1; i <= 4; i++)
            {
                _db.Avdelings.Add(new Avdeling()
                {
                    Id   = i,
                    Navn = "Avdeling" + i
                });
            }

            for (int i = 1; i <= 110; i++)
            {
                _db.Ansatts.Add(new Ansatt()
                {
                    Id   = i,
                    Navn = "Ansatt" + i,
                    Stillingsstørrelse = Math.Abs(100 - i),
                    fk_AvdelingId      = (i % 4) + 1,
                    fk_StillingsTypeId = (i % 8) + 1,
                    Tlfnr = string.Empty
                });
            }

            _db.SaveChanges();

            for (int i = 1; i <= 4; i++)
            {
                var avdeling = Avdeling.GetById(i);
                avdeling.AvdelingsLeder = Ansatt.GetById(i);
                avdeling.Save();
            }

            for (int i = 1; i <= 15; i++)
            {
                _db.Klasses.Add(new Klasse()
                {
                    Id               = i,
                    Navn             = "Klasse" + i,
                    MaksAntallElever = i,
                    fk_AvdelingId    = (i % 4) + 1
                });
            }

            var hovedpedagoger = Ansatt.GetAll().Where(a => a.StillingsType.Id == (int)StillingsTypeEnum.Pedagog).OrderBy(a => a.Navn).ToList();

            for (int i = 1; i <= 90; i++)
            {
                _db.Elevs.Add(new Elev()
                {
                    Id          = i,
                    Navn        = "Elev" + i,
                    SfoProsent  = Math.Abs(100 - i),
                    fk_KlasseId = (i % 4) + 1,
                    fk_SkoleBemanningsNormId = (i % 6) + 1,
                    fk_TrinnId = (i % 10) + 1,
                    fk_HovedPedagogAnsattId = hovedpedagoger.ElementAt(i % 14).Id,
                    TlfNr = string.Empty
                });
            }

            _db.SaveChanges();

            var elever = Elev.GetAll().ToList();

            foreach (var elev in elever)
            {
                _db.ElevTilstedes.Add(new ElevTilstede()
                {
                    MandagStart  = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    MandagSlutt  = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    TirsdagStart = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    TirsdagSlutt = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    OnsdagStart  = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    OnsdagSlutt  = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    TorsdagStart = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    TorsdagSlutt = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    FredagStart  = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    FredagSlutt  = new TimeSpan(elev.Id % 12, elev.Id % 12, 00),
                    fk_ElevId    = elev.Id,
                    fk_UkeTypeId = (int)UkeTypeEnum.LikUke
                });
            }

            var ansatte = Ansatt.GetAll().ToList();

            foreach (var ansatt in ansatte)
            {
                _db.AnsattTilstedes.Add(new AnsattTilstede()
                {
                    MandagStart  = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    MandagSlutt  = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    MandagFri    = false,
                    TirsdagStart = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    TirsdagSlutt = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    TirsdagFri   = false,
                    OnsdagStart  = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    OnsdagSlutt  = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    OnsdagFri    = false,
                    TorsdagStart = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    TorsdagSlutt = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    TorsdagFri   = false,
                    FredagStart  = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    FredagSlutt  = new TimeSpan(ansatt.Id % 12, ansatt.Id % 12, 00),
                    FredagFri    = false,
                    Skole        = true,
                    fk_AnsattId  = ansatt.Id,
                    fk_UkeTypeId = (int)UkeTypeEnum.LikUke
                });
            }

            _db.SaveChanges();
        }