This manual is deprecated. Please visit https://groupoffice.readthedocs.io for the latest documentation. |
Difference between revisions of "Customizations"
From Group-Office Groupware and CRM Documentation
Line 4: | Line 4: | ||
1. Create the folder modules/mymodule | 1. Create the folder modules/mymodule | ||
+ | |||
2. Create modules/mymodule/scripts.txt with: | 2. Create modules/mymodule/scripts.txt with: | ||
Revision as of 11:17, 17 November 2009
It's very easy to customize Group-Office without modifying the existing sourcecode. This way you don't have to redo all the customizations each time you upgrade to a newer version.
This example will add a dummy tab to the e-mail account dialog. Please read "Creating a module" first to get started. You need to enable debugging mode.
1. Create the folder modules/mymodule
2. Create modules/mymodule/scripts.txt with:
modules/mymodule/Plugin.js
Create modules/mymodule/Plugin.js and put this in it:
GO.moduleManager.onModuleReady('email',function(){ Ext.override(GO.email.AccountDialog, { initComponent : GO.email.AccountDialog.prototype.initComponent.createSequence(function(){ this.tabPanel.add(new Ext.Panel({ title:'A dummy tab', html:'Just an example' })); //make dialog a little bit wider this.width+=100; }) }); });
Install the module and you should have a dummy tab in the account dialog at:
E-mail -> Administration -> E-mail accounts -> Accounts
Here are some other useful overrides:
GO.moduleManager.onModuleReady('calendar', function(){ //Make row height larger in the calendar. Ext.override(GO.grid.CalendarGrid,{ hourHeight : 80, minRows : 1 }); //send invitation to participants by default Ext.override(GO.calendar.ParticipantsPanel, { setEventId : GO.calendar.ParticipantsPanel.prototype.setEventId.createSequence(function(){ this.inviteCheckbox.setValue(true); }) }); });