- added code to notify users which was previously in inc.ClassFolder.php

This commit is contained in:
steinm 2010-11-17 07:34:12 +00:00
parent e4e2a6f911
commit 31b1f00171
8 changed files with 367 additions and 21 deletions

View File

@ -163,6 +163,28 @@ for ($file_num=0;$file_num<count($_FILES["userfile"]["tmp_name"]);$file_num++){
if (is_bool($res) && !$res) {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
} else {
$document = $res[0];
// Send notification to subscribers.
if($notifier) {
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("new_document_email");
$message = getMLText("new_document_email")."\r\n";
$message .=
getMLText("name").": ".$name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
getMLText("comment").": ".$comment."\r\n".
getMLText("comment_for_current_version").": ".$version_comment."\r\n".
"URL: ###URL_PREFIX###out/out.ViewDocument.php?documentid=".$document->getID()."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
}
add_log_line("?name=".$name."&folderid=".$folderid);

View File

@ -56,7 +56,29 @@ $name = sanitizeString($_POST["name"]);
$comment = sanitizeString($_POST["comment"]);
$subFolder = $folder->addSubFolder($name, $comment, $user, $sequence);
if (!is_object($subFolder)) {
if (is_object($subFolder)) {
// Send notification to subscribers.
if($notifier) {
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("new_subfolder_email");
$message = getMLText("new_subfolder_email")."\r\n";
$message .=
getMLText("name").": ".$name."\r\n".
getMLText("folder").": ".$subFolder->getFolderPathPlain()."\r\n".
getMLText("comment").": ".$comment."\r\n".
getMLText("user").": ".$owner->getFullName()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$subFolder->getID()."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
} else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
}

View File

@ -53,15 +53,63 @@ if (!is_numeric($sequence)) {
$sequence = "keep";
}
if (
(($folder->getName() == $name) || $folder->setName($name))
&& (($folder->getComment() == $comment) || $folder->setComment($comment))
&& ((!strcasecmp($sequence, "keep")) || $folder->setSequence($sequence))
)
{
$wasupdated = false;
if(($oldname = $folder->getName()) != $name) {
if($folder->setName($name)) {
// Send notification to subscribers.
if($notifier) {
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("folder_renamed_email");
$message = getMLText("folder_renamed_email")."\r\n";
$message .=
getMLText("old").": ".$oldname."\r\n".
getMLText("new").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
getMLText("comment").": ".$comment."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
} else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
}
}
else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
if(($oldcomment = $folder->getComment()) != $comment) {
if($folder->setComment($comment)) {
// Send notification to subscribers.
if($notifier) {
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("comment_changed_email");
$message = getMLText("comment_changed_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
getMLText("comment").": ".$comment."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
} else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
}
}
if(strcasecmp($sequence, "keep")) {
if($folder->setSequence($sequence)) {
} else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
}
}
add_log_line("?folderid=".$folderid);

View File

@ -116,16 +116,78 @@ if ($action == "setowner") {
if (!is_object($newOwner)) {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("unknown_user"));
}
$folder->setOwner($newOwner);
$oldOwner = $folder->getOwner();
if($folder->setOwner($newOwner)) {
if($notifier) {
// Send notification to subscribers.
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("ownership_changed_email");
$message = getMLText("ownership_changed_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("old").": ".$oldOwner->getFullName()."\r\n".
getMLText("new").": ".$newOwner->getFullName()."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
getMLText("comment").": ".$folder->_comment."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
} else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("set_owner_error"));
}
}
//Änderung auf nicht erben ------------------------------------------------------------------------
else if ($action == "notinherit") {
$defAccess = $folder->getDefaultAccess();
$folder->setInheritAccess(false);
$folder->setDefaultAccess($defAccess);
if($folder->setInheritAccess(false)) {
if($notifier) {
// Send notification to subscribers.
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("access_permission_changed_email");
$message = getMLText("access_permission_changed_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
}
if($folder->setDefaultAccess($defAccess)) {
if($notifier) {
// Send notification to subscribers.
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("access_permission_changed_email");
$message = getMLText("access_permission_changed_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
}
if ($mode == "copy") {
$parent = $folder->getParent();
$accessList = $parent->getAccessList();
@ -142,12 +204,50 @@ else if ($action == "inherit") {
if ($folderid == $settings->_rootFolderID || !$folder->getParent()) return;
$folder->clearAccessList();
$folder->setInheritAccess(true);
if($folder->setInheritAccess(true)) {
if($notifier) {
// Send notification to subscribers.
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("access_permission_changed_email");
$message = getMLText("access_permission_changed_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
}
}
//Standardberechtigung setzen----------------------------------------------------------------------
else if ($action == "setdefault") {
$folder->setDefaultAccess($mode);
if($folder->setDefaultAccess($mode)) {
if($notifier) {
// Send notification to subscribers.
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("access_permission_changed_email");
$message = getMLText("access_permission_changed_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
}
}
//Bestehende Berechtigung änndern -----------------------------------------------------------------

View File

@ -72,9 +72,11 @@ if ($action == "delnotify") {
if (isset($userid)) {
$res = $folder->removeNotify($userid, true);
$obj = $dms->getUser($userid);
}
else if (isset($groupid)) {
$res = $folder->removeNotify($groupid, false);
$obj = $dms->getGroup($groupid);
}
switch ($res) {
case -1:
@ -90,6 +92,34 @@ if ($action == "delnotify") {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error"));
break;
case 0:
if($notifier) {
// Email user / group, informing them of subscription.
$path="";
$folderPath = $folder->getPath();
for ($i = 0; $i < count($folderPath); $i++) {
$path .= $folderPath[$i]->getName();
if ($i +1 < count($folderPath))
$path .= " / ";
}
$subject = "###SITENAME###: ".$folder->getName()." - ".getMLText("notify_deleted_email");
$message = getMLText("notify_deleted_email")."\r\n";
$message .=
getMLText("name").": ".$folder->getName()."\r\n".
getMLText("folder").": ".$path."\r\n".
getMLText("comment").": ".$folder->getComment()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
if ($isUser) {
$notifier->toIndividual($user, $obj, $subject, $message);
}
else {
$notifier->toGroup($user, $obj, $subject, $message);
}
}
break;
}
}
@ -113,6 +143,35 @@ else if ($action == "addnotify") {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error"));
break;
case 0:
$obj = $dms->getUser($userid);
// Email user / group, informing them of subscription.
$path="";
$folderPath = $folder->getPath();
for ($i = 0; $i < count($folderPath); $i++) {
$path .= $folderPath[$i]->getName();
if ($i +1 < count($folderPath))
$path .= " / ";
}
if($notifier) {
$subject = "###SITENAME###: ".$folder->getName()." - ".getMLText("notify_added_email");
$message = getMLText("notify_added_email")."\r\n";
$message .=
getMLText("name").": ".$folder->getName()."\r\n".
getMLText("folder").": ".$path."\r\n".
getMLText("comment").": ".$folder->getComment()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
if ($isUser) {
$notifier->toIndividual($user, $obj, $subject, $message);
}
else {
$notifier->toGroup($user, $obj, $subject, $message);
}
}
break;
}
}
@ -132,6 +191,34 @@ else if ($action == "addnotify") {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error"));
break;
case 0:
$obj = $dms->getGroup($groupid);
// Email user / group, informing them of subscription.
$path="";
$folderPath = $folder->getPath();
for ($i = 0; $i < count($folderPath); $i++) {
$path .= $folderPath[$i]->getName();
if ($i +1 < count($folderPath))
$path .= " / ";
}
if($notifier) {
$subject = "###SITENAME###: ".$folder->getName()." - ".getMLText("notify_added_email");
$message = getMLText("notify_added_email")."\r\n";
$message .=
getMLText("name").": ".$folder->getName()."\r\n".
getMLText("folder").": ".$path."\r\n".
getMLText("comment").": ".$folder->getComment()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
if ($isUser) {
$notifier->toIndividual($user, $obj, $subject, $message);
}
else {
$notifier->toGroup($user, $obj, $subject, $message);
}
}
break;
}
}

View File

@ -108,7 +108,34 @@ if ($_GET["type"]=="document"){
add_folder_notify($folder,$userid,$recursefolder,$recursedoc);
}else if ($_GET["action"]=="del") $folder->removeNotify($userid, true);
} elseif ($_GET["action"]=="del") {
if($folder->removeNotify($userid, true)) {
$obj = $dms->getUser($userid);
if($notifier) {
// Email user / group, informing them of subscription.
$path="";
$folderPath = $folder->getPath();
for ($i = 0; $i < count($folderPath); $i++) {
$path .= $folderPath[$i]->getName();
if ($i +1 < count($folderPath))
$path .= " / ";
}
$subject = "###SITENAME###: ".$folder->getName()." - ".getMLText("notify_deleted_email");
$message = getMLText("notify_deleted_email")."\r\n";
$message .=
getMLText("name").": ".$folder->getName()."\r\n".
getMLText("folder").": ".$path."\r\n".
getMLText("comment").": ".$folder->getComment()."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toIndividual($user, $obj, $subject, $message);
}
}
}
}
header("Location:../out/out.ManageNotify.php");

View File

@ -58,7 +58,27 @@ if ($folder->getAccessMode($user) < M_READWRITE || $targetFolder->getAccessMode(
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("access_denied"));
}
if (!$folder->setParent($targetFolder)) {
if ($folder->setParent($targetFolder)) {
// Send notification to subscribers.
if($notifier) {
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("folder_moved_email");
$message = getMLText("folder_moved_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
getMLText("comment").": ".$folder->_comment."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
} else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
}

View File

@ -49,7 +49,27 @@ if ($folder->getAccessMode($user) < M_ALL) {
$parent=$folder->getParent();
if (!$folder->remove()) {
if ($folder->remove()) {
// Send notification to subscribers.
if ($notifier) {
$folder->getNotifyList();
$subject = "###SITENAME###: ".$folder->_name." - ".getMLText("folder_deleted_email");
$message = getMLText("folder_deleted_email")."\r\n";
$message .=
getMLText("name").": ".$folder->_name."\r\n".
getMLText("folder").": ".$folder->getFolderPathPlain()."\r\n".
getMLText("comment").": ".$folder->_comment."\r\n".
"URL: ###URL_PREFIX###out/out.ViewFolder.php?folderid=".$folder->_id."\r\n";
$subject=mydmsDecodeString($subject);
$message=mydmsDecodeString($message);
$notifier->toList($user, $folder->_notifyList["users"], $subject, $message);
foreach ($folder->_notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message);
}
}
} else {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
}