diff options
| author | moehm | 2014-03-27 19:21:18 +0100 |
|---|---|---|
| committer | moehm | 2014-03-27 19:21:18 +0100 |
| commit | ed5dabd4df988f63d300fa4ed6cc388990b0fdfb (patch) | |
| tree | 950e9187234391550c784604a8cb659105000313 /www/functions | |
| parent | 2310c2e3cb4cf9b724ef065fcb8543a60d0ff280 (diff) | |
| parent | a35197cefeb2dae3e3688eec5762824263d16f0c (diff) | |
| download | files.iamfabulous.de-ed5dabd4df988f63d300fa4ed6cc388990b0fdfb.tar.gz | |
Merge branch 'master' of git.iamfabulous.de:files.iamfabulous.de
Diffstat (limited to 'www/functions')
| -rw-r--r-- | www/functions/func_folder.php | 4 | ||||
| -rwxr-xr-x | www/functions/func_rewrite.php | 2 | ||||
| -rwxr-xr-x | www/functions/func_select.php | 2 | ||||
| -rwxr-xr-x | www/functions/func_upload.php | 39 |
4 files changed, 17 insertions, 30 deletions
diff --git a/www/functions/func_folder.php b/www/functions/func_folder.php index ab77a1c..636b743 100644 --- a/www/functions/func_folder.php +++ b/www/functions/func_folder.php @@ -1,6 +1,6 @@ <?php -function database_mkdir($file_id, $new_folder_name, $share){ +function database_mkdir($db, $file_id, $new_folder_name, $share){ if($db->exec(" BEGIN TRANSACTION; INSERT INTO files (id, parent, owner, name, folder, size, share, hash) VALUES (Null, " . $file_id . ", " . $_SESSION['userid'] . ", '" . SQLite3::escapeString($new_folder_name) . "', 'DIRECTORY', 0, '" . SQLite3::escapeString($share) . "', ''); @@ -42,7 +42,7 @@ function create_folder($path, $new_folder_name, $share){ } } - if(database_mkdir($file_id, $new_folder_name, $share)){ + if(database_mkdir($db, $file_id, $new_folder_name, $share)){ return MKDIR_SUCCESS; } else { return MKDIR_DATABASE; diff --git a/www/functions/func_rewrite.php b/www/functions/func_rewrite.php index d9f694d..0a123d6 100755 --- a/www/functions/func_rewrite.php +++ b/www/functions/func_rewrite.php @@ -16,7 +16,9 @@ function rewrite($db){ } if($_SESSION["login"]){ + $scheme = $GLOBALS["scheme"]; header("Refresh: 0; ".$scheme.$_SERVER["HTTP_HOST"]."/" . $_SESSION['username'] . "/" . $_GET["name"] . "/" . $folder . ""); + exit; } return false; diff --git a/www/functions/func_select.php b/www/functions/func_select.php index ae76121..9f10cd6 100755 --- a/www/functions/func_select.php +++ b/www/functions/func_select.php @@ -32,7 +32,7 @@ function select_file_id($db, $owner, $folder_path){ for($i=0; $i<$length; $i++){ - $parentdir_db = $db->query("SELECT id, parent FROM files WHERE owner=" . $owner . $share . " AND parent=" . $parentdir . " AND name='" . SQLite3::escapeString($folder_array_unsafe[$i]) . "';"); + $parentdir_db = $db->query("SELECT id, parent FROM files WHERE owner=" . $owner . $share . " AND parent=" . $parentdir . " AND name='" . SQLite3::escapeString($folder_array_unsafe[$i]) . "' COLLATE NOCASE;"); $prim_id = $parentdir_db->fetchArray(SQLITE3_NUM); diff --git a/www/functions/func_upload.php b/www/functions/func_upload.php index eb3061b..c8ef93a 100755 --- a/www/functions/func_upload.php +++ b/www/functions/func_upload.php @@ -1,20 +1,5 @@ <?php -/* This was tested with this interface, where PWD the primary key from the working directory is: - -UPDATE 26.3. : Should now accept the path as an argument. - -<!DOCTYPE html> -<form method='post' action='/upload.php' enctype="multipart/form-data"> -<p>File :<input name="userfile" type="file" size="500000000" maxlength="100000000000000"></p> - -<p>PWD: <input type='text' name='path'></p> -<p>Share: <input type='text' name='share'> -<p><input type='submit' name='submit' value='upload'></p> -</form> - -*/ - function database_upload($db, $parentdir, $owner, $filename, $folder, $mime, $size, $share, $filehash){ if($db->exec(" BEGIN TRANSACTION; @@ -27,7 +12,9 @@ function database_upload($db, $parentdir, $owner, $filename, $folder, $mime, $si } } -function upload($db){ +function upload($path){ + + $db = $GLOBALS["db"]; set_time_limit(0); @@ -39,11 +26,7 @@ function upload($db){ return UPLOAD_UPLOAD; } - $parentdir = select_file_id($db, $_SESSION["userid"], $_POST["path"]); - //$parentdir = SQLite3::escapeString("$_POST[pwd]"); - if(!preg_match("/[0-9]+/", $parentdir)){ - return UPLOAD_PARENTFOLDER; - } + $parentdir = select_file_id($db, $_SESSION["userid"], $path); $folder_owner_db = $db->query("SELECT owner FROM files WHERE id=".$parentdir.";"); $folder_owner_ar = $folder_owner_db->fetchArray(SQLITE3_NUM); @@ -52,10 +35,7 @@ function upload($db){ return UPLOAD_FOLDER_NOT_OWNER; } - $ownername = SQLite3::escapeString($_SESSION['username']); - $owner_db = $db->query("SELECT id FROM user WHERE name='" . $ownername . "';"); - $owner_ar = $owner_db->fetchArray(SQLITE3_NUM); - $owner = $owner_ar[0]; + $owner = $_SESSION["userid"]; $overall_size_db = $db->query("SELECT size FROM files WHERE owner=" . $owner . " AND size > 0;"); $overall_size = 0; @@ -64,7 +44,7 @@ function upload($db){ $overall_size = $overall_size + $row[$count]; $count++; } - + if($overall_size > 2147483648){ // == 2GB return UPLOAD_QUOTA; } @@ -73,7 +53,12 @@ function upload($db){ $folder = "FILE"; $mime = $_FILES['userfile']['type']; $size = $_FILES['userfile']['size']; - $share = SQLite3::escapeString($_POST['share']); + + if(isset($_POST["share"])){ + $share = "PUBLIC"; + } else { + $share = "PRIVATE"; + } $uploaddir = "../files/"; |
