KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.62
System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64
User : www ( 80)
PHP Version : 8.3.8
Disable Function : NONE
Directory :  /domains/simes/unused/fCMSBackend/includes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /domains/simes/unused/fCMSBackend/includes/xmlbrowse.php
<?php

// UD class - UploadDownload class 
include("./includes/classes/UD.class.php");
$ud = new UD();

$ud->rootDir = $request->getAuthFBProperty ('root');
$ud->readOnlyFiles = false;
$ud->allowedExtensions = $extlist;
$ud->maxFileSize = $maxsize; 
$ud->maxRecursionDirs = 100;

$pfolder = $request->getPathParam ('FOLDER');
$pfilter = $request->getParam ('FILTER');
$pfilename = $request->getFilenameParam ('FILENAME');

$request->debugvar ($pfolder, 'FB Folder');
$request->debugvar ($pfilder, 'FB Filter');
$request->debugvar ($pfilename, 'FB Filename');


// ----------------------------------------------------
// This parts is for get Files And Folders
// ----------------------------------------------------
if ($action == "getFoldersAndFiles") {
	$reqelist = explode(",", $pfilter);

	if (! empty ($filter)) {
		if ($extlist)
			$ud->allowedExtensions = array_intersect ($extlist, $reqelist);
		else
			$ud->allowedExtensions = $reqelist; 
	}
	
	
	$FaF = $ud->getFoldersAndFiles ($pfolder); 
	if ($FaF < 0) {
		$request->error ($ud->getErrorMsg($FaF));
	}

	$dorec = ($rparams ['GET'] == 'all');
	if ($dorec) {
		$FaF = $ud->getTreeArray ($pfolder);
	}
	
	$output = '<?xml version="1.0" encoding="utf-8"?>';
	$output .= "<fb status=\"ok\">";
	
	makeXmlForderItemRec ($FaF, $dorec);

	$output .= "</fb>";
	
	$request->responseXML ($output);
}

// ---------------------------------------------------
// This parts is for delete
// ---------------------------------------------------

if ($action == "delete" ) {
	
	$request->authorize ('filebrowser', 'delete');	
	
	if (! $pfilename) {
		$toDelete = "folder";
		$bool = $ud->deleteFolder ($pfolder);
		
	} else {
		$toDelete = "file";
		
		$fpath = $request->joinPathParam ($pfolder, 'FILENAME', True);
		$request->debugvar ($fpath, 'FB FPath (delete)');

		$bool = $ud->deleteFile ($fpath);
	}
	
	if ($bool < 0) {
		$request->error ($ud->getErrorMsg($bool));
	} else {
		$request->response (array(
			'status' => 'ok',
			'deleted' => $toDelete
		));
	}
}

// ---------------------------------------------------
// This parts is for createDir
// ---------------------------------------------------

if ($action == "createDir" ) {
	
	$request->authorize ('filebrowser', 'delete');	
	
	$bool = $ud->addFolder ($pfolder);
	
	if ($bool < 0) {
		$request->error ($ud->getErrorMsg($bool));
	} else {
	
		$request->response (array(
			'status' => 'ok',
			'name' => $req ['FOLDER']
		));
		
	}
}

// -----------------------------
// Functions
//------------------------------

function makeXmlForderItemRec (&$arr, $dorec=True) 
{
	GLOBAL $output;

	if (!is_array($arr)) return;
	
	foreach ($arr as $key=>$value){

		$fname = $value [name];
		$ftype = $value [type];

		if (substr ($fname, 0, 1) == '.') continue;

		if ($ftype == "dir") {
			$output .= '<item type="' . $ftype . '" name="' . $fname . '">';
			
			if ($dorec) {
				if (isset($value [folders])) {
					makeXmlForderItemRec ($value [folders], $dorec);
				}
			}

			$output .= "</item>";
		}
		else if ($ftype == "file") { 
			$output .= '<item type="' . $ftype . '" name="' . $fname . '" size="' . $fzize . '" />';
		}
	}
}
?>

Anon7 - 2021