]> git.p6c8.net - jirafeau.git/blob - index.php
Bypass size limit by splitting big files on client’s side using HTML5 file API
[jirafeau.git] / index.php
1 <?php
2 /*
3 * Jirafeau, your web file repository
4 * Copyright (C) 2012 Jerome Jutteau <j.jutteau@gmail.com>
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU Affero General Public License as
8 * published by the Free Software Foundation, either version 3 of the
9 * License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU Affero General Public License for more details.
15 *
16 * You should have received a copy of the GNU Affero General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19 define ('JIRAFEAU_ROOT', dirname (__FILE__) . '/');
20
21 require (JIRAFEAU_ROOT . 'lib/config.php');
22 require (JIRAFEAU_ROOT . 'lib/settings.php');
23 require (JIRAFEAU_ROOT . 'lib/functions.php');
24 require (JIRAFEAU_ROOT . 'lib/lang.php');
25 require (JIRAFEAU_ROOT . 'lib/template/header.php');
26
27 check_errors ();
28 if (has_error ())
29 {
30 show_errors ();
31 require (JIRAFEAU_ROOT . 'lib/template/footer.php');
32 exit;
33 }
34 ?>
35 <div id="upload_finished">
36 <p>
37 <?php echo t('File uploaded! Copy the following URL to get it') ?>:
38 <br />
39 <a id="upload_link" href=""></a>
40 <br />
41 </p>
42
43 <p>
44 <?php echo t('Keep the following URL to delete it at any moment'); ?>:
45 <br />
46 <a id="delete_link" href=""></a>
47 </p>
48
49 <p id="validity">
50 <?php echo t('This file is valid until the following date'); ?>:
51 <br /><strong><div id="date"></div></strong>
52 </p>
53 </div>
54
55 <div id="uploading">
56 <p>
57 <?php echo t ('Uploading ...'); ?><div id="uploaded_percentage"></div>
58 </p>
59 </div>
60
61 <div id="upload">
62 <legend>
63 <?php echo t('Select a file'); ?> :
64 </legend>
65 <p>
66 <input type="file" id="file_select" size="30"
67 onchange="
68 document.getElementById('options').style.display = '';
69 document.getElementById('send').style.display = '';
70 "/>
71 </p>
72 <p id="max_file_size" class="config"></p>
73 <p>
74 <input type="submit" id="send" value="<?php echo t('Send'); ?>"
75 onclick="
76 document.getElementById('upload').style.display = 'none';
77 document.getElementById('uploading').style.display = '';
78 upload ('<?php echo $cfg['web_root']; ?>', <?php echo jirafeau_get_max_upload_size_bytes (); ?>);
79 "/>
80 </p>
81 <div id="options">
82 <table id="option_table">
83 <tr>
84 <td><?php echo t('One time download'); ?>:</td>
85 <td><input type="checkbox" id="one_time_download" /></td>
86 </tr>
87 <tr>
88 <td><label for="input_key"><?php echo t('Password') . ':'; ?></label></td>
89 <td><input type="text" name="key" id="input_key" /></td>
90 </tr>
91 <tr>
92 <td><label for="select_time"><?php echo t('Time limit') . ':'; ?></label></td>
93 <td><select name="time" id="select_time">
94 <option value="none"><?php echo t('None'); ?></option>
95 <option value = "minute"><?php echo t('One minute'); ?></option>
96 <option value = "hour"><?php echo t('One hour'); ?></option>
97 <option value = "day"><?php echo t('One day'); ?></option>
98 <option value = "week"><?php echo t('One week'); ?></option>
99 <option value = "month"><?php echo t('One month');?></option>
100 </select></td>
101 </tr>
102 </table>
103 </div>
104 </div>
105 <script lang="Javascript">
106 document.getElementById('uploading').style.display = 'none';
107 document.getElementById('upload_finished').style.display = 'none';
108 document.getElementById('options').style.display = 'none';
109 document.getElementById('send').style.display = 'none';
110 if (!check_html5_file_api ())
111 document.getElementById('max_file_size').innerHTML = '<?php
112 echo t('You browser may not support HTML5 so the maximum file size is ') . jirafeau_get_max_upload_size ();
113 ?>';
114 </script>
115 <?php require (JIRAFEAU_ROOT . 'lib/template/footer.php'); ?>

patrick-canterino.de