FILEUP



LOG | FILES | OVERVIEW


F diff --git a/INIT_DATABASE.sql b/INIT_DATABASE.sql --- a/INIT_DATABASE.sql +++ b/INIT_DATABASE.sql
drop table if exists super_trash;
drop table if exists shared_nodes;
drop table if exists nodes;
+ drop table if exists email_verification_codes;
drop trigger if exists supper_del_node;
+ drop view if exists usernames;
node_id int not null
);
+ create table email_verification_codes (
+ verification_id int not null auto_increment,
+ verification_code varchar(100) not null,
+ username varchar(50) not null unique,
+ password varchar(255) not null,
+ email varchar(50),
+ primary key (verification_id)
+ );
create trigger delete_on_zero_links
after delete
delete from node_links
where directory_id=old.node_id;
-
+ create view usernames
+ as
+ select username from users
+ union
+ select username from email_verification_codes;
F diff --git a/php/upload.php b/php/upload.php --- a/php/upload.php +++ b/php/upload.php
require_once "node.php";
session_start();
- if (!isset( $_POST["filename"]) || !isset($_FILES["the_file"]) || !isset($_POST['parent_directory']) || !isset($_POST['overwrite']))
+ if (!isset( $_POST["filename"]) ||
+ (!isset($_FILES["the_file"]) && (!isset($_POST['content']) || gettype($_POST['content'])!="string"))
+ || !isset($_POST['parent_directory']) || !isset($_POST['overwrite']))
{
error_log("someone tried to upload something impropperly");
http_response_code(400);
$parent_directory=$_POST["parent_directory"];
$user=$_SESSION['user_object'];
$homedir=$user->home_directory;
- $mimetype=file_type($file['tmp_name']);
$overwrite=$_POST['overwrite'];
$dir = get_directory($parent_directory, $user);
+
+ if(isset($_POST['content']))
+ {
+ $mimetype="text/plain";
+ }else
+ {
+ $mimetype=file_type($file['tmp_name']);
+ }
if (!$dir)
{
error_log("trying to upload to invalid directory");
http_response_code(409);
exit(0);
}
- unlink("$storage_root/$codename");
- move_uploaded_file($file['tmp_name'], "$storage_root/$codename");
+ if(isset($_POST['content']))
+ {
+ file_put_contents("$storage_root/$codename",$_POST['content']);
+ }else
+ {
+ unlink("$storage_root/$codename");
+ move_uploaded_file($file['tmp_name'], "$storage_root/$codename");
+ }
http_response_code(200);
exit(0);