...
| Code Block |
|---|
global with sharing class MyFormLogic implements B25.Form.Customizer {
global void customize(B25.Form form) {
// add our own custom button
form.addButton(new B25.FormButton('my-custom-button', 'My Button Label'));
// trigger when the Reservation Type changes
form.getField(B25__Reservation__c.B25__Reservation_Type__c).onUpdate(new MyReservationTypeHandler());
}
global with sharing class MyReservationTypeHandler() extends B25.FormEventHandler {
global override void handleEvent(B25.FormEvent event, B25.Form form) {
Id newReservationTypeId = (Id) event.getNewValue();
B25__Reservation_Type__c reservationType = [SELECT Name FROM B25__Reservation_Type__c WHERE Id = :newReservationTypeId];
if (reservationType.Name == 'Super Special Type') {
form.getButton('my-custom-button').hide();
} else {
form.getButton('my-custom-button').show();
}
}
}
} |
...