using System;
using System.Data.SqlClient;
using System.Diagnostics;
using System.IO;
using System.Windows.Forms;

namespace Commission
{
    class DataBase
    {
        /// <summary>
        /// Подключение к БД
        /// </summary>
        /// <returns>Строка подключения</returns>
        /// 
        public static SqlConnection connection()
        {
            SqlConnection sqlConnection = new SqlConnection(@"Data Source = ngknn.ru;Initial Catalog=31P-Commission;Persist Security Info=True;User ID=31П; Password=12357");
            sqlConnection.Open();
            return sqlConnection;
        }
        /// <summary>
        /// Первое подключение к БД (удалось ли установить подключение)
        /// </summary>
        public static void firstRun()
        {
            string location = Environment.CurrentDirectory;
            location = location.Remove(location.Length - 29, 29);
            location = location.Insert(location.Length, "Diagnostic.txt");
            FileStream file = new FileStream(location, FileMode.Create);
            file.Close();
            try
            {
                SqlConnection sqlConnection = new SqlConnection(@"Data Source = ngknn.ru;Initial Catalog=31P-Commission;Persist Security Info=True;User ID=31П; Password=12357");
                sqlConnection.Open();
                MessageBox.Show("Подключение установлено!", "База данных", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch
            {
                MessageBox.Show("Не удалось установить подключение!\nОбратитесь к администратору", "База данных", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                Application.Exit();
            }
        }

        /// <summary>
        /// Вывод отладочной информации в файл
        /// </summary>
        /// <param name="s">Текст для записи в файл</param>

        public static void diagWrite(string s)
        {
            string location = Environment.CurrentDirectory;
            location = location.Remove(location.Length - 29, 29);
            location = location.Insert(location.Length, "Diagnostic.txt");
            TextWriterTraceListener tr = new TextWriterTraceListener(File.AppendText(location));
            Debug.Listeners.Add(tr);
            Debug.WriteLine(s);
            Debug.Flush();
            tr.Close();
        }
    }
}
