I did this with a mod to the groups module
A - add a website field to the Event add form - BxEventsFormAdd.php add this:
'Website' => array(
'type' => 'text',
'name' => 'Website',
'caption' => _t('_bx_events_caption_website'),
'required' => false,
'db' => array (
'pass' => 'Xss',
),
),
Add the Website field to the bx_events_main database table:
ALTERTABLE `bx_events_main` ADD `Website` VARCHAR( 45 ) NOT NULL ;
Then you need to determine where you want to display the url. For this example, I will use the description block.
In BxEventsTemplate.php find:
function blockDesc (&$aEvent)
{
$aVars = array (
'description' => $aEvent['Description'],
);
return $this->parseHtmlByName('block_description', $aVars);
}
and change to:
function blockDesc (&$aEvent)
{
$aVars = array (
'description' => $aEvent['Description'],
'website' => $aEvent['Website'], );
return $this->parseHtmlByName('block_description', $aVars);
}
in events/templates/base/block_description.html, make like this:
<div class="bx-def-font-large">
__description__
<a href="http://__website__" title="__website__" target="_blank">__website__</a>
</div>
Lastly, in BxEventsSearchResult.php, add the website field to the search parameters. I usually do this:
'ownFields' => array('ID', 'Title', 'EntryUri', 'Country', 'City', 'Place', 'EventStart', 'EventEnd', 'ResponsibleID', 'PrimPhoto', 'FansCount', 'Rate', 'Description', 'Website'),
'searchFields' => array('Title', 'Description', 'City', 'Place', 'Tags', 'Categories', 'Website'),
Create your language key for the Website form field and clear all caches, and that should be it.