diff --git a/plugins/dynamix/EncryptionSettings.page b/plugins/dynamix/EncryptionSettings.page index 2218c1d53..7d372e9ae 100644 --- a/plugins/dynamix/EncryptionSettings.page +++ b/plugins/dynamix/EncryptionSettings.page @@ -56,7 +56,7 @@ function getFileContent(event,form) { var input = event.target; var reader = new FileReader(); reader.onload = function(){form.file.value = reader.result; form.apply.disabled = false;}; - reader.readAsText(input.files[0]); + reader.readAsDataURL(input.files[0]); } diff --git a/plugins/dynamix/include/KeyUpload.php b/plugins/dynamix/include/KeyUpload.php index 8a94eca3c..558d3d2e1 100644 --- a/plugins/dynamix/include/KeyUpload.php +++ b/plugins/dynamix/include/KeyUpload.php @@ -16,14 +16,11 @@ $ini = '/var/local/emhttp/keyfile.ini'; $luks = $var['luksKeyfile']; $text = $_POST['text'] ?? false; $file = $_POST['file'] ?? false; -$flag = $_POST['flag'] ?? false; if ($text) { file_put_contents($luks, $text); - if ($flag) file_put_contents($ini,'text'); } elseif ($file) { - file_put_contents($luks, $file); - if ($flag) file_put_contents($ini,'file'); + file_put_contents($luks, base64_decode(preg_replace('/^data:.*;base64,/','',$file))); } else { @unlink($luks); }