Editing calendar entries

Hi,
This is a very specific question but, I’m trying to change the way the calendar displays events.
I want to change which module the ‘i’ icon links to, and I want to change which fields are displayed instead of the time.
I have looked everywhere however, and cannot find which files deal with this function. Does anyone know where these files are/what they are called?
None of the files in the calendar module seemed to make much difference.
Thanks

Hi,

I’m not sure what you mean by which module the 'i' icon links to can you elaborate?

The fields that are displayed are controlled by the additionalDetails.php file for the respective module. i.e. for meetings this can be found in

modules/Meetings/metadata/additionalDetails.php

copying this to

custom/modules/Meetings/metadata

will allow you to change how the i bubble is displayed.

Thanks,
Jim

Thanks, that’s helpful.

Basically, it’s a little confusing but I’ve found a code that connects invoices to the calendar (which is a function that I desired) by creating an identical task along with each created invoice.
This works perfectly until someone clicks edit on the task in the calendar and it takes them to edit the task, but not the invoice?

Does that make sense? I need it to edit the invoice not the task.

The additionalDetails.php file also defines the edit and view link. You could check to see what kind of task it is and redirect to the invoice if necessary. I.e.


if(isSpecialTask()){//Choose how you will decide here. Perhaps check if the parent type of the task is an invoice?
	$editLink = "index.php?action=EditView&module=AOS_Invoices&record={$fields['PARENT_ID']}";//Using parent_id - untested
}else{
	$editLink = "index.php?action=EditView&module=Tasks&record={$fields['ID']}";
}

An alternative to creating tasks to show on the calendar for invoices is to customise the calendar to show invoices as their own entry. This requires a fair amount of changes to the calendar code however.

This worked perfectly!!
I used an if statement to check it’s parent type like you said.

Thanks you!!!

Do you know what file controls the displaying of events in the calendar? I would like to change it so that on mouse over the popup appears, but on clicking the event, the user is taken to the edit page.

The files to check would be:
modules/Calendar/CalendarDisplay.php
modules/Calendar/tpls/main.tpl
modules/Calendar/Cal.js

For modules/Calendar/Cal.js the source of this can be seen in jssource/src_files/modules/Calendar/Cal.js

You don’t want to edit these files directly or else you will lose changes when you upgrade. Rather you should create a customised version and ensure that the Calendar then calls the customised versions.