[TikiWiki-commits] [Git][tikiwiki/tiki][28.x] [ENH] Tracker calendar item: Show link to tracker item from calendar interface
"Adrien Mbuya Maloba \(@adrienmaloba\) via TikiWiki-cvs" <[email protected]>
| Newsgroups | gmane.comp.cms.tiki.cvs |
|---|---|
| Message-ID | <68dabe2be9a11_2cdf804976a0@gitlab-sidekiq-low-urgency-cpu-bound-v2-5cc58485fb-74b25.mail> |
Adrien Mbuya Maloba pushed to branch 28.x at Tiki Wiki CMS Groupware / Tiki
Commits:
1c070a5d by Adrien Mbuya Maloba at 2025-09-29T20:06:23+03:00
[ENH] Tracker calendar item: Show link to tracker item from calendar interface
---
* [ENH] Tracker calendar item: Show link to tracker item from calendar interface
---
* [ENH] Tracker calendar item: Show link to tracker item from calendar interface
See merge request tikiwiki/tiki!8510
See merge request tikiwiki/tiki!8678
- - - - -
3 changed files:
- lib/core/Services/Calendar/Controller.php
- templates/calendar/edit_item.tpl
- templates/calendar/view_item.tpl
Changes:
=====================================
lib/core/Services/Calendar/Controller.php
=====================================
@@ -230,9 +230,11 @@ class Services_Calendar_Controller extends Services_Calendar_BaseController
$access = TikiLib::lib('access');
$parserLib = TikiLib::lib('parser');
$displayTimezone = TikiLib::lib('tiki')->get_display_timezone();
+ $trklib = TikiLib::lib('trk');
$timezones = TikiDate::getTimeZoneList();
$timezones = array_keys($timezones);
$return_url = $input->return_url->url();
+ $trackerItems = [];
$rawcals = $this->calendarLib->list_calendars();
@@ -340,6 +342,8 @@ class Services_Calendar_Controller extends Services_Calendar_BaseController
$calitem['start'] = $start->getTime();
$calitem['end'] = $end->getTime();
$calitem['duration'] = 0;
+
+ $trackerItems = $this->calendarLib->getAttachedTrackerItems($calitemId);
} else {
// new event
$title = tr('Calendar event : %0', tr('New'));
@@ -543,6 +547,8 @@ class Services_Calendar_Controller extends Services_Calendar_BaseController
'displayTimezone' => $displayTimezone,
'timezones' => $timezones,
'prefilled' => $input->prefill_start->int() ? true : false,
+ // related tracker items
+ 'trackerItems' => ! empty($trackerItems) ? $trackerItems : [],
];
}
@@ -564,9 +570,11 @@ class Services_Calendar_Controller extends Services_Calendar_BaseController
public function action_view_item(JitFilter $input): array
{
global $prefs;
+ $trklib = TikiLib::lib('trk');
$calitemId = $input->calitemId->int();
$recurrence = [];
+ $trackerItems = [];
$preview = false;
$calendar = null;
$calitem = null;
@@ -651,6 +659,7 @@ class Services_Calendar_Controller extends Services_Calendar_BaseController
$endtime = $tikilib->get_short_time($calitem['end']);
$calitem['display_datetimes'] = tr('%0 %1 to %2 %3', $startday, $starttime, $endday, $endtime);
}
+ $trackerItems = $this->calendarLib->getAttachedTrackerItems($calitemId);
}
return [
@@ -662,6 +671,8 @@ class Services_Calendar_Controller extends Services_Calendar_BaseController
'daynames' => $this->daynamesPlural,
'monthnames' => $this->monthnames,
'preview' => $preview,
+ // related tracker items
+ 'trackerItems' => ! empty($trackerItems) ? $trackerItems : [],
];
}
=====================================
templates/calendar/edit_item.tpl
=====================================
@@ -81,10 +81,22 @@
<input type="text" name="calitem[name]" value="{$calitem.name|escape}" size="32" class="form-control" required>
</div>
</div>
+ {if !empty($trackerItems)}
+ <div class="mb-3 row">
+ <label class="col-form-label col-sm-3">{tr}Related tracker items{/tr}</label>
+ <div class="col-sm-9 mb-0 pt-2">
+ <ul>
+ {foreach from=$trackerItems item=trackerItem}
+ <li>{object_link type="trackeritem" id=$trackerItem}</li>
+ {/foreach}
+ </ul>
+ </div>
+ </div>
+ {/if}
<div class="mb-3 row">
<label class="col-form-label col-sm-3">{tr}Created by{/tr}</label>
<div class="col-sm-9">
- <div class="summary" style="margin-bottom: 0; padding-top: 7px;">
+ <div class="summary mb-0 pt-2">
{$calitem.user|escape}
</div>
=====================================
templates/calendar/view_item.tpl
=====================================
@@ -210,6 +210,18 @@
<div class="description">
{$calitem.parsed|default:"<em>{tr}No description{/tr}</em>"}
</div>
+ {if !empty($trackerItems)}
+ <div class="row px-3 py-2">
+ <label class="col-form-label col-sm-3">{tr}Related tracker items{/tr} : </label>
+ <div class="col-sm-9 mb-0 pt-2">
+ <ul>
+ {foreach from=$trackerItems item=trackerItem}
+ <li>{object_link type="trackeritem" id=$trackerItem}</li>
+ {/foreach}
+ </ul>
+ </div>
+ </div>
+ {/if}
<div class="small mt-3">
<div class="table-responsive">
<table class="table table-borderless p-0 table-sm{if $preview} table-secondary{/if}">
View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/1c070a5d8ca3b72ba3b9cce1690cf53c863ffe32
--
View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/1c070a5d8ca3b72ba3b9cce1690cf53c863ffe32
You're receiving this email because of your account on gitlab.com.
_______________________________________________
TikiWiki-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tikiwiki-cvs