Calendar: Fix missing group context in event edition

Author: @TheTomcat14
pull/4737/head
Yannick Warnier 2 years ago
parent efb9fbff8a
commit dbe0e52c54
  1. 9
      main/calendar/agenda.php
  2. 2
      main/calendar/agenda_js.php
  3. 5
      main/inc/lib/agenda.lib.php
  4. 3
      main/template/default/agenda/month.tpl

@ -14,10 +14,16 @@ if (!empty($course_info)) {
$action = isset($_GET['action']) ? Security::remove_XSS($_GET['action']) : null;
$group_id = api_get_group_id();
$url = null;
if (empty($action)) {
if (!empty($course_info)) {
$url = api_get_path(WEB_CODE_PATH).'calendar/agenda_js.php?type=course&'.api_get_cidreq();
if (!empty($group_id)) {
$url = api_get_path(WEB_CODE_PATH).'calendar/agenda_js.php?type=course&'.api_get_cidreq().'&user_id=GROUP:'.$group_id;
} else {
$url = api_get_path(WEB_CODE_PATH).'calendar/agenda_js.php?type=course&'.api_get_cidreq();
}
} else {
$url = api_get_path(WEB_CODE_PATH).'calendar/agenda_js.php?';
}
@ -31,7 +37,6 @@ $logInfo = [
];
Event::registerLog($logInfo);
$group_id = api_get_group_id();
$groupInfo = GroupManager::get_group_properties($group_id);
$eventId = $_REQUEST['id'] ?? null;
$type = $event_type = $_GET['type'] ?? null;

@ -369,6 +369,8 @@ $extraSettings = Agenda::returnFullCalendarExtraSettings();
$tpl->assign('fullcalendar_settings', $extraSettings);
$tpl->assign('group_id', (!empty($group_id) ? $group_id : 0));
$templateName = $tpl->get_template('agenda/month.tpl');
$content = $tpl->fetch($templateName);
$tpl->assign('content', $content);

@ -1923,7 +1923,7 @@ class Agenda
OR (
pa.subscriptionVisibility = ".AgendaEventSubscription::SUBSCRIPTION_CLASS."
AND pa.subscriptionItemId IN (".implode(', ', array_column($groupList, 'id')).")
)
)
";
}
@ -2487,6 +2487,7 @@ class Agenda
);
$event['sent_to'] = '<div class="label_tag notice">'.$sent_to.'</div>';
$event['type'] = 'group';
$event['group_id'] = $row['to_group_id'];
}
// Event sent to a user?
@ -3180,7 +3181,7 @@ class Agenda
$('#add_event_subscription_visibility')
.on('change', function () {
$('#max_subscriptions').prop('disabled', this.value == 0);
$('#add_event_subscription_item').prop('disabled', this.value != 2);
$('#add_event_subscription_item').prop('disabled', this.value != 2);
})
.trigger('change');
})

@ -744,6 +744,9 @@ $(function() {
{% endif %}
'{{ "Edit"|get_lang }}' : function() {
url = "{{ _p.web_main }}calendar/agenda.php?action=edit&type=fromjs&id="+calEvent.id+'&course_id='+calEvent.course_id+"";
if (typeof calEvent.group_id != "undefined" && {{ group_id }} != 0) {
url = url + '&gidReq=' + calEvent.group_id;
}
window.location.href = url;
$("#dialog-form").dialog( "close" );
},

Loading…
Cancel
Save