public static void Proceed(filetype filetype, string filenameOrConnectionString, Item source, string[] categories = null) { switch (filetype) { case filetype.CSV: { CSV csvFile = new CSV(filenameOrConnectionString); csvFile.New(); csvFile.Save(source); } break; case filetype.XML: { XML xmlFile = new XML(filenameOrConnectionString); xmlFile.New(); xmlFile.Save(source); } break; case filetype.MySQL: { Database db = new Database(filenameOrConnectionString); db.FillTables(); foreach (Seznam item in source.GetItemsList()) { db.AddRecord(item.Nazev, item.Kategorie, item.Obsah); } db.Save(); } break; } }
private void buttonOK_Click(object sender, EventArgs e) { if (radioButtonDatabáze.Checked) { settings.Database = true; ip50p = new _50P.Software.IPLocal.getIP(); try { string[] hodnoty = poleFilename.Text.Split('@'); try { settings.server = hodnoty[1]; settings.dbname = hodnoty[0]; settings.Save(); } catch { MessageBox.Show("Nepodařilo se uložit nastavení!", "Chyba", MessageBoxButtons.OK, MessageBoxIcon.Error); } ip50p.HOST(hodnoty[1]); MySqlConnection připojení = new MySqlConnection(); conmysql = new ConnectMySQL(ip50p.IP, settings.username, SecurePass.GetUnprotectedPassword(settings.password)); conmysql.setDatabase(hodnoty[0]); připojení.ConnectionString = conmysql.Connection; připojení.Open(); připojení.Close(); } catch (Exception ex) { MessageBox.Show(Program.message + ex.Message, "Chyba", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult ans = MessageBox.Show("Přejete si nastavení resetovat? (doporučeno)", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (ans == DialogResult.Yes) { settings.Reset(); } } } else if (radioButtonSoubor.Checked) { settings.Database = false; } settings.Save(); FRS.FirstRun = false; if (checkBoxVytvořit1.Checked) { if (settings.přípona == ".csv") { csvFile = new CSV(settings.cestaKSouboru); csvFile.New(); poleFilename.Text = settings.cestaKSouboru; } else if (settings.přípona == ".xml") { xmlFile = new XML(settings.cestaKSouboru); xmlFile.New(); poleFilename.Text = settings.cestaKSouboru; } } }
private void Nastavení_Load(object sender, EventArgs e) { try { if (settings.Database) { radioButtonDatabáze.Checked = true; } else { radioButtonSoubor.Checked = true; } if (FRS.FirstRun == false) { bool exists = File.Exists(settings.cestaKSouboru); if (exists) { poleFilename.Text = settings.cestaKSouboru; } if (settings.Database) { poleFilename.Text = $"{settings.dbname}@{settings.server}"; try { ip50p = new _50P.Software.IPLocal.getIP(true, settings.server); conmysql = new ConnectMySQL(ip50p.IP, settings.username, SecurePass.GetUnprotectedPassword(settings.password)); MySqlConnection připojení = new MySqlConnection(); conmysql.setDatabase(settings.dbname); připojení.ConnectionString = conmysql.Connection; připojení.Open(); připojení.Close(); } catch (Exception ex) { MessageBox.Show(Program.message + ex.Message, "Chyba", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else if (exists == false && settings.cestaKSouboru != null) { DialogResult odpověď = MessageBox.Show("Požadovaný soubor neexistuje! Byl zřejmě smazán!" + Environment.NewLine + "Přejete si jej vytvořit?", "Chyba", MessageBoxButtons.YesNo, MessageBoxIcon.Error); if (odpověď == DialogResult.Yes) { if (settings.přípona == ".csv") { csvFile = new CSV(settings.cestaKSouboru); csvFile.New(); poleFilename.Text = settings.cestaKSouboru; } else if (settings.přípona == ".xml") { xmlFile = new XML(settings.cestaKSouboru); xmlFile.New(); poleFilename.Text = settings.cestaKSouboru; } } } } else { DialogResult ans = MessageBox.Show("Budete používat databázi?", "Vítejte", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question); if (ans == DialogResult.Yes) { settings.useDatabase = true; settings.Save(); MessageBox.Show("Ze všeho nejdříve nastavte přístup k databázi.", "Než začnete", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); UpřesněníNastavení oknoUN = new UpřesněníNastavení(); oknoUN.ShowDialog(); settings.Reload(); } else if (ans == DialogResult.No) { MessageBox.Show("Před připojením k databázi nastavte příslušné hodnoty (v upřesnění nastavení)...", "Upozornění", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else if (ans == DialogResult.Cancel) { Application.Exit(); } buttonDefault.Enabled = false; } } finally { buttonOK.DialogResult = DialogResult.OK; bool nonull = poleFilename.Text != ""; buttonOK.Enabled = nonull; buttonDefault.DialogResult = DialogResult.Retry; radioButtonDatabáze.Enabled = (settings.useDatabase) ? true : false; buttonBrowse.Enabled = false; } }
private void UpřesněníNastavení_FormClosing(object sender, FormClosingEventArgs e) { if (checkBoxRememberExportSettings.Checked) { if (radioButtonDatabáze.Checked) { exsett.Database = true; if (poleFilename.Text != "") { string[] hodnoty = poleFilename.Text.Split('@'); exsett.dbname = hodnoty[0]; exsett.server = hodnoty[1]; } exsett.username = (poleUsername.Text != "") ? poleUsername.Text : null; exsett.password = (polePassword.Text != "") ? SecurePass.GetProtectedPassword(polePassword.Text) : null; } else { exsett.cestaKSouboru = (poleFilename.Text != "") ? poleFilename.Text : null; } exsett.Save(); } if (checkBoxVytvořitPřiZavření.Checked) { if (radioButtonDatabáze.Checked) { long pocetPolozek = 0; MySqlConnection připojení = new MySqlConnection(); conmysql = new ConnectMySQL(poleServer.Text, poleUsername.Text, polePassword.Text); conmysql.setDatabase(poleNázevDatabáze.Text); MySqlCommand command = new MySqlCommand("select count(*) from item union select count(*) from category;"); připojení.ConnectionString = conmysql.Connection; command.Connection = připojení; try { připojení.Open(); pocetPolozek = (long)command.ExecuteScalar(); } catch (Exception ex) { MessageBox.Show(Program.message + ex.Message, "Chyba", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { připojení.Close(); } if (pocetPolozek > 0) { toolTip1.ToolTipIcon = ToolTipIcon.Warning; toolTip1.ToolTipTitle = "Pozor"; toolTip1.IsBalloon = true; toolTip1.ShowAlways = true; toolTip1.SetToolTip(poleFilename, "Databáze není prázdná!"); e.Cancel = true; } else { e.Cancel = false; } } else { CSV csvfile = new CSV(poleFilename.Text); try { csvfile.New(); } catch (Exception ex) { MessageBox.Show(Program.message + ex.Message, "Chyba", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } sett.username = (poleNázevDatabáze1.Text != "") ? poleUsername1.Text : null; sett.password = (polePassword1.Text != "") ? SecurePass.GetProtectedPassword(polePassword1.Text) : null; sett.dbname = (poleNázevDatabáze1.Text != "") ? poleNázevDatabáze1.Text : null; sett.server = (poleServer1.Text != "") ? poleServer1.Text : null; sett.useDatabase = (checkBoxPoužívatDatabázi.Checked) ? true : false; sett.Save(); }