<?php
require_once dirname(__FILE__).'/../../include/CWebTest.php';
require_once dirname(__FILE__).'/../behaviors/CMessageBehavior.php';
require_once dirname(__FILE__).'/../../include/helpers/CDataHelper.php';
class testDashboardCopyWidgets extends CWebTest {
const NEW_PAGE_NAME = 'Test_page';
const PASTE_DASHBOARD_NAME = 'Dashboard for Paste widgets';
const TEMPLATED_DASHBOARD_NAME = 'Templated dashboard with all widgets';
const TEMPLATED_PAGE_NAME = 'Page for pasting widgets';
const EMPTY_DASHBOARD_NAME = 'Dashboard without widgets';
const MODULES_DASHBOARD_NAME = 'Dashboard for Copying widgets _1';
private static $templated_dashboardid;
private static $templated_empty_dashboardid;
private static $modules_dashboardid;
private static $replaced_widget_name = "Test widget for replace";
const REPLACED_WIDGET_SIZE = [ 'width' => '21', 'height' => '3'];
public function getBehaviors() {
return ['class' => CMessageBehavior::class];
}
public static function getDashboardsData() {
static $data = null;
if ($data === null) {
global $DB;
if (!isset($DB['DB'])) {
DBconnect($error);
}
CDataHelper::load('CopyWidgetsDashboards');
$data = CDBHelper::getDataProvider('SELECT w.name, dp.dashboardid FROM widget w'.
' JOIN dashboard_page dp ON w.dashboard_pageid=dp.dashboard_pageid'.
' WHERE dp.dashboardid IN ('.
'SELECT dashboardid FROM dashboard '.
'WHERE name LIKE \'%Dashboard for Copying widgets%\''.
') ORDER BY w.widgetid DESC'
);
}
return $data;
}
public static function getTemplatedIds() {
self::$templated_dashboardid = CDBHelper::getValue('SELECT dashboardid FROM dashboard WHERE name='.
zbx_dbstr(self::TEMPLATED_DASHBOARD_NAME)
);
self::$templated_empty_dashboardid = CDBHelper::getValue('SELECT dashboardid FROM dashboard WHERE name='.
zbx_dbstr(self::EMPTY_DASHBOARD_NAME)
);
self::$modules_dashboardid = CDBHelper::getValue('SELECT dashboardid FROM dashboard WHERE name='.
zbx_dbstr(self::MODULES_DASHBOARD_NAME)
);
}