Let the platform do the work

before_restore

Overview

The before_restore logic hook executes before a record gets undeleted (i.e. the deleted field's value changes from 1 to 0).

Definition

function before_restore($bean, $event, $arguments){}

Arguments

Name Type Description
bean Object The bean object
event String The current event
arguments Array Additional information related to the event (typically empty)

Examples

Creating a Logic Hook using the Extension Framework

./custom/Extension/modules/<module>/Ext/LogicHooks/<file>.php

<?php

        //Processing index. For sorting the array.
        1,

        //Label. A string value to identify the hook.
        'before_restore example',

        //The PHP file where your class is located.
        'custom/modules/<module>/before_restore_class.php',

        //The class the method is in.
        'before_restore_class',

        //The method to call.
        'before_restore_method'
    );

?>

./custom/modules/<module>/before_restore_class.php

<?php

    if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');

    class before_restore_class
    {
        function before_restore_method($bean, $event, $arguments)
        {
            //logic
        }
    }

?>

Creating a Core Logic Hook

Prior to Sugar 6.3.x, logic hooks could only be created using the following method. Please note that this approach is still valid but is not recommended when building plugins as it may conflict with existing customizations.

./custom/modules/<module>/logic_hooks.php

<?php

$hook_version = 1;
$hook_array = Array();

$hook_array['before_restore'] = Array();
$hook_array['before_restore'][] = Array(
//Processing index. For sorting the array.
1, 

//Label. A string value to identify the hook.
'before_restore example', 

//The PHP file where your class is located.
'custom/modules/<module>/before_restore_class.php', 

//The class the method is in.
'before_restore_class', 

//The method to call.
'before_restore_method' 
);

?>

./custom/modules/<module>/before_restore_class.php

<?php

if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');

class before_restore_class
{
function before_restore_method($bean, $event, $arguments)
{
//logic
}
}

?>