Millisecond Forums

Inquisit Web 4 Probles: Batch Script/Entering description for User ID/Group Assignment

https://forums.millisecond.com/Topic18603.aspx

By EHP Lab - 3/14/2016

Hello,

I am trying to run a script for the first time using Inquisit 4 Web. It is a batch script which just pulls up two reaction time tasks (one IAT and one modified from a LDT script). I am able to run the script BUT I am having issues with the "User ID" and "Group ID" portions of the web script setup. For Subject IDs I select "User entered" and "non-numeric". There are two issues here: 

1. After selecting "User entered" it says "Enter the message instructing participants to enter a subject ID." I try to update the text but when I save it just defaults back to the original text (Please enter your ID) and won't save my edits.

2. I select "non-numeric" for the ID because I want participants to enter the MTurk ID. However, if I then enter a non-numeric ID when testing the script, I get a series of errors stating that it cannot find block 1 and block 1 is unassigned and then "2. I select "non-numeric" for the ID because I want participants to enter the MTurk ID. However, if I then enter a non-numeric ID when testing the script, I get a series of errors stating that it cannot find block 1 and block 1 is unassigned and then "2. I select "non-numeric" for the ID because I want participants to enter the MTurk ID. However, if I then enter a non-numeric ID when testing the script (ID = 'test'), I get a series of errors stating that it cannot find block 1 and block 1 is unassigned and then "Invalid Subject ID 'test'. The group assignment method requires a numeric ID."
--If I enter a numeric ID, the script runs. If I enter a non-numeric ID, the script gets these errors even though it says "non-numeric" as the option under "Subject ID" when I check on the web script setup. I don't have any group assignment in my scripts, but I am forced to select how the group ID is chosen, there is no option for no group ID. So is there a choice that will allow me to use a nonnumeric ID? I tried all except the separate URL and they all lead to the same error.

Thanks!
Amie


By Dave - 3/14/2016

> 1. After selecting "User entered" it says "Enter the message instructing participants to enter a subject ID." I try to update the text but when I
> save it just defaults back to the original text (Please enter your ID) and won't save my edits.

This is a bug in the configuration wizard. As a workaround, you can select the 'Custom JavaScript' option and paste in the following code:

    PromptMask  = /^\s*\S.*$/;
    PromptMessage = "Please enter your MTurk ID:";
    PromptError = "The ID you entered was invalid.";
    if ( PromptResult == null )
    {
        Prompt();
    }
    return PromptResult

>  I don't have any group assignment in my scripts

This is incorrect. You *do* have group assignment in your scripts, at the very least in your IAT. If not specified otherwise in the respective script's <expt> and/or <variables> elements, the /groupassignment method Inquisit assumes by default is 'subjectnumber'. Condition assignment is a mathematical operation, i.e., it requires a *numerical* input to work.

You need to switch the /groupassignment to 'groupnumber' as in

<expt>
...
/ subjects = (1 of 2)
/ groupassignment = groupnumber
</expt>

<expt>
...
/ subjects = (2 of 2)
/ groupassignment = groupnumber
</expt>

and/or

<variables>
/group =(1 of 2) (...)
/group = (2 of 2) (...)
/ groupassignment = groupnumber
</variables>

respectively.

Then set the launch page to generate a random *numerical* group id.
By Lydon Lab IT Assistant - 2/27/2020

Dave - 3/14/2016
> 1. After selecting "User entered" it says "Enter the message instructing participants to enter a subject ID." I try to update the text but when I
> save it just defaults back to the original text (Please enter your ID) and won't save my edits.

This is a bug in the configuration wizard. As a workaround, you can select the 'Custom JavaScript' option and paste in the following code:

    PromptMask  = /^\s*\S.*$/;
    PromptMessage = "Please enter your MTurk ID:";
    PromptError = "The ID you entered was invalid.";
    if ( PromptResult == null )
    {
        Prompt();
    }
    return PromptResult

