<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Guidedtrack Q&amp;A - Recent questions and answers</title>
<link>https://answers.guidedtrack.com/qa</link>
<description>Powered by Question2Answer</description>
<item>
<title>Answered: Is it possible to prevent pasting text into question response box?</title>
<link>https://answers.guidedtrack.com/1481/is-possible-prevent-pasting-text-into-question-response-box?show=1482#a1482</link>
<description>&lt;p&gt;Hi Ali! There is no built-in way to prevent pasting into a free text question, I'm afraid. The only way to do it would be to use custom JavaScript. For that you would have to embed the program on a website you control (see &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/manual/using-the-guidedtrack-website/sharing-your-program-with-users/#embedding-the-run-or-preview-version-of-a-program-on-a-website&quot;&gt;https://docs.guidedtrack.com/manual/using-the-guidedtrack-website/sharing-your-program-with-users/#embedding-the-run-or-preview-version-of-a-program-on-a-website&lt;/a&gt;).&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/1481/is-possible-prevent-pasting-text-into-question-response-box?show=1482#a1482</guid>
<pubDate>Wed, 22 Nov 2023 01:19:32 +0000</pubDate>
</item>
<item>
<title>Answered: How do I sort an Airtable json file and display it in a table?</title>
<link>https://answers.guidedtrack.com/1475/how-do-i-sort-an-airtable-json-file-and-display-it-in-a-table?show=1476#a1476</link>
<description>&lt;p&gt;Hi there,&lt;/p&gt;
&lt;p&gt;To answer your questions:&lt;br&gt;
Sort the collection: you might want to sort at the time you are pulling the data from Airtable, could be something like:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;path: /table1?sort%5B0%5D%5Bfield%5D=Score&amp;amp;sort%5B0%5D%5Bdirection%5D=desc&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;About table header: you might want to use &lt;code&gt;&amp;lt;th&amp;gt;&amp;lt;/th&amp;gt;&lt;/code&gt; outside of your while loop.&lt;br&gt;
&lt;code&gt;Hint: put the html table into variable before showing it&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Check this out, I built a sample that might help you; &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/25353&quot;&gt;https://www.guidedtrack.com/programs/25353&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;References:&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/manual/advanced-options/use-service-to-embed-outside-apps-and-other-tools/&quot;&gt;https://docs.guidedtrack.com/manual/advanced-options/use-service-to-embed-outside-apps-and-other-tools/&lt;/a&gt;&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/1475/how-do-i-sort-an-airtable-json-file-and-display-it-in-a-table?show=1476#a1476</guid>
<pubDate>Thu, 26 Oct 2023 16:37:05 +0000</pubDate>
</item>
<item>
<title>Answered: How do I selectively allow users to go back in some parts of my program?</title>
<link>https://answers.guidedtrack.com/1181/how-do-selectively-allow-users-to-go-back-some-parts-program?show=1182#a1182</link>
<description>&lt;p&gt;Yes, that's possible.&lt;/p&gt;
&lt;p&gt;You can selectively enable &lt;code&gt;*back&lt;/code&gt; in parts of your program by turning the setting on and off.&lt;/p&gt;
&lt;p&gt;For example, add&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*settings
*back: yes
*menu: no
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;before sections where you want users to be able to go back. In sections where you no longer want users to do that, add&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*settings
	*back: no
	*menu: no
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This is useful in several settings. For example, you could allow users to go back while answering screening questions up to the point where their screen-in / screen-out status is determined. You likely wouldn't want a user who screened out to return and answer differently.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/1181/how-do-selectively-allow-users-to-go-back-some-parts-program?show=1182#a1182</guid>
<pubDate>Mon, 31 Jul 2023 23:16:27 +0000</pubDate>
</item>
<item>
<title>Answered: How do I create a chatbot that can hold a conversation?</title>
<link>https://answers.guidedtrack.com/869/how-do-i-create-a-chatbot-that-can-hold-a-conversation?show=870#a870</link>
<description>&lt;p&gt;As you can see in &lt;a rel=&quot;nofollow&quot; href=&quot;https://platform.openai.com/docs/api-reference/chat/create&quot;&gt;ChatGPT's API reference&lt;/a&gt;, the parameter &lt;code&gt;messages&lt;/code&gt; takes a list of messages with the conversation so far. The GuidedTrack program &lt;code&gt;ChatGPT API - public&lt;/code&gt; only sends one message inside the list: &lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt; payload[&quot;messages&quot;] = [ { &quot;role&quot; -&amp;gt; &quot;user&quot;, &quot;content&quot; -&amp;gt; prompt_for_chatgpt } ]
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can use the program &lt;code&gt;ChatGPT API with seleted parameters - public&lt;/code&gt; (&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/22860&quot;&gt;https://www.guidedtrack.com/programs/22860&lt;/a&gt;) in order to include your whole conversation history inside the parameter &lt;code&gt;messages&lt;/code&gt;. Create an association with the name payload on your main program, structure it as follows and then invoke the program:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt;payload = {&quot;messages&quot;-&amp;gt; [{&quot;role&quot;-&amp;gt; &quot;user&quot;,&quot;content&quot;-&amp;gt; &quot;tell me a joke&quot;},{&quot;role&quot;-&amp;gt; &quot;assistant&quot;, &quot;content&quot;-&amp;gt; &quot;why did the chicken cross the road&quot; }, {&quot;role&quot;-&amp;gt; &quot;user&quot;, &quot;content&quot;-&amp;gt; &quot;I don't know, why did the chicken cross the road&quot; }]}
*program: ChatGPT API with seleted parameters - public
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;For understanding roles: &lt;a rel=&quot;nofollow&quot; href=&quot;https://help.openai.com/en/articles/7042661-chatgpt-api-transition-guide&quot;&gt;https://help.openai.com/en/articles/7042661-chatgpt-api-transition-guide&lt;/a&gt;&lt;br&gt;
Also you may find &lt;a rel=&quot;nofollow&quot; href=&quot;https://community.openai.com/t/gpt-3-5-turbo-how-to-remember-previous-messages-like-chat-gpt-website/170370/10&quot;&gt;this thread&lt;/a&gt; useful.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/869/how-do-i-create-a-chatbot-that-can-hold-a-conversation?show=870#a870</guid>
<pubDate>Wed, 31 May 2023 11:54:51 +0000</pubDate>
</item>
<item>
<title>Answered: Can I format numerics nicely with commas?</title>
<link>https://answers.guidedtrack.com/867/can-i-format-numerics-nicely-with-commas?show=868#a868</link>
<description>&lt;p&gt;I managed to build a not-great workaround, but the best approach might be embedded javascript or pre-generating the conditions outside of GT.&lt;/p&gt;
&lt;p&gt;Here's the workaround, relying on two programs (one that takes variables &lt;code&gt;a&lt;/code&gt; and &lt;code&gt;b&lt;/code&gt; as input and returns &lt;code&gt;num&lt;/code&gt; and &lt;code&gt;exp&lt;/code&gt;, and a second that takes &lt;code&gt;num&lt;/code&gt; and &lt;code&gt;exp&lt;/code&gt; as input, returning &lt;code&gt;currency&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;&lt;code&gt;multiply_num_with_ratio&lt;/code&gt;: &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/22840&quot;&gt;https://www.guidedtrack.com/programs/22840&lt;/a&gt;&lt;br&gt;
&lt;code&gt;convert_to_currency&lt;/code&gt;: &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/22841&quot;&gt;https://www.guidedtrack.com/programs/22841&lt;/a&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt; numbers = [1000, 10000]
&amp;gt;&amp;gt; ratios = [0.1, 0.5] 
&amp;gt;&amp;gt; numbers = {}
&amp;gt;&amp;gt; questions = []
*for: n in numbers
	*for: r in ratios
		&amp;gt;&amp;gt; a = n
		&amp;gt;&amp;gt; b = r
		*program: multiply_num_with_ratio
		*program: convert_to_currency
		&amp;gt;&amp;gt; questions.add(currency)
*for: q in questions:
		Tom gave Jerry *{q}*
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/867/can-i-format-numerics-nicely-with-commas?show=868#a868</guid>
<pubDate>Sat, 27 May 2023 19:15:17 +0000</pubDate>
</item>
<item>
<title>Answered: Is user_input_chatgpt the only command I can use to save information to send to ChatGPT?</title>
<link>https://answers.guidedtrack.com/850/user_input_chatgpt-only-command-save-information-chatgpt?show=851#a851</link>
<description>&lt;p&gt;The ChatGPT API program takes two optional variables, &lt;code&gt;prompt_for_chatgpt&lt;/code&gt; and the model to use. The simplest program that would allow your users to ask two consecutive questions would be:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*program: ChatGPT API - public

*clear

*if: success_chatgpt = 1

	*{&quot;RESPONSE FROM CHATGPT:&quot;}*

	{response_from_chatgpt}

*if: success_chatgpt = 0

	*{&quot;ERROR FROM THE CHATGPT API:&quot;}*

	{error_from_chatgpt}
	
*button: Click here to ask a second question! 

*program: ChatGPT API - public

*clear

*if: success_chatgpt = 1

	*{&quot;RESPONSE FROM CHATGPT:&quot;}*

	{response_from_chatgpt}

*if: success_chatgpt = 0

	*{&quot;ERROR FROM THE CHATGPT API:&quot;}*

	{error_from_chatgpt}	
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If you don't set the prompt, the user gets to enter it. If you want to build the prompt based on the answers of your program's users, you'll save their answer into a different variable, and then build the prompt for ChatGPT, for example:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*question: Enter a short sentence
	*save: sentence
&amp;gt;&amp;gt;prompt_for_chatgpt = &quot;Give me a sentence that rhymes with: {sentence}&quot;

*program: ChatGPT API - public
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;What is happening here is that the user gets to enter a sentence that is saved into a variable called &lt;code&gt;sentence&lt;/code&gt;. Then, the variable &lt;code&gt;prompt_for_chatgpt&lt;/code&gt; is generated, incorporating the value of &lt;code&gt;sentence&lt;/code&gt; (the curly brackets around a variable make it output its value). When the program ChatGPT API is run, the variable &lt;code&gt;prompt_for_chatgpt&lt;/code&gt; is set so you will notice that the question that was displayed before, ins not displayed now.&lt;/p&gt;
&lt;p&gt;Regarding the error message you were getting, the problem is that you copied and pasted the code including the &lt;code&gt;*label&lt;/code&gt;, which is like a bookmark and has to be unique. You can omit the &lt;code&gt;*label&lt;/code&gt; if you don't have a &lt;code&gt;*goto&lt;/code&gt; statement.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/850/user_input_chatgpt-only-command-save-information-chatgpt?show=851#a851</guid>
<pubDate>Wed, 12 Apr 2023 19:29:49 +0000</pubDate>
</item>
<item>
<title>Answered: I can't build an app that incorporates ChatGPT</title>
<link>https://answers.guidedtrack.com/847/i-cant-build-an-app-that-incorporates-chatgpt?show=849#a849</link>
<description>&lt;p&gt;Go to the settings of your program, and check that the name of the service is set to &lt;strong&gt;ChatGPT API&lt;/strong&gt; &lt;br&gt;
(if you followed instructions on the blog post to configure the service, there was an error and you were instructed to set it to &lt;strong&gt;ChatGPT OpenAI API&lt;/strong&gt; instead. The blog post has been updated now)&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/847/i-cant-build-an-app-that-incorporates-chatgpt?show=849#a849</guid>
<pubDate>Tue, 11 Apr 2023 12:00:19 +0000</pubDate>
</item>
<item>
<title>Answered: How can I save a series of associations with a *for loop?</title>
<link>https://answers.guidedtrack.com/845/how-can-i-save-a-series-of-associations-with-a-%2Afor-loop?show=846#a846</link>
<description>&lt;p&gt;Richard Möhn kindly answered this in the Slack. I'll write the answer here:&lt;/p&gt;
&lt;p&gt;&quot;I think this would get you all the way to what you want:&quot;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt; hours_for_activities = {}
*for: activity in activities
	*question: How many hours you spend *per week* on {activity} on average?
		*type: number
		*save: hours_for_activity
		
	&amp;gt;&amp;gt; hours_for_activities[activity] = hours_for_activity
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And he followed up with an explanation on how to list the items or sum them:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*for: activity, hours in hours_for_activities
	You spent {hours} h on {activity}.

&amp;gt;&amp;gt; total_hours = 0
*for: activity, hours in hours_for_activities
	&amp;gt;&amp;gt; total_hours = total_hours + hours
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Thanks, Richard!&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/845/how-can-i-save-a-series-of-associations-with-a-%2Afor-loop?show=846#a846</guid>
<pubDate>Mon, 10 Apr 2023 12:32:08 +0000</pubDate>
</item>
<item>
<title>Answered: HTML/CSS classes styling has no effect</title>
<link>https://answers.guidedtrack.com/816/html-css-classes-styling-has-no-effect?show=817#a817</link>
<description>&lt;p&gt;Some times you will need to use the rule &lt;code&gt;!important&lt;/code&gt; to override GuidedTrack's default styles:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*html
    &amp;lt;style&amp;gt;
	    .my-fancy-header-class {
		    color: purple !important;
		    font-weight: bold !important;
		    font-size: 96px !important;
	    }
    &amp;lt;/style&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Thanks for pointing out that the example in the documentation had stopped working since the last update of GuidedTrack's styles. It has already been updated.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/816/html-css-classes-styling-has-no-effect?show=817#a817</guid>
<pubDate>Mon, 13 Mar 2023 20:01:35 +0000</pubDate>
</item>
<item>
<title>Answered: How do I randomize the order of clickable components and set the click to run another program?</title>
<link>https://answers.guidedtrack.com/813/randomize-order-clickable-components-click-another-program?show=814#a814</link>
<description>&lt;p&gt;You need to have the content to randomize indented right under the &lt;code&gt;*randomize&lt;/code&gt; keyword, so all you have to do to get your code to work is to change the first two lines:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*component
	*randomize: 2
		*group
			*component
				*classes: bg-info
				*image: https://i.stack.imgur.com/WFy1e.jpg
					*caption: cats
				*click
					&amp;gt;&amp;gt; preferred_image = &quot;Cat&quot;
					*program:  second_program
				
		*group
			*component
				*classes: bg-info
				*image: https://i.stack.imgur.com/WFy1e.jpg
					*caption: Family or dog?
				*click
					&amp;gt;&amp;gt; preferred_image = &quot;Dog&quot;
					*program: second_program

*wait
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The code that you add below the components gets displayed because a component, even if it is clickable, does not act like a page break. In order to create the page break, note that I added a &lt;code&gt;*wait&lt;/code&gt; forever.&lt;/p&gt;
&lt;p&gt;If you want to have some code after the components that gets executed after second_program is run, you can use a &lt;code&gt;*goto&lt;/code&gt; and &lt;code&gt;*label&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;		*group
			*component
				*classes: bg-info
				*image: https://i.stack.imgur.com/WFy1e.jpg
					*caption: Family or dog?
				*click
					&amp;gt;&amp;gt; preferred_image = &quot;Dog&quot;
					*program: second_program
					*goto: after_second_program

*wait

*label: after_second_program
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/813/randomize-order-clickable-components-click-another-program?show=814#a814</guid>
<pubDate>Sun, 05 Mar 2023 19:23:22 +0000</pubDate>
</item>
<item>
<title>Answered: Other's responses displayed within survey</title>
<link>https://answers.guidedtrack.com/784/others-responses-displayed-within-survey?show=791#a791</link>
<description>&lt;p&gt;GuidedTrack does not allow you to access the data generated in other runs of your program from one run, but you store the data that you want to share in an external database (for example, Airtable).&lt;/p&gt;
&lt;p&gt;There is a tutorial on how to write and read from an Airtable base in the blog: &lt;a rel=&quot;nofollow&quot; href=&quot;https://blog.guidedtrack.com/?s=airtable#airtable&quot;&gt;https://blog.guidedtrack.com/?s=airtable#airtable&lt;/a&gt;&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/784/others-responses-displayed-within-survey?show=791#a791</guid>
<pubDate>Sun, 05 Feb 2023 13:12:31 +0000</pubDate>
</item>
<item>
<title>Answered: How to make a value get stored in a column of the CSV file that I choose dynamically?</title>
<link>https://answers.guidedtrack.com/789/make-value-get-stored-column-the-file-that-choose-dynamically?show=790#a790</link>
<description>&lt;p&gt;You can use &lt;code&gt;&amp;gt;&amp;gt;data::store(columnName, value)&lt;/code&gt; to achieve that:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*while: enterAnotherCategory = 1
	*question: What would you like to rate?
		*save: category

	*question: How would you rate the {category} of this service?
		*save: ratingForThisCategory
	&amp;gt;&amp;gt;data::store(category, ratingForThisCategory)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;So if a person chooses to rate the &quot;customer support&quot; of the service, there will be a column in the CSV file with the title &quot;customer support&quot;.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/789/make-value-get-stored-column-the-file-that-choose-dynamically?show=790#a790</guid>
<pubDate>Sun, 05 Feb 2023 13:00:13 +0000</pubDate>
</item>
<item>
<title>Answered: Is it possible to batch extract timings for each question?</title>
<link>https://answers.guidedtrack.com/771/is-it-possible-to-batch-extract-timings-for-each-question?show=772#a772</link>
<description>&lt;p&gt;It's not possible through the UI, I'm afraid. If it's a one-off, we could extract the data from the database and send it to you.&lt;/p&gt;
&lt;p&gt;An alternative is to save the time explicitly, although it's going to be relative to some starting point. Like this:&lt;/p&gt;
&lt;pre&gt;
&amp;gt;&amp;gt; startTime = calendar::now

*question: How quickly can you answer?

&amp;gt;&amp;gt; q1Time = calendar::now
&amp;gt;&amp;gt; q1Delay = q1Time - startTime
&lt;/pre&gt;
&lt;p&gt;Then &lt;code&gt;q1Delay&lt;/code&gt; would show up in the CSV as ‘2.056 seconds’, for example.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/771/is-it-possible-to-batch-extract-timings-for-each-question?show=772#a772</guid>
<pubDate>Wed, 18 Jan 2023 06:43:20 +0000</pubDate>
</item>
<item>
<title>Answered: How to include a chart in an email?</title>
<link>https://answers.guidedtrack.com/731/how-to-include-a-chart-in-an-email?show=732#a732</link>
<description>&lt;p&gt;I like to use QuickChart.io - &lt;a rel=&quot;nofollow&quot; href=&quot;http://blog.guidedtrack.com/?p=300&quot;&gt;this blog post&lt;/a&gt; has an example of how to use it.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/731/how-to-include-a-chart-in-an-email?show=732#a732</guid>
<pubDate>Sun, 07 Aug 2022 16:52:33 +0000</pubDate>
</item>
<item>
<title>Answered: How to ensure at least one checkbox is selected? (within a FOR loop)</title>
<link>https://answers.guidedtrack.com/692/how-to-ensure-at-least-one-checkbox-selected-within-for-loop?show=693#a693</link>
<description>&lt;p&gt;The reason &lt;code&gt;*for&lt;/code&gt; doesn't allow &lt;code&gt;*goto&lt;/code&gt; within its block is that &lt;code&gt;*goto&lt;/code&gt; could be used to prematurely break out of the loop. If that were to happen there could be unexpected behavior if that &lt;code&gt;*for&lt;/code&gt; loop is ever executed again. The reason for &lt;em&gt;that&lt;/em&gt; is that &lt;code&gt;*for&lt;/code&gt; needs to automatically keep track of where it is in the loop and what the next element in the collection ought to be.&lt;/p&gt;
&lt;p&gt;Most of the time these constraints don't matter and we recommend using &lt;code&gt;*for&lt;/code&gt;, because it's easier to use than the alternatives. However, since in your case the constraints &lt;code&gt;*for&lt;/code&gt; imposes are getting in the way of accomplishing the task, I'd recommend switching to a &lt;code&gt;*while&lt;/code&gt; loop. You'd need to do a little bit more manual work to loop, but you'll be able to use &lt;code&gt;*goto&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;To convert your &lt;code&gt;*for&lt;/code&gt; loop into a &lt;code&gt;*while&lt;/code&gt;, you'll need to declare an indexing variable and increment it at the end of the loop:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt; i = 1
*while: i &amp;lt; vacation_spots.size
	-- the code you currently have in *for, with *goto where you need it
	...
	&amp;gt;&amp;gt; i = i + 1
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/692/how-to-ensure-at-least-one-checkbox-selected-within-for-loop?show=693#a693</guid>
<pubDate>Fri, 24 Jun 2022 14:04:41 +0000</pubDate>
</item>
<item>
<title>Answered: Back button hard to see in user testing</title>
<link>https://answers.guidedtrack.com/689/back-button-hard-to-see-in-user-testing?show=690#a690</link>
<description>&lt;p&gt;It would be very difficult to make that change the default look for GuidedTrack programs for several reasons:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;the navigation bar, where the back button is located, can potentially contain a lot of elements and is therefore very short on space; we simply can't easily cram in a whole word&lt;/li&gt;
&lt;li&gt;choosing the work &quot;Back&quot; would present a problem for people building tools in languages other than English – we would have to give them a way to configure a different word, which would also run into the first problem since we wouldn't know how long that word is&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can configure your own app to implement this change, though, if you're embedding your app on your own site, rather than having people use it directly from guidedtrack.com. You just need to include the following CSS rule somewhere on the page or in a separate CSS file:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#back-button span:after {
  content: &quot;BACK&quot;;
  font-family: Roboto, sans-serif;
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Hope that helps.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/689/back-button-hard-to-see-in-user-testing?show=690#a690</guid>
<pubDate>Tue, 10 May 2022 12:25:12 +0000</pubDate>
</item>
<item>
<title>Answered: *Wait Is it possible to show countdown/timer?</title>
<link>https://answers.guidedtrack.com/685/%2Await-is-it-possible-to-show-countdown-timer?show=687#a687</link>
<description>&lt;p&gt;I had to so something similar to what you're asking so this may help you.&lt;/p&gt;
&lt;p&gt;I needed to display a text for a number of seconds showing the countdown bar and, at the end of the countdown move on to the next page. Since &lt;code&gt;*countdown&lt;/code&gt; only works under a question, I used custom CSS to hide the question (so that only the countdown bar is displayed). Countdown automatically moves forward after the specified amount of time, so you can skip using &lt;code&gt;*wait&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*html
	&amp;lt;style&amp;gt;
		.hidden {visibility: hidden !important;}
	&amp;lt;/style&amp;gt;
This will be displayed only for 5 seconds!
*question: a
	*countdown: 5.seconds
	*classes: hidden
Page 2
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/685/%2Await-is-it-possible-to-show-countdown-timer?show=687#a687</guid>
<pubDate>Tue, 19 Apr 2022 08:25:00 +0000</pubDate>
</item>
<item>
<title>Answered: How to do 2x2 grid for components</title>
<link>https://answers.guidedtrack.com/680/how-to-do-2x2-grid-for-components?show=684#a684</link>
<description>&lt;p&gt;You can use the &lt;a rel=&quot;nofollow&quot; href=&quot;https://getbootstrap.com/docs/4.0/layout/grid/&quot;&gt;grid system&lt;/a&gt; of Bootstrap indenting&lt;code&gt;*classes&lt;/code&gt; under your components. Check out this demo code to generate a 2x2 grid:&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/19308&quot;&gt;https://www.guidedtrack.com/programs/19308&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can see that in the code I have also used custom CSS defined using &lt;code&gt;*html&lt;/code&gt; to make the components prettier, you can play around with that depending on what your needs are.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/680/how-to-do-2x2-grid-for-components?show=684#a684</guid>
<pubDate>Mon, 18 Apr 2022 11:44:05 +0000</pubDate>
</item>
<item>
<title>Answered: Collect Payment</title>
<link>https://answers.guidedtrack.com/682/collect-payment?show=683#a683</link>
<description>&lt;p&gt;Yes, by using the &lt;code&gt;*purchase&lt;/code&gt; keyword. Please refer to the docs to set it up and try it out: &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/manual/advanced-options/in-app-purchases/#in-app-purchases&quot;&gt;https://docs.guidedtrack.com/manual/advanced-options/in-app-purchases/#in-app-purchases&lt;/a&gt;&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/682/collect-payment?show=683#a683</guid>
<pubDate>Mon, 18 Apr 2022 09:17:32 +0000</pubDate>
</item>
<item>
<title>Wondering if this is possible.</title>
<link>https://answers.guidedtrack.com/678/wondering-if-this-is-possible</link>
<description></description>
<guid isPermaLink="true">https://answers.guidedtrack.com/678/wondering-if-this-is-possible</guid>
<pubDate>Fri, 15 Apr 2022 03:20:56 +0000</pubDate>
</item>
<item>
<title>Answered: Can I change navigation buttons language?</title>
<link>https://answers.guidedtrack.com/673/can-i-change-navigation-buttons-language?show=675#a675</link>
<description>&lt;p&gt;Hi Benjamín,&lt;/p&gt;
&lt;p&gt;Our internationalization features aren't very good at the moment. I'm afraid there's no option to change the default button text on slider questions.&lt;/p&gt;
&lt;p&gt;There is a workaround for the specific case you mentioned – you could use an explicit &lt;code&gt;*page&lt;/code&gt; keyword and make sure you end that page with a &lt;code&gt;*button&lt;/code&gt;. You're free to use whatever text in whatever language for the button, and it'll look like a slider question:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*page
	*question: How are you feeling?
		*type: slider
	
	*button: Move on to the next page
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In your case, you'd use Spanish for the question text and button.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/673/can-i-change-navigation-buttons-language?show=675#a675</guid>
<pubDate>Fri, 25 Feb 2022 10:59:25 +0000</pubDate>
</item>
<item>
<title>Answered: Is there a direct URL for the CSVs containing Guided Track survey data?</title>
<link>https://answers.guidedtrack.com/671/there-direct-url-for-csvs-containing-guided-track-survey-data?show=674#a674</link>
<description>&lt;p&gt;Downloading the CSV necessarily means authentication, because GuidedTrack has to ensure that it's sending the data to someone who is authorized to read it. Not requiring authentication would effectively make all of your CSV data public, which wouldn't be responsible.&lt;/p&gt;
&lt;p&gt;That said, I think it's possible to do what you want. There are probably many ways, but the one I found was to use &lt;code&gt;httr&lt;/code&gt;, which is a wrapper for &lt;code&gt;curl&lt;/code&gt; and has options for authentication.&lt;/p&gt;
&lt;p&gt;The following ought to work to get your data into R, just replace &lt;code&gt;GT_ACCOUNT_EMAIL&lt;/code&gt; and &lt;code&gt;GT_ACCOUNT_PASSWORD&lt;/code&gt; with your account details:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;library(httr)

GET(&quot;https://www.guidedtrack.com/programs/17783/csv&quot;, authenticate(&quot;GT_ACCOUNT_EMAIL&quot;, &quot;GT_ACCOUNT_PASSWORD&quot;))
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The above probably needs more massaging to get a vector or something useful out of the data, but it should solve the immediate problem you're facing.&lt;/p&gt;
&lt;p&gt;Another tricky bit is that the CSV is streamed to the client, since it might be a huge file. I hope &lt;code&gt;httpr&lt;/code&gt; handles that correctly, but if it doesn't you might see your data truncated after 500 or so rows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Edit:&lt;/strong&gt; For people looking for info on how to write scripts that download the data for a GuidedTrack program, the solution is pretty much the same as above. Of course, you wouldn't be using R to write your scripts, but any language would have equivalent facilities.&lt;/p&gt;
&lt;p&gt;Here's an example of using &lt;code&gt;curl&lt;/code&gt; to write a bash script to achieve the same result:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;curl -u &quot;EMAIL:PASSWORD&quot; https://www.guidedtrack.com/programs/PROGRAM_ID/csv
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To adapt the above command for your use case, in the above replace &lt;code&gt;EMAIL&lt;/code&gt; with the email associated with your GuidedTrack account, &lt;code&gt;PASSWORD&lt;/code&gt; with your GuidedTrack password, and &lt;code&gt;PROGRAM_ID&lt;/code&gt; with the ID of the program you want to download the data from. You can find the ID by opening the program and looking at the address bar of your browser – if the URL is something like &lt;code&gt;https://www.guidedtrack.com/programs/123/&lt;/code&gt; or &lt;code&gt;https://www.guidedtrack.com/programs/123/edit&lt;/code&gt;, then the program ID is &lt;code&gt;123&lt;/code&gt;.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/671/there-direct-url-for-csvs-containing-guided-track-survey-data?show=674#a674</guid>
<pubDate>Fri, 25 Feb 2022 10:50:19 +0000</pubDate>
</item>
<item>
<title>Answered: How to customise a PDF based on GT user answers?</title>
<link>https://answers.guidedtrack.com/328/how-to-customise-a-pdf-based-on-gt-user-answers?show=670#a670</link>
<description>&lt;p&gt;Following up on this, here is a blog post on how to generate a pdf using APITemplate.io from a GuidedTrack program: &lt;a rel=&quot;nofollow&quot; href=&quot;http://blog.guidedtrack.com/?p=560&quot;&gt;http://blog.guidedtrack.com/?p=560&lt;/a&gt;&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/328/how-to-customise-a-pdf-based-on-gt-user-answers?show=670#a670</guid>
<pubDate>Wed, 16 Feb 2022 12:08:23 +0000</pubDate>
</item>
<item>
<title>Answered: Embed if statements under question answers</title>
<link>https://answers.guidedtrack.com/666/embed-if-statements-under-question-answers?show=668#a668</link>
<description>&lt;p&gt;As Belén said, this should work. Are you sure the &lt;code&gt;sex&lt;/code&gt; variable is defined when the &lt;code&gt;*if&lt;/code&gt;s run?&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/666/embed-if-statements-under-question-answers?show=668#a668</guid>
<pubDate>Fri, 28 Jan 2022 14:18:23 +0000</pubDate>
</item>
<item>
<title>Answered: How to create a matrix of questions?</title>
<link>https://answers.guidedtrack.com/659/how-to-create-a-matrix-of-questions?show=663#a663</link>
<description>&lt;p&gt;GuidedTrack currently doesn't support matrix questions in the exact form you're asking for. We've had this request before and looked into adding matrix questions, but each time this has come up we've decided against it. There are two main reasons for this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Matrix questions are hard to use&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;When we talk to survey participants, they're generally pretty emphatic that they find the layout hard to work with. They tend to take longer to fill out these questions and we suspect they make more mistakes while doing so. One of the principles we try to abide by in GuidedTrack is to prevent people from building the wrong thing when we can, and there seems to be some evidence that replacing matrix questions with vertical multiple choice questions is better for participants and for the quality of the data you get our of your studies.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Matrix questions don't work well on small screens&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Horizontal space is very limited on mobile phones and matrix questions require a lot of it – you need to fit the question text and all the answers on the same row. Making this work on phones is a difficult task, and, compounded with the usability problems mentioned above, is further reason to choose an alternative way of collecting data.&lt;/p&gt;
&lt;p&gt;My suggestion is to try converting the matrix questionnaire into a series of multiple choice questions that share the same scale. This is very easy to do in GuidedTrack:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt; scale = [&quot;Option A&quot;, &quot;Option B&quot;, &quot;Option C&quot;]

*page
	*question: Question 1
		*answers: scale

	*question: Question 2
		*answers: scale

	*question: Question 3
		*answers: scale
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;So far, each time we've suggested this approach it has turned out to be a good replacement for matrix questions. I hope it works for you as well.&lt;/p&gt;
&lt;h3&gt;Further resources&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;There are more advanced things GuidedTrack allows you to do with answer scales. Check out the &lt;code&gt;*answers&lt;/code&gt; documentation page to learn more: &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/manual/asking-questions/questionnaire-answer-scales-using-answers/&quot;&gt;https://docs.guidedtrack.com/manual/asking-questions/questionnaire-answer-scales-using-answers/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;We wrote a guide to effective study design with GuidedTrack, which should help you squeeze out the most out of GT's powerful features: &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/research-guide/&quot;&gt;https://docs.guidedtrack.com/research-guide/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/659/how-to-create-a-matrix-of-questions?show=663#a663</guid>
<pubDate>Tue, 07 Dec 2021 12:15:58 +0000</pubDate>
</item>
<item>
<title>Answered: Get a unique ID for user?</title>
<link>https://answers.guidedtrack.com/648/get-a-unique-id-for-user?show=649#a649</link>
<description>&lt;p&gt;You could create a table in Airtable with just one record where you store the last order ID you generated. In your program, you would then withdraw that number and increment by one to use it in that run, updating Airtable as well. &lt;/p&gt;
&lt;p&gt;It is a clunky solution but it will work. In the future you should not need to use an external provider to share the value of a variable across different program runs but that functionality is not yet implemented.&lt;/p&gt;
&lt;p&gt;Another option is to generate a random number that is really big (with 10 digits, for example): technically there could be two ids that are the same but the likelihood of that happening is really small.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/648/get-a-unique-id-for-user?show=649#a649</guid>
<pubDate>Thu, 25 Nov 2021 10:36:46 +0000</pubDate>
</item>
<item>
<title>Answered: Possible to create a Dashboard?</title>
<link>https://answers.guidedtrack.com/646/possible-to-create-a-dashboard?show=647#a647</link>
<description>&lt;p&gt;Good question! This is definitely possible. I've put together a quick demo for you to inspect. I chose basketball because it's my favorite sport and because you only need 5 players, so it was less work to put together.&lt;/p&gt;
&lt;p&gt;The main program is here and the code is publicly available:&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/19411/edit&quot;&gt;https://www.guidedtrack.com/programs/19411/edit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It asks you to enter a player for each position, then displays the five players you've entered. Clicking on a player allows you to edit their details.&lt;/p&gt;
&lt;p&gt;The code is pretty straight-forward. The only tricky part is the use of &lt;code&gt;*component&lt;/code&gt; inside a &lt;code&gt;*for&lt;/code&gt; loop, which also makes it necessary to use &lt;code&gt;*with&lt;/code&gt; in order to handle clicking each component properly. You can read more about this &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/api/#component&quot;&gt;in the documentation&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you want to try the dashboard out, the link it here: &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/49riqjl/run&quot;&gt;https://www.guidedtrack.com/programs/49riqjl/run&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I expect you'll have follow-up questions, so please ask away.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/646/possible-to-create-a-dashboard?show=647#a647</guid>
<pubDate>Tue, 16 Nov 2021 14:31:33 +0000</pubDate>
</item>
<item>
<title>Answered: Is it possible to record audio from a participant?</title>
<link>https://answers.guidedtrack.com/417/is-it-possible-to-record-audio-from-a-participant?show=645#a645</link>
<description>&lt;p&gt;It is possible, but hard. What you would need:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Know the JavaScript for recording audio.&lt;/li&gt;
&lt;li&gt;Embed the GuidedTrack program on a website you control, so that you can make the audio recording JavaScript available to the GuidedTrack program.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;*trigger&lt;/code&gt; and &lt;code&gt;*events&lt;/code&gt; and &lt;code&gt;*goto&lt;/code&gt; and &lt;code&gt;*wait&lt;/code&gt; in a hacky way to cause the JavaScript to record the audio and the GuidedTrack program to wait for the recording to be done.&lt;/li&gt;
&lt;li&gt;Upload the recording to a storage service, such as Dropbox, by using the HTTP API of that service. (Since you can't store the audio on GuidedTrack.)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We're going to add features to make this simpler in the future. But for now you have to go the hard way.&lt;/p&gt;
&lt;p&gt;If you contact us (see my private message), we can help you with the details. It would be too much to write the complete how-to here.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/417/is-it-possible-to-record-audio-from-a-participant?show=645#a645</guid>
<pubDate>Mon, 11 Oct 2021 07:54:28 +0000</pubDate>
</item>
<item>
<title>Answered: Persisting text/image below each page (footer)</title>
<link>https://answers.guidedtrack.com/642/persisting-text-image-below-each-page-footer?show=644#a644</link>
<description>&lt;p&gt;You can use a &lt;em&gt;component with &lt;/em&gt;classes to do that:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*html
	&amp;lt;style&amp;gt;.myProgramFooter {position:fixed; bottom:-30px; right:0; border:0px !important;}&amp;lt;/style&amp;gt;

*component 
	*classes: myProgramFooter
	*image: https://i.imgur.com/hrOOAsA.jpg
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can play around with the css to adjust it to your needs. Use position:fixed so that it is always displayed at the bottom of the screen and position:absolute so that it is below the content of the program. You will need to add the code in every page, but you can create a subprogram with the code above and that way you only need to write on each page:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*program: my footer program
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;(or whatever you name the program)&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/642/persisting-text-image-below-each-page-footer?show=644#a644</guid>
<pubDate>Fri, 08 Oct 2021 09:57:03 +0000</pubDate>
</item>
<item>
<title>Answered: Conditional statement if question is blank</title>
<link>https://answers.guidedtrack.com/414/conditional-statement-if-question-is-blank?show=415#a415</link>
<description>&lt;p&gt;Assuming that the question that saves the answers to &lt;strong&gt;placesToEat&lt;/strong&gt; is of &lt;code&gt;*type: checkbox&lt;/code&gt; or has &lt;code&gt;*multiple&lt;/code&gt;  indented under it, placesToEat will be a list/collection (the documentation is &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/manual/additional-keywords/collections/&quot;&gt;here in the manual&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;What you would do is to check the size of that list - if your user skipped the question, the size of the list is 0:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*if: placesToEat.size = 0
	Oh it's empty in here. Let's help you find a restaurant.
	*button: Next
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/414/conditional-statement-if-question-is-blank?show=415#a415</guid>
<pubDate>Thu, 26 Aug 2021 14:30:49 +0000</pubDate>
</item>
<item>
<title>Answered: Getting UTC Time</title>
<link>https://answers.guidedtrack.com/405/getting-utc-time?show=406#a406</link>
<description>&lt;p&gt;You can use *service to retrieve it from a site like &lt;a rel=&quot;nofollow&quot; href=&quot;http://worldclockapi.com/api/json/utc/now&quot;&gt;http://worldclockapi.com/api/json/utc/now&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here is how you would do it. In your program, use this code:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*service: utc
	*path: /
	*method: GET
	*success
		&amp;gt;&amp;gt;out_UTCtime = it[&quot;currentDateTime&quot;]
	*error
		&amp;gt;&amp;gt;out_UTCtime = &quot;&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;and then you need to go to your program settings to configure the service:&lt;br&gt;
1) On Settings&amp;gt;Services, click on &quot;New service&quot;&lt;br&gt;
2) Fill the &quot;Name&quot; field with &lt;strong&gt;utc&lt;/strong&gt;, and the &quot;URL&quot; field with&lt;strong&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://worldclockapi.com/api/json/utc/now&quot;&gt;http://worldclockapi.com/api/json/utc/now&lt;/a&gt;&lt;/strong&gt;, leaving all the other fields blank&lt;br&gt;
3) Click &lt;strong&gt;Save&lt;/strong&gt; and the program is ready to run!&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/405/getting-utc-time?show=406#a406</guid>
<pubDate>Mon, 23 Aug 2021 19:27:31 +0000</pubDate>
</item>
<item>
<title>Answered: Customize *summary - or how to display *tags</title>
<link>https://answers.guidedtrack.com/400/customize-%2Asummary-or-how-to-display-%2Atags?show=402#a402</link>
<description>&lt;p&gt;If you want to customize your summaries, you may find it useful to save the answer to each question into a variable, and then display the variable with whatever text you choose:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*question: What is your favorite color?
	*save: favColor
	
Your favorite color is {favColor}
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/400/customize-%2Asummary-or-how-to-display-%2Atags?show=402#a402</guid>
<pubDate>Thu, 19 Aug 2021 11:11:03 +0000</pubDate>
</item>
<item>
<title>Answered: Allow user to add answer if selection is not sufficient</title>
<link>https://answers.guidedtrack.com/399/allow-user-to-add-answer-if-selection-is-not-sufficient?show=401#a401</link>
<description>&lt;p&gt;Hi! Try this code:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*question: What are your favorite colors?
	*type: checkbox
	Red
	Blue
	Orange
	Other
	*save: favColors
	
*if: &quot;Other&quot; in favColors

	*label: askOtherColor
	*question: What other colors?
		*tip: Enter one color per line
		*multiple
		*save: addFavColors
		
	--add addFavColors to the list of favorite colors
	&amp;gt;&amp;gt;favColors.combine(addFavColors)
	
	--remove &quot;Other&quot; from list of favorite colors
	&amp;gt;&amp;gt;favColors.erase(&quot;Other&quot;)
	
This is your list of favorite colors: {favColors}
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/399/allow-user-to-add-answer-if-selection-is-not-sufficient?show=401#a401</guid>
<pubDate>Thu, 19 Aug 2021 11:08:18 +0000</pubDate>
</item>
<item>
<title>Answered: .erase and .add is removing/adding elements in more than one collection</title>
<link>https://answers.guidedtrack.com/396/erase-and-add-removing-adding-elements-more-than-collection?show=397#a397</link>
<description>&lt;p&gt;Hi! &lt;br&gt;
Do this instead:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt;resultsFull = [] 
&amp;gt;&amp;gt;resultsFull.combine(resultsOriginal)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can find the full explanation for it in the manual:&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.google.com/document/d/1RKblBEwG7BrMMeTXFITSNDJQsszHotqaE_q-E9q0QHA/view#heading=h.ds7raeq957xu&quot;&gt;https://docs.google.com/document/d/1RKblBEwG7BrMMeTXFITSNDJQsszHotqaE_q-E9q0QHA/view#heading=h.ds7raeq957xu&lt;/a&gt;&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/396/erase-and-add-removing-adding-elements-more-than-collection?show=397#a397</guid>
<pubDate>Wed, 28 Jul 2021 08:37:34 +0000</pubDate>
</item>
<item>
<title>Answered: Change what happens depending on multiple answers to checkbox question</title>
<link>https://answers.guidedtrack.com/174/change-happens-depending-multiple-answers-checkbox-question?show=394#a394</link>
<description>&lt;p&gt;Anon gave a sleek answer, which I liked.&lt;br&gt;
I just wanted to comment on an alternative, which is to assign a variable after each alternative. For instance:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*question: What is your favourite colour?
	Yellow, like a shining sun.
		&amp;gt;&amp;gt;answer=&quot;correct&quot;
	Blue, as the bluest skies!
	Green

*if: not answer = &quot;correct&quot;
	You're wrong! Yellow is the colour!

---Or, if you'd like to add an explanation for each answer.

*question: What is your favourite colour?
	Yellow, like a shining sun.
		&amp;gt;&amp;gt;answer=&quot;yellow&quot;
	Blue, as the bluest skies!
		&amp;gt;&amp;gt;answer=&quot;blue&quot;
	Green, green, green, green...
		&amp;gt;&amp;gt;answer=&quot;green&quot;
	I want it all painted black.
		&amp;gt;&amp;gt;answer=&quot;black&quot;

*if: answer=&quot;yellow&quot;
	You're right! Yellow rocks!
	
*if: answer=&quot;black&quot;
	No! Black is not a colour. It's the absence of colours.
	
--- and so on...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Please, notice this wouldn't work with a question of the Checklist type. Anon's answer is more suitable for that.&lt;br&gt;
Hope that helps!&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/174/change-happens-depending-multiple-answers-checkbox-question?show=394#a394</guid>
<pubDate>Mon, 26 Jul 2021 23:38:59 +0000</pubDate>
</item>
<item>
<title>Answered: *event *goto leads to &quot;Uncaught TypeError: Cannot read property 'history_entry' of undefined&quot;</title>
<link>https://answers.guidedtrack.com/312/%2Aevent-uncaught-typeerror-property-history_entry-undefined?show=341#a341</link>
<description>&lt;p&gt;It's late, but this should be fixed now. Sorry for taking a long time!&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/312/%2Aevent-uncaught-typeerror-property-history_entry-undefined?show=341#a341</guid>
<pubDate>Tue, 20 Jul 2021 12:16:10 +0000</pubDate>
</item>
<item>
<title>Answered: Why is a variable being miscalculated?</title>
<link>https://answers.guidedtrack.com/332/why-is-a-variable-being-miscalculated?show=333#a333</link>
<description>&lt;p&gt;The problem is that you are allowing the users to go back in your program. If they answer &quot;yes&quot; to the first two questions and then go back to the first one to change the answer to &quot;no&quot;, the variable &quot;languagesSpoken&quot; is still 2. Then they answer yes to speaking Spanish and German, so the final value of the variable is 4.&lt;/p&gt;
&lt;p&gt;You can try this code instead:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*settings
	*back: yes
*question: Do you speak French?
	Yes
		&amp;gt;&amp;gt;speaksFrench = 1
	No
		&amp;gt;&amp;gt;speaksFrench = 0
	
*question: Do you speak Spanish?
	Yes
		&amp;gt;&amp;gt;speaksSpanish = 1
	No
		&amp;gt;&amp;gt;speaksSpanish = 0
	
*question: Do you speak German?
	Yes
		&amp;gt;&amp;gt;speaksGerman = 1
	No
		&amp;gt;&amp;gt;speaksGerman = 0

&amp;gt;&amp;gt;languagesSpoken = speaksFrench + speaksSpanish + speaksGerman	
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/332/why-is-a-variable-being-miscalculated?show=333#a333</guid>
<pubDate>Fri, 11 Jun 2021 10:12:30 +0000</pubDate>
</item>
<item>
<title>Answered: Is it possible to create a clickable image?</title>
<link>https://answers.guidedtrack.com/318/is-it-possible-to-create-a-clickable-image?show=324#a324</link>
<description>&lt;p&gt;If image maps get sanitized, that’s unfortunate. Essentially it would be a new feature to support this and I think we don’t have capacity for that now.&lt;/p&gt;
&lt;p&gt;Depending on what you want to do, however, &lt;code&gt;*component&lt;/code&gt; might fit the bill. See &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.guidedtrack.com/manual/additional-keywords/components&quot;&gt;the documentation for &lt;code&gt;*component&lt;/code&gt;&lt;/a&gt; (it takes a while to jump to the right place).&lt;/p&gt;
&lt;p&gt;There is another workaround, which is hosting the image map on an external page and make the user go GuidedTrack program → external page → GuidedTrack program#some-label.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Host an HTML page with just your image map somewhere, eg. on GitHub Pages. Say it's called &lt;a rel=&quot;nofollow&quot; href=&quot;https://pascal.github.io/map.html&quot;&gt;https://pascal.github.io/map.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;In your GuidedTrack program when you want the user to see the image, use&lt;br&gt;
&lt;code&gt;*goto: https://pascal.github.io/map.html&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;The image maps contains links back to the program.&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/abc234d/run#some-label&quot;&gt;https://www.guidedtrack.com/programs/abc234d/run#some-label&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/318/is-it-possible-to-create-a-clickable-image?show=324#a324</guid>
<pubDate>Fri, 28 May 2021 06:16:26 +0000</pubDate>
</item>
<item>
<title>Answered: how to write questions from right(in Persian) in new version of guidedtrack?</title>
<link>https://answers.guidedtrack.com/319/how-write-questions-from-right-persian-version-guidedtrack?show=320#a320</link>
<description>&lt;p&gt;Update 2021-05-28: The issue should be fixed now.&lt;/p&gt;
&lt;p&gt;This is the workaround that I originally posted:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;-- You've already got this part.
*settings
	*classes: text-right

-- This makes it work for questions, too.
*html
	&amp;lt;style&amp;gt;.text-right div.prompt { text-align: right; }&amp;lt;/style&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/319/how-write-questions-from-right-persian-version-guidedtrack?show=320#a320</guid>
<pubDate>Wed, 19 May 2021 01:03:45 +0000</pubDate>
</item>
<item>
<title>Answered: Is it possible to retrieve time in milliseconds?</title>
<link>https://answers.guidedtrack.com/316/is-it-possible-to-retrieve-time-in-milliseconds?show=317#a317</link>
<description>&lt;p&gt;Hi! Yes, I think it's possible to see the time that someone responded to a given question, down to the millisecond. While in the &quot;Data&quot; tab, if you click on &quot;questions&quot; and then click on an individual question, you can see, down to the millisecond, the time that each question was answered. &lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/316/is-it-possible-to-retrieve-time-in-milliseconds?show=317#a317</guid>
<pubDate>Wed, 05 May 2021 10:41:06 +0000</pubDate>
</item>
<item>
<title>Answered: Can one capture voice recording from participants?</title>
<link>https://answers.guidedtrack.com/314/can-one-capture-voice-recording-from-participants?show=315#a315</link>
<description>&lt;p&gt;Hi! We don't currently have this feature-- GuidedTrack can include your own audio files in surveys, but there isn't the ability to create recordings within a program. We don't have file creation/upload functionality in general. Unfortunately the best workaround I can think of is collecting links to files hosted elsewhere.&lt;br&gt;
I do think this would be useful, and I will bring the suggestion to the team!&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/314/can-one-capture-voice-recording-from-participants?show=315#a315</guid>
<pubDate>Thu, 08 Apr 2021 18:37:32 +0000</pubDate>
</item>
<item>
<title>Answered: Color a single word in a question - HTML tag is buggy</title>
<link>https://answers.guidedtrack.com/310/color-a-single-word-in-a-question-html-tag-is-buggy?show=311#a311</link>
<description>&lt;p&gt;You can wrap up the whole paragraph:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*html
	&amp;lt;p&amp;gt;Tatyana knew that Grandma always enjoyed serving an abundance of food to her guests. Now Tatyana watched as Grandma gathered Tatyana's small mother into a wide, scrawny embrace and then propelled &amp;lt;span style=&quot;color:red;&quot;&amp;gt;her&amp;lt;/span&amp;gt; to the table, lifting her shawl from her shoulders, seating her in the place of honor, and saying simply: &quot;There's plenty.&quot;&amp;lt;/p&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/310/color-a-single-word-in-a-question-html-tag-is-buggy?show=311#a311</guid>
<pubDate>Wed, 24 Mar 2021 08:03:06 +0000</pubDate>
</item>
<item>
<title>Answered: Receiving a variable through a custom event</title>
<link>https://answers.guidedtrack.com/303/receiving-a-variable-through-a-custom-event?show=305#a305</link>
<description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;If you are embedding the GuidedTrack program with an iframe, you would not be using custom events. Instead, what you can do is to reload the program running in the iframe passing whatever information you need via url parameters.&lt;/p&gt;
&lt;p&gt;This is a program that captures the name and last name of a person and greets them: &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.guidedtrack.com/programs/16334/edit&quot;&gt;https://www.guidedtrack.com/programs/16334/edit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Now, let's say that in your site there is another place where the person can enter their name and you want to pass it to your GuidedTrack program when they click a button. This is what the html code could look like:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;lt;button onclick=&quot;myFunction()&quot;&amp;gt;Send name to GuidedTrack&amp;lt;/button&amp;gt;
&amp;lt;iframe id='iframeid' src=&quot;http://www.guidedtrack.com/programs/ur9vkak/run&quot; width=&quot;100%&quot; height=&quot;600px&quot;&amp;gt;&amp;lt;/iframe&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And this is the myFunction() code, which reloads the same program but assigning a value to the program variables userName and userLastName:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;    &amp;lt;script&amp;gt;
function myFunction() {
    document.getElementById('iframeid').src = &quot;http://www.guidedtrack.com/programs/ur9vkak/run?userName=Peter&amp;amp;userLastName=Jackson&quot; ;
}
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In the code of the GuidedTrack program, you can see that at the very beginning there is a *startup event:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*events
*startup
	*if: userName
		*goto: greeting
			*reset
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;When you initially load the program but have not yet clicked the button, userName has not  been defined so this block of code does nothing and the program goes on to asking the questions. Anytime that you click the external button, the program will reload and it will take the userName and userLastName that have been passed as url parameters (with values &quot;Peter&quot; and &quot;Jackson&quot;). When you do that, the code under *startup gets executed immediately so in this case, the program flow will go to the final greeting page. &lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/303/receiving-a-variable-through-a-custom-event?show=305#a305</guid>
<pubDate>Tue, 23 Mar 2021 08:34:13 +0000</pubDate>
</item>
<item>
<title>Answered: What's the easiest way to get a pdf of the survey?</title>
<link>https://answers.guidedtrack.com/290/whats-the-easiest-way-to-get-a-pdf-of-the-survey?show=302#a302</link>
<description>&lt;p&gt;Hi Ali! Based on the link you shared, it sounds like you want to create a pdf of a survey, without any pre-filled answers (e.g., so that it could be printed and filled out as a paper-based survey) - is that right? If so, then I think there might be ways to do this with the *service keyword plus paid APIs, but I'll wait to see if anyone else reading this has ideas on that front. &lt;/p&gt;
&lt;p&gt;On the other hand, if (instead of printing a blank survey) you wanted to summarize someone's answers (e.g., to share with someone who's already completed their survey), I could share some ideas for how you could go about that?&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/290/whats-the-easiest-way-to-get-a-pdf-of-the-survey?show=302#a302</guid>
<pubDate>Mon, 15 Mar 2021 22:38:15 +0000</pubDate>
</item>
<item>
<title>Answered: Numerical Validation</title>
<link>https://answers.guidedtrack.com/299/numerical-validation?show=300#a300</link>
<description>&lt;pre&gt;&lt;code&gt;*label: age
*question: how old are you?
	*type: number
	*save: age 
	
