X-Git-Url: https://git.p6c8.net/jirafeau.git/blobdiff_plain/bf0a496a102b28c08906879f18120b194793a922..31ff867136044d3f3fbeb4357f814adb8da3003a:/script.php
diff --git a/script.php b/script.php
index 9da9221..5fe60e2 100644
--- a/script.php
+++ b/script.php
@@ -22,14 +22,14 @@
* If you don't want this feature, you can simply delete this file from your
* web directory.
*/
-define ('JIRAFEAU_ROOT', dirname (__FILE__) . '/');
+define('JIRAFEAU_ROOT', dirname(__FILE__) . '/');
-require (JIRAFEAU_ROOT . 'lib/settings.php');
-require (JIRAFEAU_ROOT . 'lib/functions.php');
-require (JIRAFEAU_ROOT . 'lib/lang.php');
+require(JIRAFEAU_ROOT . 'lib/settings.php');
+require(JIRAFEAU_ROOT . 'lib/functions.php');
+require(JIRAFEAU_ROOT . 'lib/lang.php');
global $script_langages;
- $script_langages = array ('bash' => 'Bash');
+ $script_langages = array('bash' => 'Bash');
/* Operations may take a long time.
* Be sure PHP's safe mode is off.
@@ -38,70 +38,60 @@ require (JIRAFEAU_ROOT . 'lib/lang.php');
/* Remove errors. */
@error_reporting(0);
-if ($_SERVER['REQUEST_METHOD'] == "GET" && count ($_GET) == 0)
-{
- require (JIRAFEAU_ROOT . 'lib/template/header.php');
- check_errors ($cfg);
- if (has_error ())
- {
- show_errors ();
- require (JIRAFEAU_ROOT . 'lib/template/footer.php');
+if ($_SERVER['REQUEST_METHOD'] == "GET" && count($_GET) == 0) {
+ require(JIRAFEAU_ROOT . 'lib/template/header.php');
+ check_errors($cfg);
+ if (has_error()) {
+ show_errors();
+ require(JIRAFEAU_ROOT . 'lib/template/footer.php');
exit;
- }
- ?>
+ } ?>
Scripting interface
This interface permits to script your uploads and downloads.
See source code of this interface to get available calls :)
-
You may download a preconfigured Bash Script to easily send to and get files from the API via command line.
+
You may download a preconfigured Bash Script to easily send to and get files from the API via command line.
0 &&
- $_FILES['file']['size'] > $cfg['maximal_upload_size'] * 1024 * 1024)
- {
+ $_FILES['file']['size'] > $cfg['maximal_upload_size'] * 1024 * 1024) {
echo 'Error 5: Your file exceeds the maximum authorized file size.';
exit;
}
- $res = jirafeau_upload ($_FILES['file'],
- isset ($_POST['one_time_download']),
- $key, $time, get_ip_address($cfg),
- $cfg['enable_crypt'], $cfg['link_name_length']);
+ $res = jirafeau_upload($_FILES['file'],
+ isset($_POST['one_time_download']),
+ $key, $time, get_ip_address($cfg),
+ $cfg['enable_crypt'], $cfg['link_name_length'],
+ $cfg['file_hash']);
- if (empty($res) || $res['error']['has_error'])
- {
+ if (empty($res) || $res['error']['has_error']) {
echo 'Error 6 ' . $res['error']['why'];
exit;
}
@@ -154,91 +144,75 @@ if (isset ($_FILES['file']) && is_writable (VAR_FILES)
/* Print decrypt key. */
echo NL;
echo urlencode($res['crypt_key']);
-}
-elseif (isset ($_GET['h']))
-{
+} elseif (isset($_GET['h'])) {
$link_name = $_GET['h'];
$key = '';
- if (isset ($_POST['key']))
+ if (isset($_POST['key'])) {
$key = $_POST['key'];
+ }
$d = '';
- if (isset ($_GET['d']))
+ if (isset($_GET['d'])) {
$d = $_GET['d'];
+ }
- if (!preg_match ('/[0-9a-zA-Z_-]+$/', $link_name))
- {
+ if (!preg_match('/[0-9a-zA-Z_-]+$/', $link_name)) {
echo 'Error 7';
exit;
}
- $link = jirafeau_get_link ($link_name);
- if (count ($link) == 0)
- {
+ $link = jirafeau_get_link($link_name);
+ if (count($link) == 0) {
echo 'Error 8';
exit;
}
- if (strlen ($d) > 0 && $d == $link['link_code'])
- {
- jirafeau_delete_link ($link_name);
+ if (strlen($d) > 0 && $d == $link['link_code']) {
+ jirafeau_delete_link($link_name);
echo "Ok";
exit;
}
- if ($link['time'] != JIRAFEAU_INFINITY && time () > $link['time'])
- {
- jirafeau_delete_link ($link_name);
+ if ($link['time'] != JIRAFEAU_INFINITY && time() > $link['time']) {
+ jirafeau_delete_link($link_name);
echo 'Error 9';
exit;
}
- if (strlen ($link['key']) > 0 && md5 ($key) != $link['key'])
- {
- sleep (2);
+ if (strlen($link['key']) > 0 && md5($key) != $link['key']) {
+ sleep(2);
echo 'Error 10';
exit;
}
- $p = s2p ($link['md5']);
- if (!file_exists (VAR_FILES . $p . $link['md5']))
- {
+ $p = s2p($link['hash']);
+ if (!file_exists(VAR_FILES . $p . $link['hash'])) {
echo 'Error 11';
exit;
}
/* Read file. */
- header ('Content-Length: ' . $link['file_size']);
- header ('Content-Type: ' . $link['mime_type']);
- header ('Content-Disposition: attachment; filename="' .
+ header('Content-Length: ' . $link['file_size']);
+ header('Content-Type: ' . $link['mime_type']);
+ header('Content-Disposition: attachment; filename="' .
$link['file_name'] . '"');
- $r = fopen (VAR_FILES . $p . $link['md5'], 'r');
- while (!feof ($r))
- {
- print fread ($r, 1024);
+ $r = fopen(VAR_FILES . $p . $link['hash'], 'r');
+ while (!feof($r)) {
+ print fread($r, 1024);
ob_flush();
}
- fclose ($r);
+ fclose($r);
- if ($link['onetime'] == 'O')
- jirafeau_delete_link ($link_name);
+ if ($link['onetime'] == 'O') {
+ jirafeau_delete_link($link_name);
+ }
exit;
-}
-elseif (isset ($_GET['get_capacity']))
-{
- echo min (jirafeau_ini_to_bytes (ini_get ('post_max_size')),
- jirafeau_ini_to_bytes (ini_get ('upload_max_filesize')));
-}
-elseif (isset ($_GET['get_maximal_upload_size']))
-{
+} elseif (isset($_GET['get_capacity'])) {
+ echo jirafeau_get_max_upload_size_bytes();
+} elseif (isset($_GET['get_maximal_upload_size'])) {
echo $cfg['maximal_upload_size'];
-}
-elseif (isset ($_GET['get_version']))
-{
+} elseif (isset($_GET['get_version'])) {
echo JIRAFEAU_VERSION;
-}
-elseif (isset ($_GET['lang']))
-{
+} elseif (isset($_GET['lang'])) {
$l=$_GET['lang'];
- if ($l == "bash")
- {
-?>
+ if ($l == "bash") {
+ ?>
#!/bin/bash
# This script has been auto-generated by Jirafeau but you can still edit options below.
@@ -358,17 +332,35 @@ if [ "$1" == "send" ]; then
fi
cnt=$(( cnt + 1 ))
done)
+ key_code=$(cnt=0; echo "$res" | while read l; do
+ if [[ "$cnt" == "2" ]]; then
+ echo "$l"
+ fi
+ cnt=$(( cnt + 1 ))
+ done)
echo
echo "Download page:"
- echo " ${url}${downloadpage}?h=$code"
+ if [[ $key_code ]]; then
+ echo " ${url}${downloadpage}?h=$code&k=$key_code"
+ else
+ echo " ${url}${downloadpage}?h=$code"
+ fi
echo "Direct download:"
- echo " ${url}${downloadpage}?h=$code&d=1"
+ if [[ $key_code ]]; then
+ echo " ${url}${downloadpage}?h=$code&k=$key_code&d=1"
+ else
+ echo " ${url}${downloadpage}?h=$code&d=1"
+ fi
echo "Delete link:"
echo " ${url}${downloadpage}?h=$code&d=$del_code"
echo
echo "Download via API:"
- echo " ${0} get ${url}${apipage}?h=$code [PASSWORD}"
+ if [[ $key_code ]]; then
+ echo " ${0} get ${url}${apipage}?h=$code&k=$key_code [PASSWORD}"
+ else
+ echo " ${0} get ${url}${apipage}?h=$code [PASSWORD}"
+ fi
echo "Delete via API:"
echo " ${0} delete ${url}${downloadpage}?h=$code&d=$del_code"
@@ -382,129 +374,47 @@ elif [ "$1" == "delete" ]; then
$curl $proxy "$2"
fi