$_aux_agents = Asset_host::get_related_hids_agents($conn, $asset_id, $sensor_id);
    $agent_key = md5(strtoupper($sensor_id) . '#' . $agent_id);
    unset($_aux_agents[$agent_key]);
    if (!empty($_aux_agents)) {
        $validation_errors['asset_id'] = sprintf(_("Unable to connect HIDS agent to '%s'. This asset already has an agent deployed. If you want to deploy a new agent, please review <a class=\"bold_red\" href=\"https://www.alienvault.com/help/redirect/usm/connect_agent\" target=\"_blank\">how to manage agent connections</a> and try again"), Asset_host::get_name_by_id($conn, $asset_id));
    }
    $db->close();
}
if (is_array($validation_errors) && !empty($validation_errors)) {
    $validation_errors['html_errors'] = "<div style='text-align: left;'>" . _('The following errors occurred') . ":</div>\n                                         <div style='padding-left:15px; text-align: left;'>" . implode('<br/>', $validation_errors) . "</div>";
    $data['status'] = 'error';
    $data['data'] = $validation_errors;
} else {
    $data['status'] = 'success';
    $data['data'] = _('Your changes have been saved');
    try {
        Ossec_agent::link_to_asset($sensor_id, $agent_id, $asset_id);
        $db = new ossim_db();
        $conn = $db->connect();
        $agents = Asset_host::get_related_hids_agents($conn, $asset_id, $sensor_id);
        $agent_key = md5(strtoupper($sensor_id) . '#' . $agent_id);
        $agent_info = array('ip_cidr' => $agents[$agent_key]['ip_cidr'], 'host_id' => $asset_id);
        $data['asset'] = array('id' => $asset_id, 'name' => Asset_host::get_name_by_id($conn, $asset_id), 'actions' => Ossec_agent::get_actions($agent_id, $agent_info));
        $db->close();
    } catch (Exception $e) {
        $data['status'] = 'error';
        $data['data'] = _('An unexpected error occurred. Unable to connect asset to HIDS agent. Please try again') . '.<br/><br/>' . sprintf(_('Reason: %s'), $e->getMessage());
    }
}
echo json_encode($data);
exit;