Преглед на файлове

Control de usuarios y sus límites. Solucinado el mismo problema para dns y registros tipo A. Funcionamiento correcto de WebDNS.

develop
David Ramos преди 8 години
родител
ревизия
82632ca4eb
променени са 1 файла, в които са добавени 42 реда и са изтрити 1 реда
  1. +42
    -1
      new_service_webdns.php

+ 42
- 1
new_service_webdns.php Целия файл

@@ -728,6 +728,7 @@ class page_action extends tform_actions {
//Inserto en bbdd usando la clase remoto que se la he pasado en parámetros de la función
//$resultado = $remoto->insert_query('../dns/form/dns_a.tform.php', $fields['client_id'], $paramSubDominios);
$resultado = $remoto->insert_query('form/dns_a_webdns.tform.php', $this->cli_id, /*$fields['client_group_id'],*/ $paramSubDominios);
$remoto->dns_registro_tipo_a_after_insert();
echo '<br><div class="alert alert-success"><br>
Se ha dado de alta Web y Subdominio, <b>'.$this->subdominio.'</b>, ¡Correctamente!
<br><br></div></br>';
@@ -1278,6 +1279,7 @@ class page_action extends tform_actions {
//Creación del las dns y sitio web para un dominio.
function crearDnsSitioWeb($remoto){
global $app, $conf;
$remote = new remote_actions;
//Carga de los campos del formulario.
$fields = $app->tform->encode($this->dataRecord, $app->tform->getCurrentTab(), true);
@@ -1403,6 +1405,8 @@ print "<pre>IP6 WEB ";print_r($this->ip6_servidor_web);print "</pre>\n";*/
"dnssec_wanted" => $enable_dnssec
);
$dns_soa_id = $app->db->datalogInsert('dns_soa', $insert_data, 'id');
$remote->dns_soa_after_insert($dns_soa_id, $this->cli_grupo_id);

// Insert the dns_rr records
if(is_array($dns_rr) && $dns_soa_id > 0) {
@@ -1423,6 +1427,8 @@ print "<pre>IP6 WEB ";print_r($this->ip6_servidor_web);print "</pre>\n";*/
"active" => 'Y'
);
$dns_rr_id = $app->db->datalogInsert('dns_rr', $insert_data, 'id');
$remote->dns_rr_after_insert($dns_rr_id, $this->cli_grupo_id);
}
}
//sites_web_domain_add
@@ -1490,7 +1496,11 @@ print "<pre>IP6 WEB ";print_r($this->ip6_servidor_web);print "</pre>\n";*/
//IMPORTANTE. El último parámetro es para lanzar un evento que llama a la función on_after_insert
//que prepara los campos document_root, system_user y system_group
//$site_id = $remoto->insert_query('../sites/form/web_vhost_domain.tform.php', $fields['client_group_id'], $paramsite, 'sites:web_vhost_domain:on_after_insert');
$site_id = $remoto->insert_query('../sites/form/web_vhost_domain.tform.php', $this->cli_id, /*$cliente_id_seleccionado,*/ $paramsite, 'sites:web_vhost_domain:on_after_insert');

//IMPORTANTE. ESTE ES EL ÚNICO PLUGING QUE FUNCIONA.
$site_id = $remoto->insert_query('../sites/form/web_vhost_domain.tform.php',
$this->cli_id, /*$cliente_id_seleccionado,*/
$paramsite, 'sites:web_vhost_domain:on_after_insert');
//print 'Sitio id '. $site_id;
}

@@ -1700,6 +1710,37 @@ class remote_actions extends remoting {
$app->db->query($sql, $server_id, $dir, $uid, $gid, $sys_groupid, $this->id);
}

function dns_rr_after_insert($dns_rr_id, $cliente_grupo_id) {
global $app, $conf;
//echo(' el cliente grupo id ' . $cliente_grupo_id . ' el id tupla en dns_rr ' . $dns_rr_id);
if($_SESSION["s"]["user"]["typ"] == 'user') {
$app->db->datalogUpdate('dns_rr', array("sys_userid" => $cliente_grupo_id,
"sys_groupid" => $cliente_grupo_id), 'id', $dns_rr_id);
}
}

function dns_soa_after_insert($dns_soa_id, $cliente_grupo_id) {
global $app, $conf;
//echo(' el cliente grupo id ' . $cliente_grupo_id . ' el id tupla en dns_rr ' . $dns_rr_id);
if($_SESSION["s"]["user"]["typ"] == 'user') {
$app->db->datalogUpdate('dns_soa', array("sys_userid" => $cliente_grupo_id,
"sys_groupid" => $cliente_grupo_id), 'id', $dns_soa_id);
}
}

function dns_registro_tipo_a_after_insert() {
global $app, $conf;
//echo(' el valor zone ' . $this->dataRecord["zone"]);
//* Set the sys_groupid of the rr record to be the same then the sys_groupid of the soa record
$soa = $app->db->queryOneRecord("SELECT * FROM dns_soa WHERE id = ? AND " . $this->getAuthSQLWebDNS('r'), $this->dataRecord["zone"]);
$app->db->datalogUpdate('dns_rr', array("sys_groupid" => $soa['sys_groupid']), 'id', $this->id);

//* Update the serial number of the SOA record
/*$soa_id = $app->functions->intval($_POST["zone"]);
$serial = $app->validate_dns->increase_serial($soa["serial"]);
$app->db->datalogUpdate('dns_soa', array("serial" => $serial), 'id', $soa_id);*/
}

public function sites_database_user_after_add($client_id, $params){
global $app, $conf;
//echo('Plugeando');


Loading…
Отказ
Запис