<?php if (!defined('PmWiki')) exit();

/* uploadsplus.php copyright 2008 Hans Bracker
   Copyright 2004-2007 Patrick R. Michaud (pmichaud@pobox.com) original uploads script.
   This file is part of PmWiki; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published
   by the Free Software Foundation; either version 2 of the License, or
   (at your option) any later version.  See pmwiki.php for full details.

   Modified by Eemeli Aro <eemeli@gmail.com>

   This is a re-implementation of UploadsPlus's first feature, allowing
   uploads to be organised by Group and by Group/Name/ subfolders
   as required for different groups, by setting an array $UploadPrefix,
   instead of using $UploadPrefixFmt, i.e.
      # 'Special' group uploads organised in subfolders per page:
      $UploadPrefix['Special'] = '/$Group/$Name';
*/
$RecipeInfo['UploadPlus']['Version'] = '2009-08-28-EA';

# by default upload files are organised in Group subfolders
# alternatively organise by Group/Name/ subfolders: $UploadPrefix['default'] = '/$Group/$Name'
SDV($UploadPrefix['default'], isset($UploadPrefixFmt) ? $UploadPrefixFmt : '/$Group');

$FmtPV['$UploadPlusPrefix'] = 'MakeUploadPrefix($pn)';
$UploadPrefixFmt = '{$UploadPlusPrefix}';

SDV($UploadDir,'uploads');
$UploadFileFmt = "$UploadDir$UploadPrefixFmt";

# upload prefix (determines /Group or /Group/Name subfolders)
function MakeUploadPrefix($pagename) {
	global $UploadPrefix;
	$group = PageVar($pagename, '$Group');
	$prefix = array_key_exists($pagename, $UploadPrefix)
		? $UploadPrefix[$pagename]
		: array_key_exists($group, $UploadPrefix)
			? $UploadPrefix[$group]
			: $UploadPrefix['default'];
	return FmtPageName($prefix, $pagename);
}