You need to sign in to do that
Don't have an account?
samrat.1985@lntinfotech
Control visibility of buttons based on User Logged in
I have a visual force page which is displaying results and form based on webservice. Which is working fine.
Now i have a scenario. There is a apex command button which should be visible only to User A and not to other users.
How to make this scenario work in the visual force page??
Sure, working from my phone at the moment so I can't test, it's either:
<apex:pageBlockButtons rendered="{!if($User.FirstName=='Samrat','true', 'false')}">
or
<apex:pageBlockButtons rendered="{!if($User.FirstName=='Samrat',true, false)}">
Also, the IF-statement is probably case-sensitive.
Wes
All Answers
Hey
There are several ways to do this. One of the easier ways it to use something like {!IF($Profile.id=='TheProfileId',true,false)} in your visualforce page in a "rendered" component attribute. I'd advise putting the logic into your Apex controller though and querying the Profile object and return a boolean to determine what should be displayed to whom.
The Global Variable docs for VF can be found here: http://www.salesforce.com/us/developer/docs/pages/Content/pages_variables_global.htm
Wes
greteful if you can paste a sample code please as i tried
<apex:pageBlockButtons rendered="{!if($User.FirstName=='Samrat','visible:true', 'visible:false')}">
and it is not displaying the button section in both the cases :(
Sure, working from my phone at the moment so I can't test, it's either:
<apex:pageBlockButtons rendered="{!if($User.FirstName=='Samrat','true', 'false')}">
or
<apex:pageBlockButtons rendered="{!if($User.FirstName=='Samrat',true, false)}">
Also, the IF-statement is probably case-sensitive.
Wes
hey thanks it works...
How can i get the check done on my controller class??
I just want to get the username who has logged in and control it from the controoller class.
Well thanks again....i was able to achive my functiopnality using the controller class.
here is the class
public string firstName=UserInfo.getFirstName();
public boolean visible=FALSE;
public boolean getVisibile()
{
if(firstName!='Samrat')
{
visible=TRUE;
}
else
{
visible=FALSE;
}
return visible;
}
and following th the VF code
<apex:pageBlockButtons rendered="{!Visibile}"> <apex:commandButton id="myButton" value="Go!" action="{!HelloWorld}" />
<apex:outputText value="{!$User.FirstName}"/>
</apex:pageBlockButtons>
Slowly but sure getting a hang of Apex and VF now.. thanks for helping me out