Private
Server IP : 195.201.23.43  /  Your IP : 18.218.44.61
Web Server : Apache
System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64
User : kdecoratie ( 1041)
PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/webmin/bacula-backup/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /usr/share/webmin/bacula-backup//treechooser.cgi
#!/usr/bin/perl
# treechooser.cgi
# Outputs HTML for a javascript file-chooser tree

require './bacula-backup-lib.pl';
&PrintHeader();
&ReadParse();

$shortest = "/";
$in{'job'} =~ s/^(.*)_(\d+)$/$2/g;
print <<EOF;
<html>
<head>
	<title>$text{'tree_title'}</title>
	<link rel="stylesheet" href="jstree/themes/default/style.min.css" />
	<style>
		body {
			margin: 0;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 0.8em;
		}
		.buttons {
			display: flex;
			flex-flow: row nowrap;
			justify-content: center;
			padding: 5px;
		}
		.main-container {
			display: flex;
			flex-flow: column nowrap;
			height: 100%;
		}
		.spaced-button {
			margin: 5px;
		}
		#jstree {
			flex: 1;
			margin: 10px;
			margin-bottom: 0px;
			border: thin solid gray;
			overflow: auto;
		}
	</style>
</head>

<body>

<div class="main-container">
	<div id="jstree"></div>
	<div class="buttons">
		<button id="confirm" class="ui-button ui-widget ui-corner-all spaced-button">OK</button>
		<button id="cancel"  class="ui-button ui-widget ui-corner-all spaced-button">Cancel</button>
	</div>
</div>

<script src="jstree/jquery-3.6.0.min.js"></script>
<script src="jstree/jstree.min.js"></script>

<script>
	\$("#cancel").click(function() {
		window.close();
	});

	\$("#confirm").click(function() {
		let list = \$('#jstree').jstree(true).get_selected(true).map(n => n.original.fullpath).sort().reduce((a, v) => (a + '\\n' + v));
		\$(top.ifield).val(list);
		window.close();
	});

	\$(function () {
		\$('#jstree').jstree({
			'plugins' : [ 'checkbox' ],
			'core' : {
				'animation': 100,
				'worker' : false,
				'force_text': true,
				'data' : {
					'url' : function (node) {
						const r = [];
						r.push('fmt='    + 'json');
						r.push('job='    + encodeURIComponent('$in{'job'}'));
						r.push('volume=' + encodeURIComponent('$in{'volume'}'));
						r.push('dir='    + ((node.id == '#') ? encodeURIComponent('$shortest') : encodeURIComponent(node.original.fullpath)));
						return 'list.cgi?' + r.join('&');
					}
				}
			}
		});
	});
</script>

</body>
</html>
EOF
Private