diff --git a/CHANGELOG b/CHANGELOG
index fbbec9528..e74a5d206 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -6,6 +6,8 @@
will output some document information
- new attribute type 'date'
- all dates are now in format 'yyyy-mm-dd'
+- fix fatal error when requesting new password
+- send emails to reviewers/approvers if new document or version was uploaded
--------------------------------------------------------------------------------
Changes in version 4.3.21
diff --git a/README.md b/README.md
index db56109ab..aad302f08 100644
--- a/README.md
+++ b/README.md
@@ -231,7 +231,15 @@ full text search engine support, you will also need to unpack
but not accessible through the web.
For security reason the data folder should not be inside the public folders
-or should be protected by a .htaccess file.
+or should be protected by a .htaccess file. The folder containing the
+configuration (settings.xml) must be protected by an .htaccess file like the
+following.
+
+ >
+ > Order allow,deny
+ > Deny from all
+ >
+
If you install SeedDMS for the first time continue with the database setup.
diff --git a/SeedDMS_Core/package.xml b/SeedDMS_Core/package.xml
index 053baabdf..eeec30edc 100644
--- a/SeedDMS_Core/package.xml
+++ b/SeedDMS_Core/package.xml
@@ -894,5 +894,23 @@ clean workflow log when a document version was deleted
by a group or user right
+
+ 2015-09-28
+
+
+ 4.3.21
+ 4.3.21
+
+
+ stable
+ stable
+
+ GPL License
+
+- add method SeedDMS_Core_Database::getCurrentTimestamp()
+- add method SeedDMS_Core_Database::getCurrentDatetime()
+- user getCurrentTimestamp() and getCurrentDatetime() whenever possible
+
+
diff --git a/op/op.AddDocument.php b/op/op.AddDocument.php
index 313eeb7b5..c7c064d2d 100644
--- a/op/op.AddDocument.php
+++ b/op/op.AddDocument.php
@@ -367,21 +367,6 @@ for ($file_num=0;$file_numgetNotifyList();
- if($settings->_enableNotificationAppRev) {
- /* Reviewers and approvers will be informed about the new document */
- foreach($reviewers['i'] as $reviewerid) {
- $notifyList['users'][] = $dms->getUser($reviewerid);
- }
- foreach($approvers['i'] as $approverid) {
- $notifyList['users'][] = $dms->getUser($approverid);
- }
- foreach($reviewers['g'] as $reviewergrpid) {
- $notifyList['groups'][] = $dms->getGroup($reviewergrpid);
- }
- foreach($approvers['g'] as $approvergrpid) {
- $notifyList['groups'][] = $dms->getGroup($approvergrpid);
- }
- }
$subject = "new_document_email_subject";
$message = "new_document_email_body";
@@ -423,6 +408,51 @@ for ($file_num=0;$file_num_enableNotificationAppRev) {
+ /* Reviewers and approvers will be informed about the new document */
+ if($reviewers['i'] || $reviewers['g']) {
+ $subject = "review_request_email_subject";
+ $message = "review_request_email_body";
+ $params = array();
+ $params['name'] = $document->getName();
+ $params['folder_path'] = $folder->getFolderPathPlain();
+ $params['version'] = $reqversion;
+ $params['comment'] = $comment;
+ $params['username'] = $user->getFullName();
+ $params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
+ $params['sitename'] = $settings->_siteName;
+ $params['http_root'] = $settings->_httpRoot;
+
+ foreach($reviewers['i'] as $reviewerid) {
+ $notifier->toIndividual($user, $dms->getUser($reviewerid), $subject, $message, $params);
+ }
+ foreach($reviewers['g'] as $reviewergrpid) {
+ $notifier->toGroup($user, $dms->getGroup($reviewergrpid), $subject, $message, $params);
+ }
+ }
+
+ if($approvers['i'] || $approvers['g']) {
+ $subject = "approval_request_email_subject";
+ $message = "approval_request_email_body";
+ $params = array();
+ $params['name'] = $document->getName();
+ $params['folder_path'] = $folder->getFolderPathPlain();
+ $params['version'] = $reqversion;
+ $params['comment'] = $comment;
+ $params['username'] = $user->getFullName();
+ $params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
+ $params['sitename'] = $settings->_siteName;
+ $params['http_root'] = $settings->_httpRoot;
+
+ foreach($approvers['i'] as $approverid) {
+ $notifier->toIndividual($user, $dms->getUser($approverid), $subject, $message, $params);
+ }
+ foreach($approvers['g'] as $approvergrpid) {
+ $notifier->toGroup($user, $dms->getGroup($approvergrpid), $subject, $message, $params);
+ }
+ }
+ }
}
}
diff --git a/op/op.SetReviewersApprovers.php b/op/op.SetReviewersApprovers.php
index 54efefe83..ae4fd2a06 100644
--- a/op/op.SetReviewersApprovers.php
+++ b/op/op.SetReviewersApprovers.php
@@ -127,7 +127,7 @@ foreach ($pIndRev as $p) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
@@ -186,7 +186,7 @@ if (count($reviewIndex["i"]) > 0) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
@@ -233,7 +233,7 @@ foreach ($pGrpRev as $p) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
@@ -289,7 +289,7 @@ if (count($reviewIndex["g"]) > 0) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
@@ -341,7 +341,7 @@ foreach ($pIndApp as $p) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
@@ -398,7 +398,7 @@ if (count($approvalIndex["i"]) > 0) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
@@ -445,7 +445,7 @@ foreach ($pGrpApp as $p) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
@@ -502,7 +502,7 @@ if (count($approvalIndex["g"]) > 0) {
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
- $params['version'] = $content->_version;
+ $params['version'] = $content->getVersion();
$params['comment'] = $content->getComment();
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
diff --git a/op/op.UpdateDocument.php b/op/op.UpdateDocument.php
index be7d08068..8e37b7da2 100644
--- a/op/op.UpdateDocument.php
+++ b/op/op.UpdateDocument.php
@@ -295,6 +295,51 @@ if ($_FILES['userfile']['error'] == 0) {
}
}
}
+
+ if($settings->_enableNotificationAppRev) {
+ /* Reviewers and approvers will be informed about the new document */
+ if($reviewers['i'] || $reviewers['g']) {
+ $subject = "review_request_email_subject";
+ $message = "review_request_email_body";
+ $params = array();
+ $params['name'] = $document->getName();
+ $params['folder_path'] = $folder->getFolderPathPlain();
+ $params['version'] = $contentResult->getContent()->getVersion();
+ $params['comment'] = $contentResult->getContent()->getComment();
+ $params['username'] = $user->getFullName();
+ $params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
+ $params['sitename'] = $settings->_siteName;
+ $params['http_root'] = $settings->_httpRoot;
+
+ foreach($reviewers['i'] as $reviewerid) {
+ $notifier->toIndividual($user, $dms->getUser($reviewerid), $subject, $message, $params);
+ }
+ foreach($reviewers['g'] as $reviewergrpid) {
+ $notifier->toGroup($user, $dms->getGroup($reviewergrpid), $subject, $message, $params);
+ }
+ }
+
+ if($approvers['i'] || $approvers['g']) {
+ $subject = "approval_request_email_subject";
+ $message = "approval_request_email_body";
+ $params = array();
+ $params['name'] = $document->getName();
+ $params['folder_path'] = $folder->getFolderPathPlain();
+ $params['version'] = $contentResult->getContent()->getVersion();
+ $params['comment'] = $contentResult->getContent()->getComment();
+ $params['username'] = $user->getFullName();
+ $params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
+ $params['sitename'] = $settings->_siteName;
+ $params['http_root'] = $settings->_httpRoot;
+
+ foreach($approvers['i'] as $approverid) {
+ $notifier->toIndividual($user, $dms->getUser($approverid), $subject, $message, $params);
+ }
+ foreach($approvers['g'] as $approvergrpid) {
+ $notifier->toGroup($user, $dms->getGroup($approvergrpid), $subject, $message, $params);
+ }
+ }
+ }
}
$expires = false;