public MainForm() { BeforeLogin.SetText("Starting..."); Program.MainF = this; InitializeComponent(); Thread.CurrentThread.Name = "Main Thread"; toolStripMenuItem4.Enabled = false; //2014.04.12. toolStripMenuItem8.Enabled = false; //2014.04.12. this.WindowState = FormWindowState.Minimized; //2014.04.19. BeforeLogin.SetText("Loading program settings..."); Storage.Load(false); //Töltse be a nyelvet, legutóbb használt E-mail-t... BeforeLogin.SetText("Checking available ports..."); //2014.09.04. - Amint lehet állítsa be a helyes IP-t, majd azt hagyja úgy, akármi történjék while (true) { if (IPGlobalProperties.GetIPGlobalProperties().GetActiveUdpListeners().Select(entry => entry.Port).Contains(Int32.Parse(Storage.Settings["port"]))) { Storage.Settings["port"] = (Int32.Parse(Storage.Settings["port"]) + 1).ToString(); } else { break; } } Networking.ReceiverConnection = new UdpClient(Int32.Parse(Storage.Settings["port"])); //2014.09.04. Networking.SenderConnection.AllowNatTraversal(true); //2014.09.04. BeforeLogin.SetText("Loading languages..."); new Language(); BeforeLogin.SetText(Language.Translate("beforelogin_translatemainf")); #region Helyi beállitás //try //{ fájlToolStripMenuItem.Text = Language.Translate("menu_file"); Language.ReloadEvent += delegate { fájlToolStripMenuItem.Text = Language.Translate("menu_file"); }; kijelentkezésToolStripMenuItem.Text = Language.Translate("menu_file_logout"); Language.ReloadEvent += delegate { kijelentkezésToolStripMenuItem.Text = Language.Translate("menu_file_logout"); }; toolStripMenuItem1.Text = Language.Translate("menu_file_loginnewuser"); Language.ReloadEvent += delegate { toolStripMenuItem1.Text = Language.Translate("menu_file_loginnewuser"); }; állapotToolStripMenuItem.Text = Language.Translate("menu_file_status"); Language.ReloadEvent += delegate { állapotToolStripMenuItem.Text = Language.Translate("menu_file_status"); }; elérhetőToolStripMenuItem.Text = Language.Translate("menu_file_status_online"); Language.ReloadEvent += delegate { elérhetőToolStripMenuItem.Text = Language.Translate("menu_file_status_online"); }; elfoglaltToolStripMenuItem.Text = Language.Translate("menu_file_status_busy"); Language.ReloadEvent += delegate { elfoglaltToolStripMenuItem.Text = Language.Translate("menu_file_status_busy"); }; nincsAGépnélToolStripMenuItem.Text = Language.Translate("menu_file_status_away"); Language.ReloadEvent += delegate { nincsAGépnélToolStripMenuItem.Text = Language.Translate("menu_file_status_away"); }; rejtveKapcsolódikToolStripMenuItem.Text = Language.Translate("menu_file_status_hidden"); Language.ReloadEvent += delegate { rejtveKapcsolódikToolStripMenuItem.Text = Language.Translate("menu_file_status_hidden"); }; fájlKüldéseToolStripMenuItem.Text = Language.Translate("menu_file_sendfile"); Language.ReloadEvent += delegate { fájlKüldéseToolStripMenuItem.Text = Language.Translate("menu_file_sendfile"); }; beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem.Text = Language.Translate("menu_file_openreceivedfiles"); Language.ReloadEvent += delegate { beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem.Text = Language.Translate("menu_file_openreceivedfiles"); }; üzenetekElőzményeinekMegtekintéseToolStripMenuItem.Text = Language.Translate("menu_file_openrecentmsgs"); Language.ReloadEvent += delegate { üzenetekElőzményeinekMegtekintéseToolStripMenuItem.Text = Language.Translate("menu_file_openrecentmsgs"); }; bezárásToolStripMenuItem.Text = Language.Translate("menu_file_close"); Language.ReloadEvent += delegate { bezárásToolStripMenuItem.Text = Language.Translate("menu_file_close"); }; kilépésToolStripMenuItem.Text = Language.Translate("menu_file_exit"); Language.ReloadEvent += delegate { kilépésToolStripMenuItem.Text = Language.Translate("menu_file_exit"); }; ismerősökToolStripMenuItem.Text = Language.Translate("menu_contacts"); Language.ReloadEvent += delegate { ismerősökToolStripMenuItem.Text = Language.Translate("menu_contacts"); }; ismerősFelvételeToolStripMenuItem.Text = Language.Translate("menu_contacts_add"); Language.ReloadEvent += delegate { ismerősFelvételeToolStripMenuItem.Text = Language.Translate("menu_contacts_add"); }; ismerősSzerkesztéseToolStripMenuItem.Text = Language.Translate("menu_contacts_edit"); Language.ReloadEvent += delegate { ismerősSzerkesztéseToolStripMenuItem.Text = Language.Translate("menu_contacts_edit"); }; ismerősTörléseToolStripMenuItem.Text = Language.Translate("menu_contacts_remove"); Language.ReloadEvent += delegate { ismerősTörléseToolStripMenuItem.Text = Language.Translate("menu_contacts_remove"); }; toolStripMenuItem3.Text = Language.Translate("menu_contacts_invite"); Language.ReloadEvent += delegate { toolStripMenuItem3.Text = Language.Translate("menu_contacts_invite"); }; csoportLétrehozásaToolStripMenuItem.Text = Language.Translate("menu_contacts_makegroup"); Language.ReloadEvent += delegate { csoportLétrehozásaToolStripMenuItem.Text = Language.Translate("menu_contacts_makegroup"); }; kategóriaLétrehozásaToolStripMenuItem.Text = Language.Translate("menu_contacts_makecategory"); Language.ReloadEvent += delegate { kategóriaLétrehozásaToolStripMenuItem.Text = Language.Translate("menu_contacts_makecategory"); }; kategóriaSzerkesztéseToolStripMenuItem.Text = Language.Translate("menu_contacts_editcategory"); Language.ReloadEvent += delegate { kategóriaSzerkesztéseToolStripMenuItem.Text = Language.Translate("menu_contacts_editcategory"); }; kategóriaTörléseToolStripMenuItem.Text = Language.Translate("menu_contacts_removecategory"); Language.ReloadEvent += delegate { kategóriaTörléseToolStripMenuItem.Text = Language.Translate("menu_contacts_removecategory"); }; műveletekToolStripMenuItem.Text = Language.Translate("menu_operations"); Language.ReloadEvent += delegate { műveletekToolStripMenuItem.Text = Language.Translate("menu_operations"); }; azonnaliÜzenetKüldéseToolStripMenuItem.Text = Language.Translate("menu_operations_sendmsg"); Language.ReloadEvent += delegate { azonnaliÜzenetKüldéseToolStripMenuItem.Text = Language.Translate("menu_operations_sendmsg"); }; egyébKüldéseToolStripMenuItem.Text = Language.Translate("menu_operations_sendother"); Language.ReloadEvent += delegate { egyébKüldéseToolStripMenuItem.Text = Language.Translate("menu_operations_sendother"); }; emailKüldéseToolStripMenuItem.Text = Language.Translate("menu_operations_sendother_sendmail"); Language.ReloadEvent += delegate { emailKüldéseToolStripMenuItem.Text = Language.Translate("menu_operations_sendother_sendmail"); }; fájlKüldéseToolStripMenuItem1.Text = Language.Translate("menu_file_sendfile"); //Ugyanaz a szöveg Language.ReloadEvent += delegate { fájlKüldéseToolStripMenuItem1.Text = Language.Translate("menu_file_sendfile"); }; ismerősSzámitógépénekFelhivásaToolStripMenuItem.Text = Language.Translate("menu_operations_callcontact"); Language.ReloadEvent += delegate { ismerősSzámitógépénekFelhivásaToolStripMenuItem.Text = Language.Translate("menu_operations_callcontact"); }; videóhivásInditásaToolStripMenuItem.Text = Language.Translate("menu_operations_videocall"); Language.ReloadEvent += delegate { videóhivásInditásaToolStripMenuItem.Text = Language.Translate("menu_operations_videocall"); }; onlineFájlokMegtekintéseToolStripMenuItem.Text = Language.Translate("menu_operations_showonlinefiles"); Language.ReloadEvent += delegate { onlineFájlokMegtekintéseToolStripMenuItem.Text = Language.Translate("menu_operations_showonlinefiles"); }; közösJátékToolStripMenuItem.Text = Language.Translate("menu_operations_playgame"); Language.ReloadEvent += delegate { közösJátékToolStripMenuItem.Text = Language.Translate("menu_operations_playgame"); }; távsegitségKéréseToolStripMenuItem.Text = Language.Translate("menu_operations_askforhelp"); Language.ReloadEvent += delegate { távsegitségKéréseToolStripMenuItem.Text = Language.Translate("menu_operations_askforhelp"); }; eszközökToolStripMenuItem.Text = Language.Translate("menu_tools"); Language.ReloadEvent += delegate { eszközökToolStripMenuItem.Text = Language.Translate("menu_tools"); }; mindigLegfelülToolStripMenuItem.Text = Language.Translate("menu_tools_alwaysontop"); Language.ReloadEvent += delegate { mindigLegfelülToolStripMenuItem.Text = Language.Translate("menu_tools_alwaysontop"); }; hangulatjelekToolStripMenuItem.Text = Language.Translate("menu_tools_emoticons"); Language.ReloadEvent += delegate { hangulatjelekToolStripMenuItem.Text = Language.Translate("menu_tools_emoticons"); }; megjelenitendőKépVáltásaToolStripMenuItem.Text = Language.Translate("menu_tools_changeimage"); Language.ReloadEvent += delegate { megjelenitendőKépVáltásaToolStripMenuItem.Text = Language.Translate("menu_tools_changeimage"); }; háttérMódositásaToolStripMenuItem.Text = Language.Translate("menu_tools_changebackground"); Language.ReloadEvent += delegate { háttérMódositásaToolStripMenuItem.Text = Language.Translate("menu_tools_changebackground"); }; hangokÉsVideóBeállitásaToolStripMenuItem.Text = Language.Translate("menu_tools_voicevideosettings"); Language.ReloadEvent += delegate { hangokÉsVideóBeállitásaToolStripMenuItem.Text = Language.Translate("menu_tools_voicevideosettings"); }; beállitásokToolStripMenuItem.Text = Language.Translate("menu_tools_settings"); Language.ReloadEvent += delegate { beállitásokToolStripMenuItem.Text = Language.Translate("menu_tools_settings"); }; súgóToolStripMenuItem.Text = Language.Translate("menu_help"); Language.ReloadEvent += delegate { súgóToolStripMenuItem.Text = Language.Translate("menu_help"); }; témakörökToolStripMenuItem.Text = Language.Translate("menu_help_contents"); Language.ReloadEvent += delegate { témakörökToolStripMenuItem.Text = Language.Translate("menu_help_contents"); }; aSzolgáltatásÁllapotsaToolStripMenuItem.Text = Language.Translate("menu_help_status"); Language.ReloadEvent += delegate { aSzolgáltatásÁllapotsaToolStripMenuItem.Text = Language.Translate("menu_help_status"); }; adatvédelmiNyilatkozatToolStripMenuItem.Text = Language.Translate("menu_help_privacypolicy"); Language.ReloadEvent += delegate { adatvédelmiNyilatkozatToolStripMenuItem.Text = Language.Translate("menu_help_privacypolicy"); }; használatiFeltételekToolStripMenuItem.Text = Language.Translate("menu_help_termsofuse"); Language.ReloadEvent += delegate { használatiFeltételekToolStripMenuItem.Text = Language.Translate("menu_help_termsofuse"); }; visszaélésBejelentéseToolStripMenuItem.Text = Language.Translate("menu_help_report"); Language.ReloadEvent += delegate { visszaélésBejelentéseToolStripMenuItem.Text = Language.Translate("menu_help_report"); }; segitsenAProgramTökéletesitésébenToolStripMenuItem.Text = Language.Translate("menu_help_improveprogram"); Language.ReloadEvent += delegate { segitsenAProgramTökéletesitésébenToolStripMenuItem.Text = Language.Translate("menu_help_improveprogram"); }; névjegyToolStripMenuItem.Text = Language.Translate("menu_help_about"); Language.ReloadEvent += delegate { névjegyToolStripMenuItem.Text = Language.Translate("menu_help_about"); }; textBox1.Text = Language.Translate("searchbar", textBox1); //contactList.Items[0].SubItems[0].Text = Language.Translate("loading"); - 2014.08.28. - Nincs már rá szükség (hibát is ír, mivel nincs listaelem) //üzenetküldésToolStripMenuItem.Text = Language.Translate("menu_operations_sendmsg"); //emailKüldéseemailToolStripMenuItem.Text = Language.Translate("contact_sendemail"); //toolStripMenuItem2.Text = Language.Translate("contact_copyemail"); //információToolStripMenuItem.Text = Language.Translate("contact_info"); //ismerősLetiltásaToolStripMenuItem.Text = Language.Translate("contact_block"); //ismerősTörléseToolStripMenuItem.Text = Language.Translate("contact_remove"); - Kétszer benne volt, ugyanilyen névvel, csak 1-re végződve lett volna a megfelelő //becenévSzerkesztéseToolStripMenuItem.Text = Language.Translate("contact_editname"); //eseményértesitésekToolStripMenuItem.Text = Language.Translate("contact_eventnotifications"); //beszélgetésnaplóMegnyitásaToolStripMenuItem.Text = Language.Translate("contact_openchatlog"); toolStripMenuItem4.Text = Language.Translate("iconmenu_show"); Language.ReloadEvent += delegate { toolStripMenuItem4.Text = Language.Translate("iconmenu_show"); }; toolStripMenuItem8.Text = Language.Translate("menu_file_logout"); Language.ReloadEvent += delegate { toolStripMenuItem8.Text = Language.Translate("menu_file_logout"); }; toolStripMenuItem9.Text = Language.Translate("menu_file_exit"); Language.ReloadEvent += delegate { toolStripMenuItem9.Text = Language.Translate("menu_file_exit"); }; //} //catch //{ //MessageBox.Show("Error while loading translations."); //} LoadMenu(MenuType.ChatIconMenu); //2014.12.12. LoadMenu(MenuType.PartnerMenu); //2014.12.13. #endregion BeforeLogin.SetText(Language.Translate("beforelogin_loadtextformat")); //2014.05.16. new TextFormat(); BeforeLogin.SetText(Language.Translate("beforelogin_checkforupdates")); //2014.04.25. string response = Networking.SendRequest("checkforupdates", Assembly.GetExecutingAssembly().GetName().Version.ToString().Replace(".", ""), 0, false); if (response == "outofdate") { var res = MessageBox.Show(Language.Translate("outofdate"), Language.Translate("outofdate_caption"), MessageBoxButtons.YesNo); if (res == DialogResult.Yes) //System.Diagnostics.Process.Start("http://msger.url.ph/download.php?version=latest"); //(new UpdateDialog()).Show(); //2014.12.13. - Elvileg át lehet nevezni a programot, miközben fut (ami érdekes) - De inkább csinálok külön programot { //2014.12.13. Process.Start("Updater.exe", "\"" + Language.Translate("updater") + "\" \"" + Language.Translate("updater_info") + "\""); Program.Exit(false); } } else if (response != "fine") { MessageBox.Show(Language.Translate("error") + ": " + response); } //BeforeLogin.SetText(Language.Translate("beforelogin_server")); //2015.01.07. //2014.09.06. /*if (Storage.Settings["isserver"] == "") * { * if (MessageBox.Show(Language.Translate("isserver_msg"), "", MessageBoxButtons.YesNo) == DialogResult.Yes) * Storage.Settings["isserver"] = "1"; * else * Storage.Settings["isserver"] = "0"; * }*/ /*if(Storage.Settings["isserver"]=="1") //2015.01.07. * { * NATUPNPLib.UPnPNAT upnpnat = new NATUPNPLib.UPnPNAT(); * NATUPNPLib.IStaticPortMappingCollection mappings = upnpnat.StaticPortMappingCollection; * if (mappings == null) * { * //MessageBox.Show(Language.Translate("portforward_noaccess")); * } * //else * //{ * foreach (NATUPNPLib.IStaticPortMapping mapping in mappings) * { * if (mapping.Protocol == "UDP" && mapping.InternalPort.ToString() == Storage.Settings["port"]) * { * if (MessageBox.Show(Language.Translate("portforward_existsremove"), "", MessageBoxButtons.YesNo) == DialogResult.Yes) * mappings.Remove(mapping.ExternalPort, "UDP"); * else * Storage.Settings["port"] = (Int32.Parse(Storage.Settings["port"]) + 1).ToString(); * } * * } * int port = int.Parse(Storage.Settings["port"]); * mappings.Add(port, "UDP", port, Dns.GetHostEntry(Dns.GetHostName()).AddressList.Single(entry => * entry.AddressFamily == AddressFamily.InterNetwork * && (entry.ToString().Contains("192.168.0.") || entry.ToString().Contains("192.168.1.") || entry.ToString().Contains("10.0.0.") || entry.ToString().Contains("172.16.0.")) //Helyi IP-k * ).ToString(), true, "MSGer.tk chat program"); * Networking.ReceiverConnection = new UdpClient(Int32.Parse(Storage.Settings["port"])); * //} * }*/ //TO!DO: Nem kell az "isserver" beállítás, először kliensként próbáljon meg csatlakozni, majd szerverként fogadja az új klienseket // a pwnat segítségével //2015.03.15. - Nem kell az sem: IPv6 - A legtöbb eszköz már támogatja BeforeLogin.SetText(Language.Translate("beforelogin_loginform")); try { LoginDialog = new LoginForm(); BeforeLogin.Destroy(); LoginDialog.ShowDialog(); } catch (Exception e) { ErrorHandling.FormError(LoginDialog, e); } //Nézzük, sikerült-e if (CurrentUser.UserID == 0) { return; //2014.09.06. } contactList.Enabled = false; //2014.03.05. MainThread = Thread.CurrentThread; // Create the thread object, passing in the Alpha.Beta method // via a ThreadStart delegate. This does not start the thread. LThread = new Thread(new ThreadStart(new UpdateListAndChat().Run)); LThread.Name = "Update Partnerlist and Chat"; /*Thread keepupthread = new Thread(new ThreadStart(Networking.KeepUpThread)); * keepupthread.Name = "Keep Up Thread"; * * Thread keepupuserst = new Thread(new ThreadStart(Networking.KeepUpUsersThread)); //2014.09.26. * keepupuserst.Name = "Keep Up Users Thread";*/ Thread networkthread = new Thread(new ThreadStart(Networking.NetworkThread)); //2014.12.31. networkthread.Name = "Network Thread"; Storage.Load(true); //2014.08.07. if (Storage.Settings["windowstate"] == "1") //2014.04.18. - 2014.08.08. { this.WindowState = FormWindowState.Maximized; } else if (Storage.Settings["windowstate"] == "2") { this.WindowState = FormWindowState.Minimized; } else if (Storage.Settings["windowstate"] == "3") { this.WindowState = FormWindowState.Normal; } taskbarNotifier = new Notifier("popup-bg.bmp", Color.FromArgb(255, 0, 255), "close.bmp", 5000); taskbarNotifier.Click += PopupClick; taskbarNotifier.CloseClick += PopupCloseClick; toolStripMenuItem4.Enabled = true; //2014.04.12. toolStripMenuItem8.Enabled = true; //2014.04.12. // Start the thread LThread.Start(); //keepupthread.Start(); //keepupuserst.Start(); networkthread.Start(); //2014.08.19. - Küldje el a bejelentkezés hírét, hogy frissítéseket kapjon /*byte[] strb = Encoding.Unicode.GetBytes(CurrentUser.IP.ToString()); * byte[] tmpfinal = new byte[8 * UserInfo.KnownUsers.Count + strb.Length + 4 + 1]; //Hosszúság, IP, ismert felh. ID, frissítési idő * Array.Copy(BitConverter.GetBytes(strb.Length), tmpfinal, 4); * Array.Copy(strb, 0, tmpfinal, 4, strb.Length); * //if (tmpfinal.Length != 0) * for (int i = 0; i < UserInfo.KnownUsers.Count; i++) //Ha a count 0, nem fogja végrehajtani * { * byte[] tmptmp = BitConverter.GetBytes(UserInfo.KnownUsers[i].UserID); * Array.Copy(tmptmp, 0, tmpfinal, i * 4 + strb.Length + 4, 4); * tmptmp = BitConverter.GetBytes(UserInfo.KnownUsers[i].LastUpdate); * Array.Copy(tmptmp, 0, tmpfinal, i * 4 + strb.Length + 4, 4); * } * tmpfinal[tmpfinal.Length - 1] = (Storage.Settings["isserver"] == "1") ? (byte)0x01 : (byte)0x00; //Mivel bejelentkezéstől függetlenül menti el, gépfüggő, hogy itt mit küld el * Networking.ParseUpdateInfo(Networking.SendUpdate(Networking.UpdateType.LoginUser, tmpfinal, false));*/ while (!networkthread.IsAlive) { ; } SendLoginToUsers(); //2014.12.18. notifyIcon1.Visible = true; //2014.09.22. taskbarNotifier.Show("Teszt cím", "Teszt tartalom\nMásodik sor"); Language.ReloadEvent += delegate { textBox1.Text = Language.Translate("searchbar"); }; //2014.12.22. - Nyelvváltáskor törölni fogja a beírt szöveget }
private void registerButton_Click(object sender, EventArgs e) { registerButton.Enabled = false; if (codeText.TextLength == 0 || userText.TextLength == 0 || passText.TextLength == 0 || emailText.TextLength == 0) { MessageBox.Show(Language.Translate(Language.StringID.Reg_EmptyField), Language.Translate(Language.StringID.Error)); registerButton.Enabled = true; return; } string response = Networking.SendRequest(Networking.RequestType.Register, codeText.Text + "ͦ" + userText.Text + "ͦ" + LoginForm.CalculateMD5Hash(passText.Text) + "ͦ" + emailText.Text, 2, false); if (response == "code") { MessageBox.Show(Language.Translate(Language.StringID.Reg_CodeErr), Language.Translate(Language.StringID.Error)); registerButton.Enabled = true; } else if (response == "uname") { MessageBox.Show(Language.Translate(Language.StringID.Reg_NameErr), Language.Translate(Language.StringID.Error)); registerButton.Enabled = true; } else if (response == "ulen") { MessageBox.Show(Language.Translate(Language.StringID.Reg_NameLen), Language.Translate(Language.StringID.Error)); registerButton.Enabled = true; } else if (response == "plen") { MessageBox.Show(Language.Translate(Language.StringID.Reg_PassLen), Language.Translate(Language.StringID.Error)); registerButton.Enabled = true; } else if (response == "email") { MessageBox.Show(Language.Translate(Language.StringID.Reg_Email), Language.Translate(Language.StringID.Error)); registerButton.Enabled = true; } else if (response == "Success!") { MessageBox.Show(Language.Translate(Language.StringID.Reg_Success)); Close(); } else { new ErrorHandler(ErrorType.ServerError, new Exception(response)); //2015.06.04. registerButton.Enabled = true; } }
private void registerButton_Click(object sender, EventArgs e) { registerButton.Enabled = false; if (codeText.TextLength == 0 || userText.TextLength == 0 || passText.TextLength == 0 || emailText.TextLength == 0) { MessageBox.Show(Language.Translate("reg_emptyfield"), Language.Translate("error")); registerButton.Enabled = true; return; } string response = Networking.SendRequest("register", codeText.Text + "ͦ" + userText.Text + "ͦ" + LoginForm.CalculateMD5Hash(passText.Text) + "ͦ" + emailText.Text, 2, false); if (response == "code") { MessageBox.Show(Language.Translate("reg_codeerr"), Language.Translate("error")); registerButton.Enabled = true; } else if (response == "uname") { MessageBox.Show(Language.Translate("reg_nameerr"), Language.Translate("error")); registerButton.Enabled = true; } else if (response == "ulen") { MessageBox.Show(Language.Translate("reg_namelen"), Language.Translate("error")); registerButton.Enabled = true; } else if (response == "plen") { MessageBox.Show(Language.Translate("reg_passlen"), Language.Translate("error")); registerButton.Enabled = true; } else if (response == "email") { MessageBox.Show(Language.Translate("reg_email"), Language.Translate("error")); registerButton.Enabled = true; } else if (response == "Success!") { MessageBox.Show(Language.Translate("reg_success")); Close(); } else { MessageBox.Show(Language.Translate("unknown_error") + ":\n" + response); registerButton.Enabled = true; } }