summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoroweissbarth2014-03-17 20:44:55 +0100
committeroweissbarth2014-03-17 20:44:55 +0100
commitac5891a49fe76808195f0e7bb9856e98ac1aed5a (patch)
treea1df3f9f1b3270fd233714a29964eec6694ed503
parent3027a0481cb7295e42dbae01577032cbb98134bc (diff)
downloadfiles.iamfabulous.de-ac5891a49fe76808195f0e7bb9856e98ac1aed5a.tar.gz
Added directory creation to the browser and fixed all the bugs in func_folder
-rw-r--r--www/browse.php66
-rw-r--r--www/functions/func_folder.php4
-rwxr-xr-xwww/functions/func_interface.php4
-rwxr-xr-xwww/index.php2
-rw-r--r--www/static/browser.css90
-rw-r--r--www/static/img/icon_delete.svg63
-rw-r--r--www/static/img/icon_file.svg8
-rw-r--r--www/static/img/icon_folder.svg10
-rw-r--r--www/static/img/icon_new.svg88
-rw-r--r--www/static/img/icon_upload.svg63
10 files changed, 375 insertions, 23 deletions
diff --git a/www/browse.php b/www/browse.php
index 028174e..468401a 100644
--- a/www/browse.php
+++ b/www/browse.php
@@ -1,20 +1,63 @@
<?php
+
+
function print_browser($content){
+ require_once("include.php");
+
+ if($_SERVER['REQUEST_METHOD'] == 'POST'){
+ //echo "created_folder : ". $_POST["foldername"] . " in ". $_GET["folder"];
+ create_folder("/".$_GET["folder"], $_POST["foldername"], /*$_POST["public"]?*/"PUBLIC"/*:"PRIVATE"*/);
+ browse(collect_content($GLOBALS["db"], $_GET["name"] , $_GET["folder"]));
+ }else{
+ browse(collect_content($GLOBALS["db"], $_GET["name"] , $_GET["folder"]));
+ }
+}
- include("static/header.html");
+function browse($content){
+ include("static/header.html");
+ if($_SESSION["login"] && $_SESSION["username"] == $_GET["name"]){
+ print_menu();
+ }
- $file_list = "";
- foreach($content as $file){
- $file_list .= get_item($file);
- }
- echo '<link rel="stylesheet" type="text/css" href="/static/browser.css">
- <table>'.$file_list.'</table>';
- include("static/footer.html");
+ $file_list = "";
+ if($content){
+ foreach($content as $file){
+ $file_list .= get_item($file);
+ }
+ }
+
+ echo '<link rel="stylesheet" type="text/css" href="/static/browser.css">
+ <script>
+ function showNewFolder(){
+ document.getElementById("new-folder-bg").style.visibility = "visible";
+ return;
+ }
+ function hideNewFolder(){
+ if(document.getElementById("new-folder-name").value!=""){
+ document.getElementById("new-folder-bg").style.visibility = "hidden";
+ }
+ return;
+ }
+ </script>
+ <div id="new-folder-bg">
+ <div id="new-folder-area">
+ <h1 class="new-folder-"> New Folder </h1>
+ <form id="new-folder-form" method="post" action="'.$_GET["name"].$_GET["folder"].'">
+ <input class="new-folder-input" id="new-folder-name" type="text" placeholder="name" name="foldername" required>
+ <label style="display:inline">Public</label><input style="display:inline; margin-left: 5px;" class="new-folder-input" type="checkbox" name="public">
+ <input style="display:block" onclick="hideNewFolder()" type="submit" id="button-input" class="new-folder-input" value="create">
+ </form>
+ </div>
+ </div>
+ <table>'.$file_list.'</table>';
+
+ include("static/footer.html");
}
+
function get_icon($file){
if($file[4]=="DIRECTORY"){
return '<td id="icon">'.get_link($file).'<img src="/static/img/icon_folder.svg" width="30px"></a></td>';
@@ -31,3 +74,10 @@ function get_link($file){
function get_item($file){
return '<tr>'.get_icon($file).'<td>'.get_link($file).$file[3].'</a></td></tr>';
}
+
+function print_menu(){
+ echo '<div id="menu">
+ <div class="menu-item" id="new-item" onclick="showNewFolder()" ><img src="/static/img/icon_new.svg" width="45px" onclick="toggleNewFolder()"></div>
+ <div class="menu-item" id="upload-item"><img src="/static/img/icon_upload.svg" width="45px"></div>
+ </div><!-- div menu-->';
+}
diff --git a/www/functions/func_folder.php b/www/functions/func_folder.php
index 145f14a..376cdd6 100644
--- a/www/functions/func_folder.php
+++ b/www/functions/func_folder.php
@@ -10,7 +10,7 @@ function create_folder($path, $new_folder_name, $share){
$file_id = select_file_id($db, $_SESSION["userid"], $path);
- $owner_db = $db->query("SELECT owner FROM files WHERE id=" . SQLite3::escapeString('$file_id') . ";");
+ $owner_db = $db->query("SELECT owner FROM files WHERE id=" . SQLite3::escapeString($file_id) . ";");
$owner_ar = $owner_db->fetchArray(SQLITE3_NUM);
if($owner_ar[0] != $_SESSION["userid"]){
@@ -19,7 +19,7 @@ function create_folder($path, $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) VALUES (Null, " . $file_id . ", " . $_SESSION['userid'] . ", '" . SQLite3::escapeString($new_folder_name) . "', 'DIRECTORY', 0, '" . SQLite3::escapeString($share) . "', '');
COMMIT;
")){
return MKDIR_SUCCESS;
diff --git a/www/functions/func_interface.php b/www/functions/func_interface.php
index e6aa3f1..e5e4729 100755
--- a/www/functions/func_interface.php
+++ b/www/functions/func_interface.php
@@ -11,9 +11,9 @@ function collect_content($db,$username, $folder_path){
$content = get_content($db, $file_id, $owner);
- if(!$content){
+ /*if(!$content){
failure("This folder is empty.");
- }
+ }*/
return $content;
}
diff --git a/www/index.php b/www/index.php
index 7af88c6..9a23444 100755
--- a/www/index.php
+++ b/www/index.php
@@ -14,7 +14,7 @@ if(empty($_GET)){
header("Refresh: 0; /login");
exit;
} else {
- header("Refresh: 0; /" . $_SESSION[username]);
+ header("Refresh: 0; /" . $_SESSION["username"]);
exit;
}
} else {
diff --git a/www/static/browser.css b/www/static/browser.css
index 21ef4ad..a6031dc 100644
--- a/www/static/browser.css
+++ b/www/static/browser.css
@@ -17,10 +17,98 @@ width: 100%
table tr td {
padding-left: 0;
padding-right: 0;
+ height: 30px;
margin: 0;
-
+ border: none;
}
a{
text-decoration: none;
color: black;
+/* outline: 1px solid red;*/
+}
+
+td{
+/* outline: 1px solid black;*/
+}
+
+#menu{
+ position: fixed;
+ top:0;
+ right: 0;
+ margin-top: 10px;
+ margin-right: 30px;
+}
+
+.menu-item{
+ height: 45px;
+ width: 45px;
+ margin: 10px;
+ display:inline-block;
+}
+
+.menu-item:hover{
+ margin: 10px;
+ background:#2669AB;
+ height: 45px;
+ width: 45px;
+ border-radius: 10px;
+ box-shadow: 3px -3px 5px black;
+}
+
+#new-folder-bg{
+ width: 100%;
+ height: 100%;
+ background: white;
+ position: fixed;
+ z-index: 99;
+ top: 0px;
+ opacity: 0.75;
+ visibility: hidden;
+}
+
+#new-folder-form{
+
+}
+
+#new-folder-area{
+ height: 190px;
+ width: 400px;
+ position: fixed;
+ top: 50%;
+ margin-top: -100px;
+
+ padding: 10px;
+
+ left: 50%;
+ margin-left: -200px;
+
+ border: 1px solid black;
+}
+
+
+input.new-folder-input[type=text], input.new-folder-input[type=checkbox]{
+ border: none;
+ box-shadow: inset 0px 0px 1px 1px #1F3D4C;
+ border-radius: 0;
+ height: 40px;
+ font-size: 25px;
+ margin-top: 15px;
+ width: 395px;
+ display:block;
+ padding-left: 5px;
+}
+
+input.new-folder-input:focus{
+ background: #D6E0E5
+}
+
+#button-input{
+ height: 40px;
+ width: 120px;
+ display:inline;
+ border: none;
+ box-shadow: inset 0px 0px 1px 1px #1F3D4C;
+ border-radius: 0;
+ font-size: 25px;
+ margin-top: 15px;
}
diff --git a/www/static/img/icon_delete.svg b/www/static/img/icon_delete.svg
new file mode 100644
index 0000000..81a0eff
--- /dev/null
+++ b/www/static/img/icon_delete.svg
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="500"
+ height="500"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="icon_delete.svg">
+ <defs
+ id="defs4" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.98994949"
+ inkscape:cx="261.72979"
+ inkscape:cy="255.4581"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:window-width="1440"
+ inkscape:window-height="841"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-552.36218)">
+ <path
+ style="fill:#eaeaea;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="M 69.46875 16.40625 L 19.46875 66.40625 L 199 245.9375 L 23.5 421.4375 L 73.5 471.4375 L 249 295.9375 L 419.46875 466.40625 L 469.46875 416.40625 L 299 245.9375 L 473.5 71.4375 L 423.5 21.4375 L 249 195.9375 L 69.46875 16.40625 z "
+ transform="translate(0,552.36218)"
+ id="rect2984" />
+ </g>
+</svg>
diff --git a/www/static/img/icon_file.svg b/www/static/img/icon_file.svg
index de7eaaa..56f4584 100644
--- a/www/static/img/icon_file.svg
+++ b/www/static/img/icon_file.svg
@@ -14,7 +14,7 @@
id="svg3794"
version="1.1"
inkscape:version="0.48.3.1 r9886"
- sodipodi:docname="New document 5">
+ sodipodi:docname="icon_file.svg">
<defs
id="defs3796" />
<sodipodi:namedview
@@ -25,7 +25,7 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.98994949"
- inkscape:cx="168.86431"
+ inkscape:cx="170.88462"
inkscape:cy="257.11822"
inkscape:document-units="px"
inkscape:current-layer="layer1"
@@ -43,7 +43,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
+ <dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@@ -54,7 +54,7 @@
transform="translate(0,-552.36218)">
<path
style="fill:#eaeaea;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:4.80000019;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
- d="m 83.854547,620.01145 0,378.8125 310.093753,0 0,-317.0625 -61.75,-61.75 -248.343753,0 z"
+ d="m 94.966225,611.93023 0,378.8125 310.093755,0 0,-317.0625 -61.75,-61.75 -248.343755,0 z"
id="rect3802"
inkscape:connector-curvature="0" />
</g>
diff --git a/www/static/img/icon_folder.svg b/www/static/img/icon_folder.svg
index 1191fa1..f555979 100644
--- a/www/static/img/icon_folder.svg
+++ b/www/static/img/icon_folder.svg
@@ -14,7 +14,7 @@
id="svg2"
version="1.1"
inkscape:version="0.48.3.1 r9886"
- sodipodi:docname="New document 1">
+ sodipodi:docname="icon_folder.svg">
<defs
id="defs4" />
<sodipodi:namedview
@@ -25,7 +25,7 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.98994949"
- inkscape:cx="168.79576"
+ inkscape:cx="-7.980936"
inkscape:cy="190.80834"
inkscape:document-units="px"
inkscape:current-layer="layer1"
@@ -45,7 +45,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
+ <dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@@ -55,13 +55,13 @@
id="layer1"
transform="translate(0,-552.36218)">
<path
- style="fill:#c4c4c4;fill-opacity:1;stroke:#000000;stroke-width:0.98498851px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ style="fill:#c4c4c4;fill-opacity:1;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
d="m 375.00459,685.87976 0,238.79727 -312.375125,0 0,-306.27452 141.237075,0 15.56519,68.24836 z"
id="path2987-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccc" />
<path
- style="fill:#eaeaea;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ style="fill:#eaeaea;fill-opacity:1;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
d="m 51.517779,719.01184 0,242.43661 387.898581,0 0,-323.24881 -214.15234,0 -15.80241,81.59506 z"
id="path2987"
inkscape:connector-curvature="0"
diff --git a/www/static/img/icon_new.svg b/www/static/img/icon_new.svg
new file mode 100644
index 0000000..27b3f22
--- /dev/null
+++ b/www/static/img/icon_new.svg
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="500"
+ height="500"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="icon_new.svg">
+ <defs
+ id="defs4" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.98994949"
+ inkscape:cx="136.47088"
+ inkscape:cy="262.52917"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:window-width="1440"
+ inkscape:window-height="841"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-552.36218)">
+ <path
+ style="fill:#c4c4c4;fill-opacity:1;stroke:#000000;stroke-width:3.50000000000000000;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 372.98428,690.93052 0,238.79727 -312.37512,0 0,-306.27452 141.23707,0 15.56519,68.24836 z"
+ id="path2987-3"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ style="fill:#eaeaea;fill-opacity:1;stroke:#000000;stroke-width:3.50000000000000000;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 49.497474,724.0626 0,242.43661 387.898576,0 0,-323.24881 -214.15234,0 -15.80241,81.59506 z"
+ id="path2987"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ sodipodi:type="star"
+ style="fill:#ffd414;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:4.87630697;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path2984"
+ sodipodi:sides="5"
+ sodipodi:cx="-342.44171"
+ sodipodi:cy="76.746078"
+ sodipodi:r1="123.26345"
+ sodipodi:r2="61.631725"
+ sodipodi:arg1="0.86661447"
+ sodipodi:arg2="1.494933"
+ inkscape:flatsided="false"
+ inkscape:rounded="0"
+ inkscape:randomized="0"
+ d="m -262.63966,170.69027 -75.13095,-32.48973 -69.35714,43.47215 7.68283,-81.49366 -62.77702,-52.528927 79.8792,-17.876119 30.55882,-75.936821 41.68523,70.445609 81.6634,5.597395 -54.11631,61.413899 z"
+ transform="matrix(0.71775629,0,0,0.71775629,646.68084,591.18356)"
+ inkscape:transform-center-x="2.0720916"
+ inkscape:transform-center-y="-6.4534592" />
+ </g>
+</svg>
diff --git a/www/static/img/icon_upload.svg b/www/static/img/icon_upload.svg
new file mode 100644
index 0000000..cf21623
--- /dev/null
+++ b/www/static/img/icon_upload.svg
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="500"
+ height="500"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="icon_upload.svg">
+ <defs
+ id="defs4" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1.0573036"
+ inkscape:cx="184.92152"
+ inkscape:cy="252.95567"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:window-width="1440"
+ inkscape:window-height="841"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-552.36218)">
+ <path
+ style="fill:#eaeaea;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="M 248.21875 49.28125 L 145.53125 184.625 L 193.6875 184.625 L 193.6875 435.96875 L 304.78125 435.96875 L 304.78125 184.625 L 350.90625 184.625 L 248.21875 49.28125 z "
+ transform="translate(0,552.36218)"
+ id="rect2986" />
+ </g>
+</svg>