Example #1
0
        public override HostLimit GetDomainLimits(string domainName)
        {
            var _tmp_limits = new List <LimitRow>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();
                using (SqlCommand _cmd = new SqlCommand(@"SELECT L.limit_name, L.value FROM domains D LEFT JOIN limits L ON L.id = D.limits_id WHERE D.name = @NAME", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new LimitRow();
                            _d.Name = DataExtensions.GetColumnValue <string>(_read, "limit_name");

                            var LimitValue = 0L;

                            if (_read["value"] is System.Int64)
                            {
                                LimitValue = DataExtensions.GetColumnValue <Int64>(_read, "value");
                            }
                            else
                            {
                                LimitValue = Convert.ToInt64(DataExtensions.GetColumnValue <string>(_read, "value"));
                            }

                            if (_d.Name == "disk_space" ||
                                _d.Name == "max_traffic" ||
                                _d.Name == "mbox_quota" ||
                                _d.Name == "mssql_dbase_space" ||
                                _d.Name == "mysql_dbase_space" ||
                                _d.Name == "total_mboxes_quota")
                            {
                                _d.Value = (int)((LimitValue / 1024) / 1024);
                            }
                            else
                            {
                                _d.Value = Convert.ToInt32(LimitValue);
                            }

                            _tmp_limits.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(new HostLimit(_tmp_limits));
        }
Example #2
0
        public override List <DnsZoneRecord> GetZoneRecords(string domainName)
        {
            var _tmp = new List <DnsZoneRecord>();

            using (OleDbConnection _conn = new OleDbConnection(connectionString))
            {
                _conn.Open();
                using (OleDbCommand _cmd = new OleDbCommand(@"SELECT dns_recs.id, dns_recs.dns_zone_id, dns_recs.type, dns_recs.host, dns_recs.displayHost, dns_recs.val, dns_recs.displayVal, dns_recs.opt, 
                                                                        dns_recs.time_stamp
                                                                    FROM (dns_zone LEFT OUTER JOIN  dns_recs ON dns_recs.dns_zone_id = dns_zone.id)
                                                                    WHERE (dns_zone.name = ?) AND (dns_recs.type <> 'PTR')", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (OleDbDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new DnsZoneRecord();

                            var hostName = DataExtensions.GetColumnValue <string>(_read, "host");

                            if (hostName == domainName || hostName == String.Format("{0}.", domainName))
                            {
                                _d.name = "@";
                            }
                            else
                            {
                                _d.name = hostName.Split('.').FirstOrDefault().ToLower();
                            }

                            _d.type  = DataExtensions.GetColumnValue <string>(_read, "type");
                            _d.value = DataExtensions.GetColumnValue <string>(_read, "val").ToLower();

                            var options = DataExtensions.GetColumnValue <string>(_read, "opt");
                            if (!String.IsNullOrEmpty(options))
                            {
                                _d.priority = Convert.ToInt32(options);
                            }
                            else
                            {
                                _d.priority = 0;
                            }
                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #3
0
        public override List <DnsZoneRecord> GetZoneRecords(string domainName)
        {
            var _tmp = new List <DnsZoneRecord>();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT dns_recs.* FROM dns_zone 
                                                                        LEFT JOIN dns_recs ON dns_recs.dns_zone_id = dns_zone.id 
                                                                            WHERE dns_zone.name = @NAME AND dns_recs.type <> 'PTR'", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new DnsZoneRecord();

                            var hostName = DataExtensions.GetColumnValue <string>(_read, "host");

                            if (hostName == domainName || hostName == String.Format("{0}.", domainName))
                            {
                                _d.name = "@";
                            }
                            else
                            {
                                _d.name = hostName.Split('.').FirstOrDefault().ToLower();
                            }

                            _d.type     = DataExtensions.GetColumnValue <string>(_read, "type");
                            _d.value    = DataExtensions.GetColumnValue <string>(_read, "val").ToLower();
                            _d.priority = 0;

                            var options     = DataExtensions.GetColumnValue <string>(_read, "opt");
                            var options_int = 0;

                            if (int.TryParse(options, out options_int))
                            {
                                _d.priority = options_int;
                            }

                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #4
0
        public override List <Email> GetEmails(string domainName)
        {
            var securePassword = SecurePasswords();

            var _tmp = new List <Email>();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT     
	                                                        mail.mail_name, domains.name, 
	                                                        accounts.password, domains.status, 
	                                                        mail.redirect, mail.redir_addr, mail.mbox_quota
                                                        FROM domains 
	                                                        LEFT OUTER JOIN mail ON mail.dom_id = domains.id 
	                                                        LEFT OUTER JOIN accounts ON accounts.id = mail.account_id
                                                        WHERE     
                                                        (mail.mail_name <> '') AND (domains.name = @NAME)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new Email();
                            _d.Name            = DataExtensions.GetColumnValue <String>(_read, "mail_name").ToLower();
                            _d.DomainName      = DataExtensions.GetColumnValue <String>(_read, "name").ToLower();
                            _d.Password        = securePassword ? DataHelper.GetPassword() : DataExtensions.GetColumnValue <String>(_read, "password");
                            _d.Redirect        = DataExtensions.GetColumnValue <String>(_read, "redirect");
                            _d.RedirectedEmail = DataExtensions.GetColumnValue <String>(_read, "redir_addr");

                            var mboxQuota = Convert.ToDouble(DataExtensions.GetColumnValue <Int64>(_read, "mbox_quota"));
                            if (mboxQuota > 0)
                            {
                                _d.Quota = Math.Round(((mboxQuota / 1024) / 1024), 0);
                            }
                            else
                            {
                                _d.Quota = -1;
                            }

                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #5
0
        public override List <Reseller> GetResellers()
        {
            var _tmp = new List <Reseller>();

            using (SQLiteConnection _conn = new SQLiteConnection(connectionString))
            {
                _conn.Open();

                using (SQLiteCommand _cmd = new SQLiteCommand(@"SELECT LoginAccount.LoginId, LoginAccount.UserName, LoginAccount.Password, LoginAccount.UserType, 
                                                            LoginAccount.ProfileId, LoginAccount.ExpirationDate, LoginAccount.ApiKey, LoginAccount.Status, 
                                                            LoginAccount.ApiAccess, Profile.FirstName, Profile.LastName, Profile.Email, Profile.Country, 
                                                            Profile.Organization, Profile.Address1, 
                                                                        Profile.Address2, Profile.City, 
                                                                        Profile.Province, Profile.PostalCode,
                                                                                       Profile.Phone, Profile.Fax
                                                                FROM         LoginAccount LEFT OUTER JOIN
                                                                                      Profile ON LoginAccount.ProfileId = Profile.ProfileId
                                                                WHERE     (LoginAccount.UserType = 1)", _conn))
                {
                    using (SQLiteDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var da = new Reseller();
                            da.Id           = Convert.ToInt32(DataExtensions.GetColumnValue <Int64>(_read, "LoginId"));
                            da.Username     = DataExtensions.GetColumnValue <String>(_read, "UserName");
                            da.Password     = DataExtensions.GetColumnValue <String>(_read, "Password");
                            da.Address1     = DataExtensions.GetColumnValue <String>(_read, "Address1");
                            da.Address2     = DataExtensions.GetColumnValue <String>(_read, "Address2");
                            da.City         = DataExtensions.GetColumnValue <String>(_read, "City");
                            da.Country      = DataExtensions.GetColumnValue <String>(_read, "Country");
                            da.Email        = DataExtensions.GetColumnValue <String>(_read, "Email");
                            da.fax          = DataExtensions.GetColumnValue <String>(_read, "Fax");
                            da.FirstName    = DataExtensions.GetColumnValue <String>(_read, "FirstName");
                            da.LastName     = DataExtensions.GetColumnValue <String>(_read, "LastName");
                            da.Organization = DataExtensions.GetColumnValue <String>(_read, "Organization");
                            da.Phone        = DataExtensions.GetColumnValue <String>(_read, "Phone");
                            da.PostalCode   = DataExtensions.GetColumnValue <String>(_read, "PostalCode");
                            da.Province     = DataExtensions.GetColumnValue <String>(_read, "Province");
                            da.Limits       = ResellerLimits(da.Username);

                            _tmp.Add(da);
                        }
                    }
                }

                _conn.Close();
            }

            return(_tmp);
        }
Example #6
0
        public override List <Domain> GetDomains()
        {
            var _tmp = new List <Domain>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();

                using (SqlCommand _cmd = new SqlCommand(@"SELECT HostDomain.DomainName, Account.AccountNumber, HostDomain.DomainId, HostDomain.DomainStatus, HostDomain.SubDomainId, HostDomain.DomainAliasId
                                                            FROM Account INNER JOIN
                                                                                  Package ON Account.AccountNumber = Package.AccountNumber RIGHT OUTER JOIN
                                                                                  HostDomain ON Package.PackageId = HostDomain.PackageId
                                                            WHERE (HostDomain.SubDomainId = 0) AND (HostDomain.DomainAliasId = 0)", _conn))
                {
                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new Domain();
                            _d.Id             = DataExtensions.GetColumnValue <int>(_read, "DomainId");
                            _d.Name           = DataExtensions.GetColumnValue <String>(_read, "DomainName").ToLower();
                            _d.ClientName     = DataExtensions.GetColumnValue <String>(_read, "AccountNumber");
                            _d.DomainPassword = DataHelper.GetPassword();

                            var currentFtpUser = GetFirstFtpAccount(_d.Id);
                            _d.Username = String.IsNullOrEmpty(currentFtpUser) ? _d.Name : currentFtpUser;
                            _d.Password = _d.DomainPassword;

                            _d.Status     = DataExtensions.GetColumnValue <int>(_read, "DomainStatus");
                            _d.Expiration = DateTime.Now.AddYears(1);

                            _d.isForwarding = false;

                            _d.Aliases    = GetDomainAliases(_d.Name);
                            _d.Databases  = GetDatabases(_d.Name);
                            _d.Limits     = GetDomainLimits(_d.Name);
                            _d.Subdomains = GetSubdomains(_d.Name);
                            _d.Zone       = GetDnsZone(_d.Name);
                            _d.Emails     = GetEmails(_d.Name);

                            _tmp.Add(_d);
                        }
                    }
                }

                _conn.Close();
            }

            return(_tmp);
        }
Example #7
0
        public override List <MpMigrate.Data.Entity.Domain> GetDomains()
        {
            var tmp = new List <MpMigrate.Data.Entity.Domain>();

            using (OdbcConnection _conn = new OdbcConnection(connectionString))
            {
                _conn.Open();
                using (OdbcCommand _cmd = new OdbcCommand(@"SELECT Host_ID, Reseller_Username, Domain_Name, [Password], AcountDisabled, Limit_WebSpace, 
                                                                Limit_Traffic, Limit_Stats, Limit_MailAccounts, Limit_MySQL, Limit_DomainAlias, Active_Date, Limit_SubDomain
                                                FROM Host_Accounts", _conn))
                {
                    using (OdbcDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new MpMigrate.Data.Entity.Domain();
                            _d.Id             = DataExtensions.GetColumnValue <int>(_read, "Host_ID");
                            _d.Name           = DataExtensions.GetColumnValue <String>(_read, "Domain_Name").ToLower();
                            _d.ClientName     = DataExtensions.GetColumnValue <String>(_read, "Reseller_Username");
                            _d.DomainPassword = DataExtensions.GetColumnValue <String>(_read, "Password");

                            _d.Username = DataExtensions.GetColumnValue <String>(_read, "Domain_Name");
                            _d.Password = DataExtensions.GetColumnValue <String>(_read, "Password");

                            if (String.IsNullOrEmpty(_d.Password))
                            {
                                _d.Password = DataHelper.GetPassword();
                            }

                            _d.Status       = 1;
                            _d.Expiration   = DateTime.Now.AddYears(1); //Expiration Date Entrenix'de tutulmuyor.
                            _d.isForwarding = false;

                            _d.Aliases    = GetDomainAliases(_d.Name);
                            _d.Databases  = GetDatabases(_d.Name);
                            _d.Limits     = GetDomainLimits(_d.Name);
                            _d.Subdomains = GetSubdomains(_d.Name);
                            _d.Zone       = GetDnsZone(_d.Name);
                            _d.Emails     = GetEmails(_d.Name);

                            tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(tmp);
        }
Example #8
0
        public override List <Email> GetEmails(string domainName)
        {
            var _tmp = new List <Email>();

            using (OleDbConnection _conn = new OleDbConnection(connectionString))
            {
                _conn.Open();
                using (OleDbCommand _cmd = new OleDbCommand(@"SELECT
                                                                    mail.mail_name, domains.name, accounts.[password], 
                                                                    domains.status, mail.redirect, mail.redir_addr, mail.mbox_quota
                                                            FROM            ((domains LEFT OUTER JOIN
                                                                                        mail ON mail.dom_id = domains.id) LEFT OUTER JOIN
                                                                                        accounts ON accounts.id = mail.account_id)
                                                            WHERE (domains.name = ?) AND (mail.mail_name <> '')", _conn))
                {
                    _cmd.CommandType = CommandType.Text;
                    _cmd.Parameters.AddWithValue("NAME", domainName);

                    using (OleDbDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new Email();
                            _d.Name            = DataExtensions.GetColumnValue <String>(_read, "mail_name").ToLower();
                            _d.DomainName      = DataExtensions.GetColumnValue <String>(_read, "name").ToLower();
                            _d.Password        = DataExtensions.GetColumnValue <String>(_read, "password");
                            _d.Redirect        = DataExtensions.GetColumnValue <String>(_read, "redirect");
                            _d.RedirectedEmail = DataExtensions.GetColumnValue <String>(_read, "redir_addr");

                            var mboxQuota = DataExtensions.GetColumnValue <decimal>(_read, "mbox_quota");

                            if (mboxQuota > 0)
                            {
                                _d.Quota = Convert.ToDouble(Math.Round(((mboxQuota / 1024) / 1024), 0));
                            }
                            else
                            {
                                _d.Quota = -1;
                            }

                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #9
0
        public override HostLimit GetDomainLimits(string domainName)
        {
            var _tmp_limits = new List <LimitRow>();

            using (OleDbConnection _conn = new OleDbConnection(connectionString))
            {
                _conn.Open();
                using (OleDbCommand _cmd = new OleDbCommand(@"SELECT L.limit_name, L.[value] 
                                                                    FROM (domains D LEFT OUTER JOIN limits L ON L.id = D.limits_id) 
                                                            WHERE (D.name = ?) AND (L.limit_name <> NULL)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (OleDbDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new LimitRow();
                            _d.Name = DataExtensions.GetColumnValue <string>(_read, "limit_name");

                            var LimitValue = DataExtensions.GetColumnValue <decimal>(_read, "value");

                            if (_d.Name == "disk_space" || _d.Name == "max_traffic" || _d.Name == "mbox_quota" ||
                                _d.Name == "mssql_dbase_space" || _d.Name == "mysql_dbase_space" ||
                                _d.Name == "total_mboxes_quota")
                            {
                                _d.Value = (int)((LimitValue / 1024) / 1024);
                            }
                            else
                            {
                                if (LimitValue <= int.MaxValue)
                                {
                                    _d.Value = Convert.ToInt32(LimitValue);
                                }
                                else
                                {
                                    throw new Exception(String.Format("Value too large or too small for an Int32 {0}: {1}", _d.Name, LimitValue));
                                }
                            }

                            _tmp_limits.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(new HostLimit(_tmp_limits));
        }
Example #10
0
        public override HostLimit GetDomainLimits(string domainName)
        {
            var _tmp_limits = new List <LimitRow>();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT L.limit_name, L.value FROM domains D LEFT JOIN Limits L ON L.id = D.limits_id WHERE D.name = @NAME", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new LimitRow();
                            _d.Name = DataExtensions.GetColumnValue <string>(_read, "limit_name");

                            var arrayValue = DataExtensions.GetColumnValue <Byte[]>(_read, "value");
                            var LimitValue = arrayValue != null?Convert.ToInt64(Encoding.ASCII.GetString(arrayValue)) : -1;

                            if (_d.Name == "disk_space" || _d.Name == "max_traffic" || _d.Name == "mbox_quota" ||
                                _d.Name == "mssql_dbase_space" || _d.Name == "mysql_dbase_space" ||
                                _d.Name == "max_traffic_soft" || _d.Name == "disk_space_soft")
                            {
                                _d.Value = (int)((LimitValue / 1024) / 1024);
                            }
                            else if (_d.Name == "expiration")
                            {
                            }
                            else
                            {
                                if (LimitValue > int.MaxValue)
                                {
                                    throw new InvalidCastException(_d.Name + ": " + LimitValue.ToString());
                                }

                                _d.Value = Convert.ToInt32(LimitValue);
                            }

                            _tmp_limits.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(new HostLimit(_tmp_limits));
        }
Example #11
0
        public override HostLimit ResellerLimits(string clientName)
        {
            var _tmp_limits = new List <LimitRow>();

            using (OleDbConnection _conn = new OleDbConnection(connectionString))
            {
                _conn.Open();
                using (OleDbCommand _cmd = new OleDbCommand(@"SELECT L.limit_name, L.[value] 
                                            FROM (clients C LEFT OUTER JOIN limits L ON L.id = C.limits_id) WHERE (C.login = ?)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", clientName);

                    using (OleDbDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new LimitRow();
                            _d.Name = DataExtensions.GetColumnValue <string>(_read, "limit_name");

                            var LimitValue = Convert.ToInt64(DataExtensions.GetColumnValue <decimal>(_read, "value"));

                            if (_d.Name == "disk_space" || _d.Name == "max_traffic" ||
                                _d.Name == "mbox_quota" || _d.Name == "total_mboxes_quota")
                            {
                                _d.Value = (int)((LimitValue / 1024) / 1024);
                            }
                            else
                            {
                                if (LimitValue <= int.MaxValue)
                                {
                                    _d.Value = Convert.ToInt32(LimitValue);
                                }
                                else
                                {
                                    _d.Value = (int)((LimitValue / 1024) / 1024);
                                }
                            }

                            _tmp_limits.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(new HostLimit(_tmp_limits));
        }
Example #12
0
        public override DnsZone GetDnsZone(string domainName)
        {
            var _tmp = new DnsZone();

            _tmp.Name = domainName;

            using (SQLiteConnection _conn = new SQLiteConnection(connectionString))
            {
                _conn.Open();

                using (SQLiteCommand _cmd = new SQLiteCommand(@"SELECT  Domain.Name, DomainZone.Id, DomainZone.ZoneType, 
			                                                DomainZone.AllowZoneTransfers, 
				                                                DomainZone.SecondaryServers, DomainZone.SerialNumber, 
				                                                DomainZone.PrimaryServer, DomainZone.ResponsiblePerson, 
				                                                DomainZone.RefreshInterval, DomainZone.RetryInterval, 
				                                                DomainZone.Expires, DomainZone.TTL
                                                FROM DomainZone 
	                                                INNER JOIN Domain ON DomainZone.DomainId = Domain.DomainId WHERE (Domain.Name = @NAME)"    , _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (SQLiteDataReader _read = _cmd.ExecuteReader(System.Data.CommandBehavior.SingleRow))
                    {
                        if (_read.Read())
                        {
                            _tmp.Name    = DataExtensions.GetColumnValue <string>(_read, "Name").ToLower();
                            _tmp.mininum = -1;
                            _tmp.refresh = Convert.ToInt32(DataExtensions.GetColumnValue <Int64>(_read, "RefreshInterval"));
                            _tmp.retry   = Convert.ToInt32(DataExtensions.GetColumnValue <Int64>(_read, "RetryInterval"));
                            _tmp.expire  = Convert.ToInt32(DataExtensions.GetColumnValue <Int64>(_read, "Expires"));

                            var serial = DataExtensions.GetColumnValue <string>(_read, "SerialNumber");
                            _tmp.serial = Convert.ToInt32(serial);

                            _tmp.ttl   = Convert.ToInt32(DataExtensions.GetColumnValue <Int64>(_read, "TTL"));
                            _tmp.Email = DataExtensions.GetColumnValue <string>(_read, "ResponsiblePerson");
                        }
                    }
                }

                _conn.Close();
            }

            _tmp.Records = GetZoneRecords(domainName);

            return(_tmp);
        }
        public override List <Email> GetEmails(string domainName)
        {
            var _tmp = new List <Email>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();

                using (SqlCommand _cmd = new SqlCommand(@"SELECT DomainPostofficeUser.Username, DomainPostofficeUser.Password, 
                                                                    DomainPostofficeUser.AutoResponderSubject, 
                                                                        DomainPostofficeUser.AutoResponderMessage, 
                                                                            DomainPostofficeUser.Quota, 
                                                                          DomainPostofficeUser.Status, 
                                                                        DomainPostofficeUser.RedirectionStatus, 
                                                                        DomainPostofficeUser.RedirectionCopyStatus, 
                                                                            DomainPostofficeUser.AutoResponderStatus, 
                                                                          DomainPostofficeUser.UsageValue, Domain.Name AS DomainName
                                                                FROM Domain INNER JOIN
                                                                          DomainPostoffice ON Domain.DomainId = DomainPostoffice.DomainId INNER JOIN
                                                                          DomainPostofficeUser ON DomainPostoffice.Id = DomainPostofficeUser.PostOfficeId
                                                                WHERE (Domain.Name = @NAME)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var da = new Email();
                            da.DomainName      = domainName;
                            da.Name            = DataExtensions.GetColumnValue <string>(_read, "Username");
                            da.Password        = DataExtensions.GetColumnValue <string>(_read, "Password");
                            da.Quota           = DataExtensions.GetColumnValue <long>(_read, "Quota");
                            da.Redirect        = String.Empty;
                            da.RedirectedEmail = String.Empty;

                            _tmp.Add(da);
                        }
                    }
                }

                _conn.Close();
            }

            return(_tmp);
        }
Example #14
0
        public override DnsZone GetDnsZone(string domainName)
        {
            var _tmp = new DnsZone();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT dns_zone.* FROM dns_zone 
                                                                        LEFT JOIN domains ON dns_zone.name = domains.name 
                                                                            WHERE domains.name = @NAME", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            _tmp.Name    = DataExtensions.GetColumnValue <string>(_read, "name").ToLower();
                            _tmp.mininum = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "minimum"));
                            _tmp.refresh = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "refresh"));
                            _tmp.retry   = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "retry"));
                            _tmp.expire  = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "expire"));

                            var serial_number = 0;

                            var serial = DataExtensions.GetColumnValue <string>(_read, "serial");
                            _tmp.serial = 0;

                            if (int.TryParse(serial, out serial_number))
                            {
                                _tmp.serial = serial_number;
                            }

                            _tmp.ttl   = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "ttl"));
                            _tmp.Email = DataExtensions.GetColumnValue <string>(_read, "email");
                        }
                    }
                }
                _conn.Close();
            }

            _tmp.Records = GetZoneRecords(domainName);

            return(_tmp);
        }
Example #15
0
        public override List <Reseller> GetResellers()
        {
            var _tmp = new List <Reseller>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();

                using (SqlCommand _cmd = new SqlCommand(@"SELECT AccountNumber, AccountStatus, FirstName, LastName, CompanyName, 
                                                            AccountPassword, PrimaryEmail, SecondaryEmail, Address1, Address2,
                                                            Town, County, CountryCode, PostCode, Address3, 
                                                            AccountType, HomePhone, WorkPhone, MobilePhone, FaxNumber 
                                                        FROM Account WHERE (AccountType <> 0)", _conn))
                {
                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var da = new Reseller();
                            da.Id           = 0;
                            da.Username     = DataExtensions.GetColumnValue <String>(_read, "AccountNumber");
                            da.Password     = DataHelper.GetPassword();
                            da.Address1     = DataExtensions.GetColumnValue <String>(_read, "Address1");
                            da.Address2     = DataExtensions.GetColumnValue <String>(_read, "Address2");
                            da.City         = DataExtensions.GetColumnValue <String>(_read, "Town");
                            da.Country      = DataExtensions.GetColumnValue <String>(_read, "CountryCode");
                            da.Email        = DataExtensions.GetColumnValue <String>(_read, "PrimaryEmail");
                            da.fax          = DataExtensions.GetColumnValue <String>(_read, "FaxNumber");
                            da.FirstName    = DataExtensions.GetColumnValue <String>(_read, "FirstName");
                            da.LastName     = DataExtensions.GetColumnValue <String>(_read, "LastName");
                            da.Organization = DataExtensions.GetColumnValue <String>(_read, "CompanyName");
                            da.Phone        = DataExtensions.GetColumnValue <String>(_read, "HomePhone");
                            da.PostalCode   = DataExtensions.GetColumnValue <String>(_read, "PostCode");
                            da.Limits       = ResellerLimits(da.Username);

                            _tmp.Add(da);
                        }
                    }
                }

                _conn.Close();
            }

            return(_tmp);
        }
Example #16
0
        public override List <Reseller> GetResellers()
        {
            var tmp            = new List <Reseller>();
            var securePassword = SecurePasswords();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT  C.id, cname, pname, login, A.password, phone, fax, email, address, city, state, pcode, country
                                                                        FROM clients C 
                                                                    LEFT JOIN accounts A ON C.account_id = A.id 
                                                                            WHERE C.`type`='reseller' OR C.`type`='client'", _conn))
                {
                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var res = new Reseller();
                            res.Id         = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "id"));
                            res.Address1   = DataExtensions.GetColumnValue <string>(_read, "address");
                            res.City       = DataExtensions.GetColumnValue <string>(_read, "city");
                            res.Country    = DataExtensions.GetColumnValue <string>(_read, "country");
                            res.fax        = DataExtensions.GetColumnValue <string>(_read, "fax");
                            res.Phone      = DataExtensions.GetColumnValue <string>(_read, "phone");
                            res.PostalCode = DataExtensions.GetColumnValue <string>(_read, "pcode");
                            res.Province   = DataExtensions.GetColumnValue <string>(_read, "country");

                            res.FirstName = DataExtensions.GetColumnValue <string>(_read, "pname");

                            res.Password     = securePassword ? DataHelper.GetPassword() : DataExtensions.GetColumnValue <string>(_read, "password");
                            res.Username     = DataExtensions.GetColumnValue <string>(_read, "login");
                            res.Email        = DataExtensions.GetColumnValue <string>(_read, "email");
                            res.Organization = DataExtensions.GetColumnValue <string>(_read, "cname");

                            res.Limits = ResellerLimits(res.Username);

                            tmp.Add(res);
                        }
                    }
                }
                _conn.Close();
            }

            return(tmp);
        }
Example #17
0
        public override HostLimit GetDomainLimits(string domainName)
        {
            var _tmp = new HostLimit();

            using (OdbcConnection _conn = new OdbcConnection(connectionString))
            {
                _conn.Open();
                using (OdbcCommand _cmd = new OdbcCommand(@"SELECT Limit_WebSpace, Limit_Traffic, Limit_Stats, Limit_FrontPage, Limit_MailAccounts, 
                                                                                    Limit_ODBCDSN, Limit_MySQL, Limit_DomainAlias, Limit_SubDomain, 
                                                                            Domain_Name FROM Host_Accounts WHERE (Domain_Name = ?)", _conn))
                {
                    _cmd.CommandType = CommandType.Text;
                    _cmd.Parameters.AddWithValue("NAME", domainName);

                    using (OdbcDataReader _read = _cmd.ExecuteReader(CommandBehavior.SingleRow))
                    {
                        if (_read.Read())
                        {
                            _tmp.DiskSpace      = DataExtensions.GetColumnValue <int>(_read, "Limit_WebSpace");
                            _tmp.MaxDomainAlias = DataExtensions.GetColumnValue <int>(_read, "Limit_DomainAlias");
                            _tmp.MaxFtpTraffic  = -1;
                            _tmp.MaxFtpUser     = 1;
                            _tmp.MaxMailBox     = DataExtensions.GetColumnValue <int>(_read, "Limit_MailAccounts");
                            _tmp.MaxMailTraffic = -1;

                            _tmp.MaxMsSqlDb      = 0;
                            _tmp.MaxMsSqlDbSpace = 0;
                            _tmp.MaxMsSqlDbUser  = 0;

                            _tmp.MaxMySqlDb      = DataExtensions.GetColumnValue <int>(_read, "Limit_MySQL");
                            _tmp.MaxMySqlDbSpace = -1;
                            _tmp.MaxMySqlUser    = DataExtensions.GetColumnValue <int>(_read, "Limit_MySQL");

                            _tmp.MaxSubDomain      = DataExtensions.GetColumnValue <int>(_read, "Limit_SubDomain");
                            _tmp.MaxWebTraffic     = -1;
                            _tmp.TotalMailBoxQuota = -1;
                            _tmp.Expiration        = DateTime.Now.AddYears(1);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #18
0
        private T StatsItem <T>(string sqltxt)
        {
            var result = default(T);

            using (OleDbConnection _conn = new OleDbConnection(connectionString))
            {
                _conn.Open();

                using (OleDbCommand _cmd = new OleDbCommand(sqltxt, _conn))
                {
                    result = DataExtensions.GetColumnValue <T>(_cmd.ExecuteScalar(), sqltxt);
                }

                _conn.Close();
            }

            return(result);
        }
Example #19
0
        public override List <Reseller> GetResellers()
        {
            var tmp = new List <Reseller>();

            using (OleDbConnection _conn = new OleDbConnection(connectionString))
            {
                _conn.Open();
                using (OleDbCommand _cmd = new OleDbCommand(@"SELECT id, cr_date, cname, pname, login, passwd, status, phone, fax, email, address, city, state, pcode, country, 
                                                                    locale, limits_id, params_id, perm_id, pool_id, logo_id, tmpl_id, 
                                                                                sapp_pool_id, uid, ownership, [guid] FROM clients", _conn))
                {
                    using (OleDbDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var res = new Reseller();
                            res.Id         = Convert.ToInt32(DataExtensions.GetColumnValue <int>(_read, "id"));
                            res.Address1   = DataExtensions.GetColumnValue <string>(_read, "address");
                            res.City       = DataExtensions.GetColumnValue <string>(_read, "city");
                            res.Country    = DataExtensions.GetColumnValue <string>(_read, "country");
                            res.fax        = DataExtensions.GetColumnValue <string>(_read, "fax");
                            res.Phone      = DataExtensions.GetColumnValue <string>(_read, "phone");
                            res.PostalCode = DataExtensions.GetColumnValue <string>(_read, "pcode");
                            res.Province   = DataExtensions.GetColumnValue <string>(_read, "country");

                            res.FirstName    = DataExtensions.GetColumnValue <string>(_read, "pname");
                            res.Password     = DataExtensions.GetColumnValue <string>(_read, "passwd");
                            res.Username     = DataExtensions.GetColumnValue <string>(_read, "login");
                            res.Email        = DataExtensions.GetColumnValue <string>(_read, "email");
                            res.Organization = DataExtensions.GetColumnValue <string>(_read, "cname");

                            res.Limits = ResellerLimits(res.Username);

                            tmp.Add(res);
                        }
                    }
                }
                _conn.Close();
            }

            return(tmp);
        }
Example #20
0
        public override List <Database> GetDatabases(string domainName)
        {
            var _tmp = new List <Database>();

            using (OdbcConnection _conn = new OdbcConnection(connectionString))
            {
                _conn.Open();
                using (OdbcCommand _cmd = new OdbcCommand(@"SELECT DatabaseName, Username, [Password], Host_ID, DomainName 
                                                                    FROM MySQL_Details WHERE (DomainName = ?)", _conn))
                {
                    _cmd.CommandType = CommandType.Text;
                    _cmd.Parameters.AddWithValue("NAME", domainName);

                    using (OdbcDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new Database();
                            _d.Id     = DataExtensions.GetColumnValue <int>(_read, "Host_ID");
                            _d.Name   = DataExtensions.GetColumnValue <String>(_read, "DatabaseName");
                            _d.Domain = DataExtensions.GetColumnValue <String>(_read, "DomainName");
                            _d.DbType = "mysql";

                            //Her DB'ye tek user.
                            var userList = new List <DatabaseUser>();
                            userList.Add(new DatabaseUser()
                            {
                                Username = DataExtensions.GetColumnValue <String>(_read, "Username"),
                                Password = DataExtensions.GetColumnValue <String>(_read, "Password")
                            });

                            _d.Users = userList;

                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #21
0
        public override DnsZone GetDnsZone(string domainName)
        {
            var _tmp = new DnsZone();

            using (OleDbConnection _conn = new OleDbConnection(connectionString))
            {
                _conn.Open();
                using (OleDbCommand _cmd = new OleDbCommand(@"SELECT dns_zone.id, dns_zone.name, dns_zone.displayName, dns_zone.email, dns_zone.status, dns_zone.type, dns_zone.ttl, dns_zone.ttl_unit, dns_zone.refresh, 
                         dns_zone.refresh_unit, dns_zone.retry, dns_zone.retry_unit, dns_zone.expire, dns_zone.expire_unit, dns_zone.minimum, dns_zone.minimum_unit, 
                         dns_zone.serial_format, dns_zone.serial
                                            FROM            (dns_zone LEFT OUTER JOIN
                                                                     domains ON dns_zone.name = domains.name)
                                            WHERE        (domains.name = ?)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (OleDbDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            _tmp.Name    = DataExtensions.GetColumnValue <string>(_read, "name").ToLower();
                            _tmp.mininum = DataExtensions.GetColumnValue <int>(_read, "minimum");
                            _tmp.refresh = DataExtensions.GetColumnValue <int>(_read, "refresh");
                            _tmp.retry   = DataExtensions.GetColumnValue <int>(_read, "retry");
                            _tmp.expire  = DataExtensions.GetColumnValue <int>(_read, "expire");

                            var serial = DataExtensions.GetColumnValue <string>(_read, "serial");
                            _tmp.serial = Convert.ToInt32(serial);

                            _tmp.ttl   = DataExtensions.GetColumnValue <int>(_read, "ttl");
                            _tmp.Email = DataExtensions.GetColumnValue <string>(_read, "email");
                        }
                    }
                }
                _conn.Close();
            }

            _tmp.Records = GetZoneRecords(domainName);

            return(_tmp);
        }
Example #22
0
        public override HostLimit ResellerLimits(string clientName)
        {
            var _tmp_limits = new List <LimitRow>();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT L.limit_name, L.value FROM clients C LEFT JOIN Limits L ON L.id = C.limits_id WHERE C.login = @NAME", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", clientName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new LimitRow();
                            _d.Name = DataExtensions.GetColumnValue <string>(_read, "limit_name");

                            var limitObj   = DataExtensions.GetColumnValue <Byte[]>(_read, "value");
                            var LimitValue = limitObj != null?Convert.ToInt64(Encoding.ASCII.GetString(limitObj)) : -1;

                            if (_d.Name == "disk_space" || _d.Name == "max_traffic" || _d.Name == "mbox_quota" ||
                                _d.Name == "mssql_dbase_space" || _d.Name == "mysql_dbase_space" ||
                                _d.Name == "max_traffic_soft" || _d.Name == "disk_space_soft")
                            {
                                _d.Value = (int)((LimitValue / 1024) / 1024);
                            }
                            else
                            {
                                _d.Value = Convert.ToInt32(LimitValue);
                            }

                            _tmp_limits.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(new HostLimit(_tmp_limits));
        }
Example #23
0
        public override List <Subdomain> GetSubdomains(string domainName)
        {
            var _tmp           = new List <Subdomain>();
            var securePassword = SecurePasswords();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT  
                                                                subdomains.name, 
                                                                domains.name AS domain, 
                                                                sys_users.login, 
                                                                accounts.password
                                                                FROM accounts RIGHT OUTER JOIN
                                                        sys_users ON accounts.id = sys_users.account_id RIGHT OUTER JOIN
                                                        subdomains ON sys_users.id = subdomains.sys_user_id LEFT OUTER JOIN
                                                        domains ON subdomains.dom_id = domains.id 
                                                    WHERE domains.name = @NAME", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new Subdomain();
                            _d.Domain   = DataExtensions.GetColumnValue <string>(_read, "domain");
                            _d.Login    = DataExtensions.GetColumnValue <string>(_read, "login");
                            _d.Password = securePassword ? DataHelper.GetPassword() : DataExtensions.GetColumnValue <string>(_read, "password");
                            _d.Name     = DataExtensions.GetColumnValue <string>(_read, "name");
                            _d.UserType = "";

                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #24
0
        public override List <DomainAlias> GetDomainAliases(string domainName)
        {
            var _tmp = new List <DomainAlias>();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT domain_aliases.name as alias, domains.name AS domain, domain_aliases.status
                                                                FROM  domain_aliases 
                                                            INNER JOIN domains ON domain_aliases.dom_id = domains.id 
                                                            WHERE domain_aliases.status = 0 AND domains.name = @NAME", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new DomainAlias();
                            _d.Domain = DataExtensions.GetColumnValue <String>(_read, "domain");
                            _d.Alias  = DataExtensions.GetColumnValue <String>(_read, "alias");

                            if (_read["status"] is System.UInt64)
                            {
                                _d.Status = Convert.ToInt64(DataExtensions.GetColumnValue <UInt64>(_read, "status"));
                            }
                            else
                            {
                                _d.Status = DataExtensions.GetColumnValue <long>(_read, "status");
                            }

                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }
Example #25
0
        public override List <Email> GetEmails(string domainName)
        {
            var _tmp = new List <Email>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();

                using (SqlCommand _cmd = new SqlCommand(@"SELECT POP3Account.POP3UserName, POP3Account.ForwardsTo, HostDomain.DomainName
                                                            FROM POP3Account INNER JOIN
                                                                HostDomain ON POP3Account.DomainId = HostDomain.DomainId 
                                                            WHERE (HostDomain.DomainName = @NAME)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var da = new Email();
                            da.DomainName = domainName;
                            da.Name       = DataExtensions.GetColumnValue <string>(_read, "POP3UserName");
                            da.Password   = DataHelper.GetPassword();
                            da.Quota      = -1;

                            var forwardEmail = DataExtensions.GetColumnValue <string>(_read, "ForwardsTo");

                            da.Redirect        = String.IsNullOrEmpty(forwardEmail) ? "false" : "true";
                            da.RedirectedEmail = forwardEmail;

                            _tmp.Add(da);
                        }
                    }
                }

                _conn.Close();
            }

            return(_tmp);
        }
Example #26
0
        public override List <DnsZoneRecord> GetZoneRecords(string domainName)
        {
            var _tmp = new List <DnsZoneRecord>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();

                using (SqlCommand _cmd = new SqlCommand(@"SELECT HostDomain.DomainName, 
                                                            CASE WHEN DNSRecord.RecordType = 3 
                                                            THEN 'A' WHEN DNSRecord.RecordType = 5 
                                                            THEN 'CNAME' WHEN DNSRecord.RecordType = 4 
                                                            THEN 'MX' WHEN DNSRecord.RecordType = 6 
                                                            THEN 'CNAME'END AS RecordType, 
                                                                DNSRecord.RecordName, DNSRecord.RecordData, DNSRecord.RecordPreference
                                                        FROM  DNSRecord INNER JOIN HostDomain ON DNSRecord.DomainId = HostDomain.DomainId 
                                                            WHERE (HostDomain.DomainName = @NAME)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var da = new DnsZoneRecord();
                            da.name     = DataExtensions.GetColumnValue <string>(_read, "RecordName");
                            da.type     = DataExtensions.GetColumnValue <string>(_read, "RecordType");
                            da.value    = DataExtensions.GetColumnValue <string>(_read, "RecordData");
                            da.priority = DataExtensions.GetColumnValue <int>(_read, "RecordPreference");

                            _tmp.Add(da);
                        }
                    }
                }

                _conn.Close();
            }

            return(_tmp);
        }
Example #27
0
        public override List <Reseller> GetResellers()
        {
            var tmp = new List <Reseller>();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT * FROM clients", _conn))
                {
                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var res = new Reseller();
                            res.Id         = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "id"));
                            res.Address1   = DataExtensions.GetColumnValue <string>(_read, "address");
                            res.City       = DataExtensions.GetColumnValue <string>(_read, "city");
                            res.Country    = DataExtensions.GetColumnValue <string>(_read, "country");
                            res.fax        = DataExtensions.GetColumnValue <string>(_read, "fax");
                            res.Phone      = DataExtensions.GetColumnValue <string>(_read, "phone");
                            res.PostalCode = DataExtensions.GetColumnValue <string>(_read, "pcode");
                            res.Province   = DataExtensions.GetColumnValue <string>(_read, "country");

                            res.FirstName    = DataExtensions.GetColumnValue <string>(_read, "pname");
                            res.Password     = DataExtensions.GetColumnValue <string>(_read, "passwd");
                            res.Username     = DataExtensions.GetColumnValue <string>(_read, "login");
                            res.Email        = DataExtensions.GetColumnValue <string>(_read, "email");
                            res.Organization = DataExtensions.GetColumnValue <string>(_read, "cname");

                            res.Limits = ResellerLimits(res.Username);

                            tmp.Add(res);
                        }
                    }
                }
                _conn.Close();
            }

            return(tmp);
        }
Example #28
0
        public override HostLimit GetDomainLimits(string domainName)
        {
            var _tmp_limits = new List <LimitRow>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();

                using (SqlCommand _cmd = new SqlCommand(@"SELECT LimitProperty.LimitPropertyName, Limit.LimitValue, Limit.LimitId, Limit.LevelId, Limit.ItemId, HostDomain.DomainName
                                                            FROM Limit INNER JOIN
                                                          LimitProperty ON Limit.LimitPropertyId = LimitProperty.LimitPropertyId INNER JOIN
                                                          Package ON Limit.ItemId = Package.PackageTypeId INNER JOIN
                                                          HostDomain ON Package.PackageId = HostDomain.PackageId
                                                        WHERE (HostDomain.DomainName = @NAME)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new LimitRow();

                            _d.Name  = DataExtensions.GetColumnValue <String>(_read, "LimitPropertyName");
                            _d.Value = DataExtensions.GetColumnValue <int>(_read, "LimitValue");

                            _tmp_limits.Add(_d);
                        }
                    }
                }

                _conn.Close();
            }

            var hostLimits = new HostLimit();

            hostLimits.LoadHelmLimits(_tmp_limits);

            return(hostLimits);
        }
Example #29
0
        public override List <Subdomain> GetSubdomains(string domainName)
        {
            var _tmp = new List <Subdomain>();

            using (SqlConnection _conn = new SqlConnection(connectionString))
            {
                _conn.Open();

                using (SqlCommand _cmd = new SqlCommand(@"SELECT   HostDomain_1.DomainName AS Name
                                                        FROM HostDomain INNER JOIN
                                                    HostDomain AS HostDomain_1 ON HostDomain.DomainId = HostDomain_1.SubDomainId
                                                    WHERE (HostDomain.DomainName = @NAME)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (SqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var currentFtpUser = GetFirstFtpAccount(domainName);

                            var da = new Subdomain();
                            da.Domain   = domainName;
                            da.Login    = String.IsNullOrEmpty(currentFtpUser) ? domainName : currentFtpUser;
                            da.Name     = DataExtensions.GetColumnValue <String>(_read, "Name");
                            da.Password = "";

                            _tmp.Add(da);
                        }
                    }
                }

                _conn.Close();
            }

            return(_tmp);
        }
Example #30
0
        public override List <Database> GetDatabases(string domainName)
        {
            var _tmp = new List <Database>();

            using (MySqlConnection _conn = new MySqlConnection(connectionString))
            {
                _conn.Open();
                using (MySqlCommand _cmd = new MySqlCommand(@"SELECT data_bases.id as db_id, domains.name AS domain, data_bases.name, data_bases.type,
                                                                data_bases.db_server_id
                                                            FROM data_bases LEFT OUTER JOIN
                                                        domains ON domains.id = data_bases.dom_id LEFT OUTER JOIN
                                                        db_users ON db_users.id = data_bases.default_user_id
                                                    WHERE  (domains.name = @NAME)", _conn))
                {
                    _cmd.Parameters.AddWithValue("@NAME", domainName);

                    using (MySqlDataReader _read = _cmd.ExecuteReader())
                    {
                        while (_read.Read())
                        {
                            var _d = new Database();
                            _d.Id       = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "db_id"));
                            _d.Name     = DataExtensions.GetColumnValue <string>(_read, "name");
                            _d.Domain   = DataExtensions.GetColumnValue <string>(_read, "domain");
                            _d.DbType   = DataExtensions.GetColumnValue <string>(_read, "type");
                            _d.ServerId = Convert.ToInt32(DataExtensions.GetColumnValue <uint>(_read, "db_server_id"));
                            _d.Users    = GetDatabaseUsers(_d.Id);

                            _tmp.Add(_d);
                        }
                    }
                }
                _conn.Close();
            }

            return(_tmp);
        }