X-Git-Url: https://git.p6c8.net/jirafeau_mojo42.git/blobdiff_plain/17d5977bf8d24a1b0abb5f52a8453322f21a994d..2008a343c9d4bfa2c949ec3870875630eea5fb5c:/index.php diff --git a/index.php b/index.php index b6dac09..24565bd 100644 --- a/index.php +++ b/index.php @@ -25,6 +25,10 @@ require(JIRAFEAU_ROOT . 'lib/settings.php'); require(JIRAFEAU_ROOT . 'lib/functions.php'); require(JIRAFEAU_ROOT . 'lib/lang.php'); +if ($cfg['download_password_requirement'] === "generated"){ + $download_pass = jirafeau_gen_download_pass($cfg['download_password_gen_len'], $cfg['download_password_gen_chars']); +} + check_errors($cfg); if (has_error()) { require(JIRAFEAU_ROOT . 'lib/template/header.php'); @@ -108,6 +112,21 @@ elseif (true === jirafeau_challenge_upload_ip($cfg, get_ip_address($cfg))) { </p> </div> + <?php if ($cfg['download_password_requirement'] === "generated"){ + ?> + <div id="show_password"> + <p><?php echo t('PSW') ?></p> + + <div id="download_password"> + <p> + <?php echo '<input id="output_key" value="' . $download_pass . '"/>'?> + <button id="password_copy_button">📋</button> + </p> + </div> + </div> + <?php + }?> + <?php if ($cfg['preview'] == true) { ?> <div id="upload_finished_preview"> @@ -158,7 +177,12 @@ elseif (true === jirafeau_challenge_upload_ip($cfg, get_ip_address($cfg))) { </div> <div id="upload"> -<fieldset> +<form id="upload-form" onsubmit=" + event.preventDefault(); + document.getElementById('upload').style.display = 'none'; + document.getElementById('uploading').style.display = ''; + upload (<?php echo jirafeau_get_max_upload_chunk_size_bytes($cfg['max_upload_chunk_size_bytes']); ?>); + "><fieldset> <legend> <?php echo t('SEL_FILE'); ?> </legend> @@ -176,15 +200,23 @@ elseif (true === jirafeau_challenge_upload_ip($cfg, get_ip_address($cfg))) { <div id="options"> <table id="option_table"> <?php - if ($cfg['one_time_download']) { - echo '<tr><td>' . t('ONE_TIME_DL') . ':</td>'; - echo '<td><input type="checkbox" id="one_time_download" /></td></tr>'; - } -?> - <tr> - <td><label for="input_key"><?php echo t('PSW') . ':'; ?></label></td> - <td><input type="password" name="key" id="input_key" autocomplete = "new-password"/></td> - </tr> + if ($cfg['one_time_download']) { + echo '<tr><td>' . t('ONE_TIME_DL') . ':</td>'; + echo '<td><input type="checkbox" id="one_time_download" /></td></tr>'; + } + if ($cfg['download_password_requirement'] === 'generated'){ + echo '<input type="hidden" name="key" id="input_key" value="' . $download_pass .'"/>'; + }else{ + echo '<tr><td><label for="input_key">' . t('PSW') . ':' . '</label></td>'; + echo '<td><input type="password" name="key" id="input_key" autocomplete = "new-password"'; + if ($cfg['download_password_policy'] === 'regex'){ + echo ' pattern="' . substr($cfg['download_password_policy_regex'], 1, strlen($cfg['download_password_policy_regex']) - 2) . '"'; //remove php delimiters + } + if ($cfg['download_password_requirement'] === 'required'){ + echo ' required'; + } + echo '/></td></tr>'; + }?> <tr> <td><label for="select_time"><?php echo t('TIME_LIM') . ':'; ?></label></td> <td><select name="time" id="select_time"> @@ -252,15 +284,10 @@ if ($cfg['maximal_upload_size'] >= 1024) { <p id="max_file_size" class="config"></p> <p> - <input type="submit" id="send" value="<?php echo t('SEND'); ?>" - onclick=" - document.getElementById('upload').style.display = 'none'; - document.getElementById('uploading').style.display = ''; - upload (<?php echo jirafeau_get_max_upload_chunk_size_bytes($cfg['max_upload_chunk_size_bytes']); ?>); - "/> + <input type="submit" id="send" value="<?php echo t('SEND'); ?>"/> </p> </table> - </div> </fieldset> + </div> </fieldset></form> <?php if (jirafeau_user_session_logged()) { @@ -294,6 +321,7 @@ if ($max_size > 0) { addCopyListener('preview_link_button', 'preview_link'); addCopyListener('direct_link_button', 'direct_link'); addCopyListener('delete_link_button', 'delete_link'); + addTextCopyListener('password_copy_button', 'output_key'); // @license-end </script> <?php require(JIRAFEAU_ROOT . 'lib/template/footer.php'); ?>