3 class UploadFromStash
extends UploadBase
{
5 static function isValidSessionKey( $key, $sessionData ) {
6 return !empty( $key ) &&
7 is_array( $sessionData ) &&
8 isset( $sessionData[$key] ) &&
9 isset( $sessionData[$key]['version'] ) &&
10 $sessionData[$key]['version'] == self
::SESSION_VERSION
;
13 static function isValidRequest( &$request ) {
14 $sessionData = $request->getSessionData( 'wsUploadData' );
15 return self
::isValidSessionKey(
16 $request->getInt( 'wpSessionKey' ),
21 function initialize( $name, $sessionData ) {
23 * Confirming a temporarily stashed upload.
24 * We don't want path names to be forged, so we keep
25 * them in the session on the server and just give
26 * an opaque key to the user agent.
28 parent
::initialize( $name,
29 $sessionData['mTempPath'],
30 $sessionData['mFileSize'],
34 $this->mFileProps
= $sessionData['mFileProps'];
37 function initializeFromRequest( &$request ) {
38 $sessionKey = $request->getInt( 'wpSessionKey' );
39 $sessionData = $request->getSessionData('wsUploadData');
41 $desiredDestName = $request->getText( 'wpDestFile' );
42 if( !$desiredDestName )
43 $desiredDestName = $request->getText( 'wpUploadFile' );
44 return $this->initialize( $desiredDestName, $sessionData[$sessionKey] );
48 * File has been previously verified so no need to do so again.
50 protected function verifyFile( $tmpfile ) {
55 * We're here from "ignore warnings anyway" so return just OK
57 function checkWarnings() {