public static void CheckingData(TAccountItem account) { Converts conv = new Converts(); //////////////////////////////////////////// account.Url = (account.Url == null || account.Url == "") ? "" : HIOStaticValues.getDomainName(account.Url.ToLower()); var urlByteArray = account.Url.GetUTF8Bytes(256); account.Url = UnicodeEncoding.UTF8.GetString(urlByteArray); //proccess unicode character and get len of string account.Name = (account.Name == null || account.Name == "") ? "" : (account.Name.Length < 65) ? account.Name : account.Name.Substring(0, 64); var titleByteArray = account.Name.GetUTF8Bytes(256); account.Name = UnicodeEncoding.UTF8.GetString(titleByteArray); ////////////////////// account.Password = (account.Password == null || account.Password == "") ? "" : (account.Password.Length < 65) ? account.Password : account.Password.Substring(0, 64); var passByteArray = account.Password.GetUTF8Bytes(256); account.Password = UnicodeEncoding.UTF8.GetString(passByteArray); //////////////////////////////////////// account.Username = (account.Username == null || account.Username == "") ? "" : (account.Username.Length < 65) ? account.Username : account.Username.Substring(0, 64); if (account.Username != "") { HIOStaticValues.username = account.Username;//check username(if user want just fill password element and username element filled already by self) } var userByteArray = account.Username.GetUTF8Bytes(256); account.Username = UnicodeEncoding.UTF8.GetString(userByteArray); //////////////////////////////////////////// }
private void TCheckingData(JObject data, ref string url, ref string title, ref string message, ref string username) { Converts conv = new Converts(); //////////////////////////////////////////// url = (data["url"] == null) ? "" : HIOStaticValues.getDomainName(data["url"].Value <string>().ToLower()); var urlByteArray = url.GetUTF8Bytes(256); url = UnicodeEncoding.UTF8.GetString(urlByteArray); //proccess unicode character and get len of string title = (data["title"] == null) ? "" : (data["title"].Value <string>().Length < 65) ? data["title"].Value <string>() : data["title"].Value <string>().Substring(0, 64); var titleByteArray = title.GetUTF8Bytes(64); title = UnicodeEncoding.UTF8.GetString(titleByteArray); ////////////////////// message = (data["CMD"] == null) ? "" : data["CMD"].Value <string>(); //////////////////////////////////////// username = (data["username"] == null) ? "" : (data["username"].Value <string>().Length < 65) ? data["username"].Value <string>() : data["username"].Value <string>().Substring(0, 64); if (username != "") { HIOStaticValues.username = username;//check username(if user want just fill password element and username element filled already by self) } var usernameByteArray = username.GetUTF8Bytes(64); username = UnicodeEncoding.UTF8.GetString(usernameByteArray); //////////////////////////////////////////// }
//public void UpdateIconWebsite() //{ // try // { // string url = ""; // string sql = ""; // try // { // DataTable DB = new DataTable(); // sql = string.Format("select distinct origin_url from logins where image_data IS NULL or length(image_data)==0 limit 1 "); // using (SQLiteConnection connect = new SQLiteConnection(ConnectionString)) // { // connect.Open(); // using (SQLiteCommand command = new SQLiteCommand(sql, connect)) // { // SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); // adapter.Fill(DB); // if (DB.Rows.Count == 0) return; // url = (DB.Rows[0][0] == DBNull.Value) ? string.Empty : DB.Rows[0][0].ToString(); // adapter.Dispose(); // connect.Close(); // } // } // } // catch (Exception ex) // { // } // byte[] imageData = GetIconFromUrl(encode.Base64Decode( url)); // sql = string.Format("update \"main\".\"logins\" set image_data=@image_byte_array where origin_url='{0}' ", url); // using (SQLiteConnection connect = new SQLiteConnection(ConnectionString)) // { // connect.Open(); // using (SQLiteCommand command = new SQLiteCommand(sql, connect)) // { // command.Parameters.Add("@image_byte_array", DbType.Binary, imageData.Length); // command.Parameters["@image_byte_array"].Value = imageData; // command.ExecuteNonQuery(); // } // connect.Close(); // } // } // catch (Exception ex) // { // } //} private byte[] GetIconFromUrl(string url) { byte[] imageData = new byte[0]; Converts conv = new Converts(); Image _imageData = null; try { _imageData = Favicon.GetFromUrl(url).Icon; if (_imageData != null) { byte[] tmpImageData = conv.ImageToByteArray(_imageData); Array.Resize(ref imageData, tmpImageData.Length); Array.Copy(tmpImageData, imageData, tmpImageData.Length); } return(imageData); } catch (Exception ex) { return(imageData); } }
/// <summary> /// For Extensions /// </summary> /// <param name="data">recieve data from browser</param> /// <param name="source">check refrence of data</param> /// <param name="tMain">parent handler</param> public void ProcessRecieveMessage(JObject data, Source source) { try { if (data == null) { return; } Converts conv = new Converts(); Dictionary <string, string> dicData = new Dictionary <string, string> (); string url = "", title = "", message = "", username = ""; TCheckingData(data, ref url, ref title, ref message, ref username); DataBase db = new DataBase(); if (HIOStaticValues.CONNECTIONBHIO == false) { dicData.Add("CMD", "CONNCETION"); dicData.Add("DATA", "false"); HIOStaticValues.BaS.Write(dicData, source); if (message != "INIT" && message != "SUBMIT") { HIOStaticValues.popUp("HIO is not connected!"); } return; } if (message != "INIT" && !HIOStaticValues.TPinStatus()) { return; } if (HIOStaticValues.CheckSyncingData()) { return; } switch (message) { case "exit": //Environment.Exit(0); break; case "MENUCHROME": List <LoginFieldS> listUsers = db.getInfoFromDB("*", "", ""); System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => { HIOStaticValues.AdminExtention.CloseAll(); HIOStaticValues.AdminExtention.ExtentionMenu.Initialize(url, title); HIOStaticValues.AdminExtention.ExtentionMenu.Show(); })); break; //case "DASHBOARD": // System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => // { // TMain.Instance.Show(); // })); // break; //case "MANAGEALLUSER": // List<LoginFieldS> lnFields = db.getInfoFromDB("*", "", ""); // System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => // { // HIOStaticValues.AdminExtention.CloseAll(); // HIOStaticValues.AdminExtention.Extention08.Initialize(lnFields); // HIOStaticValues.AdminExtention.Extention08.Show(); // })); // break; //case "ADDUSER": // System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => // { // HIOStaticValues.AdminExtention.CloseAll(); // HIOStaticValues.AdminExtention.Extention02.Show(new TAccountItem { Url = url, Name = title }); // })); // break; case "READYDATA": //ready for fill username dicData.Add("CMD", "USER"); dicData.Add("USER", HIOStaticValues.username); HIOStaticValues.BaS.Write(dicData, source, true); break; case "READYDATAPASS": //ready for fill password // Dictionary<string, string> dicData = new Dictionary<string, string> { { "CMD", "USER" }, { "USER", HIOStaticValues.username } }; dicData.Add("CMD", "PASS"); dicData.Add("DATA", HIOStaticValues.password); HIOStaticValues.BaS.Write(dicData, source, true); break; case "INIT": dicData.Add("CMD", "CONNCETION"); dicData.Add("DATA", HIOStaticValues.CONNECTIONBHIO.ToString().ToLower()); HIOStaticValues.BaS.Write(dicData, source); break; case "MANAGEUSER": break; case "CANNOTFIND": System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => { HIOStaticValues.popUp("HIO could not find the login form." + "\nMove the cursor inside the Username or Password field."); })); break; //case "GENERATEPASSWORDNOFILL": // System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => // { // try // { // HIOStaticValues.AdminExtention.CloseAll(); // HIOStaticValues.AdminExtention.Extentiongp.Show(false,false); // } // catch (Exception ex) // { // ; // } // })); // break; case "GENERATEPASSWORD": TGeneratePasswordForm(); break; case "JUSTMENU": url = (url.Length < 257) ? url : url.Substring(0, 256); // action = data["action"].Value<string>().ToLower(); title = (data["title"].Value <string>().Length < 65) ? data["title"].Value <string>() : data["title"].Value <string>().Substring(0, 64); List <LoginFieldS> lgnpack = db.getInfoFromDB(url, "", ""); System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => { HIOStaticValues.AdminExtention.CloseAll(); HIOStaticValues.AdminExtention.ExtentionManage.Initialize(lgnpack, false, source, url); HIOStaticValues.AdminExtention.ExtentionManage.Show(); })); break; case "SUBMIT": url = (url.Length < 257) ? url : url.Substring(0, 256); string passwd = (data["password"].Value <string>().Length < 64) ? data["password"].Value <string>() : data["password"].Value <string>().Substring(0, 64); List <LoginFieldS> listlgnpck = db.getInfoFromDB(url, username, ""); if (listlgnpck.Count == 0) { System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => { HIOStaticValues.AdminExtention.CloseAll(); HIOStaticValues.AdminExtention.Extention10.Initialize(new LoginFieldS { url = url, title = title, userName = username, password = passwd }); HIOStaticValues.AdminExtention.Extention10.Show(); })); } break; case "CHECKPASS": dicData.Add("CMD", "CHECKPASS"); HIOStaticValues.BaS.Write(dicData, source); break; case "GETUSER": HIOStaticValues.username = ""; url = (url.Length < 257) ? url : url.Substring(0, 256); TGetUsername(url, title, source, db); break; case "GETPASS": url = (url.Length < 257) ? url : url.Substring(0, 256); TGetPassword(url, title, db, source); break; } } catch (Exception ex) { } }