using Microsoft.VisualBasic.FileIO; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Controls.Primitives; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using System.Windows.Threading; //20190710 - added try catch - maanie namespace MagusEvents { /// /// Interaction logic for Setup.xaml /// public partial class Setup : Page { DispatcherTimer Timer = new DispatcherTimer(); Webservices online = new Webservices(); public Frame main; public Frame Header; string EventsObjects = ""; int _loadedEventLoading = 0; int _loadedEvents = 0; int AID = 0; List Zones_list; int Event_Selected = 0; Events Eventsprofile; int Selected_mealdays = 0; int Selected_meals = 0; int pertcent = 0; public int OPT = 0; public Setup() { InitializeComponent(); Timer = new DispatcherTimer(); Timer.Tick += new EventHandler(get_time); Timer.Start(); Database DATA = new Database(); AID = DATA.GetAccreditationID(); //set Online Mode string WorkMode = (string)App.Current.Properties["WorkMode"]; if(WorkMode == "ON") { this.toggleButton.IsChecked = false; } else { this.toggleButton.IsChecked = true; } this.toggleButton.Focus(); } private void get_time(object sender, EventArgs e) { bool is_online = online.CheckForInternetConnection(); if (is_online == true) { list_events_option.Text = "LOADING DATA ..."; GetEventsData(); } else { list_events_option.Text = "SELECT EVENT"; // GetEventsDataLocalData(); } } private void GoBack(object sender, MouseButtonEventArgs e) { header head = new header(); Header.Content = head; if (OPT == 1) { Scanmeal Page = new Scanmeal(); main.Content = Page; Page.main = main; Page.Header = Header; } else { Scan Page = new Scan(); main.Content = Page; Page.main = main; Page.Header = Header; } } private void Save_Data(object sender, MouseButtonEventArgs e) { try { int IsMealZone_checkedbox = 0; if (IsMealZone.IsChecked == true) { IsMealZone_checkedbox = 1; } var JsonObjects = Newtonsoft.Json.JsonConvert.DeserializeObject(EventsObjects); string DateFrom = JsonObjects[Event_Selected]["DateFrom"].ToString() + " " + JsonObjects[Event_Selected]["DateTo"].ToString(); Database DATA = new Database(); UpdateData_text.Text = "SAVING .."; string sql = "UPDATE Events SET " + " Active = '0' " + " WHERE AC > '0'; "; DATA.ExecuteData(sql); sql = "UPDATE Events SET " + " AC = '" + JsonObjects[Event_Selected]["AC"].ToString() + "'," + " AccreditationName = '" + JsonObjects[Event_Selected]["AccreditationName"].ToString() + "'," + " DateFrom = '" + JsonObjects[Event_Selected]["DateFrom"].ToString() + "'," + " DateTo = '" + JsonObjects[Event_Selected]["DateTo"].ToString() + "'," + " Location = '" + JsonObjects[Event_Selected]["Location"].ToString() + "'," + " Logo = '" + JsonObjects[Event_Selected]["Logo"].ToString() + "'," + " MealDays = '" + JsonObjects[Event_Selected]["TotalDays"].ToString() + "'," + "MealsPerDay = '" + JsonObjects[Event_Selected]["MealsPerDay"].ToString() + "'," + " DayNumber = '" + Selected_mealdays + "'," + "SessionNumer = '" + Selected_meals + "'," + "IsMealZone = '" + IsMealZone_checkedbox + "'," + " Active = '1' " + " WHERE AC = '" + JsonObjects[Event_Selected]["AC"].ToString() + "'; "; bool updated = DATA.ExecuteData(sql); if (!updated) { sql = "insert into Events (AC, AccreditationName,DateFrom,DateTo,Location,Active,Logo,MealDays,MealsPerDay,DayNumber,SessionNumer,IsMealZone)" + " values ('" + JsonObjects[Event_Selected]["AC"].ToString() + "', '" + JsonObjects[Event_Selected]["AccreditationName"].ToString() + "','" + JsonObjects[Event_Selected]["DateFrom"].ToString() + "','" + JsonObjects[Event_Selected]["DateTo"].ToString() + "','" + JsonObjects[Event_Selected]["Location"].ToString() + "','1','" + JsonObjects[Event_Selected]["Logo"].ToString() + "','" + JsonObjects[Event_Selected]["TotalDays"].ToString() + "','" + JsonObjects[Event_Selected]["MealsPerDay"].ToString() + "','" + Selected_mealdays + "','" + Selected_meals + "','" + IsMealZone_checkedbox + "')"; bool Insert = DATA.ExecuteData(sql); } foreach (Zones Zone in Zones_list) { string FromTime = Zone.FromTime.Replace(":", ""); string ToTime = Zone.ToTime.Replace(":", ""); sql = "UPDATE Zones SET " + " ZID = '" + Zone.ZID.ToString() + "'," + " AID = '" + Zone.AID.ToString() + "'," + " Number = '" + Zone.Number.ToString() + "'," + " Hidden = '" + Zone.Hidden.ToString() + "'," + " Lock = '" + Zone.Lock.ToString() + "'," + " Active = '" + Zone.Active.ToString() + "'," + " Name = '" + Zone.Name.ToString() + "'," + " Color = '" + Zone.Color.ToString() + "'," + " FromTime = '" + FromTime.ToString() + "'," + " Icon = '" + Zone.Icon.ToString() + "'," + " ZTID = '" + Zone.ZTID.ToString() + "'," + " ToTime = '" + ToTime.ToString() + "' " + " WHERE ZID = '" + Zone.ZID + "'; "; Console.WriteLine("SAVE: " + sql.ToString()); updated = DATA.ExecuteData(sql); if (!updated) { sql = "insert into Zones (ZID,AID, Number,Hidden,Lock,Active,Name,Color,FromTime,ToTime,Icon,ZTID)" + " values ('" + Zone.ZID + "', '" + Zone.AID + "','" + Zone.Number + "','" + Zone.Hidden + "','" + Zone.Lock + "','" + Zone.Active + "','" + Zone.Name + "','" + Zone.Color + "','" + Zone.FromTime + "','" + Zone.ToTime + "','" + Zone.Icon + "','" + Zone.ZTID + "')"; DATA.ExecuteData(sql); } } header head = new header(); Header.Content = head; //online.GetNewData(); UpdateData_text.Text = "SAVE"; //System.Diagnostics.Process.Start(Application.ResourceAssembly.Location); //Application.Current.Shutdown(); if (OPT == 1) { Scanmeal Page = new Scanmeal(); main.Content = Page; Page.main = main; Page.Header = Header; } else { Scan Page = new Scan(); main.Content = Page; Page.main = main; Page.Header = Header; } } catch //(Exception error) { //MessageBox.Show(error.ToString()); } } private void Exit_App(object sender, MouseButtonEventArgs e) { Application.Current.Shutdown(); } private void Grid_MouseLeave(object sender, MouseEventArgs e) { } public void GetEventsData() { try { if (_loadedEvents == 0 && _loadedEventLoading == 0) { _loadedEventLoading = 1; WebClient wb = new WebClient(); wb.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wb_DownloadStringCompleted); wb.DownloadStringAsync(new Uri("https://footprintapp.net/api/Accreditation/getevents")); } } catch { } } private void wb_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) { try { string htmldoc = e.Result; string Web_Data = Convert.ToString(htmldoc); int selected_index = 0; Web_Data = Web_Data.Replace("'", "\'"); var JsonObjects = Newtonsoft.Json.JsonConvert.DeserializeObject(Web_Data); EventsObjects = Web_Data; ComboBox cmb = new ComboBox(); cmb.Width = 370; cmb.Height = 70; cmb.Margin = new Thickness(0, 10, 0, 0); Border BRD2 = new Border(); BRD2.Height = 60; //BRD.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#ccc")); //BRD.BorderThickness = new Thickness(0,0,0,2); BRD2.BorderBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#000")); BRD2.Uid = "0"; //BRD.Name = Events.AccreditationName; BRD2.Cursor = Cursors.Hand; BRD2.MouseDown += new MouseButtonEventHandler(Event_Selected_Button); // MessageBox.Show(AID.ToString()); TextBlock TXT2 = new TextBlock(); TXT2.FontSize = 25; TXT2.Padding = new Thickness(15); TXT2.Text = "SELECT EVENT NAME"; TXT2.FontFamily = new FontFamily("Segoe UI Semibold"); TXT2.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#505050")); BRD2.Child = TXT2; cmb.Items.Add(BRD2); int Index = 1; foreach (var Events in JsonObjects) { if (AID > 0 && AID.ToString() == Events["AC"].ToString()) { selected_index = Index; } // MessageBox.Show(Events["AC"].ToString()); Border BRD = new Border(); BRD.Height = 60; //BRD.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#ccc")); //BRD.BorderThickness = new Thickness(0,0,0,2); BRD.BorderBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#000")); BRD.Uid = Index.ToString(); //BRD.Name = Events.AccreditationName; BRD.Cursor = Cursors.Hand; BRD.MouseDown += new MouseButtonEventHandler(Event_Selected_Button); TextBlock TXT = new TextBlock(); TXT.FontSize = 25; TXT.Padding = new Thickness(15); TXT.Text = Events.AccreditationName; TXT.FontFamily = new FontFamily("Segoe UI Semibold"); TXT.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#505050")); BRD.Child = TXT; cmb.Items.Add(BRD); // STK.Children.Add(BRD); Index++; } Events_ComboWrapa.Children.Clear(); Events_ComboWrapa.Children.Add(cmb); cmb.SelectedIndex = selected_index; LaodingPage.Visibility = Visibility.Hidden; scanning.Visibility = Visibility.Visible; ShowPage(selected_index); _loadedEvents = 1; } catch { } } private void ShowPage(int UID) { try { Zones_list = new List(); if (EventsObjects != "" && UID > 0) { int MealDays = 0; int MealPerDay = 0; CanDoSettings.Visibility = Visibility.Visible; UID = UID - 1; Event_Selected = UID; var JsonObjects = Newtonsoft.Json.JsonConvert.DeserializeObject(EventsObjects); //MessageBox.Show(JsonObjects[UID]["DateFrom"].ToString()); string DateFrom = JsonObjects[UID]["DateFrom"].ToString() + " " + JsonObjects[UID]["DateTo"].ToString(); if (JsonObjects[UID]["DateFrom"].ToString() == JsonObjects[UID]["DateTo"].ToString()) { string date = JsonObjects[UID]["DateTo"].ToString(); Char delimiter = ' '; String[] substrings = date.Split(delimiter); DateFrom = substrings[0]; } if (JsonObjects[UID]["MealsPerDay"].ToString() != "" && JsonObjects[UID]["TotalDays"].ToString() != "") { MealDays = Convert.ToInt32(JsonObjects[UID]["TotalDays"].ToString()); MealPerDay = Convert.ToInt32(JsonObjects[UID]["MealsPerDay"].ToString()); ; } if (MealDays > 0) { numberofdays(MealDays, 1); } if (MealPerDay > 0) { numberofdays(MealPerDay, 2); } try { if (Eventsprofile.IsMealZone == 1) { IsMealZone.IsChecked = true; } else { IsMealZone.IsChecked = false; } } catch { } //list zones from the string to an object var Zones = Newtonsoft.Json.JsonConvert.DeserializeObject(JsonObjects[UID]["zones"].ToString()); StackPanel stb = new StackPanel(); int j = 0; foreach (var Zone in Zones) { Zones ZONES_Item = new Zones(); Zones ZONES_Data = ZONES_Item.GetRow(Zone["ZID"].ToString()); string FromTime = "00:00"; string ToTime = "00:00"; int Locked = 0; int Activated = 0; if (ZONES_Data.ZID > 0) { //check times string FromTime_string = ZONES_Data.FromTime; int FromTime_len = FromTime_string.Length; switch (FromTime_len) { case 1: FromTime_string = "000" + FromTime_string; break; case 2: FromTime_string = "00" + FromTime_string; break; case 3: FromTime_string = "0" + FromTime_string; break; } string ToTime_string = ZONES_Data.ToTime; int ToTime_len = ToTime_string.Length; switch (ToTime_len) { case 1: ToTime_string = "000" + ToTime_string; break; case 2: ToTime_string = "00" + ToTime_string; break; case 3: ToTime_string = "0" + ToTime_string; break; } FromTime = FromTime_string.Substring(0, 2) + ":" + FromTime_string.Substring(2, 2); ToTime = ToTime_string.Substring(0, 2) + ":" + ToTime_string.Substring(2, 2); Locked = ZONES_Data.Lock; Activated = ZONES_Data.Active; } else { } int ZTID = 0; if (Zone["ZTID"].ToString() != "") { ZTID = Convert.ToInt32(Zone["ZTID"].ToString()); } ZONES_Item.Number = Convert.ToInt32(Zone["Number"].ToString()); ZONES_Item.ZID = Convert.ToInt32(Zone["ZID"].ToString()); ZONES_Item.AID = Convert.ToInt32(Zone["AID"].ToString()); ZONES_Item.Name = Zone["Name"].ToString(); ZONES_Item.Color = Zone["Color"].ToString(); ZONES_Item.Icon = Zone["Icon"].ToString(); ZONES_Item.ZTID = ZTID; ZONES_Item.FromTime = FromTime; ZONES_Item.ToTime = ToTime; ZONES_Item.Hidden = Convert.ToInt32(Zone["Hidden"].ToString()); ZONES_Item.Lock = Locked; ZONES_Item.Active = Activated; Zones_list.Add(ZONES_Item); Border b = new Border(); //Set Parems b.Height = 70; b.BorderThickness = new Thickness(0, 0, 0, 2); b.BorderBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#B3B3B3")); ; b.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#EEEEEE")); Grid g = new Grid(); TextBlock Title = new TextBlock(); Title.FontFamily = new FontFamily("Segoe UI Semibold"); Title.Text = "Zone " + Zone["Number"].ToString() + " - " + Zone["Name"].ToString(); Title.FontSize = 25; Title.VerticalAlignment = VerticalAlignment.Center; Title.HorizontalAlignment = HorizontalAlignment.Left; Title.Padding = new Thickness(15); Title.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#484848")); Title.Width = 492; Title.Margin = new Thickness(0, 3, 0, 2); b.Child = g; g.Children.Add(Title); // Foreground="#484848" Margin="0,3,0,2" Width="492" stb.Children.Add(b); TextBox From = new TextBox(); From.Margin = new Thickness(504, 9, 346, 9); From.Height = 40; From.Width = 110; From.TextAlignment = TextAlignment.Center; From.Text = FromTime; From.FontSize = 25; From.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#484848")); From.FontWeight = FontWeights.Bold; From.Uid = j.ToString(); From.FontFamily = new FontFamily("Segoe UI Semibold"); From.HorizontalContentAlignment = HorizontalAlignment.Stretch; From.VerticalContentAlignment = VerticalAlignment.Stretch; From.KeyUp += From_KeyUp; g.Children.Add(From); TextBox To = new TextBox(); To.Margin = new Thickness(662, 8, 188, 10); To.Height = 40; To.Width = 110; To.TextAlignment = TextAlignment.Center; To.Text = ToTime; To.FontSize = 25; To.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#484848")); To.FontWeight = FontWeights.Bold; To.FontFamily = new FontFamily("Segoe UI Semibold"); To.Uid = j.ToString(); To.HorizontalContentAlignment = HorizontalAlignment.Stretch; To.VerticalContentAlignment = VerticalAlignment.Stretch; To.KeyUp += To_KeyUp; g.Children.Add(To); CheckBox Lock = new CheckBox(); Lock.Margin = new Thickness(819, 25, 91, 23); Lock.Width = 50; Lock.Height = 20; Lock.Checked += Lock_Checked; Lock.Unchecked += Lock_Unchecked; Lock.Uid = j.ToString(); if (Locked == 1) { Lock.IsChecked = true; } g.Children.Add(Lock); CheckBox Active = new CheckBox(); Active.Margin = new Thickness(908, 25, 2, 23); Active.Width = 50; Active.Height = 20; Active.Checked += Active_Checked; Active.Unchecked += Active_Unchecked; Active.Uid = j.ToString(); if (Activated == 1) { Active.IsChecked = true; } g.Children.Add(Active); j++; } DropDown_Events_Copy.Content = stb; UpdateData.Visibility = Visibility.Visible; } else { CanDoSettings.Visibility = Visibility.Hidden; } } catch { //MessageBox.Show(error.ToString()); } } private void numberofdays(int Number, int Option) { try { int N = 0; N = 0; ComboBox ComboMeals = new ComboBox(); ComboMeals.Width = 200; ComboMeals.Height = 45; ComboMeals.Margin = new Thickness(0, 0, 0, 0); ComboMeals.HorizontalAlignment = HorizontalAlignment.Left; ComboMeals.VerticalAlignment = VerticalAlignment.Top; if (Number > 0) { while (N < Number) { TextBlock text = new TextBlock(); text.FontSize = 30; text.Width = 200; text.Height = 50; if (Option == 1) { text.Name = "DayNumber"; } else { text.Name = "SessionNumer"; } text.Padding = new Thickness(15, 5, 0, 0); text.FontFamily = new FontFamily("Segoe UI Semibold"); text.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#505050")); text.Text = (N + 1).ToString(); text.Cursor = Cursors.Hand; if (Option == 1) { text.MouseDown += new MouseButtonEventHandler(MealPerDay_Selected_Button); } else { text.MouseDown += new MouseButtonEventHandler(MealDays_Selected_Button); } N++; ComboMeals.Items.Add(text); } } if (Option == 1) { DaysWrapa.Children.Add(ComboMeals); } else { MealsWrapa.Children.Add(ComboMeals); } if (Eventsprofile.AC > 0) { if (Option == 1) { ComboMeals.SelectedIndex = (Eventsprofile.DayNumber - 1); Selected_mealdays = Eventsprofile.DayNumber; Console.WriteLine("DayNumber:" + Eventsprofile.DayNumber); } else { ComboMeals.SelectedIndex = (Eventsprofile.SessionNumer - 1); Selected_mealdays = Eventsprofile.SessionNumer; Console.WriteLine("SessionNumer:" + Eventsprofile.SessionNumer); } } } catch// (Exception r) { //Console.WriteLine(r.ToString()); } } private void MealPerDay_Selected_Button(object sender, MouseButtonEventArgs e) { TextBlock text = (TextBlock)sender; Selected_meals = Convert.ToInt32(text.Text); } private void MealDays_Selected_Button(object sender, MouseButtonEventArgs e) { TextBlock text = (TextBlock)sender; Selected_mealdays = Convert.ToInt32(text.Text); } private void To_KeyUp(object sender, KeyEventArgs e) { TextBox obj = (TextBox)sender; int index = Convert.ToInt32(obj.Uid.ToString()); Zones_list[index].ToTime = obj.Text.ToString(); } private void From_KeyUp(object sender, KeyEventArgs e) { TextBox obj = (TextBox)sender; int index = Convert.ToInt32(obj.Uid.ToString()); Zones_list[index].FromTime = obj.Text.ToString(); } private void Active_Unchecked(object sender, RoutedEventArgs e) { CheckBox obj = (CheckBox)sender; int index = Convert.ToInt32(obj.Uid.ToString()); Zones_list[index].Active = 0; } private void Active_Checked(object sender, RoutedEventArgs e) { CheckBox obj = (CheckBox)sender; int index = Convert.ToInt32(obj.Uid.ToString()); Zones_list[index].Active = 1; } private void Lock_Unchecked(object sender, RoutedEventArgs e) { CheckBox obj = (CheckBox)sender; int index = Convert.ToInt32(obj.Uid.ToString()); Zones_list[index].Lock = 0; } private void Lock_Checked(object sender, RoutedEventArgs e) { CheckBox obj = (CheckBox)sender; int index = Convert.ToInt32(obj.Uid.ToString()); Zones_list[index].Lock = 1; } private void Event_Selected_Button(object sender, MouseButtonEventArgs e) { Border BRD = (Border)sender; int UID = Convert.ToInt32(BRD.Uid); ShowPage(UID); } private void Reset_Data(object sender, MouseButtonEventArgs e) { } private void Download_Data(object sender, MouseButtonEventArgs e) { ProgressBarWrapa.Visibility = Visibility.Visible; // delete data Database db = new Database(); string sql = "DELETE FROM Persons WHERE AAID > 0;"; //Accreditation Application ID - clear all applicants Person Prodile = db.GetPersonProfile(sql); GetNewData(); } int DownloadingProgressPerText = 0; public void GetNewData() { int AASID = 0; Database db = new Database(); AID = db.GetAccreditationID(); Person P = new Person(); string sql = "SELECT * FROM Persons WHERE AC = '" + AID + "'"; //get person linked to this event Person Prodile = db.GetPersonProfile(sql); if (Prodile.AASID > 0) //Accreditation Application Services ID { AASID = Prodile.AASID; } try { string Url = "https://footprintapp.net/api/accreditation/getapplicants/ac/" + +AID + "/id/" + AASID; //get all applicants for this event and where > AASID Console.WriteLine(Url); pertcent = 0; LoadingText.Content = "Downloading: " + pertcent; WebClient wb = new WebClient(); wb.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadDATAProgressChanged); wb.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DownloadStringCompleted); wb.DownloadStringAsync(new Uri(Url)); } catch (Exception error) { Console.WriteLine(error.ToString()); } } private void DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) { //20190710 - added try catch - maanie try { var fullPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); var LastUpdatePath = System.IO.Path.Combine(fullPath, "Data.json"); string htmldoc = e.Result; string Web_Data = Convert.ToString(htmldoc); Web_Data = Web_Data.Replace("'", "\'"); var JsonObjects = JsonConvert.DeserializeObject(Web_Data); int count = JsonObjects.data.Count; pertcent = pertcent + 3; if (count > 0) { Person Profile = new Person(); int last_id = Profile.save_to_db(Web_Data); if (last_id > 0) { DownloadingProgress.Value = pertcent; GetNewData(); } else { //Download all Profile photos GetProfileImages(); } } else { //Download all Profile photos GetProfileImages(); } } catch(Exception ex) { LoadingText.Content = "Unable to download data"; } } private void DownloadDATAProgressChanged(object sender, DownloadProgressChangedEventArgs e) { DownloadingProgress.Minimum = 0; double receive = double.Parse(e.BytesReceived.ToString()); double total = double.Parse(e.TotalBytesToReceive.ToString()); double percentage = receive / total * 50; pertcent = pertcent + 5; //LoadingText.Content = "Downloading: "+ string.Format("{0:0.##}", percentage); ResetData_text.Text = "Download ....."; DownloadingProgress.Value = pertcent; LoadingText.Content = "Downloading:" + pertcent + '%'; } public int DownloadingImg = 0; private void GetProfileImages() { try { bool is_online = online.CheckForInternetConnection(); if (is_online == true) { Console.WriteLine("Download .."); Person PersonDb = new Person(); Person profile = PersonDb.GetImagesUpdates(); if (DownloadingImg == 0 && profile.AAID > 0) { if (AID > 0) { DownloadingImg = 1; using (var client = new WebClient()) { string url = "https://footprintapp.net/api/accreditation/getimages/ac/" + AID + "/id/" + profile.AAID; client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadPicProgressChanged); client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DownloadPicFileCompleted); client.DownloadStringAsync(new Uri(url)); } } } else //No more images found { ResetData_text.Text = "Download Done"; DownloadingProgress.Value = 100; LoadingText.Content = "Download 100%"; Scan Page = new Scan(); main.Content = Page; Page.main = main; Page.Header = Header; } } } catch //(Exception error) { //MessageBox.Show(error.ToString()); } } private void DownloadPicProgressChanged(object sender, DownloadProgressChangedEventArgs e) { } private void DownloadPicFileCompleted(object sender, DownloadStringCompletedEventArgs e) { try { string htmldoc = e.Result; string Web_Data = Convert.ToString(htmldoc); Web_Data = Web_Data.Replace("'", "\'"); var JsonObjects = JsonConvert.DeserializeObject(Web_Data); Database SQL = new Database(); int i = 0; foreach (var Services in JsonObjects) { if (Services.User_pic != "NULL") { string path = @"c:\temp_acc\" + Services.AAID + ".txt"; //Console.WriteLine("Saving .."+ path); try { string IMG = Services.User_pic.ToString(); System.IO.File.WriteAllText(path, IMG); } catch { } } string sql = "UPDATE Persons SET " + " User_pic = '1' " + " WHERE AAID = '" + Services.AAID + "'; "; Console.WriteLine("Saving .." + sql); bool updated = SQL.ExecuteData(sql); i++; } } catch { } DownloadingImg = 0; GetProfileImages(); } private void Import_CSV(object sender, MouseButtonEventArgs e) { Person Profile = new Person(); string csvfilePath = @"c:\temp_acc\accreditations.csv"; if (File.Exists(csvfilePath)) { using (TextFieldParser csvReader = new TextFieldParser(csvfilePath)) { csvReader.SetDelimiters(new string[] { "," }); csvReader.HasFieldsEnclosedInQuotes = true; while (!csvReader.EndOfData) { string[] fieldData = csvReader.ReadFields(); Profile.save_to_db(fieldData); } } Scan Page = new Scan(); main.Content = Page; Page.main = main; Page.Header = Header; } else { ImportCSV_text.Text = "File not found!"; } } private void ToggleButton_Click(object sender, RoutedEventArgs e) { if((sender as ToggleButton).IsChecked == true) //online mode = OFF { App.Current.Properties["WorkMode"] = "OFF"; } else //online mode = ON { App.Current.Properties["WorkMode"] = "ON"; } } } }