public Opdracht(int id, string beschrijving, DateTimeOffset beginDatum, DateTimeOffset eindDatum, Vak vak)
 {
     Id = id;
     Beschrijving = beschrijving;
     Begindatum = beginDatum;
     Einddatum = eindDatum;
     Vak = vak;
 }
 private void btnVakToevoegen_Click(object sender, EventArgs e)
 {
     lbMelding.Text = "";
     if (String.IsNullOrWhiteSpace(tbVakNaam.Text))
     {
         lbMelding.Text = Resources.VakNaamInvullen;
     }
     else
     {
         if (String.IsNullOrWhiteSpace(tbVakBeschrijving.Text))
         {
             lbMelding.Text = Resources.VakBeschrijvingInvullen;
         }
         else
         {
             if (String.IsNullOrWhiteSpace(tbVakStudiePunten.Text))
             {
                 lbMelding.Text = Resources.VakSTPInvullen;
             }
             else
             {
                 byte result;
                 if (Byte.TryParse(tbVakStudiePunten.Text, out result))
                 {
                     Vak nieuwVak = new Vak(0, tbVakNaam.Text, tbVakBeschrijving.Text, result);
                     try
                     {
                         if (Database.Vakken.VakToevoegen(nieuwVak))
                         {
                             Close();
                             lbMelding.Text = "";
                             tbVakNaam.Text = "";
                             tbVakBeschrijving.Text = "";
                             tbVakStudiePunten.Text = "";
                         }
                         else
                         {
                             lbMelding.Text = Resources.VakOpslaanMislukt;
                         }
                     }
                     catch (Exception)
                     {
                         lbMelding.Text = Resources.VakOpslaanMislukt;
                     }
                 }
                 else
                 {
                     lbMelding.Text = Resources.STPParseFout;
                 }
             }
         }
     }
 }
 public static Boolean VakAanpassen(Vak vak, String naam, String beschrijving, Int16 studiepunten)
 {
     return Databaseverbinding.Vakken.VakAanpassen(vak, naam, beschrijving, studiepunten);
 }
 public FrmVakAanpassenAdvanced(Vak vak)
 {
     InitializeComponent();
     _vak = vak;
     Closed += FrmVakAanpassenAdvanced_Closed;
 }
 public static DataTable LessenPerVak(Vak vak)
 {
     return PP_Database.Database.Lessen.LessenPerVak(vak);
 }
 public static Boolean sp_GebruikerInschrijven(int gebruikerId, Rol rol, Vak vak)
 {
     /*
     *  Schrijft gebruikers in als admin, student of docent
      */
     try
     {
         SqlCommand cmm = new SqlCommand("[dbo].[sp_GebruikerInschrijven]", Conn);
         cmm.Parameters.AddWithValue("@GebruikerID", gebruikerId);
         cmm.Parameters.AddWithValue("@Rol", rol.ToString());
         cmm.Parameters.AddWithValue("@VakID", vak.Id);
         cmm.CommandType = CommandType.StoredProcedure;
         cmm.ExecuteNonQuery();
         return true;
     }
     catch (Exception)
     {
         return false;
     }
 }
 public static Gebruiker ZoekNaarDocentViaVak(Vak vak)
 {
     return Databaseverbinding.Gebruikers.ZoekNaarDocentViaVak(vak);
 }
 public static DataTable sp_AlleGebruikersPerVak(Vak vak, Rol rol)
 {
     return Databaseverbinding.Gebruikers.sp_AlleGebruikersPerVak(vak, rol);
 }
 public static Boolean VakToevoegen(Vak vak)
 {
     return PP_Database.Database.Vakken.VakToevoegen(vak);
 }
 public static Boolean VakVerwijderen(Vak vak)
 {
     /*
     *  Verwijdert een vak
      */
     try
     {
         SqlCommand cmm = new SqlCommand("[dbo].[sp_VakVerwijderen]", Conn)
         {
             CommandType = CommandType.StoredProcedure
         };
         cmm.Parameters.AddWithValue("@VAK_Naam", vak.Naam);
         cmm.ExecuteNonQuery();
         return true;
     }
     catch (Exception)
     {
         return false;
     }
 }
 public static Boolean VakToevoegen(Vak vak)
 {
     /*
     *  Voegt een vak toe
      */
     try
     {
         SqlCommand cmm = new SqlCommand("[dbo].[sp_VakToevoegen]", Conn)
         {
             CommandType = CommandType.StoredProcedure
         };
         cmm.Parameters.AddWithValue("@VAK_Naam", vak.Naam);
         cmm.Parameters.AddWithValue("@VAK_Beschrijving", vak.Beschrijving);
         cmm.Parameters.AddWithValue("@VAK_StudiePunten", vak.Studiepunten);
         cmm.ExecuteNonQuery();
         return true;
     }
     catch (Exception)
     {
         return false;
     }
 }
 public static Boolean VakAanpassen(Vak vak, String naam, String beschrijving, Int16 studiepunten)
 {
     /*
     *  Past een vak aan
      */
     try
     {
         SqlCommand cmm = new SqlCommand("[dbo].[sp_VakAanpassen]", Conn)
         {
             CommandType = CommandType.StoredProcedure
         };
         cmm.Parameters.AddWithValue("@VAK_Id", vak.Id);
         cmm.Parameters.AddWithValue("@VAK_Naam", naam);
         cmm.Parameters.AddWithValue("@VAK_Beschrijving", beschrijving);
         cmm.Parameters.AddWithValue("@VAK_StudiePunten", studiepunten);
         cmm.ExecuteNonQuery();
         return true;
     }
     catch (Exception)
     {
         return false;
     }
 }
            public static DataTable LessenPerVak(Vak vak)
            {
                /*
                *  Geeft alle lessen voor een vak terug
                 */
                SqlCommand cmm = new SqlCommand("[dbo].[sp_AlleLessenPerVak]", Conn)
                {
                    CommandType = CommandType.StoredProcedure
                };
                cmm.Parameters.Add("@VakId", SqlDbType.Int).Value = vak.Id;

                return DataTableFromCommand(cmm);
            }
            public static Gebruiker ZoekNaarDocentViaVak(Vak vak)
            {
                try
                {
                    SqlCommand cmm = new SqlCommand("[dbo].[sp_ZoekenNaarDocentViaVak]", Conn)
                    {
                        CommandType = CommandType.StoredProcedure
                    };
                    cmm.Parameters.AddWithValue("@VAK_Naam", vak.Naam);

                    DataTable gevondenDocentTable = DataTableFromCommand(cmm);

                    string taalStr = gevondenDocentTable.Rows[0].ItemArray[7].ToString();
                    Taal taal = (Taal) Enum.Parse(typeof (Taal), taalStr);

                    return new Gebruiker(Convert.ToInt32(gevondenDocentTable.Rows[0].ItemArray[0]),
                        gevondenDocentTable.Rows[0].ItemArray[1].ToString(),
                        gevondenDocentTable.Rows[0].ItemArray[2].ToString(),
                        gevondenDocentTable.Rows[0].ItemArray[3].ToString(),
                        gevondenDocentTable.Rows[0].ItemArray[4].ToString(),
                        Convert.ToDateTime(gevondenDocentTable.Rows[0].ItemArray[5]), taal);
                }
                catch (Exception)
                {
                    return null;
                }
            }
 public static Boolean VakToevoegen(Vak vak)
 {
     return Databaseverbinding.Vakken.VakToevoegen(vak);
 }
 public static Boolean VakVerwijderen(Vak vak)
 {
     return Databaseverbinding.Vakken.VakVerwijderen(vak);
 }
 public static Boolean VakVerwijderen(Vak vak)
 {
     return PP_Database.Database.Vakken.VakVerwijderen(vak);
 }
 public static Boolean sp_GebruikerInschrijven(int gebruikerId, Rol rol, Vak vak)
 {
     return Databaseverbinding.Gebruikers.sp_GebruikerInschrijven(gebruikerId, rol, vak);
 }
 public static DataTable sp_AlleGebruikersPerVak(Vak vak, Rol rol)
 {
     return PP_Database.Database.Gebruikers.sp_AlleGebruikersPerVak(vak, rol);
 }
 public static DataTable LessenPerVak(Vak vak)
 {
     return Databaseverbinding.Lessen.LessenPerVak(vak);
 }
 public static Boolean sp_GebruikerInschrijven(int gebruikerId, Rol rol, Vak vak)
 {
     return PP_Database.Database.Gebruikers.sp_GebruikerInschrijven(gebruikerId, rol, vak);
 }
 public static Gebruiker ZoekenDocentViaVak(Vak vak)
 {
     return PP_Database.Database.Gebruikers.ZoekNaarDocentViaVak(vak);
 }
            public static DataTable sp_AlleGebruikersPerVak(Vak vak, Rol rol)
            {
                SqlCommand cmm = new SqlCommand("[dbo].[sp_AlleGebruikersPerVak]", Conn)
                {
                    CommandType = CommandType.StoredProcedure
                };
                switch (rol)
                {
                    case Rol.Beheerder:
                        cmm.Parameters.AddWithValue("@RolID", 1);
                        break;
                    case Rol.Docent:
                        cmm.Parameters.AddWithValue("@RolID", 2);
                        break;
                    default:
                        // ReSharper disable once RedundantCaseLabel
                    case Rol.Student:
                        cmm.Parameters.AddWithValue("@RolID", 3);
                        break;
                }
                cmm.Parameters.Add("@VakID", SqlDbType.Int).Value = vak.Id;

                return DataTableFromCommand(cmm);
            }