All,

I am currently using a few Zend_Form_Element_File elements in a few
different forms. Some of these forms work fine.

All of the file elements we've used so far follow the same 'code', which
I'll paste below.

The problem is occuring on one and only one of our form implementations
where I get the exception from Zend_Loader_PluginLoader:

'Plugin by name 'Upload' was not found in the registry; used paths:
Infinite_Validate_: Infinite/Validate/
Zend_Validate_: Zend/Validate/'

The exception is thrown from within isValid() call pathness/stack.

The issue disappears when reverting back to 1.7.0. I have been unable to
determin where the issue is, except that I think it has something to do with
the class being Zend_Validate_File_Upload whereas the pluginloader might be
looking for Zend_Validate_Upload ?

--------

// $addEditForm created above (Zend_Form obj)
$addEditForm->setAttrib('enctype', 'multipart/form-data');
$aes = $addEditForm->getSubForm('addEdit');

$aes->addDisplayGroup(array('coverLetterTA', 'coverLetterFile',
'coverLetterFile_Save', 'coverLetterSaved'), 'coverletter');
$aes->addDisplayGroup(array('resumeFile', 'resumeFile_Save', 'resumeSaved'),
'resume');

// <snip extra logic> (irrelevant stuff)

$resumePath = APPLICATION_PATH . Zend_Registry::get('config')->resourcepath
. "/resumes";
$clfile = $aes->getElement('coverLetterFile');
$rfile = $aes->getElement('resumeFile');

$clfile->setDestination($resumePath);
$clfile->addFilter(new Infinite_Filter_File_UniqueUploads('cl' .
($this->_user ? $this->_user->userID : '')));
$rfile->setDestination($resumePath);
$rfile->addFilter(new Infinite_Filter_File_UniqueUploads('r' . ($this->_user
? $this->_user->userID : '')));

if ($this->getRequest()->isPost() AND
$addEditForm->isValid($this->getRequest()->getPost())) *// FAILS HERE.*
{
 $insertData = $addEditForm->getValues();
 $this->fillRowWithData($application, $insertData['addEdit']);

 if ($insertData['addEdit']['coverLetterOpts'] == 'upload' AND
$clfile->receive())
 {
  $path = $clfile->getFileName();
  $application->coverLetterPath = $path;
 }

 if ($insertData['addEdit']['resumeOpts'] == 'upload' AND $rfile->receive())
 {
  $path = $rfile->getFileName();
  $application->resumePath = $path;
 }

 $applicationID = $application->save();
}

Reply via email to