Source
xxxxxxxxxx
// Before logout open page without any scripts, otherwise session might be restored and logout won't work.
<?php
/*
** Zabbix
** Copyright (C) 2001-2022 Zabbix SIA
**
** 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; either version 2 of the License, or
** (at your option) any later version.
**
** 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.
**
** You should have received a copy of the GNU General Public License
** along with this program; if not, write to the Free Software
** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
**/
require_once 'vendor/autoload.php';
require_once dirname(__FILE__).'/CElementQuery.php';
require_once dirname(__FILE__).'/CommandExecutor.php';
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Chrome\ChromeOptions;
use Facebook\WebDriver\Remote\RemoteWebDriver;
use Facebook\WebDriver\Remote\RemoteWebElement;
use Facebook\WebDriver\WebDriverDimension;
use Facebook\WebDriver\Exception\NoSuchAlertException;
use Facebook\WebDriver\WebDriverExpectedCondition;
/**
* Web page implementation.
*/
class CPage {
/**
* Page defaults.
*/
const DEFAULT_PAGE_WIDTH = 1440;
const DEFAULT_PAGE_HEIGHT = 1024;
/**
* Web driver instance.
*
* @var RemoteWebDriver
*/
protected $driver;
/**
* Local cookie cache.
*
* @var array
*/
protected static $cookie = null;
/**
* Page height.
*
* @var integer
*/
protected $height = null;
/**
* Page width.
*
* @var integer
*/
protected $width = null;
/**
* Viewport freeze flag.
*
* @var boolean
*/
protected $viewportUpdated = false;
/**
* Web driver and CElementQuery initialization.
*/
public function __construct() {
$this->connect();
CElementQuery::setPage($this);
}
/**
* Web driver initialization.
*/
public function connect() {