ISPConfig module for simplify the creation of websites and DNS zones in a only step
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

78 строки
2.6 KiB

  1. <?php
  2. /*
  3. PHP por David Ramos García, Open6Hosting <dramos@open6hosting.com>
  4. Clase para el control de los límites de los usuarios con el módulo WebDNS.
  5. 2017, All rights reserved.
  6. */
  7. require_once '../../lib/app.inc.php';
  8. class limites {
  9. public $cliente;
  10. public $cliente_grupo_id;
  11. public function __construct($cliente_group_id){
  12. global $app, $conf;
  13. $this->cliente = $client = $app->db->queryOneRecord(
  14. "SELECT limit_dns_zone, limit_web_domain, limit_database FROM sys_group, client
  15. WHERE sys_group.client_id = client.client_id
  16. and sys_group.groupid = ?", $cliente_group_id);
  17. $this->cliente_grupo_id = $cliente_group_id;
  18. }
  19. public function limClienteDns(){
  20. global $app, $conf;
  21. //Si el cliente esta vacío es admin.
  22. if($this->cliente){
  23. if($this->cliente["limit_dns_zone"] >= 0) {
  24. $tmp = $app->db->queryOneRecord(
  25. "SELECT count(id) as number FROM dns_soa WHERE sys_groupid = ?", $this->cliente_grupo_id);
  26. if($tmp["number"] >= $this->cliente["limit_dns_zone"]) {
  27. $app->error($app->tform->wordbook["limit_dns_zone_txt"]);
  28. }
  29. }
  30. }
  31. return false;
  32. }
  33. public function limClienteWebDominio(){
  34. global $app, $conf;
  35. //Si el cliente esta vacío es admin.
  36. if($this->cliente){
  37. if($this->cliente["limit_web_domain"] >= 0) {
  38. $tmp = $app->db->queryOneRecord(
  39. "SELECT count(domain_id) as number FROM web_domain
  40. WHERE sys_groupid = ? and type = 'vhost'", $this->cliente_grupo_id);
  41. if($tmp["number"] >= $this->cliente["limit_web_domain"]) {
  42. $app->error($app->tform->wordbook["limit_web_domain_txt"]);
  43. return true;
  44. }
  45. }
  46. }
  47. return false;
  48. }
  49. public function limClienteDB(){
  50. global $app, $conf;
  51. //Si el cliente esta vacío es admin.
  52. if($this->cliente){
  53. if($this->cliente["limit_database"] >= 0) {
  54. $tmp = $app->db->queryOneRecord(
  55. "SELECT count(database_id) as number
  56. FROM web_database WHERE sys_groupid = ?", $this->cliente_grupo_id);
  57. if($tmp["number"] >= $this->cliente["limit_database"]) {
  58. $app->error($app->tform->wordbook["limit_database_txt"]);
  59. }
  60. }
  61. }
  62. return false;
  63. }
  64. }
  65. ?>