Пример #1
0
        //********************************************************************************************
        private async void CheckPin()
        {
            if (!CheckLick)
            {
                return;
            }

            //TODO: Move this into the Config
            using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
            {
                sql.ExecuteTX($"SELECT * FROM pins WHERE Local=1 AND path='{CurrentDirectory}' AND ServerID={form.server.ID}");
                if (sql.Read())
                {
                    form.LocalPin.Image = Resources.PinDown;
                    form.localPinTip.SetToolTip(form.LocalPin, "Unpin Folder");
                }
                else
                {
                    form.LocalPin.Image = Resources.PinUp;
                    form.localPinTip.SetToolTip(form.LocalPin, "Pin Folder for future use");
                }

                await form.CheckLink(CurrentDirectory, true);
            }
            CheckLick = false;
        }
Пример #2
0
 //**************************************************************************************************
 private void LoadValues()
 {
     values.Clear();
     using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
     {
         sql.ExecuteTX("SELECT SystemKey, SystemValue FROM System");
         while (sql.Read())
         {
             values.Add(sql.Value("SystemKey").ToString(), sql.Value("SystemValue").ToString());
         }
     }
 }
Пример #3
0
 //***********************************************************************************
 static public void MYSQL_FORMAT_QUERY()
 {
     using (XwDbCommand sql = new XwDbCommand("DBCONN_MYTEST"))
     {
         sql.AddParameter("@Name", "%A%");
         sql.ExecuteTX("SELECT * FROM Tester WHERE Name LIKE @Name");
         Console.WriteLine(sql.GetDebugCommand());
         while (sql.Read())
         {
             Console.WriteLine(sql.Value("Name").ToString());
         }
     }
 }
Пример #4
0
 //*************************************************************************************************************
 public int PinFolder()
 {
     using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
     {
         sql.ExecuteTX($"SELECT id FROM Pins WHERE ServerID={form.server.ID} AND Local=0 AND Path='{CurrentDirectory}'");
         if (sql.Read())
         {
             return(sql.Value(0).ToInt32());
         }
         else
         {
             sql.ExecuteTX($"INSERT INTO Pins (ServerID, Local, Path) VALUES ({form.server.ID}, 0, '{CurrentDirectory}')");
             sql.ExecuteTX($"SELECT MAX(id) FROM Pins");
             sql.Read();
             int id = sql.Value(0).ToInt32();
             LoadPins();
             form.RemotePin.Image = Resources.PinDown;
             form.remotePinTip.SetToolTip(form.RemotePin, "Unpin Folder");
             return(id);
         }
     }
 }
Пример #5
0
 //***********************************************************************************
 static public void MYSQL_SP_DATAREADER()
 {
     using (XwDbCommand sql = new XwDbCommand("DBCONN_MYTEST"))
     {
         sql.Mode = XwDbMode.DataReader;
         sql.AddParameter("$Name", "%C%");
         sql.ExecuteSP("TestSP");
         Console.WriteLine(sql.GetDebugCommand());
         while (sql.Read())
         {
             Console.WriteLine(sql.Value("Name").ToString());
         }
     }
 }
Пример #6
0
        //*************************************************************************************************************
        private void LoadPins()
        {
            ComboBox box = form.RemotePath;

            box.Items.Clear();

            using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
            {
                sql.ExecuteTX($"SELECT ID,path FROM Pins WHERE Local=0 AND ServerID={form.server.ID} ORDER BY Path");
                while (sql.Read())
                {
                    box.Items.Add(new ListItem(sql.Value("ID").ToInt32(), sql.Value("Path").ToString()));
                }
            }
        }
Пример #7
0
 //***********************************************************************************
 static public void MYSQL_MANY_CONNS()
 {
     for (int i = 0; i < 20; i++)
     {
         using (XwDbCommand sql = new XwDbCommand("DBCONN_MYTEST"))
         {
             sql.Mode = XwDbMode.DataReader;
             sql.AddParameter("$Name", "%C%");
             sql.ExecuteSP("TestSP");
             Console.WriteLine(sql.GetDebugCommand());
             while (sql.Read())
             {
             }
         }
     }
 }
Пример #8
0
 //**************************************************************************************************
 private void LoadGroups()
 {
     groups.Clear();
     using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
     {
         sql.ExecuteTX("SELECT id,name,expanded FROM groups ORDER BY name COLLATE NOCASE");
         while (sql.Read())
         {
             Group group = new Group();
             group.ID       = sql.Value("id").ToInt32();
             group.Name     = sql.Value("name").ToString();
             group.Expanded = sql.Value("expanded").ToBoolean();
             groups.Add(group);
         }
     }
 }
Пример #9
0
 //***********************************************************************************
 static public void MSSQL_SP_DATASET()
 {
     using (XwDbCommand sql = new XwDbCommand("DBCONN_MSTEST"))
     {
         sql.Mode = XwDbMode.DataSet;
         sql.AddParameter("@Name", "%C%");
         sql.ExecuteSP("TestSP");
         Console.WriteLine(sql.GetDebugCommand());
         if (sql.ReturnedData)
         {
             Console.WriteLine($"CNT: {sql.RowCount}");
             while (sql.Read())
             {
                 Console.WriteLine(sql.Value("Name").ToString());
             }
         }
     }
 }
