Allow update of existing project document

Prior to this, it was impossible to update a document's title or
description without uploading a new file, as MantisBT would trigger an
error.

Fixes #17405

Porting a0539b7e32c7dc8301518d857efb887aa43072bc to master
Add error param when updating project doc with empty title

Added missing error_parameter() call so that when attempting to update
an existing project document with an empty Title, the error message
indicates which field is required.

Fixes #17407

Porting 0bea0a0faa14b822e7706a71c3ab7fdd6fad5a13 to master
Remove extract() call on untrusted input

As per recommendation in PHP manual http://php.net/extract, drop use of
extract() on input from $_FILE superglobal.

Porting 085a82e173dd0dff355620213243e10078cc11d6 to master