*if: age &amp;lt; 20 
	Please try again. 
	*goto: age 
	
*if: age &amp;gt; 70
	You're way too old to be doing this. 
	*goto: end

You are {age} years old 
*button: cool
*label: end
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Unsure if this is what you mean but here's just like a way around it probably. :) &lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/299/numerical-validation?show=300#a300</guid>
<pubDate>Mon, 15 Mar 2021 06:19:02 +0000</pubDate>
</item>
<item>
<title>Answered: Remove from collection</title>
<link>https://answers.guidedtrack.com/86/remove-from-collection?show=252#a252</link>
<description>&lt;p&gt;You can use the new functions .erase and .remove.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;.erase&lt;/strong&gt; removes something at a given index, for example:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt;friends = [&quot;Liz&quot;, &quot;Ana&quot;, &quot;Sam&quot;]
&amp;gt;&amp;gt;friends.remove(2)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The code above will remove the second element from the collection (the one with value &quot;Ana&quot;)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;.remove&lt;/strong&gt; will remove all of the elements that match a give value:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt;&amp;gt;tripsThisYear = [&quot;Paris&quot;, &quot;London&quot;, &quot;Rome&quot;, &quot;London&quot;, &quot;Madrid&quot;]
&amp;gt;&amp;gt;tripsThisYear.erase(&quot;London&quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If you run the code above you will see that the function removes the two elements with value &quot;London&quot;&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/86/remove-from-collection?show=252#a252</guid>
<pubDate>Mon, 22 Feb 2021 08:07:48 +0000</pubDate>
</item>
<item>
<title>show a tip for an question only after a specified time has passed</title>
<link>https://answers.guidedtrack.com/209/show-tip-for-an-question-only-after-specified-time-has-passed</link>
<description>&lt;p&gt;So I want to have a question but want to display text under the question, but display it only &lt;br&gt;
after 5 minutes have passed. It's for a digital escape room game, where my students are supposed to think about the answer before receiving a hint. &lt;br&gt;
The way it is now, anything under the question will not be displayed until an answer is submitted. &lt;br&gt;
I don't quite get how you can use &lt;em&gt;maintain to do what I'd like to do. &lt;br&gt;
I could use &lt;/em&gt;wait after the question, but not before the question, because then the question won't be displayed.&lt;br&gt;
Any ideas?&lt;/p&gt;
&lt;p&gt;Here's my code (I don't get why when I paste the code from my program, the indentations don't show): &lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*label: question1
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;gt;&amp;gt;answer = &quot;wrong&quot;&lt;br&gt;
*while: answer = &quot;wrong&quot;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*question: What's the answer to everything?
	*type: number
	42
		&amp;gt;&amp;gt;answer = &quot;correct&quot;
		*goto: question2
	*other
		That's not yet correct.
		*goto: question1
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;*wait: 5.minutes&lt;br&gt;
Here's a tip. It's an answer from Mr. Adams.&lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/209/show-tip-for-an-question-only-after-specified-time-has-passed</guid>
<pubDate>Sun, 24 Jan 2021 18:47:49 +0000</pubDate>
</item>
<item>
<title>Built in way to highlight correct answer for quiz questions (applying css to classes dynamically)</title>
<link>https://answers.guidedtrack.com/208/highlight-correct-questions-applying-classes-dynamically</link>
<description>&lt;p&gt;I'd like to have a way for participants to get immediate feedback within the same page about whether or not they've gotten a question right by highlighting their answer as either green or red depending on if they got the answer right.&lt;/p&gt;
&lt;p&gt;For example: &lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*question: Select Option 1
	1
	2
	*save: option
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If they select option 2 their selected answer should turn red. If they selection option 1, their selected answer should turn green. My current approach is to transform the question into components and, if they get an answer right, to re-render the components on the next page with a green or a red class. This is somewhat clumsy and requires a bunch of if-statements a lot of text and another page load. &lt;/p&gt;
&lt;p&gt;Is there a better way of doing this? &lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/208/highlight-correct-questions-applying-classes-dynamically</guid>
<pubDate>Fri, 22 Jan 2021 00:20:57 +0000</pubDate>
</item>
<item>
<title>Loop through a set of questions until participant opts to exit study</title>
<link>https://answers.guidedtrack.com/203/loop-through-set-questions-until-participant-opts-exit-study</link>
<description>&lt;p&gt;Let's say I have a list of 15 questions which I want to show to a participant one at a time. However, before each question I want to ask the participant if they'd like to answer another question from that set or if they'd like to exit the study.  If the participant indicates they'd like to answer a question, one question should be randomly taken from the list and shown to the participant. This loop should continue until the participant has exhausted the questions available or until the participant says indicates he'd like to leave the study. &lt;/p&gt;
&lt;p&gt;So, for example, a participant would be asked the following&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;*question: Would you like to answer one more question?
	Yes, show me one question
	No, I'd like to end the study
	*save: question_decision
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If Yes --&amp;gt; Pull a question from a list of questions and add one to counter. If No --&amp;gt; Exit Study.&lt;/p&gt;
&lt;p&gt;I imagine this has to be done with a collection and &lt;code&gt;goto&lt;/code&gt; and &lt;code&gt;label&lt;/code&gt; statements which loop until the value of &lt;code&gt;question_decision&lt;/code&gt; is &quot;No.&quot; However, I couldn't figure out how to randomly pull a question and its associated answer choices for the purpose of this task. Any thoughts? &lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/203/loop-through-set-questions-until-participant-opts-exit-study</guid>
<pubDate>Wed, 20 Jan 2021 21:46:26 +0000</pubDate>
</item>
<item>
<title>summary by answers</title>
<link>https://answers.guidedtrack.com/194/summary-by-answers</link>
<description>&lt;p&gt;I am making my survey and I have a question about generating a report for the user.&lt;/p&gt;
&lt;p&gt;I want to be able to feedback to the user when they finish the survey, highlighting all the questions where they gave a particular answer for a number of multiple-choice questions. I.e., where a user answers &quot;strongly agree&quot; to any of these questions, I want these questions to be highlighted for them at the end. &lt;/p&gt;
&lt;p&gt;I am able to tag questions(as per the 'summarizing entered data' section of your handbook, however, I want to be able to tag specific answers (multiple choice) instead of the questions. &lt;/p&gt;
</description>
<guid isPermaLink="true">https://answers.guidedtrack.com/194/summary-by-answers</guid>
<pubDate>Sun, 17 Jan 2021 19:06:43 +0000</pubDate>
</item>
</channel>
</rss>