FastX Sessions Forms
This section is accessible by logging into FastX as an administrator through a web browser. Select the Admin icon after login.

Custom forms can be created and displayed to users when starting an application. Custom forms allow administrators to collect extra information from the user. This information is typically used in conjunction with load balancing and job scheduling to determine how and where to start the session. The form data collected is added to the params field when starting the session.
There is a listing of existing Forms, which can be edited, deleted, or set as default by clicking on the desired form and then .
New Form
Click the button to create a new Form.
- Name – Enter name of Form
- HTML Form – The HTML form that will be displayed to the user. FastX uses Bootstrap 4 styling which can be added to keep the look and feel consistent through the form. Valid input will be added to the params object of the start data.
- Allow unsafe HTML tags in the form – Check the box to explicitly allow unsafe HTML in the form
Static Data
User Defined JSON Object of static data. This can be used when filtering forms.
Default Forms
Click on the Default Forms button to choose available forms and move the forms to Forms in use.
Form Filter
Click on the Form Filter button to bring up a Javascript function used to determine which form to send to the user when starting a session.
async function(input) {
// input.data -- input sent from the api call
// input.forms -- array of form object
//return a falsy value to continue
//return a form object to pop up a form
//return the string 'SERVERLIST' to allow the user to choose from the available servers (dynamically generated form from the serverList function)
return;
}
{
user: USER_LOGIN,
isAdmin: false, /* Is user an admin */
isManager: false, /* Is user a manager */
userGroups: ["g1", "g2", ... "gN"], /* Array of User's Linux User Groups */
data: START_DATA,
forms: [FORM1, FORM2 ...] /* Array of Form Objects */
}
Input Object
input.user
input.data
Form Object
Return
If the value is Falsy, forms have been completed, and continue
If the value is JSON Object, this is the form object that will be returned
If the value is the special string “SERVERLIST”, return a form of the filtered server list
Server Filter
Click on the Server Filter button to bring up a Javascript function used to filter out serverIds based on user input. This allows a partial list of all cluster members to be sent to the user for selection.
async function(input) {
// input.data -- input sent from the api call
// input.servers -- array of server objects
//return a filtered list of servers for the user specified by username, or none to disable server selection
return input.servers;
}
Input Object
{
user: USER_LOGIN,
isAdmin: false, /* Is user an admin */
isManager: false, /* Is user a manager */
userGroups: ["g1", "g2", ... "gN"], /* Array of User's Linux User Groups */
data: START_DATA,
servers: [SERVER1, SERVER2 ...] /* Array of Server Objects */
}
input.user
input.data
Note* If there is a password field, it is changed to **********
Server Object
Return
If the value is Falsy, disable Server Selection
Return an array of server objects that you want the user to select fromEnable Automatic Option – Checking this box will add automatic as an option to the server list. This has the effect of allowing the user to set the serverid to an empty string.