Пример #10
0
        //*************************************************************************************************************
        public async Task CheckLink(string path, bool local)
        {
            if (SkipCheckLink)
            {
                SkipCheckLink = false;
                return;
            }

            //TODO: Move this into the Config
            using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
            {
                sql.AddParameter("Local", local);
                sql.ExecuteTX($@"SELECT l.[path] FROM pins p 
                    INNER JOIN pins l ON l.ID=p.LinkTo
                    WHERE p.Local=@Local AND p.path='{path}' AND p.ServerID={server.ID}");

                if (sql.Read())
                {
                    LinkPath.Tag   = true;
                    LinkPath.Image = Resources.link;
                    string link = sql.Value(0).ToString();
                    linkTip.SetToolTip(LinkPath, "Unlink folders");

                    if (local)
                    {
                        await RemoteList.LoadList(link);
                    }
                    else
                    {
                        LocalList.LoadList(link);
                    }
                }
                else
                {
                    LinkPath.Tag   = false;
                    LinkPath.Image = Resources.link_break;
                    linkTip.SetToolTip(LinkPath, "Link local and remote folders");
                }
            }
        }
Пример #11
0
        //*************************************************************************************************************
        private async void CheckPin()
        {
            using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
            {
                sql.ExecuteTX($"SELECT * FROM pins WHERE Local=0 AND path='{CurrentDirectory}' AND ServerID={form.server.ID}");
                if (sql.Read())
                {
                    form.RemotePin.Image = Resources.PinDown;
                    form.remotePinTip.SetToolTip(form.RemotePin, "Unpin Folder");

                    if (CheckLick)
                    {
                        await form.CheckLink(CurrentDirectory, false);
                    }
                }
                else
                {
                    form.RemotePin.Image = Resources.PinUp;
                    form.remotePinTip.SetToolTip(form.RemotePin, "Pin Folder for future use");
                }
            }

            CheckLick = false;
        }
Пример #12
0
        //**************************************************************************************************
        private void LoadServers()
        {
            Main.servers.Clear();
            using (XwDbCommand sql = new XwDbCommand(Config.GetConnectionString(), "Data.SQLite"))
            {
                sql.ExecuteTX($@"SELECT 
                    id
                    ,name
                    ,host
                    ,ServerType
                    ,Username
                    ,Password
                    ,port   
                    ,Sendkeys
                    ,sound
                    ,drives
                    ,favorite
                    ,groupid
                    ,color
                    ,X
                    ,Y
                    ,Console
                    ,AutoScale
                    ,SSH1
                    ,Passive
                    ,Themes
                    ,Certificates
                    ,UseHtmlLogin
                    ,HtmlUserBox
                    ,HtmlPassBox
                    ,HtmlLoginBtn
                    ,TabColor
                    ,Notes
                    ,SshTerminal
                    ,Encryption
                    ,SshKey
                    FROM Servers
                    ORDER BY name
                    COLLATE NOCASE");

                while (sql.Read())
                {
                    ServerType type   = (ServerType)sql.Value("ServerType").ToInt32();
                    var        server = Server.GetServerInstance(type);
                    server.ID            = sql.Value("id").ToInt32();
                    server.Type          = type;
                    server.Name          = sql.Value("name").ToString();
                    server.Host          = sql.Value("host").ToString();
                    server.Username      = sql.Value("username").ToString();
                    server.Password      = sql.Value("password").ToString();
                    server.Port          = sql.Value("port").ToInt32();
                    server.SendKeys      = sql.Value("sendkeys").ToBoolean();
                    server.UseSound      = sql.Value("sound").ToBoolean();
                    server.ConnectDrives = sql.Value("drives").ToBoolean();
                    server.IsFavorite    = sql.Value("favorite").ToBoolean();
                    server.GroupID       = sql.Value("GroupID").ToInt32();
                    server.Color         = sql.Value("Color").ToInt32();
                    server.Width         = sql.Value("X").ToInt32();
                    server.Height        = sql.Value("Y").ToInt32();
                    server.Console       = sql.Value("Console").ToBoolean();
                    server.AutoScale     = sql.Value("AutoScale").ToBoolean();
                    server.SSH1          = sql.Value("SSH1").ToBoolean();
                    server.Passive       = sql.Value("Passive").ToBoolean();
                    server.Themes        = sql.Value("Themes").ToBoolean();
                    server.Certificates  = sql.Value("Certificates").ToBoolean();
                    server.UseHtmlLogin  = sql.Value("UseHtmlLogin").ToBoolean();
                    server.HtmlUserBox   = sql.Value("HtmlUserBox").ToString();
                    server.HtmlPassBox   = sql.Value("HtmlPassBox").ToString();
                    server.HtmlLoginBtn  = sql.Value("HtmlLoginBtn").ToString();
                    server.TabColor      = sql.Value("TabColor").ToInt32();
                    server.Notes         = sql.Value("Notes").ToString();
                    server.SshTerminal   = sql.Value("SshTerminal").ToInt32();
                    server.Encryption    = sql.Value("Encryption").ToBoolean();
                    server.SshKey        = sql.Value("SshKey").ToString();
                    Main.servers.Add(server);
                }
            }
        }