diff options
author | Kate Arzamastseva <pshns@ukr.net> | 2011-06-04 19:16:24 +0300 |
---|---|---|
committer | Kate Arzamastseva <pshns@ukr.net> | 2011-06-04 19:16:24 +0300 |
commit | fc4aefb978d8bb0aba588ef2ae2734619ff75ee5 (patch) | |
tree | c3009e4822c51bb087ae302c27776f58e54a82ab /lib | |
parent | cbe26ad6152c998c9a3290b0d321030c61dc7f1b (diff) | |
download | rpg-fc4aefb978d8bb0aba588ef2ae2734619ff75ee5.tar.gz rpg-fc4aefb978d8bb0aba588ef2ae2734619ff75ee5.tar.bz2 |
fetch.php with rev parameter
Diffstat (limited to 'lib')
-rw-r--r-- | lib/exe/fetch.php | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/exe/fetch.php b/lib/exe/fetch.php index 3ad4f1937..143d40f22 100644 --- a/lib/exe/fetch.php +++ b/lib/exe/fetch.php @@ -20,6 +20,10 @@ $CACHE = calc_cache($_REQUEST['cache']); $WIDTH = (int) $_REQUEST['w']; $HEIGHT = (int) $_REQUEST['h']; + $REV = (int) @$_REQUEST['rev']; + //sanitize revision + $REV = preg_replace('/[^0-9]/','',$REV); + list($EXT,$MIME,$DL) = mimetype($MEDIA,false); if($EXT === false){ $EXT = 'unknown'; @@ -28,7 +32,7 @@ } // check for permissions, preconditions and cache external files - list($STATUS, $STATUSMESSAGE) = checkFileStatus($MEDIA, $FILE); + list($STATUS, $STATUSMESSAGE) = checkFileStatus($MEDIA, $FILE, $REV); // prepare data for plugin events $data = array('media' => $MEDIA, @@ -147,7 +151,7 @@ function sendFile($file,$mime,$dl,$cache){ * @param $file reference to the file variable * @returns array(STATUS, STATUSMESSAGE) */ -function checkFileStatus(&$media, &$file) { +function checkFileStatus(&$media, &$file, $rev='') { global $MIME, $EXT, $CACHE; //media to local file @@ -172,7 +176,7 @@ function checkFileStatus(&$media, &$file) { if(auth_quickaclcheck(getNS($media).':X') < AUTH_READ){ return array( 403, 'Forbidden' ); } - $file = mediaFN($media); + $file = mediaFN($media, $rev); } //check file existance |