Formatter/Bootstrap.pm; use configured cookie_name

This commit is contained in:
Dietmar Maurer 2017-01-14 17:16:22 +01:00
parent fc87cd5ec3
commit 6189d2ef0a

View File

@ -6,17 +6,12 @@ use URI::Escape;
use HTML::Entities;
use JSON;
# FIXME: cookie_name
# FIXME: console code??
# FIXME: remove console code??
# Helpers to generate simple html pages using Bootstrap markup.
my $jssrc = <<_EOJS;
PVE = {
delete_auth_cookie: function() {
document.cookie = "PVEAuthCookie=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/; secure;";
},
open_vm_console: function(node, vmid) {
PVE.open_vm_console = function(node, vmid) {
console.log("open vm " + vmid + " on node " + node);
var downloadWithName = function(uri, name) {
@ -60,7 +55,6 @@ PVE = {
downloadWithName(url, "pve-spice.vv");
}
});
}
};
_EOJS
@ -70,6 +64,7 @@ sub new {
my $self = bless {
url => $url,
title => $title,
cookie_name => $auth->{cookie_name},
js => '',
};
@ -83,12 +78,19 @@ sub new {
sub body {
my ($self, $html) = @_;
my $jssetup = '';
my $jssetup = "PVE = {};\n\n"; # create namespace
if ($self->{csrftoken}) {
$jssetup .= "PVE.CSRFPreventionToken = '$self->{csrftoken}';\n";
}
$jssetup .= "PVE.delete_auth_cookie = function() {\n";
if ($self->{cookie_name}) {
$jssetup .= " document.cookie = \"$self->{cookie_name}=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/; secure;\";\n";
};
$jssetup .= "};\n";
return <<_EOD;
<!DOCTYPE html>
<html lang="en">
@ -102,8 +104,8 @@ sub body {
<link href="/css/bootstrap.min.css" rel="stylesheet">
<script type="text/javascript">
$jssrc
$jssetup
$jssrc
</script>
<style>