// Constructor
        public MainPage()
        {
            InitializeComponent();
            dat = new DataHandler();
            // Set the data context of the listbox control to the sample data
            DataContext = App.ViewModel;

            GoogleAnalytics.EasyTracker.GetTracker().SendView("MainPanaroma");

            App.ViewModel.Items.Clear();
            txt_REG.Text = (string) dat.getReg();
            if (txt_REG.Text == "" || dat.getDob().Equals(""))
            {
                newUser = true;
            }
            else {
                DateTime dater;
                IFormatProvider culture = new System.Globalization.CultureInfo("fr-FR");
                String date = (dat.getDob().Insert(2, "/")).Insert(5,"/");
                dater = DateTime.Parse(date, culture);
                datePicker.Value = dater;
                if (dat.isVellore())
                    chk_Vellore.IsChecked = true;
                else
                    chk_Chennai.IsChecked = true;
                //App.ViewModel.isCache = true;
                //App.ViewModel.LoadData();
            }
            
        }
        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            string st_subnum;
            GoogleAnalytics.EasyTracker.GetTracker().SendView("SubjectDetailsPage");
            NavigationContext.QueryString.TryGetValue("selectedItem", out st_subnum);
            DataHandler dat = new DataHandler();

            sub = dat.getSubject(st_subnum);
            InitializeComponent();
            t1 = 0.0;
            t2 = 0.0;
            Control_Pan.Title = sub.title;
            attended = sub.attended;
            conducted = sub.conducted;
            setPer(getPer());
            loadAll();

            MarksAdapter m = new MarksAdapter();
            Mark mrk = dat.loadMarks(st_subnum);
            double q_tot = 0.0, c_tot=0.0 , tot = 0.0;
            if (!mrk.islab) {
                
                Brush brsh = new System.Windows.Media.SolidColorBrush(Colors.White);
                
                m.title = mrk.cat[0].name;
                m.mrks = mrk.cat[0].marks + "/50";
                c_tot += get_sum (mrk.cat[0].marks,0);
                m.ac_mrk = get_sum(mrk.cat[0].marks, 0).ToString("#.0") + "/15";
                m.clour = brsh;
                marks.Items.Add(m);


                m = nm();
                m.title = mrk.cat[1].name;
                m.mrks = mrk.cat[1].marks + "/50";
                c_tot += get_sum(mrk.cat[1].marks, 0);
                m.ac_mrk = get_sum(mrk.cat[1].marks, 0).ToString("#.0") + "/15";
                m.clour = brsh;
                marks.Items.Add(m);

                m = nm();
                m.title = mrk.quiz[0].name;
                q_tot += get_sum(mrk.quiz[0].marks, 1);
                m.mrks = mrk.quiz[0].marks + "/5";
                m.ac_mrk = "";
                m.clour = brsh;
                marks.Items.Add(m);

                m = nm();
                m.title = mrk.quiz[1].name;
                q_tot += get_sum(mrk.quiz[1].marks, 1);
                m.mrks = mrk.quiz[1].marks + "/5";
                m.ac_mrk = "";
                m.clour = brsh;
                marks.Items.Add(m);

                m = nm();
                m.title = mrk.quiz[2].name;
                q_tot += get_sum(mrk.quiz[2].marks, 1);
                m.mrks = mrk.quiz[2].marks + "/5";
                m.ac_mrk = "";
                m.clour = brsh;
                marks.Items.Add(m);

                m = nm();
                m.title = "Assignment";
                m.mrks = mrk.asgn.marks + "/5";
                m.ac_mrk = "";
                m.clour = brsh;
                marks.Items.Add(m);

                tot = c_tot + q_tot + get_sum(mrk.asgn.marks, 1);
                m = nm();
                m.title = "Total";
                m.mrks = tot.ToString("#.0") + "/50";
                m.ac_mrk = "";
                m.clour = new System.Windows.Media.SolidColorBrush(Colors.Orange);
                marks.Items.Add(m);
            }

            else
            {
                m = nm();
                m.title = "PBL/Lab not supported.";
                m.mrks = "";
                m.ac_mrk = "";
                m.clour = new System.Windows.Media.SolidColorBrush(Colors.Orange);
                marks.Items.Add(m);

            }
        }
        private void loadAll() {
            DataHandler dat = new DataHandler();
            
            DataAdapter m = new DataAdapter();

            m.title = "Subject Code";
            m.description = sub.code;
            details.Items.Add(m);

            m = nw();
            m.title = "Type";
            m.description = sub.type;
            details.Items.Add(m);

            m = nw();
            m.title = "Slot";
            m.description = sub.slot;
            details.Items.Add(m);

            m = nw();
            m.title = "Attended";
            m.description = sub.attended.ToString();
            details.Items.Add(m);

            m = nw();
            m.title = "Conducted";
            m.description = sub.conducted.ToString();
            details.Items.Add(m);

            m = nw();
            m.title = "Percentage";
            m.description = sub.percentage;
            details.Items.Add(m);

            try
            {
                for (int i = sub.attendance.Count - 1; i >= 0; i--)
                {
                    m = nw();
                    moredetails.Items.Add(sub.attendance[i]);

                }
            }
            catch (Exception) { }
        }
 private string checkDate(String dat)
 {
     if (dat.Length == 1)
         dat = "0" + dat;
     return dat;
 }