public Monitor(Contact c )
        {
            try
            {

                timertick = Convert.ToDouble(ConfigurationSettings.AppSettings["TIMERTICK"]);
                dataAccess = new DataAccess();
                dt = dataAccess.GetOpenIssues();

                shifts = dataAccess.getShifts();

                foreach (Shift s in shifts)
                {
                    s.Sessions = dataAccess.getSessions(s.ID);
                }
                lines = c.getLineAssociation();

                lineInfoTable = dataAccess.getProductionLineInfo(lines);

                lineStatus = new LineStatusCollection();




                for (int i = 0; i < lineInfoTable.Rows.Count; i++)
                {
                    lineStatus.Add(new LineStatus((String)lineInfoTable.Rows[i]["description"],
                        (int)lineInfoTable.Rows[i]["id"]));

                }

                


                

                appTimer = new System.Timers.Timer(10);
                appTimer.Elapsed += new System.Timers.ElapsedEventHandler(appTimer_Elapsed);
                appTimer.AutoReset = false;

                InitializeComponent();
                foreach (DepartmentAssociationInfo d in c.DepartmentAssociation)
                {
                    if (d.IsAssociated == false)
                        LineStatsGrid.Columns[d.ID+2].Visibility = Visibility.Hidden;

                }

                appTimer.Start();
            }

            

            catch (SqlException s)
            {
                MessageBox.Show("DataBase Error  ", "ERROR",
                                MessageBoxButton.OK, MessageBoxImage.Error);
                Application.Current.Shutdown();
            }

        }