|
|
|
|
@ -306,7 +306,8 @@ class AnnouncementManager |
|
|
|
|
$sentTo, |
|
|
|
|
$file = array(), |
|
|
|
|
$file_comment = null, |
|
|
|
|
$end_date = null |
|
|
|
|
$end_date = null, |
|
|
|
|
$sendToUsersInSession = false |
|
|
|
|
) { |
|
|
|
|
$_course = api_get_course_info(); |
|
|
|
|
$tbl_announcement = Database::get_course_table(TABLE_ANNOUNCEMENT); |
|
|
|
|
@ -366,6 +367,12 @@ class AnnouncementManager |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($sendToUsersInSession) { |
|
|
|
|
self::addAnnouncementToAllUsersInSessions($last_id); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return $last_id; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -379,7 +386,7 @@ class AnnouncementManager |
|
|
|
|
* @param string $file_comment |
|
|
|
|
* @return bool|int |
|
|
|
|
*/ |
|
|
|
|
public static function add_group_announcement($emailTitle, $newContent, $to, $to_users, $file = array(), $file_comment = '') |
|
|
|
|
public static function add_group_announcement($emailTitle, $newContent, $to, $to_users, $file = array(), $file_comment = '', $sendToUsersInSession = false) |
|
|
|
|
{ |
|
|
|
|
$_course = api_get_course_info(); |
|
|
|
|
|
|
|
|
|
@ -432,6 +439,11 @@ class AnnouncementManager |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($sendToUsersInSession) { |
|
|
|
|
self::addAnnouncementToAllUsersInSessions($last_id); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return $last_id; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -446,7 +458,7 @@ class AnnouncementManager |
|
|
|
|
* @param mixed attachment |
|
|
|
|
* @param string file comment |
|
|
|
|
*/ |
|
|
|
|
public static function edit_announcement($id, $emailTitle, $newContent, $to, $file = array(), $file_comment = '') |
|
|
|
|
public static function edit_announcement($id, $emailTitle, $newContent, $to, $file = array(), $file_comment = '', $sendToUsersInSession = false) |
|
|
|
|
{ |
|
|
|
|
global $_course; |
|
|
|
|
|
|
|
|
|
@ -478,6 +490,10 @@ class AnnouncementManager |
|
|
|
|
$sql_delete = "DELETE FROM $tbl_item_property WHERE c_id = $course_id AND ref='$id' AND tool='announcement'"; |
|
|
|
|
Database::query($sql_delete); |
|
|
|
|
|
|
|
|
|
if ($sendToUsersInSession) { |
|
|
|
|
self::addAnnouncementToAllUsersInSessions($id); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// store in item_property (first the groups, then the users |
|
|
|
|
|
|
|
|
|
if (!is_null($to)) { |
|
|
|
|
@ -503,6 +519,42 @@ class AnnouncementManager |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @param int $announcementId |
|
|
|
|
*/ |
|
|
|
|
public static function addAnnouncementToAllUsersInSessions($announcementId) |
|
|
|
|
{ |
|
|
|
|
$courseCode = api_get_course_id(); |
|
|
|
|
$_course = api_get_course_info(); |
|
|
|
|
|
|
|
|
|
$sessionList = SessionManager::get_session_by_course(api_get_course_id()); |
|
|
|
|
|
|
|
|
|
if (!empty($sessionList)) { |
|
|
|
|
foreach ($sessionList as $sessionInfo) { |
|
|
|
|
$sessionId = $sessionInfo['id']; |
|
|
|
|
$userList = CourseManager::get_user_list_from_course_code($courseCode, $sessionId); |
|
|
|
|
|
|
|
|
|
if (!empty($userList)) { |
|
|
|
|
foreach ($userList as $user) { |
|
|
|
|
api_item_property_update( |
|
|
|
|
$_course, |
|
|
|
|
TOOL_ANNOUNCEMENT, |
|
|
|
|
$announcementId, |
|
|
|
|
"AnnouncementUpdated", |
|
|
|
|
api_get_user_id(), |
|
|
|
|
0, |
|
|
|
|
$user['user_id'], |
|
|
|
|
0, |
|
|
|
|
0, |
|
|
|
|
$sessionId |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @param int $insert_id |
|
|
|
|
* @return bool |
|
|
|
|
|