My team was frustrated because when a new version of a document was added to a document, the email they receive didn't include anything regarding the document version.
So I added a document version section in the code and I believe it's worth adding to original ProjeQtOr version.
In SqlElement.php, in getMailDetail() function, it should be added around line 5361, just before the line
if (isset ( $this->_Note ) and is_array ( $this->_Note )) {
The following code:
// ADDITION BY papjul - Document Version details
if (isset ( $this->_DocumentVersion ) and is_array ( $this->_DocumentVersion )) {
$msg .= $rowStart . $sectionStart . i18n ( 'sectionDocumentVersion' ) . $sectionEnd . $rowEnd;
$documentVersion = new DocumentVersion ();
$documentVersions = $documentVersion->getSqlElementsFromCriteria ( array('idDocument' => $this->id), false, null, 'name desc' );
foreach ( $documentVersions as $documentVersion ) {
$name = $documentVersion->name;
$versionDate = $documentVersion->versionDate;
$msg .= $rowStart . $labelStart;
$msg .= $name;
$msg .= '<br />';
$msg .= htmlFormatDateTime ( $versionDate );
$msg .= $labelEnd . $fieldStart;
$msg .= $documentVersion->fileName;
$msg .= '<br />';
$text = new Html2Text ( $documentVersion->description );
$plainText = $text->getText ();
if (mb_strlen ( $plainText ) > 10000) { // Should not send too long email
$descriptionTruncated = nl2br ( mb_substr ( $plainText, 0, 10000 ) );
$msg .= $descriptionTruncated;
} else {
$msg .= $documentVersion->description;
}
$msg .= $fieldEnd . $rowEnd;
}
}
// End of ADDITION BY papjul - Document Version details
Little fix.
We noticed that we received document versions in wrong order in some rare cases. For example:
V4.9
V4.8
[...]
V4.2
V4.12
V4.11
V4.10
V4.1
I chose to replace "name desc" by "createDateTime desc" in the previous code. What do you think? What would be the best field to sort by? What does the Document screen in ProjeQtOr itself use?
En poursuivant votre navigation, vous acceptez le dépôt de cookies tiers destinés au bon fonctionnement et à la sécurisation du site (gestion de session, reCaptcha) et à une analyse statistique anonymisée des accès sur notre site (Google Analytics). Si vous vous inscrivez, les informations que vous fournirez ne seront jamais divulguées à un tiers sous quelque forme que ce soit. En savoir plus
Cookies settings
×
Functional Cookies
Ce site utilise des cookies pour assurer son bon fonctionnement et ne peuvent pas être désactivés de nos systèmes. Nous ne les utilisons pas à des fins publicitaires. Si ces cookies sont bloqués, certaines parties du site ne pourront pas fonctionner.
Session
Please login to see yours activities!
Other cookies
Ce site web utilise un certain nombre de cookies pour gérer, par exemple, les sessions utilisateurs.