]> git.proxmox.com Git - pve-manager.git/blob - PVE/ExtJSIndex.pm
800443c5e65bee630c0ad097c55db43882024566
[pve-manager.git] / PVE / ExtJSIndex.pm
1 package PVE::ExtJSIndex;
2
3 use strict;
4 use warnings;
5
6 sub get_index {
7 my ($lang, $username, $csrftoken, $console, $nodename, $debug) = @_;
8
9 my $page = <<_EOD;
10 <!DOCTYPE html>
11 <html>
12 <head>
13 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
14 <meta http-equiv="X-UA-Compatible" content="IE=edge">
15 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
16 <title>$nodename - Proxmox Virtual Environment</title>
17 <link rel="icon" sizes="128x128" href="/pve2/images/logo-128.png" />
18 <link rel="apple-touch-icon" sizes="128x128" href="/pve2/images/logo-128.png" />
19 <link rel="stylesheet" type="text/css" href="/pve2/ext6/theme-crisp/resources/theme-crisp-all.css" />
20 <link rel="stylesheet" type="text/css" href="/pve2/ext6/crisp/resources/charts-all.css" />
21 <link rel="stylesheet" type="text/css" href="/pve2/css/font-awesome.css" />
22 <link rel="stylesheet" type="text/css" href="/pve2/css/ext6-pve.css" />
23 _EOD
24
25 my $langfile = "/usr/share/pve-manager/locale/pve-lang-${lang}.js";
26 if (-f $langfile) {
27 $page .= " <script type='text/javascript' src='/pve2/locale/pve-lang-${lang}.js'></script>\n";
28 } else {
29 $page .= " <script type='text/javascript'>function gettext(buf) { return buf; }</script>\n";
30 }
31
32 if ($debug) {
33 $page .= <<_EOD;
34 <script type="text/javascript" src="/pve2/ext6/ext-all-debug.js"></script>
35 <script type="text/javascript" src="/pve2/ext6/charts-debug.js"></script>
36 _EOD
37 } else {
38 $page .= <<_EOD;
39 <script type="text/javascript" src="/pve2/ext6/ext-all.js"></script>
40 <script type="text/javascript" src="/pve2/ext6/charts.js"></script>
41 _EOD
42 }
43
44 $page .= <<_EOD;
45 <script type="text/javascript" src="/pve2/ext6/pvemanagerlib.js"></script>
46 <script type="text/javascript" src="/pve2/ext6/locale/locale-${lang}.js"></script>
47 _EOD
48
49 my $jssrc = <<_EOJS;
50 if (typeof(PVE) === 'undefined') PVE = {};
51 PVE.UserName = '$username'
52 PVE.CSRFPreventionToken = '$csrftoken';
53 Ext.History.fieldid = 'x-history-field';
54 Ext.onReady(function() { Ext.create('PVE.StdWorkspace');});
55 _EOJS
56
57 $page .= <<_EOD;
58 <script type="text/javascript">$jssrc</script>
59
60 </head>
61 <body>
62 <!-- Fields required for history management -->
63 <form id="history-form" class="x-hidden">
64 <input type="hidden" id="x-history-field"/>
65 </form>
66 </body>
67 </html>
68 _EOD
69
70 return $page;
71
72 }
73
74 1;