From c253e3dca0479b874fdd28f75edb9904de616cfc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marc=20W=C3=A4ckerlin?=
Date: Sun, 29 Mar 2015 15:24:17 +0000
Subject: [PATCH] initial files
---
.htaccess | 0
folder.png | Bin 0 -> 20489 bytes
index.php | 367 +++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 367 insertions(+)
create mode 100644 .htaccess
create mode 100644 folder.png
create mode 100644 index.php
diff --git a/.htaccess b/.htaccess
new file mode 100644
index 0000000..e69de29
diff --git a/folder.png b/folder.png
new file mode 100644
index 0000000000000000000000000000000000000000..89ec05a7565835d66075866f21a474e2bfc155a2
GIT binary patch
literal 20489
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 ux|>;gmXSbp*1=dX$6BIJYL0ZF+O}trT)n
z1P{~K^Lkp*6%R;KL~(6N2acj-4ZRGzizapMN9@6jdM2jo>yt;io;Kz=91r;oEwJ8H
zN%q#y*9aOr`uPQ(G!8cz3g>X3D~WznZ0|NK!BZW-Q#yH3%4Zzmc-@#t7QlViAOH4m
z-~R4j{nJnX=l}e_KW~45jNQL{050I=`~U2}{7=67Pyh4(W~}%B6~@N~quWvAS*v0H
z{CB@y{~x%_o>&jF$Dkl^qhZyZ|0?gF{)hkTfBa|v9dJLNr;qvkeYDL@;N=&e*XQ%w
zf4-jouRnkH+x7Q*sp`{B-N4%~KKJkZdC(T{wORf1k`TZ6_k8|+qnrMQZv5AeaCBdb
z$8Xo)*HzCa(Y^Y;&;9&)&^`UR2>k7h`+74S-P~V(=I{J>&YyY--yVYh_pe99_p68C
z;imt5qks9|<@4vy$H2dK(|-A8+iyO<{olV`f4^7%;?G}x_?>_Lc740PUEi*6*SG82
z_3iq0eY?J0->z@hx9i*W?fQ0oyS`oDu5Z`>zpj4|x3hb9Ps7Ei00000NkvXXu0mjf
D<52CE
literal 0
HcmV?d00001
diff --git a/index.php b/index.php
new file mode 100644
index 0000000..825fa77
--- /dev/null
+++ b/index.php
@@ -0,0 +1,367 @@
+Error: '.$status.'
'.$reason.'
');
+ }
+ function alt(&$p1 = NULL, &$p2 = NULL, &$p3 = NULL) {
+ if (isset($p1)) return $p1;
+ if (isset($p2)) return $p2;
+ return $p2;
+ }
+ function computeUnsignedChecksum($bytestring) {
+ $unsigned_chksum = 0;
+ for($i=0; $i<512; $i++)
+ $unsigned_chksum += ord($bytestring[$i]);
+ for($i=0; $i<8; $i++)
+ $unsigned_chksum -= ord($bytestring[148 + $i]);
+ $unsigned_chksum += ord(" ") * 8;
+ return $unsigned_chksum;
+ }
+ function tarHeader($Name, $Size, $information=NULL) {
+ if (strlen($Name)>99) {
+ $ext = preg_replace('/.*\./', '', $Name);
+ $Name = substr($Name, 0, 98-strlen($ext)).'.'.$ext;
+ }
+ $header = str_pad($Name,100,chr(0));
+ $header .= str_pad("777",7,"0",STR_PAD_LEFT) . chr(0);
+ $header .= str_pad(decoct($information["user_id"]),7,"0",STR_PAD_LEFT) . chr(0);
+ $header .= str_pad(decoct($information["group_id"]),7,"0",STR_PAD_LEFT) . chr(0);
+ $header .= str_pad(decoct($Size),11,"0",STR_PAD_LEFT) . chr(0);
+ $header .= str_pad(decoct(time(0)),11,"0",STR_PAD_LEFT) . chr(0);
+ $header .= str_repeat(" ",8);
+ $header .= "0";
+ $header .= str_repeat(chr(0),100);
+ $header .= str_pad("ustar",6,chr(32));
+ $header .= chr(32) . chr(0);
+ $header .= str_pad($information["user_name"],32,chr(0));
+ $header .= str_pad($information["group_name"],32,chr(0));
+ $header .= str_repeat(chr(0),8);
+ $header .= str_repeat(chr(0),8);
+ $header .= str_repeat(chr(0),155);
+ $header .= str_repeat(chr(0),12);
+ $checksum = str_pad(decoct(computeUnsignedChecksum($header)),6,"0",STR_PAD_LEFT);
+ for($i=0; $i<6; $i++) {
+ $header[(148 + $i)] = substr($checksum,$i,1);
+ }
+ $header[154] = chr(0);
+ $header[155] = chr(32);
+ return $header;
+ }
+ function checkPath($pathToCheck) {
+ global $path, $subpath;
+ if (ereg('^[-_a-zA-Z0-9äöüÄÖÜ/]*$', $pathToCheck) && is_dir($path.'/'.$pathToCheck)) {
+ $subpath=$pathToCheck;
+ $path .= '/'.$pathToCheck;
+ } else {
+ error_die('path not allowed: '.htmlentities($pathToCheck));
+ }
+ }
+ function checkFile($fileToCheck, $thumb = false) {
+ global $path, $file, $subpath, $thumbs, $imgfile;
+ if (!ereg('/', $fileToCheck) && is_file($path.'/'.$fileToCheck)) {
+ $imgfile = $fileToCheck;
+ } else {
+ error_die('file not found', '404 Not Found');
+ }
+ if ($thumb) { // image from thumbnail path
+ $file = $thumbs.'/'.$subpath.'/'.$fileToCheck;
+ if (!is_dir($thumbs.'/'.$subpath)) mkdir($thumbs.'/'.$subpath, 0777, true);
+ if (!is_file($file)) { // create thumbnail
+ $image = new Imagick();
+ $image->readImage($path.'/'.$fileToCheck);
+ $image->thumbnailImage(200, 200, true);
+ $image->writeImage($file);
+ }
+ } else {
+ $file = $path.'/'.$fileToCheck;
+ }
+ }
+ function returnFile($file) {
+ $ext=strtolower(preg_replace('/.*\./', '', $file));
+ switch ($ext) {
+ case 'jpg': case 'jpeg': $type="image/jpeg"; break;
+ case 'tif': case 'tiff': $type="image/tiff"; break;
+ case 'gif': $type="image/gif"; break;
+ case 'png': $type="image/png"; break;
+ case 'bmp': $type="image/bmp"; break;
+ }
+ if (!is_file($file)) {
+ error_die('file does not exist', '404 Not Found');
+ }
+ if (!isset($_REQUEST['view'])) {
+ header('Content-type: '.$type);
+ header('Content-Length: '.filesize($file));
+ header('Content-Transfer-Encoding: binary');
+ flush();
+ readfile($file);
+ exit;
+ }
+ }
+ function extractDir($path) {
+ $res['dirs'] = array();
+ $res['files'] = array();
+ if ($d=opendir($path)) {
+ while (false!==($f=readdir($d)))
+ if (!ereg('^\.', $f) && is_dir($path.'/'.$f))
+ $res['dirs'][] = $f;
+ elseif (!ereg('^\.', $f) && is_file($path.'/'.$f))
+ switch (strtolower(preg_replace('/.*\./', '', $f))) {
+ case "jpg": case "jpeg": case "png":
+ $res['files'][] = $f;
+ }
+ }
+ closedir($d);
+ asort($res['dirs']);
+ asort($res['dirs']);
+ return $res;
+ }
+ /*function encrypt2($text) {
+ global $_REQUEST, $server_password;
+ return bin2hex(mcrypt_encrypt(MCRYPT_BLOWFISH, $_REQUEST['password']+$server_password, bzcompress(serialize($text)), MCRYPT_MODE_ECB));
+ }
+ function decrypt2($text) {
+ global $_REQUEST, $server_password;
+ return unserialize(bzdecompress(mcrypt_decrypt(MCRYPT_BLOWFISH, $_REQUEST['password']+$server_password, hex2bin($text), MCRYPT_MODE_ECB)));
+ }*/
+ function encrypt($text, $password = NULL) {
+ global $_REQUEST, $server_password;
+ if (!$password) $password = $_REQUEST['password'];
+ return base64_encode(mcrypt_encrypt(MCRYPT_BLOWFISH, $password+$server_password, bzcompress(serialize($text)), MCRYPT_MODE_ECB));
+ }
+ function decrypt($text) {
+ global $_REQUEST, $server_password;
+ $res = @unserialize(bzdecompress(mcrypt_decrypt(MCRYPT_BLOWFISH, $_REQUEST['password']+$server_password, base64_decode($text), MCRYPT_MODE_ECB)));
+ if (!$res) $res = @unserialize(bzdecompress(mcrypt_decrypt(MCRYPT_BLOWFISH, $_REQUEST['password']+$server_password, hex2bin($text), MCRYPT_MODE_ECB)));
+ return $res;
+ }
+ function makelink($link, $img, $filename, $style="") {
+ echo '';
+ }
+ function linkorselect($link, $img, $filename) {
+ if (isset($_REQUEST['select'])) {
+ echo '';
+ echo '';
+ } else {
+ makelink($link, $img, $filename);
+ }
+ }
+ $server_password=file_get_contents('/etc/gallery/password');
+ require('/etc/gallery/settings.php');
+ if (!$server_password) $server_password=str_shuffle(sha1(rand().time()."ashu87as"));
+ $username="";
+ if (!isset($_REQUEST['secret'])) {
+ require('/etc/gallery/authentication.php');
+ require('/etc/gallery/usersettings.php');
+ if ($username=="") error_die('not authorized', '403 Forbidden');
+ if (isset($_REQUEST['path'])) checkPath($_REQUEST['path']);
+ if (isset($_REQUEST['folder']) && !ereg('/', $_REQUEST['folder'])) {
+ $file = $thumbs.'/folders/'.$subpath.'/'.$_REQUEST['folder'].'.png';
+ $type="image/png";
+ if (!is_dir($thumbs.'/folders/'.$subpath)) mkdir($thumbs.'/folders/'.$subpath, 0777, true);
+ if (!is_file($file)) { // create folder image
+ $txt = wordwrap(preg_replace('/ +/', ' ', preg_replace('/-/', ' - ', preg_replace('/_/', " ", $_REQUEST['folder']))), 16, "\n", true);
+ $image = new Imagick();
+ $image->readImage('folder.png'); // read local template file
+ $draw = new ImagickDraw();
+ $draw->setFillColor('black');
+ $draw->setFont('arial');
+ if (mb_strlen($txt)<2) {
+ $draw->setFontSize(60);
+ $x = 75;
+ } else {
+ $draw->setFontSize(15);
+ $x = 50;
+ }
+ $image->annotateImage($draw, 10, $x, 0, $txt);
+ $image->writeImage($file);
+ }
+ } elseif (isset($_REQUEST['file'])) checkFile($_REQUEST['file'], isset($_REQUEST['thumb']));
+ if ($file!="") returnFile($file);
+ } else {
+ if (isset($_REQUEST['password'])) {
+ $secret = decrypt($_REQUEST['secret']) or error_die('bad password', '403 Forbidden');
+ if (!isset($secret['valid-until'])) error_die('missing validation date');
+ if (!isset($max_validity_days)) error_die('maximum validity days not set');
+ if (strtotime($secret['valid-until'])>time()+$max_validity_days*86400) error_die('validity limitation not respected');
+ if (strtotime($secret['valid-until'])
+ ';
+ }
+ } else {
+ ?>
+ Password Required
+
Enter password to start download of images as a Tape-ARchive (tar) file.
+
+
+ Gallery:
+
';
+ $key = $_REQUEST;
+ unset($key['password']);
+ unset($key['share']);
+ unset($key['select']);
+ $secret=urlencode(encrypt($key));
+ $default_mailto = "";
+ if (isset($_REQUEST['mailto'])) {
+ $message = preg_replace('/PASSWORD/', $_REQUEST['password'], $_REQUEST['mailtext']);
+ $link = (isset($_SERVER['HTTPS'])?'https://':'http://').$_SERVER['HTTP_HOST'].explode('?', $_SERVER['REQUEST_URI'])[0].'?secret='.$secret;
+ if (ereg('LINK', $message)) $message = preg_replace('/LINK/', $link, $message);
+ else $message .= "\n\n".$link;
+ if (mail($_REQUEST['mailto'], $_REQUEST['subject'], $message, 'From: '.$_REQUEST['replyto']."\r\n".'Reply-To: '.$_REQUEST['replyto'])) {
+ echo 'Mail Successfully Sent
';
+ echo 'Mail sent to '.$_REQUEST['mailto'].'.
';
+ echo 'You can send more mails, if you want ...
';
+ } else {
+ echo 'Send Mail Failed
';
+ echo 'Try again ...
';
+ }
+ }
+ echo 'Share Files
';
+ echo 'Share files: Tell your friend the password on a separate channel and send this: Link to Share
';
+ ?>
+ or Send Link in E-Mail:
+
+ 0)
+ echo '';
+ echo '';
+ if ($pos';
+ echo '';
+ if ($pos!==NULL) {
+ $lower = max(0, $pos-floor($preview_num/2));
+ $higher = min(count($objects['files']), $lower+$preview_num);
+ for ($i=$lower; $i<$higher; ++$i)
+ makelink('?path='.urlencode($subpath).'&file='.urlencode($objects['files'][$i]).'&view', '?path='.urlencode($subpath).'&file='.urlencode($objects['files'][$i]).'&thumb', $objects['files'][$i], 'style="width: '.round(100/($higher-$lower), 3).'%"');
+ }
+ } else { // gallery view
+ if (isset($_REQUEST['select'])) {
+ echo 'Normal-Modus';
+ echo '';
+ }
+ }
+ }
+ ?>
+
+