jqwidgets-scripts-custom
Version:
jQWidgets is an advanced jQuery, Angular 7, Vue, React, ASP .NET MVC, Custom Elements and HTML5 UI framework.
175 lines (168 loc) • 7.52 kB
HTML
<html lang="en">
<head>
<title id='Description'>Layout Custom Element Dashboard</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1 maximum-scale=1 minimum-scale=1" />
<meta name="description" content="This is an example of Custom Element Layout's dashboard combined with other widgets." />
<link rel="stylesheet" href="../../../jqwidgets/styles/jqx.base.css" type="text/css" />
<link rel="stylesheet" href="../../../styles/demos.css" type="text/css" />
<script type="text/javascript" src="../../../scripts/webcomponents-lite.min.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxcore.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxcore.elements.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxribbon.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxwindow.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxmenu.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxlayout.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxbuttons.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxscrollbar.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxdata.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxdraw.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxchart.core.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxtree.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxdatatable.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxlistbox.js"></script>
<script type="text/javascript" src="../../../scripts/demos.js"></script>
<script type="text/javascript" src="initdashboard.js"></script>
<style type="text/css">
.jqx-layout-group-auto-hide-content-vertical {
width: 200px;
}
.no-border {
border-left-width: 0;
border-right-width: 0;
}
.jqx-ribbon-content-section {
overflow: hidden;
}
</style>
<script>
var layout = [{
type: 'layoutGroup',
orientation: 'horizontal',
items: [{
type: 'layoutGroup',
orientation: 'vertical',
allowPin: false,
width: '30%',
items: [{
type: 'tabbedGroup',
height: '50%',
pinnedHeight: 30,
items: [{
type: 'layoutPanel',
title: 'Teams',
contentContainer: 'TeamsPanel',
initContent: function () {
initTeamDataTable();
}
}]
}, {
type: 'tabbedGroup',
height: '50%',
allowClose: true,
allowPin: false,
pinnedHeight: 30,
items: [{
type: 'layoutPanel',
title: 'Team Projects',
contentContainer: 'ProjectsPanel',
initContent: function () {
initProjectsListBox();
}
}, {
type: 'layoutPanel',
title: 'Projects Timeline',
contentContainer: 'ProjectsTimelinePanel',
initContent: function () {
if (team === 'Sales') {
document.querySelector('#projectsTimelineDiv').innerHTML = teamSalesProjectsTimeline;
} else {
document.querySelector('#projectsTimelineDiv').innerHTML = teamSupportProjectsTimeline;
}
}
}]
}]
}, {
type: 'layoutGroup',
orientation: 'vertical',
allowPin: false,
width: '70%',
pinnedWidth: 80,
items: [{
type: 'tabbedGroup',
height: '50%',
pinnedHeight: 30,
items: [{
type: 'layoutPanel',
title: 'Contacts',
contentContainer: 'ContactsPanel',
initContent: function () {
document.querySelector('#contactsTable').innerHTML = teamSalesContacts;
}
}, {
type: 'layoutPanel',
title: 'Staff',
contentContainer: 'StaffPanel',
initContent: function () {
if (team === 'Sales') {
document.querySelector('#staffDiv').innerHTML = teamSalesStaff;
} else {
document.querySelector('#staffDiv').innerHTML = teamSupportStaff;
}
}
}]
}, {
type: 'tabbedGroup',
allowPin: false,
height: '50%',
pinnedHeight: 30,
items: [{
type: 'layoutPanel',
title: 'Project History',
contentContainer: 'ProjectHistoryPanel',
initContent: function () {
initProjectHistoryChart();
}
}]
}]
}]
}];
JQXElements.settings['layoutSettings'] =
{
layout: layout,
contextMenu: true
}
</script>
</head>
<body>
<div class="example-description">
This demo shows how to use Custom element Layout and other jQWidgets components to create a dashboard.
</div>
<jqx-layout settings="layoutSettings">
<div data-container="TeamsPanel">
<div id="teamsDataTable" class="no-border">
</div>
</div>
<div data-container="ProjectsPanel">
<div id="projectsListBox" class="no-border">
</div>
</div>
<div data-container="ProjectsTimelinePanel">
<div id="projectsTimelineDiv" style="margin: 5px 0 0 5px;">
</div>
</div>
<div data-container="ContactsPanel">
<table id="contactsTable" style="margin: 20px;"></table>
</div>
<div data-container="StaffPanel">
<div id="staffDiv" class="no-border" style="margin-left: 5px; margin: 20px;">
</div>
</div>
<div data-container="ProjectHistoryPanel">
<div id="projectHistoryChart" style="border: none; width: 99.9%; height: 100%;">
</div>
</div>
</jqx-layout>
</body>
</html>