mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-29 16:55:05 +02:00
Fixes with scroll in agents and modules
This commit is contained in:
parent
e2d6b30d51
commit
f6a8fdf085
@ -1,15 +1,33 @@
|
||||
<?php
|
||||
// Pandora FMS - http://pandorafms.com
|
||||
// ==================================================
|
||||
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||
// Please see http://pandorafms.org for full contribution list
|
||||
// This program is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU General Public License
|
||||
// as published by the Free Software Foundation for version 2.
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
// phpcs:disable Squiz.NamingConventions.ValidVariableName.MemberNotCamelCaps
|
||||
/**
|
||||
* Agent view for mobile
|
||||
*
|
||||
* @category Mobile
|
||||
* @package Pandora FMS
|
||||
* @subpackage Community
|
||||
* @version 1.0.0
|
||||
* @license See below
|
||||
*
|
||||
* ______ ___ _______ _______ ________
|
||||
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||
*
|
||||
* ============================================================================
|
||||
* Copyright (c) 2005-2022 Artica Soluciones Tecnologicas
|
||||
* Please see http://pandorafms.org for full contribution list
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation for version 2.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* ============================================================================
|
||||
*/
|
||||
|
||||
// Begin.
|
||||
require_once '../include/functions_users.php';
|
||||
|
||||
class Agent
|
||||
@ -256,10 +274,9 @@ class Agent
|
||||
SECONDS_1DAY,
|
||||
'',
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
1,
|
||||
''
|
||||
500,
|
||||
1
|
||||
);
|
||||
$html .= '</div>';
|
||||
$html .= '</div>';
|
||||
|
@ -1,15 +1,33 @@
|
||||
<?php
|
||||
// Pandora FMS - http://pandorafms.com
|
||||
// ==================================================
|
||||
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||
// Please see http://pandorafms.org for full contribution list
|
||||
// This program is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU General Public License
|
||||
// as published by the Free Software Foundation for version 2.
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
// phpcs:disable Squiz.NamingConventions.ValidVariableName.MemberNotCamelCaps
|
||||
/**
|
||||
* Agents list view for mobile
|
||||
*
|
||||
* @category Mobile
|
||||
* @package Pandora FMS
|
||||
* @subpackage Community
|
||||
* @version 1.0.0
|
||||
* @license See below
|
||||
*
|
||||
* ______ ___ _______ _______ ________
|
||||
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||
*
|
||||
* ============================================================================
|
||||
* Copyright (c) 2005-2022 Artica Soluciones Tecnologicas
|
||||
* Please see http://pandorafms.org for full contribution list
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation for version 2.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* ============================================================================
|
||||
*/
|
||||
|
||||
// Begin.
|
||||
class Agents
|
||||
{
|
||||
|
||||
@ -67,7 +85,7 @@ class Agents
|
||||
|
||||
$listAgents = $this->getListAgents($page, true);
|
||||
|
||||
if (!empty($listAgents['agents'])) {
|
||||
if (empty($listAgents['agents']) === false) {
|
||||
$end = 0;
|
||||
|
||||
$agents = [];
|
||||
@ -96,7 +114,7 @@ class Agents
|
||||
$system = System::getInstance();
|
||||
$user = User::getInstance();
|
||||
|
||||
// Default
|
||||
// Default.
|
||||
$filters = [
|
||||
'free_search' => '',
|
||||
'status' => -1,
|
||||
@ -104,7 +122,7 @@ class Agents
|
||||
];
|
||||
|
||||
$serialized_filters = (string) $system->getRequest('agents_filter');
|
||||
if (!empty($serialized_filters)) {
|
||||
if (empty($serialized_filters) === true) {
|
||||
$filters_unsafe = json_decode(base64_decode($serialized_filters, true), true);
|
||||
if ($filters_unsafe) {
|
||||
$filters = $system->safeInput($filters_unsafe);
|
||||
@ -144,8 +162,8 @@ class Agents
|
||||
$filters['group'] = $this->group;
|
||||
}
|
||||
|
||||
if (!empty($filters)) {
|
||||
// Store the filter
|
||||
if (empty($filters) === false) {
|
||||
// Store the filter.
|
||||
$this->serializedFilters = base64_encode(json_encode($system->safeOutput($filters)));
|
||||
}
|
||||
}
|
||||
@ -260,7 +278,7 @@ class Agents
|
||||
|
||||
$search_sql = '';
|
||||
|
||||
if (!empty($this->free_search)) {
|
||||
if (empty($this->free_search) === false) {
|
||||
$search_sql = " AND (
|
||||
alias LIKE '%".$this->free_search."%'
|
||||
OR nombre LIKE '%".$this->free_search."%'
|
||||
@ -463,11 +481,9 @@ class Agents
|
||||
var page = 1;
|
||||
|
||||
function custom_scroll() {
|
||||
|
||||
if (load_more_rows) {
|
||||
if ($(this).scrollTop() + $(this).height()
|
||||
>= ($(document).height() - 100)) {
|
||||
|
||||
load_more_rows = 0;
|
||||
|
||||
postvars = {};
|
||||
@ -503,15 +519,18 @@ class Agents
|
||||
load_more_rows = 1;
|
||||
refresh_link_listener_list_agents();
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
\"json\");
|
||||
// Clean
|
||||
$('#loading_rows').remove();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
// Be sure of fill all of screen first.
|
||||
custom_scroll();
|
||||
|
||||
$(window).bind(\"scroll\", function () {
|
||||
custom_scroll();
|
||||
});
|
||||
|
@ -1,15 +1,33 @@
|
||||
<?php
|
||||
// Pandora FMS - http://pandorafms.com
|
||||
// ==================================================
|
||||
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||
// Please see http://pandorafms.org for full contribution list
|
||||
// This program is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU General Public License
|
||||
// as published by the Free Software Foundation for version 2.
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
// phpcs:disable Squiz.NamingConventions.ValidVariableName.MemberNotCamelCaps
|
||||
/**
|
||||
* Modules list view for mobile
|
||||
*
|
||||
* @category Mobile
|
||||
* @package Pandora FMS
|
||||
* @subpackage Community
|
||||
* @version 1.0.0
|
||||
* @license See below
|
||||
*
|
||||
* ______ ___ _______ _______ ________
|
||||
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||
*
|
||||
* ============================================================================
|
||||
* Copyright (c) 2005-2022 Artica Soluciones Tecnologicas
|
||||
* Please see http://pandorafms.org for full contribution list
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation for version 2.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* ============================================================================
|
||||
*/
|
||||
|
||||
// Begin.
|
||||
class Modules
|
||||
{
|
||||
|
||||
@ -106,7 +124,7 @@ class Modules
|
||||
}
|
||||
|
||||
if (isset($filters['status'])) {
|
||||
$this->status = $filters['status'];
|
||||
$this->status = (int) $filters['status'];
|
||||
}
|
||||
|
||||
if (isset($filters['name'])) {
|
||||
@ -143,7 +161,7 @@ class Modules
|
||||
}
|
||||
|
||||
$this->status = $system->getRequest('status', __('Status'));
|
||||
if (($this->status === __('Status')) || ($this->status == AGENT_MODULE_STATUS_ALL)) {
|
||||
if (($this->status === __('Status')) || ((int) $this->status === AGENT_MODULE_STATUS_ALL)) {
|
||||
$this->status = AGENT_MODULE_STATUS_ALL;
|
||||
} else {
|
||||
$this->default = false;
|
||||
@ -390,35 +408,28 @@ class Modules
|
||||
}
|
||||
|
||||
// Part SQL fro Status
|
||||
if ($this->status == AGENT_MODULE_STATUS_NORMAL) {
|
||||
// Normal
|
||||
if ((int) $this->status == AGENT_MODULE_STATUS_NORMAL) {
|
||||
// Normal.
|
||||
$sql_conditions .= ' AND tagente_estado.estado = 0
|
||||
AND (utimestamp > 0 OR (tagente_modulo.id_tipo_modulo IN(21,22,23,100))) ';
|
||||
} else if ($this->status == AGENT_MODULE_STATUS_CRITICAL_BAD) {
|
||||
// Critical
|
||||
} else if ((int) $this->status === AGENT_MODULE_STATUS_CRITICAL_BAD) {
|
||||
// Critical.
|
||||
$sql_conditions .= ' AND tagente_estado.estado = 1 AND utimestamp > 0';
|
||||
} else if ($this->status == AGENT_MODULE_STATUS_WARNING) {
|
||||
// Warning
|
||||
} else if ((int) $this->status === AGENT_MODULE_STATUS_WARNING) {
|
||||
// Warning.
|
||||
$sql_conditions .= ' AND tagente_estado.estado = 2 AND utimestamp > 0';
|
||||
} else if ($this->status == AGENT_MODULE_STATUS_NOT_NORMAL) {
|
||||
// Not normal
|
||||
} else if ((int) $this->status === AGENT_MODULE_STATUS_NOT_NORMAL) {
|
||||
// Not normal.
|
||||
$sql_conditions .= ' AND tagente_estado.estado <> 0';
|
||||
} else if ($this->status == AGENT_MODULE_STATUS_UNKNOWN) {
|
||||
// Unknown
|
||||
} else if ((int) $this->status === AGENT_MODULE_STATUS_UNKNOWN) {
|
||||
// Unknown.
|
||||
$sql_conditions .= ' AND tagente_estado.estado = 3 AND tagente_estado.utimestamp <> 0';
|
||||
} else if ($this->status == AGENT_MODULE_STATUS_NOT_INIT) {
|
||||
// Not init
|
||||
} else if ((int) $this->status === AGENT_MODULE_STATUS_NOT_INIT) {
|
||||
// Not init.
|
||||
$sql_conditions .= ' AND tagente_estado.utimestamp = 0
|
||||
AND tagente_modulo.id_tipo_modulo NOT IN (21,22,23,100)';
|
||||
}
|
||||
|
||||
if ($this->status != AGENT_MODULE_STATUS_NOT_INIT) {
|
||||
// When filter is not "not init"
|
||||
// Not show not init modules. It's only operation view
|
||||
$sql_conditions .= ' AND (tagente_estado.utimestamp != 0
|
||||
OR tagente_modulo.id_tipo_modulo IN (21,22,23,100))';
|
||||
}
|
||||
|
||||
if ($this->tag > 0) {
|
||||
$sql_conditions .= ' AND tagente_modulo.id_agente_modulo IN (
|
||||
SELECT ttag_module.id_agente_modulo
|
||||
@ -476,6 +487,7 @@ class Modules
|
||||
ON ttag_module.id_agente_modulo = tagente_modulo.id_agente_modulo'.$sql_conditions_all;
|
||||
|
||||
$sql_limit = 'ORDER BY tagente.nombre ASC ';
|
||||
|
||||
if (!$this->all_modules) {
|
||||
$sql_limit = ' LIMIT '.(int) ($page * $system->getPageSize()).','.(int) $system->getPageSize();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user