>  I don't have any group assignment in my scripts

This is incorrect. You *do* have group assignment in your scripts, at the very least in your IAT. If not specified otherwise in the respective script's <expt> and/or <variables> elements, the /groupassignment method Inquisit assumes by default is 'subjectnumber'. Condition assignment is a mathematical operation, i.e., it requires a *numerical* input to work.

You need to switch the /groupassignment to 'groupnumber' as in

<expt>
...
/ subjects = (1 of 2)
/ groupassignment = groupnumber
</expt>

<expt>
...
/ subjects = (2 of 2)
/ groupassignment = groupnumber
</expt>

and/or

<variables>
/group =(1 of 2) (...)
/group = (2 of 2) (...)
/ groupassignment = groupnumber
</variables>

respectively.

Then set the launch page to generate a random *numerical* group id.

Hello, I tried to increase the length of the message but it doesn't fit the initial window. Is there any way to change the window size. I tried both javaScript and user entered mode, both of them couldn't fit the white window that pop up when I press the start. Where can I get the instructions for javaScript?

This is what I wrote: 

PromptMask = /^\s*\S.*$/;
PromptMessage = "Please enter your SONA ID: If you are not participating for course credit, please put in your ID according to the following instructions: Date of Birth in 2 digits, Month of Birth in 2 digits and the last three digits of your phone number
(For eg. If you were born on March 8th and your phone number is 2222222222, your ID number will be 0803222)"
  PromptError = "The ID you entered was invalid.";
  if ( PromptResult == null )
  {
   Prompt();
  }
  return PromptResult




By Dave - 2/27/2020

Lydon Lab IT Assistant - 2/27/2020
Dave - 3/14/2016
> 1. After selecting "User entered" it says "Enter the message instructing participants to enter a subject ID." I try to update the text but when I
> save it just defaults back to the original text (Please enter your ID) and won't save my edits.

This is a bug in the configuration wizard. As a workaround, you can select the 'Custom JavaScript' option and paste in the following code:

    PromptMask  = /^\s*\S.*$/;
    PromptMessage = "Please enter your MTurk ID:";
    PromptError = "The ID you entered was invalid.";
    if ( PromptResult == null )
    {
        Prompt();
    }
    return PromptResult

>  I don't have any group assignment in my scripts

This is incorrect. You *do* have group assignment in your scripts, at the very least in your IAT. If not specified otherwise in the respective script's <expt> and/or <variables> elements, the /groupassignment method Inquisit assumes by default is 'subjectnumber'. Condition assignment is a mathematical operation, i.e., it requires a *numerical* input to work.

You need to switch the /groupassignment to 'groupnumber' as in

<expt>
...
/ subjects = (1 of 2)
/ groupassignment = groupnumber
</expt>

<expt>
...
/ subjects = (2 of 2)
/ groupassignment = groupnumber
</expt>

and/or

<variables>
/group =(1 of 2) (...)
/group = (2 of 2) (...)
/ groupassignment = groupnumber
</variables>

respectively.

Then set the launch page to generate a random *numerical* group id.

Hello, I tried to increase the length of the message but it doesn't fit the initial window. Is there any way to change the window size. I tried both javaScript and user entered mode, both of them couldn't fit the white window that pop up when I press the start. Where can I get the instructions for javaScript?

This is what I wrote: 

PromptMask = /^\s*\S.*$/;
PromptMessage = "Please enter your SONA ID: If you are not participating for course credit, please put in your ID according to the following instructions: Date of Birth in 2 digits, Month of Birth in 2 digits and the last three digits of your phone number
(For eg. If you were born on March 8th and your phone number is 2222222222, your ID number will be 0803222)"
  PromptError = "The ID you entered was invalid.";
  if ( PromptResult == null )
  {
   Prompt();
  }
  return PromptResult





It's not really possible to increase the size of the prompt box so drastically. Instead consider putting those lengthy instructions on the start page's body.