- 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) { if (is_bool($res) && !$res) {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured")); 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); add_log_line("?name=".$name."&folderid=".$folderid);

View File

@ -55,8 +55,30 @@ if (!is_numeric($sequence)) {
$name = sanitizeString($_POST["name"]); $name = sanitizeString($_POST["name"]);
$comment = sanitizeString($_POST["comment"]); $comment = sanitizeString($_POST["comment"]);
$subFolder = $folder->addSubFolder($name, $comment, $user, $sequence); $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")); UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
} }

View File

@ -53,17 +53,65 @@ if (!is_numeric($sequence)) {
$sequence = "keep"; $sequence = "keep";
} }
if ( $wasupdated = false;
(($folder->getName() == $name) || $folder->setName($name)) if(($oldname = $folder->getName()) != $name) {
&& (($folder->getComment() == $comment) || $folder->setComment($comment)) if($folder->setName($name)) {
&& ((!strcasecmp($sequence, "keep")) || $folder->setSequence($sequence)) // Send notification to subscribers.
) if($notifier) {
{ $folder->getNotifyList();
} $subject = "###SITENAME###: ".$folder->_name." - ".getMLText("folder_renamed_email");
else { $message = getMLText("folder_renamed_email")."\r\n";
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured")); $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"));
}
} }
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); add_log_line("?folderid=".$folderid);
header("Location:../out/out.ViewFolder.php?folderid=".$folderid."&showtree=".$_POST["showtree"]); header("Location:../out/out.ViewFolder.php?folderid=".$folderid."&showtree=".$_POST["showtree"]);

View File

@ -116,16 +116,78 @@ if ($action == "setowner") {
if (!is_object($newOwner)) { if (!is_object($newOwner)) {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("unknown_user")); 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 ------------------------------------------------------------------------ //Änderung auf nicht erben ------------------------------------------------------------------------
else if ($action == "notinherit") { else if ($action == "notinherit") {
$defAccess = $folder->getDefaultAccess(); $defAccess = $folder->getDefaultAccess();
$folder->setInheritAccess(false); if($folder->setInheritAccess(false)) {
$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($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") { if ($mode == "copy") {
$parent = $folder->getParent(); $parent = $folder->getParent();
$accessList = $parent->getAccessList(); $accessList = $parent->getAccessList();
@ -142,12 +204,50 @@ else if ($action == "inherit") {
if ($folderid == $settings->_rootFolderID || !$folder->getParent()) return; if ($folderid == $settings->_rootFolderID || !$folder->getParent()) return;
$folder->clearAccessList(); $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---------------------------------------------------------------------- //Standardberechtigung setzen----------------------------------------------------------------------
else if ($action == "setdefault") { 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 ----------------------------------------------------------------- //Bestehende Berechtigung änndern -----------------------------------------------------------------

View File

@ -72,9 +72,11 @@ if ($action == "delnotify") {
if (isset($userid)) { if (isset($userid)) {
$res = $folder->removeNotify($userid, true); $res = $folder->removeNotify($userid, true);
$obj = $dms->getUser($userid);
} }
else if (isset($groupid)) { else if (isset($groupid)) {
$res = $folder->removeNotify($groupid, false); $res = $folder->removeNotify($groupid, false);
$obj = $dms->getGroup($groupid);
} }
switch ($res) { switch ($res) {
case -1: case -1:
@ -90,6 +92,34 @@ if ($action == "delnotify") {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error")); UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error"));
break; break;
case 0: 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; break;
} }
} }
@ -113,6 +143,35 @@ else if ($action == "addnotify") {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error")); UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error"));
break; break;
case 0: 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; break;
} }
} }
@ -132,6 +191,34 @@ else if ($action == "addnotify") {
UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error")); UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("internal_error"));
break; break;
case 0: 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; break;
} }
} }

View File

@ -108,7 +108,34 @@ if ($_GET["type"]=="document"){
add_folder_notify($folder,$userid,$recursefolder,$recursedoc); 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"); 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")); 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")); 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(); $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")); UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("error_occured"));
} }