/// <summary>
        /// Sterge un training
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDelete_Click(object sender, System.EventArgs e)
        {
            try
            {
                int trainingId = Convert.ToInt32(txtTrainingID.Text);
                Salaries.Business.AdminTraining training = new Salaries.Business.AdminTraining();
                training.TrainingId = trainingId;
                int sePoateSterge = training.CheckIfTrainingCanBeDeleted();

                if (sePoateSterge == 1)
                {
                    Response.Write("<script> alert('Trainingul nu poate fi sters! Este inca asociat unor angajati!'); </script>");
                }
                if (sePoateSterge == 2)
                {
                    Response.Write("<script> alert('Operatiunea nu a fost efectuata deoarece nomenclatoul trebuie sa contina cel putin un curs.'); </script>");
                }
                if (sePoateSterge == 0)
                {
                    training.DeleteTraining();
                    PopulareTabelaInterne();
                    PopulareTabelaExterne();
                }

                //Daca pagina de administrare a fost deschisa din AddAngajat cream functia care va face refresh la combo-ul cu traininguri
                CreateRefreshFunction();
            }
            catch (Exception ex)
            {
                litError.Text  = "The following error occurred: <br>";
                litError.Text += ex.Message;
            }
        }
        /// <summary>
        /// Modifica un training
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnModify_Click(object sender, System.EventArgs e)
        {
            try
            {
                int trainingId = Convert.ToInt32(txtTrainingID.Text);
                Salaries.Business.AdminTraining objTraining = new Salaries.Business.AdminTraining();

                objTraining.TrainingId = trainingId;
                objTraining.Nume       = txtDenumire.Text;
                objTraining.Descriere  = txtDescriere.Text;
                objTraining.Diploma    = txtDiploma.Text;
                objTraining.Intern     = checkIntern.Checked;

                if (objTraining.CheckIfTrainingCanBeAdded())
                {
                    objTraining.UpdateTraining();
                }
                else
                {
                    Response.Write("<script> alert('Mai exista un training cu aceste date!'); </script>");
                }


                //Daca pagina de administrare a fost deschisa din AddAngajat cream functia care va face refresh la combo-ul cu traininguri
                CreateRefreshFunction();
            }
            catch (Exception ex)
            {
                litError.Text  = "The following error occurred: <br>";
                litError.Text += ex.Message;
            }
            PopulareTabelaInterne();
            PopulareTabelaExterne();
        }
 /// <summary>
 /// Populeaza lista cu cursuri externe
 /// </summary>
 public void PopulareTabelaExterne()
 {
     IndexExterne = listDataGridExterne.CurrentPageIndex * 30 + 1;
     Salaries.Business.AdminTraining training = new Salaries.Business.AdminTraining();
     training.Intern = false;
     listDataGridExterne.DataSource = training.LoadInfoTraininguri();
     listDataGridExterne.DataBind();
 }
        /// <summary>
        /// Se trece la urmatoarea pagina in lista
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void listDataGridExterne_PageIndexChanged(Object sender, DataGridPageChangedEventArgs e)
        {
            Salaries.Business.AdminTraining training = new Salaries.Business.AdminTraining();
            training.Intern = false;
            DataSet dt = training.LoadInfoTraininguri();

            listDataGridExterne.CurrentPageIndex = e.NewPageIndex;
            DataView dv = dt.Tables[0].DefaultView;

            listDataGridExterne.DataSource = dv;
            IndexExterne = (e.NewPageIndex * listDataGridExterne.PageSize) + 1;
            listDataGridExterne.DataBind();
        }
        /// <summary>
        /// Procedura creaza lista cu training-urile externe
        /// </summary>
        /// <param name="listObj">Lista care va contine training-urile</param>
        public void CreateExternalTrainingSelectBox(DropDownList listObj)
        {
            Salaries.Business.AdminTraining training = new Salaries.Business.AdminTraining();
            training.Intern = false;
            DataSet ds = training.LoadInfoTraininguri();

            DataTable myTable = new DataTable();

            myTable = ds.Tables[0];
            listObj.Items.Clear();
            for (int i = 0; i < myTable.Rows.Count; i++)
            {
                DataRow  myRow  = myTable.Rows[i];
                ListItem myItem = new ListItem(myRow["Nume"].ToString(), myRow["TrainingID"].ToString());
                listObj.Items.Add(myItem);
            }
        }
        /// <summary>
        /// Daca pagina de administrare a fost deschisa din IstoricTraininguri cream functia care va face refresh la combo-ul cu traininguri
        /// </summary>
        private void CreateRefreshFunction()
        {
            string outStr = "";

            //cream scriptul care va contine functia de refresh
            //ne bazam pe faptul ca se cunoaste numele selectului care contine traininguri-le
            //initial se sterg toate intrarile din combo
            outStr += "<script> \r\n function RefreshParentPage() \r\n" +
                      "{ \r\n" +
                      "window.opener.DeleteTraininguriCombo(); \r\n" +
                      " FillTraininguriCOmbo(); \r\n" +
                      "} \r\n";

            outStr += " function FillTraininguriCOmbo() \r\n" +
                      "{ \r\n";
            //acum se creeaza functie care adauga traininguri-le din recordset
            //se foloseste o functie din parent page... FillTrainingCombo
            Salaries.Business.AdminTraining training = new Salaries.Business.AdminTraining();
            training.Intern = true;
            foreach (DataRow dataRow in training.LoadInfoTraininguri().Tables[0].Rows)
            {
                outStr += "window.opener.FillTrainingCombo('" +
                          dataRow["Nume"].ToString() + "'," +
                          dataRow["TrainingID"].ToString() + ");";
            }

            //acum se creeaza functie care adauga traininguri-le din recordset
            //se foloseste o functie din parent page... FillTrainingCombo2
            training.Intern = false;
            foreach (DataRow dataRow in training.LoadInfoTraininguri().Tables[0].Rows)
            {
                outStr += "window.opener.FillTrainingCombo2('" +
                          dataRow["Nume"].ToString() + "'," +
                          dataRow["TrainingID"].ToString() + ");";
            }

            outStr += "} \r\n" +
                      "</script>";

            Response.Write(outStr);
        }