CoolFace
Apppublic

kenken999/php

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
mfhandler.php111 linesDownload Raw Back to public
1<?php2/*3 * jQuery File Upload Plugin PHP Example 5.74 * https://github.com/blueimp/jQuery-File-Upload5 *6 * Copyright 2010, Sebastian Tschan7 * https://blueimp.net8 *9 * Licensed under the MIT license:10 * http://www.opensource.org/licenses/MIT11 */12 13include_once ("include/dbcommon.php");14 15@ini_set("display_errors","1");16@ini_set("display_startup_errors","1");17 18$gReadPermissions = false;19 20$table = postvalue("table");21$field = postvalue("field");22$thumb = postvalue( "thumb" );23$pageType = postvalue("pageType");24$outputAsAttachment = postvalue("nodisp") != 1;25$pageName = postvalue("page");26$userpicMode = false;27 28if( postvalue("userpic") ) {29	if( !Security::showUserPic() )30		exit();31	$userData =& Security::currentUserData();32	$userpicField = Security::userpicField() ? Security::userpicField() : "picture";33	34	$value =& $userData[ $userpicField ];35	$ftype = SupposeImageType($value);36	if( !$ftype ) {37		$ftype = "image/png";		38	}39	header("Cache-Control: max-age=0");40	header("Content-Type: ".$ftype);41	echoBinary( $value );42	exit();43}44 45if( !$userpicMode ) {46	if ( !GetTableURL($table) ) {47		exit(0);48	}49 50	$requestAction = $_REQUEST['_action'];51	$showField = $requestAction == "POST" || postvalue("fkey") || $requestAction == "DELETE";52	if( !Security::userHasFieldPermissions( $table, $field, $pageType, $pageName, $showField ) ) {53		exit(0);54	}55}56 57/*58global $cman;	59$_connection = $cman->byTable( $table );60*/61$pSet = new ProjectSettings($table, $pageType);62 63add_nocache_headers();64 65require_once getabspath('classes/filehandler.php');66 67if( $requestAction == "DELETE" || $requestAction == "POST" ) {68	header('Content-Disposition: inline; filename="files.json"');69	header('X-Content-Type-Options: nosniff');70	header('Access-Control-Allow-Origin: *');71	header('Access-Control-Allow-Methods: OPTIONS, HEAD, GET, POST');72	header('Access-Control-Allow-Headers: X-File-Name, X-File-Type, X-File-Size');73 74}75switch ($requestAction) {76    case 'DELETE':77    	$fileHandler = new RunnerFileHandler( $field, $pSet, postvalue("formStamp") );78		if( postvalue("resetUploadedFiles") ) {79			$success = $fileHandler->resetUplodedFiles();80		} else {81			$success = $fileHandler->delete( postvalue("fileName") );82		}83        header('Content-type: application/json');84        echo my_json_encode($success);85        break;86    case 'POST':87    	$fileHandler = new RunnerFileHandler( $field, $pSet, postvalue("formStamp") );88		if( $fileHandler->directUpload() ) {89			$fileHandler->prepareDirectUpload( runner_json_decode( postvalue("file") )  );90		} else {91			$fileHandler->acceptUpload( uploadFiles( "files" ) );92		}93    	break;94	case 'GET':95    default:96    //	LEGACY use only. This is only to support old custom code which points to mfhandler to display images.97	//	New code uses file.php to show files/images98		$fileHandler = new RunnerFileHandler( $field, $pSet, postvalue("fkey") );99		$filename = postvalue("file") != "" ? postvalue("file") : postvalue("filename");100		101		$useHttpRange = !postvalue('norange');102		103		$keys = array();104		foreach( $pSet->getTableKeys() as $ind => $k ) {105			$keys[ $k ] = postvalue("key".($ind + 1));106		}107		$fileHandler->showFile( $filename, !!postvalue("thumbnail"), !!postvalue("icon"), $outputAsAttachment, $useHttpRange, $keys );108		109}110exit();111?>