The current solutions only uses time() which is a timestamp based on seconds. In some scenarios like automizing mails this is not enough. Even with the mt_rand there could be more likely collisions of the ids which is not allowed as it should be overall unique.
The newly used uniqid used a timestamp based on milliseconds and adds additionally a bit randomness which reduces the collision changes much more.
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
When we send an email with empty text content but with attached file, the file was not sent.
Co-authored-by: Ulysse Valdenaire <uvaldenaire@easya.solutions>
* Fix phpdoc for phpstan
* Add abstract write_file to ModelePDFContract
And update phpdoc for derived classes
* Fix typing for php_standard_actions writefile
* Improve phpdoc for write_files (& related)
* Add abstract write_file to ModelePDFBom
* Add abstract write_file to ModelePDFDeliveryOrder
* Add abstract write_file to ModeleExpenseReport
* Add abstract write_file to ModelePDFFicheinter
* Add abstract write_file to ModelePDFEvaluation
* Add abstract write_file to ModelePDFFactures
* Add abstract write_file to ModelePDFSuppliersInvoices
* Update ModelePDFProjects and ModelePDFTask related classes
* Qual: Add abstract write_file to ModelePdfExpedition
And update phpdoc for derived classes
* Qual: Correct reference (doc) to ModelePDFEvaluation
* Qual: Add abstract write_file to ModelePDFKnowledgeRecord
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFMo & ModelePDFMouvement
And update phpdoc for derived classes
* Qual: Set typehint to ModelePDFFicheinter
* Qual: Add abstract write_file to ModelePDFCommandes
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFPropales
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePdfReception
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFSuppliersOrders
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFSuppliersOrders
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFSuppliersPayments
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFSupplierProposal
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFWorkstation
And update phpdoc for derived classes
* Set typing for doc generator (commonobject)
* Improve typing for write_file
* Set typing for doc generator
* Qual: Add abstract write_file to ModelePDFMember
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFProduct
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFProductBatch
And update phpdoc for derived classes
* Qual: Add abstract write_file to ModelePDFRecruitmentJobPosition
And update phpdoc for derived classes
* Add abstract write_file to ModelePDFTicket
* Add abstract write_file to ModelePDFUser
* Add abstract write_file to ModelePDFUserGroup
* Add abstract write_file to ModeleThirdPartyDoc
* Add abstract write_file to ModelePDFAsset
* Find all incompatible classes
* Qual: update phan baseline
* Set typing for doc generator (commonobject)
* Qual: update phan baseline
---------
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>