Here's an example logic hook ("before_save") I used to manipulate a date-time field based on another input field. This might give you some ideas of what is possible.
PHP Code:
<?php
// custom/modules/Leads/LeadLogicHook.php
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
class LeadLogicHook {
// $sugar_config['default_date_format']
// $sugar_config['default_time_format']
function updateDateEntered(&$bean, $event, $arguments) {
global $current_user, $sugar_config;
$udf = $current_user->getPreference('datef');
if ($udf == "") {
$udf = $sugar_config['default_date_format'];
}
// Update the date_entered field based on entered_override_c field.
if (!empty($bean->entered_override_c)) {
$bean->date_entered = gmdate("Y-m-d", strtotime($bean->entered_override_c))." 16:11:11";
$bean->entered_override_c = '';
} // if not empty
} // end of updateDateEntered
} // end class
Bookmarks