1f4cea3606
IE11 is not supported with ExtJS 4, so we have to force the IE rendering engine to parse the page as an older version. This fixes the problem of the component tree icons not appearing. IE11 is supported in ExtJS so this header is not needed in manager5/ (tested OK) Closes https://bugzilla.proxmox.com/show_bug.cgi?id=645
68 lines
1.8 KiB
Perl
68 lines
1.8 KiB
Perl
package PVE::ExtJSIndex;
|
|
|
|
use strict;
|
|
use warnings;
|
|
|
|
sub get_index {
|
|
my ($lang, $username, $csrftoken, $console) = @_;
|
|
|
|
my $page = <<_EOD;
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<meta http-equiv="X-UA-Compatible" content="IE=10">
|
|
<title>Proxmox Virtual Environment</title>
|
|
|
|
<link rel="stylesheet" type="text/css" href="/pve2/ext4/resources/css/ext-all.css" />
|
|
<link rel="stylesheet" type="text/css" href="/pve2/css/ext-pve.css" />
|
|
_EOD
|
|
|
|
my $langfile = "/usr/share/pve-manager/locale/pve-lang-${lang}.js";
|
|
if (-f $langfile) {
|
|
$page .= "<script type='text/javascript' src='/pve2/locale/pve-lang-${lang}.js'></script>";
|
|
} else {
|
|
$page .= '<script type="text/javascript">function gettext(buf) { return buf; }</script>';
|
|
}
|
|
|
|
$page .= <<_EOD;
|
|
<script type="text/javascript" src="/pve2/ext4/ext-all-debug.js"></script>
|
|
<script type="text/javascript" src="/pve2/ext4/pvemanagerlib.js"></script>
|
|
<script type="text/javascript" src="/pve2/ext4/locale/ext-lang-${lang}.js"></script>
|
|
_EOD
|
|
|
|
my $jssrc = <<_EOJS;
|
|
if (typeof(PVE) === 'undefined') PVE = {};
|
|
PVE.UserName = '$username'
|
|
PVE.CSRFPreventionToken = '$csrftoken';
|
|
_EOJS
|
|
|
|
my $workspace = defined($console) ?
|
|
"PVE.ConsoleWorkspace" : "PVE.StdWorkspace";
|
|
|
|
$jssrc .= <<_EOJS;
|
|
// we need this (the java applet ignores the zindex)
|
|
Ext.useShims = true;
|
|
Ext.History.fieldid = 'x-history-field';
|
|
Ext.onReady(function() { Ext.create('$workspace');});
|
|
_EOJS
|
|
|
|
$page .= <<_EOD;
|
|
<script type="text/javascript">$jssrc</script>
|
|
|
|
</head>
|
|
<body>
|
|
<!-- Fields required for history management -->
|
|
<form id="history-form" class="x-hidden">
|
|
<input type="hidden" id="x-history-field"/>
|
|
</form>
|
|
</body>
|
|
</html>
|
|
_EOD
|
|
|
|
return $page;
|
|
|
|
}
|
|
|
|
1;
|