...
Code Block |
---|
language | js |
---|
title | Calculated Value Script |
---|
linenumbers | true |
---|
|
//Add state control to checkboxes to mimic radio button behavior.
if(data.check1 === true && (data.checkState == '2' || data.checkState == '3'))
{
value = '1';
data.check2 = false;
data.check3 = false;
}
else if (data.check2 === true && (data.checkState == '1' || data.checkState == '3'))
{
value = '2';
data.check1 = false;
data.check3 = false;
}
else if (data.check3 === true && (data.checkState == '1' || data.checkState == '2'))
{
value = '3';
data.check1 = false;
data.check2 = false;
}
else if (data.check1 === true)
value = '1';
else if (data.check2 === true)
value = '2';
else if (data.check3 === true)
value = '3';
else
value = ''; |
Populate Username or Email Address of Logged in User
You can populate the Name or Email Address of a logged in user by placing the below code in the Calculated Value Rule area on the Data Tab.
Code Block |
---|
language | js |
---|
title | Calculated Value Script |
---|
linenumbers | true |
---|
|
//Capture the email of the current logged in user into the value of the selected control
value = Formio.getUser().data.email
//Capture the name of the current logged in user into the value of the selected control
value = Formio.getUser().data.name |
You can couple this rule with an if statement in a workflow to ensure it only fires once and does not overwrite the name/email if the form is loaded in additional workflow steps.
Populate Today's Date in a Text Field
You can populate today's date in a field for the purposes of tracking when a form was initally submitted and more. Its recommended you use this rule as a Custom Default value if you only want it to fire once.
Code Block |
---|
language | js |
---|
title | Calculated Value Script |
---|
linenumbers | true |
---|
|
var d = new Date();
value = d.toLocaleDateString(); |
You can modify the date format in any way you want, for example:
Code Block |
---|
language | js |
---|
title | Calculated Value Script |
---|
linenumbers | true |
---|
|
var d = new Date();
var options = {
year: "2-digit",
month: "2-digit",
day: "2-digit"
};
value = d.toLocaleDateString('en', options); |