I'm having some difficulty creating a method to call in a VF page. I believe I should be doing this by creating an Apex Class as a controller extension, but please correct me if I'm wrong and help me understand where I can create a method. I think SalesForce doesn't always do well with covering the very basics.
Here is what I currently have in a new Apex Class, but I'm getting errors on the variables, although, I believe I'm accessing the Intake controller, where these variables exist, so I'm not sure.
public with sharing class ShouldShowSHSection {
public ApexPages.StandardController Intake {get; set;}
public Boolean getShouldShowSHSection() {
if(
record.Personal_Care__c.contains('Toileting/Bathing/Self-Care in Bathroom') && !record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)')
)
{
return true;
}
if(
record.Personal_Care__c.contains('Sleeping Routines/Up and About at Night') && !record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)')
)
{
return true;
}
if(
record.Personal_Care__c.contains('Completing Daily Living Routines with Auditory Prompts like Laundry/Cooking/Cleaning') && !record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)')
)
{
return true;
}
if(
record.Safety_Concerns__c.contains('Cooking Safety/Meal Prep') && !record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)')
)
{
return true;
}
if(
record.Social_Concerns__c.contains('Having Privacy or Being Alone Part or All of Day or Night') && !record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)')
)
{
return true;
}
if(
record.Social_Concerns__c.contains('Using Tech for Social Connection with Friends and Family') && !record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)')
)
{
return true;
}
if(
record.Social_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') && !record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)')
)
{
return true;
}
if(
record.Safety_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') && (
!record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)') ||
record.Personal_Care__c.contains('Toileting/Bathing/Self-Care in Bathroom') ||
record.Personal_Care__c.contains('Sleeping Routines/Up and About at Night') ||
record.Personal_Care__c.contains('Completing Daily Living Routines with Auditory Prompts like Laundry/Cooking/Cleaning') ||
record.Safety_Concerns__c.contains('Cooking Safety/Meal Prep') ||
record.Social_Concerns__c.contains('Having Privacy or Being Alone Part or All of Day or Night') ||
record.Social_Concerns__c.contains('Using Tech for Social Connection with Friends and Family') ||
record.Social_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') ||
record.Physical_Concerns__c.contains('Getting in or Out of Bed or Chair')
)
)
{
return true;
}
if(
record.Safety_Concerns__c.contains('Wandering or Elopement/Running Way or Egress (Leaving the Home)') && (
!record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)') ||
record.Personal_Care__c.contains('Toileting/Bathing/Self-Care in Bathroom') ||
record.Personal_Care__c.contains('Sleeping Routines/Up and About at Night') ||
record.Personal_Care__c.contains('Completing Daily Living Routines with Auditory Prompts like Laundry/Cooking/Cleaning') ||
record.Safety_Concerns__c.contains('Cooking Safety/Meal Prep') ||
record.Social_Concerns__c.contains('Having Privacy or Being Alone Part or All of Day or Night') ||
record.Social_Concerns__c.contains('Using Tech for Social Connection with Friends and Family') ||
record.Social_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') ||
record.Physical_Concerns__c.contains('Getting in or Out of Bed or Chair')
)
)
{
return true;
}
if(
record.Safety_Concerns__c.contains('Confusion or Dementia') && (
!record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)') ||
record.Personal_Care__c.contains('Toileting/Bathing/Self-Care in Bathroom') ||
record.Personal_Care__c.contains('Sleeping Routines/Up and About at Night') ||
record.Personal_Care__c.contains('Completing Daily Living Routines with Auditory Prompts like Laundry/Cooking/Cleaning') ||
record.Safety_Concerns__c.contains('Cooking Safety/Meal Prep') ||
record.Social_Concerns__c.contains('Having Privacy or Being Alone Part or All of Day or Night') ||
record.Social_Concerns__c.contains('Using Tech for Social Connection with Friends and Family') ||
record.Social_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') ||
record.Physical_Concerns__c.contains('Getting in or Out of Bed or Chair')
)
)
{
return true;
}
if(
record.Safety_Concerns__c.contains('Accessing Help for an Emergency') && (
!record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)') ||
record.Personal_Care__c.contains('Toileting/Bathing/Self-Care in Bathroom') ||
record.Personal_Care__c.contains('Sleeping Routines/Up and About at Night') ||
record.Personal_Care__c.contains('Completing Daily Living Routines with Auditory Prompts like Laundry/Cooking/Cleaning') ||
record.Safety_Concerns__c.contains('Cooking Safety/Meal Prep') ||
record.Social_Concerns__c.contains('Having Privacy or Being Alone Part or All of Day or Night') ||
record.Social_Concerns__c.contains('Using Tech for Social Connection with Friends and Family') ||
record.Social_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') ||
record.Physical_Concerns__c.contains('Getting in or Out of Bed or Chair')
)
)
{
return true;
}
if(
record.Physical_Concerns__c.contains('Walking or Mobility') && (
!record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)') ||
record.Personal_Care__c.contains('Toileting/Bathing/Self-Care in Bathroom') ||
record.Personal_Care__c.contains('Sleeping Routines/Up and About at Night') ||
record.Personal_Care__c.contains('Completing Daily Living Routines with Auditory Prompts like Laundry/Cooking/Cleaning') ||
record.Safety_Concerns__c.contains('Cooking Safety/Meal Prep') ||
record.Social_Concerns__c.contains('Having Privacy or Being Alone Part or All of Day or Night') ||
record.Social_Concerns__c.contains('Using Tech for Social Connection with Friends and Family') ||
record.Social_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') ||
record.Physical_Concerns__c.contains('Getting in or Out of Bed or Chair')
)
)
{
return true;
}
if(
record.Physical_Concerns__c.contains('Getting in or Out of Bed or Chair') && (
!record.Physical_Concerns__c.contains('Controlling Environment with Limited Mobility (turning on lights/opening doors)') ||
record.Personal_Care__c.contains('Toileting/Bathing/Self-Care in Bathroom') ||
record.Personal_Care__c.contains('Sleeping Routines/Up and About at Night') ||
record.Personal_Care__c.contains('Completing Daily Living Routines with Auditory Prompts like Laundry/Cooking/Cleaning') ||
record.Safety_Concerns__c.contains('Cooking Safety/Meal Prep') ||
record.Social_Concerns__c.contains('Having Privacy or Being Alone Part or All of Day or Night') ||
record.Social_Concerns__c.contains('Using Tech for Social Connection with Friends and Family') ||
record.Social_Concerns__c.contains('Using Tech for Entertainment (smart speakers/social media)') ||
record.Physical_Concerns__c.contains('Getting in or Out of Bed or Chair')
)
)
{
return true;
}
return false;
}
}
My VisualForce Page will be calling this like this:
<apex:pageBlockSection rendered="{!shouldShowSHSection}">
containsIgnoreCase(...)
to avoid failing to match on capitalization of some term in these long strings