summaryrefslogtreecommitdiffstats
path: root/panes/settingsGeneral.html
diff options
context:
space:
mode:
Diffstat (limited to 'panes/settingsGeneral.html')
-rw-r--r--panes/settingsGeneral.html892
1 files changed, 446 insertions, 446 deletions
diff --git a/panes/settingsGeneral.html b/panes/settingsGeneral.html
index 610d029..e383545 100644
--- a/panes/settingsGeneral.html
+++ b/panes/settingsGeneral.html
@@ -1,446 +1,446 @@
-<!--
-
- General Machine Settings
- Copyright (C) 2010-2015 Ian Moore (imoore76 at yahoo dot com)
-
- $Id: settingsGeneral.html 599 2015-07-27 10:40:37Z imoore76 $
-
- -->
-<ul>
- <li><a href="#vboxSettingsTabGeneralBasic"><span class='translate'>Basic</span></a></li>
- <li><a href="#vboxSettingsTabGeneralAdvanced"><span class='translate'>Advanced</span></a></li>
- <li><a href="#vboxSettingsTabGeneralDescription"><span class='translate'>Description</span></a></li>
- <li><a href="#vboxSettingsTabGeneralEncryption"><span class='translate'>Encryption</span></a></li>
- <li id='vboxSettingsTabGeneralInputTab'><a href="#vboxSettingsTabGeneralInput"><span class='translateinputtab'>Input</span></a></li>
-</ul>
-
-<!-- Basic Tab -->
-<div id='vboxSettingsTabGeneralBasic' title='Basic'>
-<table class='vboxVertical'>
- <tr>
- <th><span class='translateos'>Name:</span></th>
- <td colspan='2'><input type='text' class='vboxText' name='vboxSettingsGeneralName' /></td>
- </tr>
- <tr>
- <th><span class='translateos'>Type:</span></th>
- <td><select name='vboxSettingsGeneralOSFamily' id='vboxSettingsGeneralOSFamily' >
- <option value='Linux'>Linux</option>
- </select></td>
- <td rowspan='2'><img name='vboxOSTypeImg' height='32' width='32' /></td>
- </tr>
- <tr>
- <th><span class='translateos'>Version:</span></th>
- <td><select id='vboxSettingsGeneralOSType' name='vboxSettingsGeneralOSType'>
- <option value='Debian'>Debian</option>
- </select></td>
- </tr>
- <tr id='vboxSettingsRowVMIcon' class='vboxRunningEnabled' style='display:none'>
- <th><span class='translate'>Icon URL:</span></th>
- <td><input name='vboxSettingsGeneralIcon' type='text' class='vboxText' style='width:99%'/></td>
- <td style='text-align:center;'><img src='images/vbox/blank.gif' id='vboxSettingsGeneralIconImg' height='32' width='32' /></td>
- </tr>
- <tr class='vboxStartStopConfig vboxRunningEnabled'>
- <th><span class='translate'>Startup Mode:</span></th>
- <td colspan='2'>
- <select name='vboxStartStopConfigStartup'>
- <option value='auto'>Automatic</option>
- <option value='manual'>Manual</option>
- </select>
- </td>
- </tr>
- <!-- Autostart shutdown options -->
- <tr class='vboxAutostartConfig vboxRunningEnabled' id='vboxAutostartConfigShutdown'>
- <th><span class='translate'>Shutdown mode:</span></th>
- <td colspan='2'>
- <select name='vboxAutostartConfigShutdownOptions'>
- <option value='Disabled'>Disabled</option>
- <option value='SaveState'>Save State</option>
- <option value='PowerOff'>Power Off</option>
- <option value='AcpiShutdown'>ACPI Shutdown</option>
- </select>
- </td>
- </tr>
- <!-- Autostart options -->
- <tr class='vboxAutostartConfig vboxRunningEnabled' id='vboxAutostartConfigStartup'>
- <th><span class='translate'>Enable auto-start:</span></th>
- <td colspan='2'>
- <input type='checkbox' class='vboxCheckbox' name='autostartEnabled'/> <span class='translate'>after</span>
- <input type='text' class='vboxText' size='3' name='autostartDelay' style='width: 30px'/>
- <span class='translate'>second(s)</span>
- </td>
- </tr>
-</table>
-</div>
-
-<!-- Advanced Tab -->
-<div id='vboxSettingsTabGeneralAdvanced' title='Advanced'>
-<table class='vboxVertical'>
- <tr>
- <th><span class='translate'>Snapshot Folder:</span></th>
- <td class='vboxFileFolderInput'>
- <input type='text' class='vboxText' name='vboxSettingsGeneralSnapshotFolder' /><input type="button" class="vboxImgButton" style="background-image: url(images/vbox/select_file_16px.png)"
- onClick="vboxSnapshotBrowseFolder(this);" />
- </td>
- </tr>
-</table>
-</div>
-
-<!-- Description Tab -->
-<div id='vboxSettingsTabGeneralDescription' title='Description'>
- <textarea class='vboxRunningEnabled' rows='16' cols='20' name='vboxSettingsGeneralDescription'></textarea>
-</div>
-
-<!-- Encryption Tab -->
-<div id='vboxSettingsTabGeneralEncryption' title='Encryption'>
-<table class='vboxVertical'>
- <tr>
- <td colspan='2'>
- <label><input type='checkbox' class='vboxCheckbox vboxEnablerCheckbox' name='vboxSettingsGeneralEncryptionEnable' />
- <span class='translate'>Enable Encryption</span>
- </label>
- </td>
- </tr>
- <tr>
- <th><span class='translate'>Encryption Cipher:</span></th>
- <td>
- <select name='vboxSettingsTabGeneralEncryptionCipher'>
- <option value=''>Leave Unchanged</option>
- <option value='AES-XTS256-PLAIN64'>AES-XTS256-PLAIN64</option>
- <option value='AES-XTS128-PLAIN64'>AES-XTS128-PLAIN64</option>
- </select>
- </td>
- </tr>
- <tr>
- <th><span class='translate'>Enter New Password:</span></th>
- <td><input type='password' class='vboxText' name='vboxGeneralEncryptionPassword'/></td>
- </tr>
- <tr>
- <th><span class='translate'>Confirm New Password:</span></th>
- <td><input type='password' class='vboxText' name='vboxGeneralEncryptionPassword2'/></td>
- </tr>
-
-</table>
-</div>
-
-<!-- Input Tab -->
-<div id='vboxSettingsTabGeneralInput' title='Input'>
- <table class='vboxVertical'>
- <tr>
- <th><span class='translateinput'>Keyboard</span><span> :</span></th>
- <td><select name='vboxSettingsTabGeneralInputKeyboard'>
- <option value='PS2Keyboard'>PS/2 Keyboard</option>
- <option value='USBKeyboard'>USB Keyboard</option>
- </select>
- </td>
- </tr>
- <tr>
- <th><span class='translateinput'>Mouse</span><span> :</span></th>
- <td><select name='vboxSettingsTabGeneralInputMouse'>
- <option value='PS2Mouse'>PS/2 Mouse</option>
- <option value='USBMouse'>USB Mouse</option>
- <option value='USBTablet'>USB Tablet</option>
- </select>
- </td>
- </tr>
- </table>
-</div>
-<script type='text/javascript'>
-
-/* Translations */
-$('#vboxSettingsTabGeneralInput').find(".translateinput").html(function(i,h){return trans(h,'UIActionPool');});
-$('#vboxSettingsTabGeneralInputTab').find(".translateinputtab").html(function(i,h){return trans(h,'UISettingsDialogGlobal');});
-$('#vboxSettingsTabGeneralBasic').find(".translateos").html(function(i,h){return trans(h,'UINameAndSystemEditor');});
-if($('#vboxPane').data('vboxConfig').vboxAutostartConfig) {
-
- // Shutdown options select buttons
- $('#vboxAutostartConfigShutdown').find('option').each(function(i,opt){
- $(opt).text(i == 0 ? trans('Disabled','UIGDetails',null,'details (audio)') : trans($(opt).text(),'UIActionPool'));
- if($(opt).val() == $('#vboxSettingsDialog').data('vboxMachineData').autostopType)
- $(opt).prop('selected', true);
- });
-
-} else {
- $('#vboxSettingsTabGeneralBasic .vboxAutostartConfig').empty().remove();
-}
-
-$('#vboxSettingsTabGeneralEncryption').find('option').html(function(i,h){ return trans(h, 'UIMachineSettingsGeneral', 'cipher type')});
-$('#vboxSettingsTabGeneralInput').find('option').html(function(i,h){ return trans(h, 'VBoxGlobal')});
-
-/* Browse for snapshot folder */
-function vboxSnapshotBrowseFolder(btn) {
- vboxFileBrowser($(btn).siblings('input').first().val(),function(f){
- if(f) $(btn).siblings('input').first().val(f);
- },true,trans('Snapshot Folder:','UIMachineSettingsGeneral').replace(':',''));
-}
-
-/*
- * Hide start / stop config if not enabled
- */
-if(!$('#vboxPane').data('vboxConfig').startStopConfig) {
-
- $('#vboxSettingsTabGeneralBasic').find('tr.vboxStartStopConfig').hide();
-
-}
-
-/* Custom icons */
-if($('#vboxPane').data('vboxConfig').enableCustomIcons) {
-
- $('#vboxSettingsRowVMIcon').css('display','');
-
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).blur(function(){
- $('#vboxSettingsGeneralIconImg').attr('src',(this.value ? this.value : 'images/vbox/blank.gif'));
- });
-}
-
-/*
- * Called when OS family type changes
- */
-function vboxSettingsUpdateOSList(osfam) {
- document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.options.length = 0;
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).children().remove();
- for(var i = 0; i < vboxSettingsOSTypes[osfam].osTypes.length; i++) {
- document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.options[i] = new Option(vboxSettingsOSTypes[osfam].osTypes[i].description, vboxSettingsOSTypes[osfam].osTypes[i].id);
- }
- // Update image
- document.images["vboxOSTypeImg"].src = "images/vbox/" + vboxGuestOSTypeIcon(vboxSettingsOSTypes[osfam].osTypes[0].id);
-}
-
-var vboxSettingsOSTypes = new Array();
-var vboxSettingsOSTypesObj = {};
-
-// shorthand
-var vboxOSTypes = $('#vboxPane').data('vboxOSTypes');
-
-// Default OS Type set to my fav :) Eventually will move to config.php
-var vboxDefaultOSTypeId = 'Debian';
-
-var myOSType = $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId;
-var dosfam = null; // holds defaultostype family id
-for(var i in vboxOSTypes) {
-
- // Only ostypes supported by this install
- if(!vboxOSTypes[i].supported && myOSType != vboxOSTypes[i].id) continue;
-
- // create array of os family types
- if(!vboxSettingsOSTypes[vboxOSTypes[i].familyId]) {
- vboxSettingsOSTypes[vboxOSTypes[i].familyId] = {'id':vboxOSTypes[i].familyId,'description':vboxOSTypes[i].familyDescription,'osTypes':[]};
- }
-
- // We're on the default os type, record family id and index number
- // so that we can set it later on
- if(vboxOSTypes[i].id == vboxDefaultOSTypeId) {
- dosfam = vboxOSTypes[i].familyId;
- vboxDefaultOSTypeId = vboxSettingsOSTypes[vboxOSTypes[i].familyId].osTypes.length;
- }
-
- vboxSettingsOSTypes[vboxOSTypes[i].familyId].osTypes[vboxSettingsOSTypes[vboxOSTypes[i].familyId].osTypes.length] = {'id':vboxOSTypes[i].id,'description':vboxOSTypes[i].description };
-
- vboxSettingsOSTypesObj[vboxOSTypes[i].id] = vboxOSTypes[i];
-
- // Preload icons
- vboxOSTypes[i].icon = new Image();
- vboxOSTypes[i].icon.src = "images/vbox/" + vboxGuestOSTypeIcon(vboxOSTypes[i].id);
-
-}
-// clear all options
-document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options.length = 0;
-$(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).children().remove();
-for(var i in vboxSettingsOSTypes) {
- // default os type family? record in dosfam
- if(i == dosfam) dosfam = document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options.length;
- document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options[document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options.length] = new Option(vboxSettingsOSTypes[i].description, vboxSettingsOSTypes[i].id);
-}
-// OnChange, update os type list and icon
-document.getElementById('vboxSettingsGeneralOSFamily').setAttribute('onChange','vboxSettingsUpdateOSList(this.value)');
-document.getElementById('vboxSettingsGeneralOSType').setAttribute('onChange','document.images["vboxOSTypeImg"].src = "images/vbox/" + vboxGuestOSTypeIcon(this.value)');
-
-
-
-
-/* Update settings when data is loaded */
-$('#vboxSettingsDialog').on('dataLoaded', function(){
-
- /* Defaults from machine */
- document.forms['frmVboxSettings'].vboxSettingsGeneralName.value = $('#vboxSettingsDialog').data('vboxMachineData').name;
- document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.value = vboxSettingsOSTypesObj[$('#vboxSettingsDialog').data('vboxMachineData').OSTypeId].familyId;
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).change();
- document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.value = $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId;
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).change();
- document.forms['frmVboxSettings'].vboxSettingsGeneralSnapshotFolder.value = $('#vboxSettingsDialog').data('vboxMachineData').snapshotFolder;
- document.forms['frmVboxSettings'].vboxSettingsGeneralDescription.innerHTML = $('#vboxSettingsDialog').data('vboxMachineData').description;
-
- /* Advanced config options */
- $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputKeyboard).val($('#vboxSettingsDialog').data('vboxMachineData').keyboardHIDType);
- $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputMouse).val($('#vboxSettingsDialog').data('vboxMachineData').pointingHIDType);
-
- /* OS Type */
-
- // shorthand
- var vboxOSTypes = $('#vboxPane').data('vboxOSTypes');
- for(var i = 0; i < vboxOSTypes.length; i++) {
- if(vboxOSTypes[i].id == $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId) {
- // Set the family then os type
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).children('[value="'+vboxOSTypes[i].familyId+'"]').prop('selected',true);
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).trigger('change');
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).children('[value="'+vboxOSTypes[i].id+'"]').prop('selected',true);
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).trigger('change');
- break;
- }
- }
-
- /* Custom icons */
- if($('#vboxPane').data('vboxConfig').enableCustomIcons) {
-
- if($('#vboxSettingsDialog').data('vboxMachineData').customIcon) {
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).val($('#vboxSettingsDialog').data('vboxMachineData').customIcon);
- $('#vboxSettingsGeneralIconImg').attr('src',$('#vboxSettingsDialog').data('vboxMachineData').customIcon);
- } else {
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).val('');
- $('#vboxSettingsGeneralIconImg').attr('src','images/vbox/blank.gif');
- }
-
- }
-
- /* Autostart options */
- if($('#vboxPane').data('vboxConfig').vboxAutostartConfig) {
- document.forms['frmVboxSettings'].autostartEnabled.checked = ($('#vboxSettingsDialog').data('vboxMachineData').autostartEnabled);
- document.forms['frmVboxSettings'].autostartDelay.value = $('#vboxSettingsDialog').data('vboxMachineData').autostartDelay;
- }
-
- /* Start / stop config */
- if($('#vboxPane').data('vboxConfig').startStopConfig) {
- document.forms['frmVboxSettings'].vboxStartStopConfigStartup.selectedIndex = ($('#vboxSettingsDialog').data('vboxMachineData').startupMode == 'auto' ? 0 : 1);
- }
-
- /* Settings that are disabled / enabled depending on if VM is mutable */
- var p = $('#vboxSettingsTabGeneralBasic').parent().children('div');
- if(!$('#vboxSettingsDialog').data('vboxFullEdit')) {
- $(p).find('tr:not(.vboxRunningEnabled)').find('span').addClass('disabled');
- $(p).find('tr:not(.vboxRunningEnabled)').find('input,select,textarea').prop('disabled',true);
- $('#vboxSettingsTabGeneralAdvanced').find('input.vboxImgButton').css('background-image','url(images/vbox/select_file_disabled_16px.png)');
- $(document.images["vboxOSTypeImg"]).addClass('vboxDisabled');
- } else {
- $(p).find('tr:not(.vboxRunningEnabled)').find('span').removeClass('disabled');
- $(p).find('tr:not(.vboxRunningEnabled)').find('input,select,textarea').prop('disabled',false);
- $('#vboxSettingsTabGeneralAdvanced').find('input.vboxImgButton').css('background-image','url(images/vbox/select_file_16px.png)');
- $(document.images["vboxOSTypeImg"]).removeClass('vboxDisabled');
- }
-
- /*
- * This is a poor way to determine extpack installation status, but the web service can't access IExtPackManager :(
- */
- if(!($('#vboxSettingsDialog').data('vboxMachineData').VRDEServer && $('#vboxSettingsDialog').data('vboxMachineData').VRDEServer.VRDEExtPack)) {
- $('#vboxSettingsTabGeneralEncryption').parent().tabs('disable', 3);
- } else {
- $('#vboxSettingsTabGeneralEncryption').parent().tabs('enable', 3);
-
- // Encrypted media
- var encIds = vboxMedia.getEncryptedMediaIds(
- vboxStorage.getAttachedBaseMedia($('#vboxSettingsDialog').data('vboxMachineData'))
- );
-
- var lastCipher = null;
- var uniqueCiphers = true;
- for(var i = 0; i < encIds.length; i++) {
- if(lastCipher && (lastCipher != encIds[i].cipher)) {
- uniqueCiphers = false;
- break;
- }
- lastCipher = encIds[i].cipher;
- }
- $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked', (encIds.length))
- .triggerHandler('click');
-
- if(uniqueCiphers) {
- $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val(lastCipher);
- }
-
- $('#vboxSettingsDialog').data('vboxEncSettings', {
- enabled: $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked'),
- uniqueCiphers: $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val()
- });
- }
-
-
-/* Change general settings onSave() */
-}).on('save',function(){
-
- // Start / stop config
- if($('#vboxPane').data('vboxConfig').startStopConfig) {
- $('#vboxSettingsDialog').data('vboxMachineData').startupMode = document.forms['frmVboxSettings'].vboxStartStopConfigStartup.value;
- }
-
- // VirtualBox style start / stop config
- if($('#vboxPane').data('vboxConfig').vboxAutostartConfig) {
-
- $('#vboxSettingsDialog').data('vboxMachineData').autostopType = document.forms['frmVboxSettings'].vboxAutostartConfigShutdownOptions.value;
- $('#vboxSettingsDialog').data('vboxMachineData').autostartEnabled = document.forms['frmVboxSettings'].autostartEnabled.checked;
- if(isNaN(document.forms['frmVboxSettings'].autostartDelay.value))
- document.forms['frmVboxSettings'].autostartDelay.value = 0;
- $('#vboxSettingsDialog').data('vboxMachineData').autostartDelay = parseInt(document.forms['frmVboxSettings'].autostartDelay.value);
-
-
- }
-
- if(jQuery.trim(document.forms['frmVboxSettings'].vboxSettingsGeneralName.value))
- $('#vboxSettingsDialog').data('vboxMachineData').name = jQuery.trim(document.forms['frmVboxSettings'].vboxSettingsGeneralName.value);
-
- $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId = document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.value;
- $('#vboxSettingsDialog').data('vboxMachineData').snapshotFolder = document.forms['frmVboxSettings'].vboxSettingsGeneralSnapshotFolder.value;
- $('#vboxSettingsDialog').data('vboxMachineData').description = $(document.forms['frmVboxSettings'].vboxSettingsGeneralDescription).val();
-
- $('#vboxSettingsDialog').data('vboxMachineData').keyboardHIDType = $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputKeyboard).val();
- $('#vboxSettingsDialog').data('vboxMachineData').pointingHIDType = $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputMouse).val();
-
- if($('#vboxPane').data('vboxConfig').enableCustomIcons)
- $('#vboxSettingsDialog').data('vboxMachineData').customIcon = $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).val();
-
- var encSettings = $('#vboxSettingsDialog').data('vboxEncSettings');
- if(encSettings) {
- var encSettingsChanged = (encSettings.enabled != $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked')) ||
- (encSettings.uniqueCiphers != $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val()) ||
- $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val().length > 0;
-
- if(!encSettings.enabled && !$(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked'))
- encSettingsChanged = false;
-
- $('#vboxSettingsDialog').data('vboxEncSettingsChanged', encSettingsChanged);
- $('#vboxSettingsDialog').data('vboxEncEnabled', $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked'));
- $('#vboxSettingsDialog').data('vboxEncCipher', $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val());
- $('#vboxSettingsDialog').data('vboxEncPw', $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val());
- } else {
- $('#vboxSettingsDialog').data('vboxEncSettingsChanged', false);
- }
-
-});
-
-function vboxSettingsGeneralValidate() {
-
- var encSettings = $('#vboxSettingsDialog').data('vboxEncSettings');
-
- // Going from disabled to enabled
- if(!encSettings.enabled && $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked')) {
-
- if(!$(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val()) {
- vboxAlert(trans("Encryption cipher type not specified.", 'UIMachineSettingsGeneral'));
- return false;
- } else if(!$(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val()) {
- vboxAlert(trans("Encryption password empty.", 'UIMachineSettingsGeneral'));
- return false;
- } else if($(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val() != $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword2).val()) {
- vboxAlert(trans("Encryption passwords do not match.", 'UIMachineSettingsGeneral'));
- return false;
- }
-
- // If enabled and poasswords don't match
- } else if($(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked')) {
- if($(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val() != $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword2).val()) {
- vboxAlert(trans("Encryption passwords do not match.", 'UIMachineSettingsGeneral'));
- return false;
- }
- }
- return true;
-}
-
-</script>
-
+<!--
+
+ General Machine Settings
+ Copyright (C) 2010-2015 Ian Moore (imoore76 at yahoo dot com)
+
+ $Id: settingsGeneral.html 599 2015-07-27 10:40:37Z imoore76 $
+
+ -->
+<ul>
+ <li><a href="#vboxSettingsTabGeneralBasic"><span class='translate'>Basic</span></a></li>
+ <li><a href="#vboxSettingsTabGeneralAdvanced"><span class='translate'>Advanced</span></a></li>
+ <li><a href="#vboxSettingsTabGeneralDescription"><span class='translate'>Description</span></a></li>
+ <li><a href="#vboxSettingsTabGeneralEncryption"><span class='translate'>Encryption</span></a></li>
+ <li id='vboxSettingsTabGeneralInputTab'><a href="#vboxSettingsTabGeneralInput"><span class='translateinputtab'>Input</span></a></li>
+</ul>
+
+<!-- Basic Tab -->
+<div id='vboxSettingsTabGeneralBasic' title='Basic'>
+<table class='vboxVertical'>
+ <tr>
+ <th><span class='translateos'>Name:</span></th>
+ <td colspan='2'><input type='text' class='vboxText' name='vboxSettingsGeneralName' /></td>
+ </tr>
+ <tr>
+ <th><span class='translateos'>Type:</span></th>
+ <td><select name='vboxSettingsGeneralOSFamily' id='vboxSettingsGeneralOSFamily' >
+ <option value='Linux'>Linux</option>
+ </select></td>
+ <td rowspan='2'><img name='vboxOSTypeImg' height='32' width='32' /></td>
+ </tr>
+ <tr>
+ <th><span class='translateos'>Version:</span></th>
+ <td><select id='vboxSettingsGeneralOSType' name='vboxSettingsGeneralOSType'>
+ <option value='Debian'>Debian</option>
+ </select></td>
+ </tr>
+ <tr id='vboxSettingsRowVMIcon' class='vboxRunningEnabled' style='display:none'>
+ <th><span class='translate'>Icon URL:</span></th>
+ <td><input name='vboxSettingsGeneralIcon' type='text' class='vboxText' style='width:99%'/></td>
+ <td style='text-align:center;'><img src='images/vbox/blank.gif' id='vboxSettingsGeneralIconImg' height='32' width='32' /></td>
+ </tr>
+ <tr class='vboxStartStopConfig vboxRunningEnabled'>
+ <th><span class='translate'>Startup Mode:</span></th>
+ <td colspan='2'>
+ <select name='vboxStartStopConfigStartup'>
+ <option value='auto'>Automatic</option>
+ <option value='manual'>Manual</option>
+ </select>
+ </td>
+ </tr>
+ <!-- Autostart shutdown options -->
+ <tr class='vboxAutostartConfig vboxRunningEnabled' id='vboxAutostartConfigShutdown'>
+ <th><span class='translate'>Shutdown mode:</span></th>
+ <td colspan='2'>
+ <select name='vboxAutostartConfigShutdownOptions'>
+ <option value='Disabled'>Disabled</option>
+ <option value='SaveState'>Save State</option>
+ <option value='PowerOff'>Power Off</option>
+ <option value='AcpiShutdown'>ACPI Shutdown</option>
+ </select>
+ </td>
+ </tr>
+ <!-- Autostart options -->
+ <tr class='vboxAutostartConfig vboxRunningEnabled' id='vboxAutostartConfigStartup'>
+ <th><span class='translate'>Enable auto-start:</span></th>
+ <td colspan='2'>
+ <input type='checkbox' class='vboxCheckbox' name='autostartEnabled'/> <span class='translate'>after</span>
+ <input type='text' class='vboxText' size='3' name='autostartDelay' style='width: 30px'/>
+ <span class='translate'>second(s)</span>
+ </td>
+ </tr>
+</table>
+</div>
+
+<!-- Advanced Tab -->
+<div id='vboxSettingsTabGeneralAdvanced' title='Advanced'>
+<table class='vboxVertical'>
+ <tr>
+ <th><span class='translate'>Snapshot Folder:</span></th>
+ <td class='vboxFileFolderInput'>
+ <input type='text' class='vboxText' name='vboxSettingsGeneralSnapshotFolder' /><input type="button" class="vboxImgButton" style="background-image: url(images/vbox/select_file_16px.png)"
+ onClick="vboxSnapshotBrowseFolder(this);" />
+ </td>
+ </tr>
+</table>
+</div>
+
+<!-- Description Tab -->
+<div id='vboxSettingsTabGeneralDescription' title='Description'>
+ <textarea class='vboxRunningEnabled' rows='16' cols='20' name='vboxSettingsGeneralDescription'></textarea>
+</div>
+
+<!-- Encryption Tab -->
+<div id='vboxSettingsTabGeneralEncryption' title='Encryption'>
+<table class='vboxVertical'>
+ <tr>
+ <td colspan='2'>
+ <label><input type='checkbox' class='vboxCheckbox vboxEnablerCheckbox' name='vboxSettingsGeneralEncryptionEnable' />
+ <span class='translate'>Enable Encryption</span>
+ </label>
+ </td>
+ </tr>
+ <tr>
+ <th><span class='translate'>Encryption Cipher:</span></th>
+ <td>
+ <select name='vboxSettingsTabGeneralEncryptionCipher'>
+ <option value=''>Leave Unchanged</option>
+ <option value='AES-XTS256-PLAIN64'>AES-XTS256-PLAIN64</option>
+ <option value='AES-XTS128-PLAIN64'>AES-XTS128-PLAIN64</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <th><span class='translate'>Enter New Password:</span></th>
+ <td><input type='password' class='vboxText' name='vboxGeneralEncryptionPassword'/></td>
+ </tr>
+ <tr>
+ <th><span class='translate'>Confirm New Password:</span></th>
+ <td><input type='password' class='vboxText' name='vboxGeneralEncryptionPassword2'/></td>
+ </tr>
+
+</table>
+</div>
+
+<!-- Input Tab -->
+<div id='vboxSettingsTabGeneralInput' title='Input'>
+ <table class='vboxVertical'>
+ <tr>
+ <th><span class='translateinput'>Keyboard</span><span> :</span></th>
+ <td><select name='vboxSettingsTabGeneralInputKeyboard'>
+ <option value='PS2Keyboard'>PS/2 Keyboard</option>
+ <option value='USBKeyboard'>USB Keyboard</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <th><span class='translateinput'>Mouse</span><span> :</span></th>
+ <td><select name='vboxSettingsTabGeneralInputMouse'>
+ <option value='PS2Mouse'>PS/2 Mouse</option>
+ <option value='USBMouse'>USB Mouse</option>
+ <option value='USBTablet'>USB Tablet</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+</div>
+<script type='text/javascript'>
+
+/* Translations */
+$('#vboxSettingsTabGeneralInput').find(".translateinput").html(function(i,h){return trans(h,'UIActionPool');});
+$('#vboxSettingsTabGeneralInputTab').find(".translateinputtab").html(function(i,h){return trans(h,'UISettingsDialogGlobal');});
+$('#vboxSettingsTabGeneralBasic').find(".translateos").html(function(i,h){return trans(h,'UINameAndSystemEditor');});
+if($('#vboxPane').data('vboxConfig').vboxAutostartConfig) {
+
+ // Shutdown options select buttons
+ $('#vboxAutostartConfigShutdown').find('option').each(function(i,opt){
+ $(opt).text(i == 0 ? trans('Disabled','UIGDetails',null,'details (audio)') : trans($(opt).text(),'UIActionPool'));
+ if($(opt).val() == $('#vboxSettingsDialog').data('vboxMachineData').autostopType)
+ $(opt).prop('selected', true);
+ });
+
+} else {
+ $('#vboxSettingsTabGeneralBasic .vboxAutostartConfig').empty().remove();
+}
+
+$('#vboxSettingsTabGeneralEncryption').find('option').html(function(i,h){ return trans(h, 'UIMachineSettingsGeneral', 'cipher type')});
+$('#vboxSettingsTabGeneralInput').find('option').html(function(i,h){ return trans(h, 'VBoxGlobal')});
+
+/* Browse for snapshot folder */
+function vboxSnapshotBrowseFolder(btn) {
+ vboxFileBrowser($(btn).siblings('input').first().val(),function(f){
+ if(f) $(btn).siblings('input').first().val(f);
+ },true,trans('Snapshot Folder:','UIMachineSettingsGeneral').replace(':',''));
+}
+
+/*
+ * Hide start / stop config if not enabled
+ */
+if(!$('#vboxPane').data('vboxConfig').startStopConfig) {
+
+ $('#vboxSettingsTabGeneralBasic').find('tr.vboxStartStopConfig').hide();
+
+}
+
+/* Custom icons */
+if($('#vboxPane').data('vboxConfig').enableCustomIcons) {
+
+ $('#vboxSettingsRowVMIcon').css('display','');
+
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).blur(function(){
+ $('#vboxSettingsGeneralIconImg').attr('src',(this.value ? this.value : 'images/vbox/blank.gif'));
+ });
+}
+
+/*
+ * Called when OS family type changes
+ */
+function vboxSettingsUpdateOSList(osfam) {
+ document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.options.length = 0;
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).children().remove();
+ for(var i = 0; i < vboxSettingsOSTypes[osfam].osTypes.length; i++) {
+ document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.options[i] = new Option(vboxSettingsOSTypes[osfam].osTypes[i].description, vboxSettingsOSTypes[osfam].osTypes[i].id);
+ }
+ // Update image
+ document.images["vboxOSTypeImg"].src = "images/vbox/" + vboxGuestOSTypeIcon(vboxSettingsOSTypes[osfam].osTypes[0].id);
+}
+
+var vboxSettingsOSTypes = new Array();
+var vboxSettingsOSTypesObj = {};
+
+// shorthand
+var vboxOSTypes = $('#vboxPane').data('vboxOSTypes');
+
+// Default OS Type set to my fav :) Eventually will move to config.php
+var vboxDefaultOSTypeId = 'Debian';
+
+var myOSType = $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId;
+var dosfam = null; // holds defaultostype family id
+for(var i in vboxOSTypes) {
+
+ // Only ostypes supported by this install
+ if(!vboxOSTypes[i].supported && myOSType != vboxOSTypes[i].id) continue;
+
+ // create array of os family types
+ if(!vboxSettingsOSTypes[vboxOSTypes[i].familyId]) {
+ vboxSettingsOSTypes[vboxOSTypes[i].familyId] = {'id':vboxOSTypes[i].familyId,'description':vboxOSTypes[i].familyDescription,'osTypes':[]};
+ }
+
+ // We're on the default os type, record family id and index number
+ // so that we can set it later on
+ if(vboxOSTypes[i].id == vboxDefaultOSTypeId) {
+ dosfam = vboxOSTypes[i].familyId;
+ vboxDefaultOSTypeId = vboxSettingsOSTypes[vboxOSTypes[i].familyId].osTypes.length;
+ }
+
+ vboxSettingsOSTypes[vboxOSTypes[i].familyId].osTypes[vboxSettingsOSTypes[vboxOSTypes[i].familyId].osTypes.length] = {'id':vboxOSTypes[i].id,'description':vboxOSTypes[i].description };
+
+ vboxSettingsOSTypesObj[vboxOSTypes[i].id] = vboxOSTypes[i];
+
+ // Preload icons
+ vboxOSTypes[i].icon = new Image();
+ vboxOSTypes[i].icon.src = "images/vbox/" + vboxGuestOSTypeIcon(vboxOSTypes[i].id);
+
+}
+// clear all options
+document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options.length = 0;
+$(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).children().remove();
+for(var i in vboxSettingsOSTypes) {
+ // default os type family? record in dosfam
+ if(i == dosfam) dosfam = document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options.length;
+ document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options[document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.options.length] = new Option(vboxSettingsOSTypes[i].description, vboxSettingsOSTypes[i].id);
+}
+// OnChange, update os type list and icon
+document.getElementById('vboxSettingsGeneralOSFamily').setAttribute('onChange','vboxSettingsUpdateOSList(this.value)');
+document.getElementById('vboxSettingsGeneralOSType').setAttribute('onChange','document.images["vboxOSTypeImg"].src = "images/vbox/" + vboxGuestOSTypeIcon(this.value)');
+
+
+
+
+/* Update settings when data is loaded */
+$('#vboxSettingsDialog').on('dataLoaded', function(){
+
+ /* Defaults from machine */
+ document.forms['frmVboxSettings'].vboxSettingsGeneralName.value = $('#vboxSettingsDialog').data('vboxMachineData').name;
+ document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily.value = vboxSettingsOSTypesObj[$('#vboxSettingsDialog').data('vboxMachineData').OSTypeId].familyId;
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).change();
+ document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.value = $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId;
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).change();
+ document.forms['frmVboxSettings'].vboxSettingsGeneralSnapshotFolder.value = $('#vboxSettingsDialog').data('vboxMachineData').snapshotFolder;
+ document.forms['frmVboxSettings'].vboxSettingsGeneralDescription.innerHTML = $('#vboxSettingsDialog').data('vboxMachineData').description;
+
+ /* Advanced config options */
+ $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputKeyboard).val($('#vboxSettingsDialog').data('vboxMachineData').keyboardHIDType);
+ $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputMouse).val($('#vboxSettingsDialog').data('vboxMachineData').pointingHIDType);
+
+ /* OS Type */
+
+ // shorthand
+ var vboxOSTypes = $('#vboxPane').data('vboxOSTypes');
+ for(var i = 0; i < vboxOSTypes.length; i++) {
+ if(vboxOSTypes[i].id == $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId) {
+ // Set the family then os type
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).children('[value="'+vboxOSTypes[i].familyId+'"]').prop('selected',true);
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSFamily).trigger('change');
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).children('[value="'+vboxOSTypes[i].id+'"]').prop('selected',true);
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralOSType).trigger('change');
+ break;
+ }
+ }
+
+ /* Custom icons */
+ if($('#vboxPane').data('vboxConfig').enableCustomIcons) {
+
+ if($('#vboxSettingsDialog').data('vboxMachineData').customIcon) {
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).val($('#vboxSettingsDialog').data('vboxMachineData').customIcon);
+ $('#vboxSettingsGeneralIconImg').attr('src',$('#vboxSettingsDialog').data('vboxMachineData').customIcon);
+ } else {
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).val('');
+ $('#vboxSettingsGeneralIconImg').attr('src','images/vbox/blank.gif');
+ }
+
+ }
+
+ /* Autostart options */
+ if($('#vboxPane').data('vboxConfig').vboxAutostartConfig) {
+ document.forms['frmVboxSettings'].autostartEnabled.checked = ($('#vboxSettingsDialog').data('vboxMachineData').autostartEnabled);
+ document.forms['frmVboxSettings'].autostartDelay.value = $('#vboxSettingsDialog').data('vboxMachineData').autostartDelay;
+ }
+
+ /* Start / stop config */
+ if($('#vboxPane').data('vboxConfig').startStopConfig) {
+ document.forms['frmVboxSettings'].vboxStartStopConfigStartup.selectedIndex = ($('#vboxSettingsDialog').data('vboxMachineData').startupMode == 'auto' ? 0 : 1);
+ }
+
+ /* Settings that are disabled / enabled depending on if VM is mutable */
+ var p = $('#vboxSettingsTabGeneralBasic').parent().children('div');
+ if(!$('#vboxSettingsDialog').data('vboxFullEdit')) {
+ $(p).find('tr:not(.vboxRunningEnabled)').find('span').addClass('disabled');
+ $(p).find('tr:not(.vboxRunningEnabled)').find('input,select,textarea').prop('disabled',true);
+ $('#vboxSettingsTabGeneralAdvanced').find('input.vboxImgButton').css('background-image','url(images/vbox/select_file_disabled_16px.png)');
+ $(document.images["vboxOSTypeImg"]).addClass('vboxDisabled');
+ } else {
+ $(p).find('tr:not(.vboxRunningEnabled)').find('span').removeClass('disabled');
+ $(p).find('tr:not(.vboxRunningEnabled)').find('input,select,textarea').prop('disabled',false);
+ $('#vboxSettingsTabGeneralAdvanced').find('input.vboxImgButton').css('background-image','url(images/vbox/select_file_16px.png)');
+ $(document.images["vboxOSTypeImg"]).removeClass('vboxDisabled');
+ }
+
+ /*
+ * This is a poor way to determine extpack installation status, but the web service can't access IExtPackManager :(
+ */
+ if(!($('#vboxSettingsDialog').data('vboxMachineData').VRDEServer && $('#vboxSettingsDialog').data('vboxMachineData').VRDEServer.VRDEExtPack)) {
+ $('#vboxSettingsTabGeneralEncryption').parent().tabs('disable', 3);
+ } else {
+ $('#vboxSettingsTabGeneralEncryption').parent().tabs('enable', 3);
+
+ // Encrypted media
+ var encIds = vboxMedia.getEncryptedMediaIds(
+ vboxStorage.getAttachedBaseMedia($('#vboxSettingsDialog').data('vboxMachineData'))
+ );
+
+ var lastCipher = null;
+ var uniqueCiphers = true;
+ for(var i = 0; i < encIds.length; i++) {
+ if(lastCipher && (lastCipher != encIds[i].cipher)) {
+ uniqueCiphers = false;
+ break;
+ }
+ lastCipher = encIds[i].cipher;
+ }
+ $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked', (encIds.length))
+ .triggerHandler('click');
+
+ if(uniqueCiphers) {
+ $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val(lastCipher);
+ }
+
+ $('#vboxSettingsDialog').data('vboxEncSettings', {
+ enabled: $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked'),
+ uniqueCiphers: $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val()
+ });
+ }
+
+
+/* Change general settings onSave() */
+}).on('save',function(){
+
+ // Start / stop config
+ if($('#vboxPane').data('vboxConfig').startStopConfig) {
+ $('#vboxSettingsDialog').data('vboxMachineData').startupMode = document.forms['frmVboxSettings'].vboxStartStopConfigStartup.value;
+ }
+
+ // VirtualBox style start / stop config
+ if($('#vboxPane').data('vboxConfig').vboxAutostartConfig) {
+
+ $('#vboxSettingsDialog').data('vboxMachineData').autostopType = document.forms['frmVboxSettings'].vboxAutostartConfigShutdownOptions.value;
+ $('#vboxSettingsDialog').data('vboxMachineData').autostartEnabled = document.forms['frmVboxSettings'].autostartEnabled.checked;
+ if(isNaN(document.forms['frmVboxSettings'].autostartDelay.value))
+ document.forms['frmVboxSettings'].autostartDelay.value = 0;
+ $('#vboxSettingsDialog').data('vboxMachineData').autostartDelay = parseInt(document.forms['frmVboxSettings'].autostartDelay.value);
+
+
+ }
+
+ if(jQuery.trim(document.forms['frmVboxSettings'].vboxSettingsGeneralName.value))
+ $('#vboxSettingsDialog').data('vboxMachineData').name = jQuery.trim(document.forms['frmVboxSettings'].vboxSettingsGeneralName.value);
+
+ $('#vboxSettingsDialog').data('vboxMachineData').OSTypeId = document.forms['frmVboxSettings'].vboxSettingsGeneralOSType.value;
+ $('#vboxSettingsDialog').data('vboxMachineData').snapshotFolder = document.forms['frmVboxSettings'].vboxSettingsGeneralSnapshotFolder.value;
+ $('#vboxSettingsDialog').data('vboxMachineData').description = $(document.forms['frmVboxSettings'].vboxSettingsGeneralDescription).val();
+
+ $('#vboxSettingsDialog').data('vboxMachineData').keyboardHIDType = $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputKeyboard).val();
+ $('#vboxSettingsDialog').data('vboxMachineData').pointingHIDType = $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralInputMouse).val();
+
+ if($('#vboxPane').data('vboxConfig').enableCustomIcons)
+ $('#vboxSettingsDialog').data('vboxMachineData').customIcon = $(document.forms['frmVboxSettings'].vboxSettingsGeneralIcon).val();
+
+ var encSettings = $('#vboxSettingsDialog').data('vboxEncSettings');
+ if(encSettings) {
+ var encSettingsChanged = (encSettings.enabled != $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked')) ||
+ (encSettings.uniqueCiphers != $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val()) ||
+ $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val().length > 0;
+
+ if(!encSettings.enabled && !$(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked'))
+ encSettingsChanged = false;
+
+ $('#vboxSettingsDialog').data('vboxEncSettingsChanged', encSettingsChanged);
+ $('#vboxSettingsDialog').data('vboxEncEnabled', $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked'));
+ $('#vboxSettingsDialog').data('vboxEncCipher', $(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val());
+ $('#vboxSettingsDialog').data('vboxEncPw', $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val());
+ } else {
+ $('#vboxSettingsDialog').data('vboxEncSettingsChanged', false);
+ }
+
+});
+
+function vboxSettingsGeneralValidate() {
+
+ var encSettings = $('#vboxSettingsDialog').data('vboxEncSettings');
+
+ // Going from disabled to enabled
+ if(!encSettings.enabled && $(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked')) {
+
+ if(!$(document.forms['frmVboxSettings'].vboxSettingsTabGeneralEncryptionCipher).val()) {
+ vboxAlert(trans("Encryption cipher type not specified.", 'UIMachineSettingsGeneral'));
+ return false;
+ } else if(!$(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val()) {
+ vboxAlert(trans("Encryption password empty.", 'UIMachineSettingsGeneral'));
+ return false;
+ } else if($(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val() != $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword2).val()) {
+ vboxAlert(trans("Encryption passwords do not match.", 'UIMachineSettingsGeneral'));
+ return false;
+ }
+
+ // If enabled and poasswords don't match
+ } else if($(document.forms['frmVboxSettings'].vboxSettingsGeneralEncryptionEnable).prop('checked')) {
+ if($(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword).val() != $(document.forms['frmVboxSettings'].vboxGeneralEncryptionPassword2).val()) {
+ vboxAlert(trans("Encryption passwords do not match.", 'UIMachineSettingsGeneral'));
+ return false;
+ }
+ }
+ return true;
+}
+
+</script>
+