summaryrefslogtreecommitdiff
path: root/www/functions
diff options
context:
space:
mode:
authorHorus32014-04-21 18:35:43 +0200
committerHorus32014-04-21 18:35:43 +0200
commitdef084a19a19e1d5c77600c0c0967e5a8fed5b93 (patch)
tree6b8eb4b3af0decc1d0a48dc9304789f2794fd98a /www/functions
parent2a1a332c4e7625a40008d5c4565fca1bbf062d91 (diff)
downloadfiles.iamfabulous.de-def084a19a19e1d5c77600c0c0967e5a8fed5b93.tar.gz
Now you can get a full list of FILES or DIRECTORY from class files. Also changed database layout to log every up- and download.
Diffstat (limited to 'www/functions')
-rw-r--r--www/functions/class_files.php174
-rw-r--r--www/functions/func_download.php5
-rw-r--r--www/functions/func_folder.php6
-rwxr-xr-xwww/functions/func_login.php2
-rwxr-xr-xwww/functions/func_register.php4
-rwxr-xr-xwww/functions/func_upload.php4
6 files changed, 12 insertions, 183 deletions
diff --git a/www/functions/class_files.php b/www/functions/class_files.php
deleted file mode 100644
index 10182a9..0000000
--- a/www/functions/class_files.php
+++ /dev/null
@@ -1,174 +0,0 @@
-<?php
-
-class file {
-
- public $file;
-
- function __construct($val = null){
- if($val == null){
- $this->file = collect_content($GLOBALS["db"], $_GET["name"], $_GET["folder"]);
- } else {
- $this->file = $val;
- }
- }
- function NotFound(){
- if($this->file == FILE_NOT_FOUND){
- return true;
- } else {
- return false;
- }
- }
- function isEmpty(){
- if($this->file == EMPTY_FOLDER){
- return true;
- } else {
- return false;
- }
- }
- function isFile(){
- if(check_if_file($GLOBALS["db"], $_GET["name"], $_GET["folder"])){
- return true;
- } else {
- return false;
- }
- }
- function initFile($val){
- if(!$val){
- return false;
- }
- $this->file=$val;
- }
- function getDim(){
- return count($this->file);
- }
- function getId($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][0];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][0];
- }
- return $res;
- }
- }
- function getParent($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][1];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][1];
- }
- return $res;
- }
- }
- function getOwnerId(){
- $id = user_id($GLOBALS["db"], $_GET["name"]);
- return $id;
- }
- function getOwnerName(){
- return $_GET["name"];
- }
- function getName($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][3];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][3];
- }
- return $res;
- }
- }
- function getType($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][4];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][4];
- }
- return $res;
- }
- }
- function getMime($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][5];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][5];
- }
- return $res;
- }
- }
- function getSize($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][6];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][6];
- }
- return $res;
- }
- }
- function getHash($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][7];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][7];
- }
- return $res;
- }
- }
- function getDownLink($val = null){
- $ar = $this->file;
- if($val != null){
- if(!preg_match("/^[0-9]+$/", $val)){
- return false;
- }
- return $ar[$val][8];
- } else {
- $res;
- for($i=0; $i<count($ar); $i++){
- $res[$i] = $ar[$i][8];
- }
- return $res;
- }
- }
- function getAll(){
- return $this->file;
- }
-}
diff --git a/www/functions/func_download.php b/www/functions/func_download.php
index 26b25b1..576320c 100644
--- a/www/functions/func_download.php
+++ b/www/functions/func_download.php
@@ -103,17 +103,20 @@ function download_file($db, $file_id){
//TODO: buffer output, print if reading == true
header("Content-Type: ".$file_mime);
-
+/*
if(!preg_match("/^image\/.+/", $file_mime)){
header("Content-Disposition: attachment; filename=\"".$file_name."\"");
} else {
header("filename=".$file_name."");
}
+*/
+ header("filename=".$file_name."");
header("Content-Length: ".$file_size);
set_time_limit(0);
$uncompressed_file = readgzfile($gzip_file);
if($uncompressed_file){
+ $db->exec("UPDATE files SET lastseen=(SELECT strftime('%s', 'now')) WHERE id=".SQLite3::escapeString($file_id).";");
return true;
} else {
return false;
diff --git a/www/functions/func_folder.php b/www/functions/func_folder.php
index 044fd8e..f389227 100644
--- a/www/functions/func_folder.php
+++ b/www/functions/func_folder.php
@@ -3,7 +3,7 @@
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) . "', '');
+ INSERT INTO files (id, parent, owner, name, folder, size, share, hash, upload, lastseen) VALUES (Null, " . $file_id . ", " . $_SESSION['userid'] . ", '" . SQLite3::escapeString($new_folder_name) . "', 'DIRECTORY', 0, '" . SQLite3::escapeString($share) . "', '', (SELECT strftime('%s', 'now')), (SELECT strftime('%s', 'now')));
COMMIT;
")){
return true;
@@ -78,7 +78,7 @@ function move_folder($old_path, $new_path){
if($db->exec("
BEGIN TRANSACTION;
- UPDATE files SET parent=".$new_file_id." WHERE id=".$old_file_id.";
+ UPDATE files SET parent=".$new_file_id.", lastseen=(SELECT strftime('%s', 'now')) WHERE id=".$old_file_id.";
COMMIT;
")){
return MV_FOLDER_SUCCESS;
@@ -116,7 +116,7 @@ function rename_folder($path, $new_name){
if($db->exec("
BEGIN TRANSACTION;
- UPDATE files SET name='".SQLite3::escapeString($new_name)."' WHERE id=".$file_id.";
+ UPDATE files SET name='".SQLite3::escapeString($new_name)."', lastseen=(SELECT strftime('%s', 'now')) WHERE id=".$file_id.";
COMMIT;
")){
return true;
diff --git a/www/functions/func_login.php b/www/functions/func_login.php
index 943e20e..6a38c3a 100755
--- a/www/functions/func_login.php
+++ b/www/functions/func_login.php
@@ -25,7 +25,7 @@ function login($db){
if($db->exec("
BEGIN TRANSACTION;
- INSERT INTO log (id, user, login) VALUES (NULL, (SELECT id FROM user WHERE name='" . $username . "'), (SELECT datetime()) );
+ INSERT INTO log (id, user, login) VALUES (NULL, (SELECT id FROM user WHERE name='" . $username . "'), (SELECT strftime('%s', 'now')) );
COMMIT;
")){
diff --git a/www/functions/func_register.php b/www/functions/func_register.php
index 90cbd7d..b848866 100755
--- a/www/functions/func_register.php
+++ b/www/functions/func_register.php
@@ -59,9 +59,9 @@ function register($db){
if($db->exec("
BEGIN TRANSACTION;
- UPDATE user SET name='" . $safe_name . "', password='" . $hash_password . "', invites=5, status=1, register=(SELECT datetime()), color_folder='DEFAULT', color_file='DEFAULT' WHERE id=" . $id . ";
+ UPDATE user SET name='" . $safe_name . "', password='" . $hash_password . "', invites=5, status=1, register=(SELECT strftime('%s', 'now')), color_folder='DEFAULT', color_file='DEFAULT' WHERE id=" . $id . ";
INSERT INTO files (id, parent, owner, name, folder, mime, size, share, size, hash) VALUES (NULL, 0, $id, '/', 'DIRECTORY', NULL, NULL, 'PUBLIC', 0, '');
- INSERT INTO log (id, user, login) VALUES (NULL, (SELECT id FROM user WHERE name='" . $safe_name. "'), (SELECT datetime()));
+ INSERT INTO log (id, user, login) VALUES (NULL, (SELECT id FROM user WHERE name='" . $safe_name. "'), (SELECT strftime('%s', 'now'));
COMMIT;")
){
diff --git a/www/functions/func_upload.php b/www/functions/func_upload.php
index 31fe304..f4f9b82 100755
--- a/www/functions/func_upload.php
+++ b/www/functions/func_upload.php
@@ -3,7 +3,7 @@
function database_upload($db, $parentdir, $owner, $filename, $folder, $mime, $size, $share, $filehash){
if($db->exec("
BEGIN TRANSACTION;
- INSERT INTO files (id, parent, owner, name, folder, mime, size, share, hash) VALUES (NULL, " . $parentdir . ", " . $owner . ", '" . $filename . "', '" . $folder . "', '" . $mime . "', '" . $size . "', '" . $share ."', '" . $filehash . "');
+ INSERT INTO files (id, parent, owner, name, folder, mime, size, share, hash, upload, lastseen) VALUES (NULL, " . $parentdir . ", " . $owner . ", '" . $filename . "', '" . $folder . "', '" . $mime . "', '" . $size . "', '" . $share ."', '" . $filehash . "', (SELECT strftime('%s', 'now')), (SELECT strftime('%s', 'now')));
COMMIT;
")){
return true;
@@ -15,7 +15,7 @@ function database_upload($db, $parentdir, $owner, $filename, $folder, $mime, $si
function database_upload_update($db, $id, $name, $mime, $size, $share, $filehash){
if($db->exec("
BEGIN TRANSACTION;
- UPDATE files SET name='".$name."', mime='".$mime."', size='".$size."', share='".$share."', hash='".$filehash."' WHERE id=".$id.";
+ UPDATE files SET name='".$name."', mime='".$mime."', size='".$size."', share='".$share."', hash='".$filehash."', lastseen=(SELECT strftime('%s', 'now')) WHERE id=".$id.";
COMMIT;
")){
return true;