<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.catglobe.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cg+van</id>
	<title>Catglobe Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.catglobe.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cg+van"/>
	<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/Special:Contributions/Cg_van"/>
	<updated>2026-05-07T14:16:03Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Merge_duplicate_users&amp;diff=24577</id>
		<title>Merge duplicate users</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Merge_duplicate_users&amp;diff=24577"/>
		<updated>2013-09-12T10:48:14Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Set recalculate duplicates dialog */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User module]]&lt;br /&gt;
﻿&lt;br /&gt;
&lt;br /&gt;
=== Merge duplicate users ===&lt;br /&gt;
&lt;br /&gt;
In order to merge duplicate users that may exist in the system Catglobe offers the merge user feature, which can be accessed via &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tools -&amp;amp;gt; Administration -&amp;amp;gt; HR -&amp;amp;gt; Duplicate user&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
The reason for wanting to merge two users are many, but generally it can have been caused by errors or users who have signed up to be respondent more than once. In both cases we need to keep important information and move it to a new user and delete the rest. &lt;br /&gt;
&lt;br /&gt;
In order to do this we operate with some definitions important for the understanding of merging users. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Deleted User:&#039;&#039;&#039; the user that will be destroyed after being merged.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Main User:&#039;&#039;&#039; the user whose values are chosen for the Merged User by default. This is the user account that is kept. After the merge-process is done, we can call it &#039;&#039;&#039;Merged User&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
Since we normally will have no easy way of finding duplicate users, Catglobe offers a feature to do this. The page you will initially see is the duplicate list. This list identifies all the possible duplicates that exist on the database and list them side by side as shown below: &lt;br /&gt;
&lt;br /&gt;
[[Image:4311.png|800px|MergeUser5-4-1]]You may not immediately see all the duplicate users in your system since this page uses a scheduled approach to finding duplicates, since the query is very heavy and cannot be run every time opening this page. &lt;br /&gt;
&lt;br /&gt;
The list you see will feature information on the two users that are found to be possible duplicates. Besides this there is a “certainty” column which shows the percentage of similarity between the two users. &lt;br /&gt;
&lt;br /&gt;
Finally there is the status column showing three possible values: &lt;br /&gt;
&lt;br /&gt;
*Open: no action has been taken on this duplicate. &lt;br /&gt;
*Merged: the two users of this duplicate have been merged. &lt;br /&gt;
*Ignored: this duplicate has been marked as “Ignored”.&lt;br /&gt;
&lt;br /&gt;
A number of actions are possible from this page: &lt;br /&gt;
&lt;br /&gt;
*Ignore: highlighting and clicking ignore on a pair of users will ensure that they are never again seen as duplicates when we search for potential duplicates. Some duplicates can be caused by similar names and once we find that they are really different people we will never want them to appear in the list again. &lt;br /&gt;
*Merge: When highlighting a record and clicking the merge field we will then be introduced to the merge user dialogue, which is explained in more detail below. &lt;br /&gt;
*Search: Makes it possible to limit identified duplicates to only include users where both duplicates are members of a certain group. &lt;br /&gt;
*Recalculate duplicates: This is a dialogue for managing the duplicate search schedule and rules, which will be explained later in this help file. &lt;br /&gt;
*Manual merge (found under tools): A tool for manually choosing the users to merge is available through this button. Explained in detail below. &lt;br /&gt;
*Ignored data list: A list that identifies names or data that we want to exclude from being identified as duplicates. Explained in detail below.&lt;br /&gt;
&lt;br /&gt;
===Merge user===&lt;br /&gt;
&lt;br /&gt;
Once we choose to merge a pair of users we will be presented with the following dialog.&lt;br /&gt;
&lt;br /&gt;
[[Image:4312.png|800px|MergeUser5-4-2]]&lt;br /&gt;
&lt;br /&gt;
The screen contains a button to initiate merge of the two users, a reset button to undo any merge settings done in the dialog, and a button to close the dialog without taking any actions.&lt;br /&gt;
&lt;br /&gt;
A normal process to merge two users is to go through all the tabs and choose which information we want to keep. The chosen information will be displayed in the main tab area, where you can make some final adjustments if needed. Once you are satisfied with&lt;br /&gt;
&lt;br /&gt;
How the final main user will look you click merge. The following detailed guide will lead you through merging users.&lt;br /&gt;
&lt;br /&gt;
===Step 1: Choose main user===&lt;br /&gt;
&lt;br /&gt;
* Select one of the two option buttons to choose the Main User. Note that we can’t select a user account that has been deleted as a Main User. If a user has already been deleted, the corresponding radio button will be disabled.&lt;br /&gt;
* After the Main User has been chosen, all other controls are enabled.&lt;br /&gt;
* When one of the two users is selected as Main User, the Main User will get all values from the selected one, except for Address and Phone numbers.&lt;br /&gt;
* If both users have an address specified, the Main User will get the address values from the selected user. If only one of the two users has Address, the Main User will get the address values from that user. The same logic applies to phone numbers.&lt;br /&gt;
* By default, the “disabled” setting of the Main User is FALSE and “access expiration” is null.&lt;br /&gt;
* Points will always be the sum of all points of both users.&lt;br /&gt;
&lt;br /&gt;
===Step 2: Choose value for each attribute===&lt;br /&gt;
&lt;br /&gt;
Initially the value in the main user will be set to the chosen main user, but it is possibly to change this later either by manually changing the main user or by deciding on the other user’s radio button.&lt;br /&gt;
&lt;br /&gt;
[[Image:4314.png|800px|MergeUser5-4-3]]&lt;br /&gt;
&lt;br /&gt;
* After all the values are decided, click the “Merge” button to start the merging process.&lt;br /&gt;
* After the merge process is done, the dialog will close and you will be returned to the duplicate user list.&lt;br /&gt;
&lt;br /&gt;
=== Set recalculate duplicates dialog  ===&lt;br /&gt;
&lt;br /&gt;
This dialog makes it possible to set criteria for how often the find duplicate query is run and the criteria for what users it finds. The dialogue looks like below. &lt;br /&gt;
&lt;br /&gt;
[[Image:5301.png|500px|DuplicateUser5-5-1]] &lt;br /&gt;
&lt;br /&gt;
If you want to limit the search being made for users in a certain group you can select it here. This can e.g. make sure that you only search on panel members, since you do actually allow employees to have more than one user account. &lt;br /&gt;
&lt;br /&gt;
You can further specify when the query will start and how often it will be run (interval in days). There are three options; Start now, start later and recurring. Each of these have different settings to specify. &lt;br /&gt;
&lt;br /&gt;
If you want disabled users to also be compared for duplicates you can check the “Include disabled users?” check box. Finally, you can specify the criteria that will be compared between users to see if they are duplicates.&amp;amp;nbsp; Save and wait to see the result of your settings. &lt;br /&gt;
&lt;br /&gt;
A number of other factors may also influence the business logic of how duplicates are found; these are only for administrators to set up via the web configuration file and you can read more about them by clicking here. &lt;br /&gt;
&lt;br /&gt;
[[Key: DoubletUsersNumberOfNewUsersForSearch]] &lt;br /&gt;
&lt;br /&gt;
[[Key: DoubletUsersUpperThresholdForSearch]]&lt;br /&gt;
&lt;br /&gt;
===Manual merge===&lt;br /&gt;
&lt;br /&gt;
When you know of two users that need to be merged and these do not necessarily appear in the duplicate list, you can use the manual merge feature,&lt;br /&gt;
&lt;br /&gt;
[[Image:4316.png|450px|MergeUser5-4-5]] It basically gives you the option to merge two users by searching for their user using the small search dialog or by choosing their ID and clicking the related “Merge” details button. This will open the merge user dialog.&lt;br /&gt;
&lt;br /&gt;
===Ignored data list===&lt;br /&gt;
&lt;br /&gt;
This page displays the list of full names/addresses/phone numbers/e-mails/passwords that are ignored during the search for duplicate users. Please note that these ignored data are different from ignored duplicates. The values that are placed on this list are dependent on a setting in the web configuration, which you can read more about by clicking here. Basically it is a setting specifying the duplicate search to ignore any duplicates that exist in a large number. The reason for such a feature is that we have certain combinations (like empty full name or full names that are all “Respondent Respondent” due to import choices) and we do not wish to include these in our duplicate list. There is no manual choice of what these are; they are purely based on amount in existence. [[Image:4317.png|1094px|MergeUser5-4-6]]&lt;br /&gt;
&lt;br /&gt;
There are 6 buttons on the tool bar:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Full name: &#039;&#039;&#039;list of the top 30 ignored full names.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Password:&#039;&#039;&#039; list of the top 30 ignored passwords.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Phone number:&#039;&#039;&#039; list of the top 30 ignored phone numbers.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-mail: &#039;&#039;&#039;list of the top 30 ignored e-mails.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Address:&#039;&#039;&#039; list of the top 30 ignored addresses.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Close: &#039;&#039;&#039;Will return you to the duplicate list page.&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;!-- imported from file: 900.htm--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Tabulation_setMergeStatisticPctItem&amp;diff=24272</id>
		<title>Tabulation setMergeStatisticPctItem</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Tabulation_setMergeStatisticPctItem&amp;diff=24272"/>
		<updated>2012-03-29T07:39:53Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;﻿{{HelpFiles}} &lt;br /&gt;
&lt;br /&gt;
===== Tabulation_setMergeStatisticPctItem  =====&lt;br /&gt;
&lt;br /&gt;
When tables are being shown with both absolute and percentage columns, the statistical rows will, for an item, show the same result in both the absolute and statistical columns. When enabling this setting, the cells for these columns will be merged together, so that the result will just be shown on one shared cell for both columns. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Syntax&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Tabulation_setMergeStatisticPctItem(&#039;&#039;enabled&#039;&#039;) &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Arguments&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;enabled: &#039;&#039; Is a boolean expression. If &#039;&#039;true&#039;&#039; then cells will be merged, if &#039;&#039;false&#039;&#039; they will not. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Return type&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
empty &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Examples&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tabulation_setAbsText(&amp;quot;abs&amp;quot;);&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tabulation_setPctText(&amp;quot;%&amp;quot;);&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tabulation_setCountAnswer(true);&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tabulation_setTotalAnswerText(&amp;quot;Total sample size&amp;quot;);&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;createCrossDiagram({&amp;quot;Civil_status&amp;quot;},{&amp;quot;Sex&amp;quot;});&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;//Result:&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
[[Image:SetMergeStatisticPctItem False.jpg]] &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tabulation_setMergeStatisticPctItem(true);&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;createCrossDiagram({&amp;quot;Civil_status&amp;quot;},{&amp;quot;Sex&amp;quot;}); &#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;//Result:&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
[[Image:SetMergeStatisticPctItem.jpg]] &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Availability&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Version 5.8.1 __NOTOC__ &amp;lt;!-- imported from file: 8140.htm--&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Category:Style_setting_functions]]&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Change_stylesheet_of_an_answer_option_column_in_a_single_grid_question&amp;diff=24026</id>
		<title>Change stylesheet of an answer option column in a single grid question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Change_stylesheet_of_an_answer_option_column_in_a_single_grid_question&amp;diff=24026"/>
		<updated>2012-02-10T03:52:59Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Change style sheet of an answer option column in a single grid question ==&lt;br /&gt;
&lt;br /&gt;
In order to highlight an answer option column &lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator &lt;br /&gt;
&lt;br /&gt;
I want to change the style sheet of a specific answer option column in a single grid question &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*I have a single grid question like below. &lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeStyleSheetAOText1.jpg]] &lt;br /&gt;
&lt;br /&gt;
*I want to change the&amp;amp;nbsp;style of Don&#039;t know column. &lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeStyleSheetAOText2.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Solution  ==&lt;br /&gt;
&lt;br /&gt;
*Add a Single grid question to Questionnaire editorlike below&amp;lt;br&amp;gt;&lt;br /&gt;
*Go to menu Properties -&amp;amp;gt; Question scripts -&amp;amp;gt; Java script tab -&amp;amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeStyleSheetAOText Code.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
//change style of a SINGLE grid question&#039;s answer option column &lt;br /&gt;
//answerOptionValue: value of the answer option column &lt;br /&gt;
//newColor: the new background color of the column&#039;s cells &lt;br /&gt;
quest.changeAnswerOptionColumnStyle = function(answerOptionValue, cssClass) &lt;br /&gt;
{ &lt;br /&gt;
	//change style of answer option text&lt;br /&gt;
	$(&amp;quot;#grid_answeroption_text_&amp;quot; + answerOptionValue).addClass(cssClass);&lt;br /&gt;
&lt;br /&gt;
	//change style of answer option cells&lt;br /&gt;
	$(&amp;quot;input:radio&amp;quot;).each(&lt;br /&gt;
		function(i)&lt;br /&gt;
		{&lt;br /&gt;
			if ($(this).val() == answerOptionValue)&lt;br /&gt;
				$(this).parent().addClass(cssClass);&lt;br /&gt;
		}&lt;br /&gt;
	)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function() &lt;br /&gt;
{ &lt;br /&gt;
	var dontKnow_value = 3;&lt;br /&gt;
	this.changeAnswerOptionColumnStyle(dontKnow_value, &amp;quot;another_column_css&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Change_stylesheet_of_an_answer_option_column_in_a_single_grid_question&amp;diff=24025</id>
		<title>Change stylesheet of an answer option column in a single grid question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Change_stylesheet_of_an_answer_option_column_in_a_single_grid_question&amp;diff=24025"/>
		<updated>2012-02-10T03:52:33Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Change style sheet of an answer option column in a single grid question ==&lt;br /&gt;
&lt;br /&gt;
In order to highlight an answer option column &lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator &lt;br /&gt;
&lt;br /&gt;
I want to change the style sheet of a specific answer option column in a single grid question &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*I have a single grid question like below. &lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeStyleSheetAOText1.jpg]] &lt;br /&gt;
&lt;br /&gt;
*I want to change the&amp;amp;nbsp;style of Don&#039;t know column. &lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeStyleSheetAOText2.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Solution  ==&lt;br /&gt;
&lt;br /&gt;
*Add a Single grid question to Questionnaire editorlike below&amp;lt;br&amp;gt;&lt;br /&gt;
*Go to menu Properties -&amp;amp;gt; Question scripts -&amp;amp;gt; Java script tab -&amp;amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeStyleSheetAOText Code.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
//change style of a SINGLE grid question&#039;s answer option column &lt;br /&gt;
//answerOptionValue: value of the answer option column &lt;br /&gt;
//newColor: the new background color of the column&#039;s cells &lt;br /&gt;
quest.changeAnswerOptionColumnStyle = function(answerOptionValue, cssClass) &lt;br /&gt;
{ &lt;br /&gt;
	//change style of answer option text&lt;br /&gt;
	$(&amp;quot;#grid_answeroption_text_&amp;quot; + answerOptionValue).addClass(cssClass);&lt;br /&gt;
&lt;br /&gt;
	//change style of answer option cells&lt;br /&gt;
	$(&amp;quot;input:radio&amp;quot;).each(&lt;br /&gt;
		function(i)&lt;br /&gt;
		{&lt;br /&gt;
			if ($(this).val() == answerOptionValue)&lt;br /&gt;
				$(this).parent().addClass(cssClass);&lt;br /&gt;
		}&lt;br /&gt;
	)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function() &lt;br /&gt;
{ &lt;br /&gt;
	var dontKnow_value = 3;&lt;br /&gt;
	this.changeAnswerOptionColumnStyle(dontKnow_value, &amp;quot;another_column_css&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Add_text_before_answer_option_of_single_question&amp;diff=23825</id>
		<title>Add text before answer option of single question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Add_text_before_answer_option_of_single_question&amp;diff=23825"/>
		<updated>2012-02-03T07:52:24Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Solution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge ==&lt;br /&gt;
&lt;br /&gt;
In order to add text before answer option of single question&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to add text before answer option of single question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I have a single question.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot;|[[Image: OneColumnBefore.JPG]]&lt;br /&gt;
| [[Image: MultiColumnBefore.JPG]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I want to add an text before answer option like this image&lt;br /&gt;
{||-&lt;br /&gt;
| align=&amp;quot;center&amp;quot;|[[Image: OneColumnAfter.jpg]]&lt;br /&gt;
| [[Image: MultiColumnAfter.jpg]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionaire editor&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script&lt;br /&gt;
[[Image:AddTextBeforeAOOfSingleQuestion.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Code  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
quest.insertTextBefore = function(aoIndex, text)&lt;br /&gt;
{&lt;br /&gt;
	var that = this;&lt;br /&gt;
	$(&amp;quot;.option_row&amp;quot;).each(&lt;br /&gt;
		function(i)&lt;br /&gt;
		{&lt;br /&gt;
			if (i == aoIndex)&lt;br /&gt;
			{&lt;br /&gt;
				var tr = $(&amp;quot;&amp;lt;tr&amp;gt;&amp;quot;).addClass(&amp;quot;customized_text&amp;quot;)&lt;br /&gt;
						.append($(&amp;quot;&amp;lt;td&amp;gt;&amp;quot;).text(text).attr(&amp;quot;colSpan&amp;quot;,that.cols)); &lt;br /&gt;
				$(this).before(tr);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   var text = &amp;quot;My Text&amp;quot;;&lt;br /&gt;
	this.insertTextBefore(2, text);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Question stylesheet ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.customized_text&lt;br /&gt;
{&lt;br /&gt;
   background-color:white;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730 &lt;br /&gt;
&lt;br /&gt;
Question: Q_OS_Single_AddTextBeforeAO&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:AddTextBeforeAOOfSingleQuestion.jpg&amp;diff=23824</id>
		<title>File:AddTextBeforeAOOfSingleQuestion.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:AddTextBeforeAOOfSingleQuestion.jpg&amp;diff=23824"/>
		<updated>2012-02-03T07:51:44Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Add_text_before_answer_option_of_single_question&amp;diff=23823</id>
		<title>Add text before answer option of single question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Add_text_before_answer_option_of_single_question&amp;diff=23823"/>
		<updated>2012-02-03T07:50:11Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge ==&lt;br /&gt;
&lt;br /&gt;
In order to add text before answer option of single question&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to add text before answer option of single question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I have a single question.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot;|[[Image: OneColumnBefore.JPG]]&lt;br /&gt;
| [[Image: MultiColumnBefore.JPG]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I want to add an text before answer option like this image&lt;br /&gt;
{||-&lt;br /&gt;
| align=&amp;quot;center&amp;quot;|[[Image: OneColumnAfter.jpg]]&lt;br /&gt;
| [[Image: MultiColumnAfter.jpg]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionaire editor&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
&lt;br /&gt;
== Code  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
quest.insertTextBefore = function(aoIndex, text)&lt;br /&gt;
{&lt;br /&gt;
	var that = this;&lt;br /&gt;
	$(&amp;quot;.option_row&amp;quot;).each(&lt;br /&gt;
		function(i)&lt;br /&gt;
		{&lt;br /&gt;
			if (i == aoIndex)&lt;br /&gt;
			{&lt;br /&gt;
				var tr = $(&amp;quot;&amp;lt;tr&amp;gt;&amp;quot;).addClass(&amp;quot;customized_text&amp;quot;)&lt;br /&gt;
						.append($(&amp;quot;&amp;lt;td&amp;gt;&amp;quot;).text(text).attr(&amp;quot;colSpan&amp;quot;,that.cols)); &lt;br /&gt;
				$(this).before(tr);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   var text = &amp;quot;My Text&amp;quot;;&lt;br /&gt;
	this.insertTextBefore(2, text);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Question stylesheet ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.customized_text&lt;br /&gt;
{&lt;br /&gt;
   background-color:white;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730 &lt;br /&gt;
&lt;br /&gt;
Question: Q_OS_Single_AddTextBeforeAO&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Add_text_before_answer_option_of_single_question&amp;diff=23822</id>
		<title>Add text before answer option of single question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Add_text_before_answer_option_of_single_question&amp;diff=23822"/>
		<updated>2012-02-03T07:46:15Z</updated>

		<summary type="html">&lt;p&gt;Cg van: uestion to Question&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge ==&lt;br /&gt;
&lt;br /&gt;
In order to add text before answer option of single question&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to add text before answer option of single question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I have a single question.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot;|[[Image: OneColumnBefore.JPG]]&lt;br /&gt;
| [[Image: MultiColumnBefore.JPG]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I want to add an text before answer option like this image&lt;br /&gt;
{||-&lt;br /&gt;
| align=&amp;quot;center&amp;quot;|[[Image: OneColumnAfter.jpg]]&lt;br /&gt;
| [[Image: MultiColumnAfter.jpg]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionaire editor&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
&lt;br /&gt;
== Code  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
quest.insertTextBefore = function(aoIndex, text)&lt;br /&gt;
{&lt;br /&gt;
	var that = this;&lt;br /&gt;
	$(&amp;quot;.option_row&amp;quot;).each(&lt;br /&gt;
		function(i)&lt;br /&gt;
		{&lt;br /&gt;
			if (i == aoIndex)&lt;br /&gt;
			{&lt;br /&gt;
				var tr = $(&amp;quot;&amp;lt;tr&amp;gt;&amp;quot;).addClass(&amp;quot;customized_text&amp;quot;)&lt;br /&gt;
						.append($(&amp;quot;&amp;lt;td&amp;gt;&amp;quot;).text(text).attr(&amp;quot;colSpan&amp;quot;,that.cols)); &lt;br /&gt;
				$(this).before(tr);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   var text = &amp;quot;My Text&amp;quot;;&lt;br /&gt;
	this.insertTextBefore(2, text);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Question stylesheet ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.customized_text&lt;br /&gt;
{&lt;br /&gt;
   background-color:white;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730 &lt;br /&gt;
Question: Q_OS_Single_AddTextBeforeAO&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Align_min/max_texts_in_scale_grid_questions&amp;diff=23821</id>
		<title>Align min/max texts in scale grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Align_min/max_texts_in_scale_grid_questions&amp;diff=23821"/>
		<updated>2012-02-03T07:27:38Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to make scale grid questions look nicer&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to align min/max texts for all sub questions&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
BEFORE&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:AlignMinMaxTextsInScaleGrid1.jpg]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
AFTER&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:AlignMinMaxTextsInScaleGrid2.jpg]]&amp;lt;br/&amp;gt;&lt;br /&gt;
==Solution==&lt;br /&gt;
*Add a Scale grid question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
[[Image:AlignMinMaxTextsInScaleGrid Code.jpg]]&lt;br /&gt;
==Code==&lt;br /&gt;
===Case 1===&lt;br /&gt;
&amp;lt;source lang=javascript&amp;gt;&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	$(&amp;quot;td:contains(&#039;Min&#039;)&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
	$(&amp;quot;td:contains(&#039;Max&#039;)&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
	$(&amp;quot;td:contains(&#039;Longer&#039;)&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Case 2===&lt;br /&gt;
If the question doesn&#039;t contain subquestion text and the text cells have the same width&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=javascript&amp;gt;&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   $(&amp;quot;.grid_outer table&amp;quot;).css({&#039;width&#039; : &#039;80%&#039;});&lt;br /&gt;
   $(&amp;quot;.grid_inner td table&amp;quot;).css(&#039;width&#039;,&#039;80%&#039;);&lt;br /&gt;
   $(&amp;quot;.grid_inner td table&amp;quot;).find(&amp;quot;td&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:AlignMinMaxTextsInScaleGrid_Code.jpg&amp;diff=23820</id>
		<title>File:AlignMinMaxTextsInScaleGrid Code.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:AlignMinMaxTextsInScaleGrid_Code.jpg&amp;diff=23820"/>
		<updated>2012-02-03T07:17:44Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:AlignMinMaxTextsInScaleGrid2.jpg&amp;diff=23819</id>
		<title>File:AlignMinMaxTextsInScaleGrid2.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:AlignMinMaxTextsInScaleGrid2.jpg&amp;diff=23819"/>
		<updated>2012-02-03T07:17:43Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:AlignMinMaxTextsInScaleGrid1.jpg&amp;diff=23818</id>
		<title>File:AlignMinMaxTextsInScaleGrid1.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:AlignMinMaxTextsInScaleGrid1.jpg&amp;diff=23818"/>
		<updated>2012-02-03T07:17:43Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Prioritize_sub_questions_in_a_text_grid_question&amp;diff=23815</id>
		<title>Prioritize sub questions in a text grid question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Prioritize_sub_questions_in_a_text_grid_question&amp;diff=23815"/>
		<updated>2012-02-02T10:46:01Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to let the respondent prioritize a list of products&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to allow him to enter only values in a list of priorities for each product (one priority is only used once)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:PrioritizeSQInTextGrid.jpg]]&lt;br /&gt;
==Solution==&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
[[Image:PrioritizeSQInTextGrid Code.jpg]]&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;source lang=javascript&amp;gt;&lt;br /&gt;
function isNumeric_LessThan6(sText)&lt;br /&gt;
{&lt;br /&gt;
	var ValidChars = &amp;quot;12345&amp;quot;;&lt;br /&gt;
	if (sText.length != 1)&lt;br /&gt;
		return false;&lt;br /&gt;
	&lt;br /&gt;
	if (ValidChars.indexOf(sText) == -1) &lt;br /&gt;
		return false; &lt;br /&gt;
	&lt;br /&gt;
	return true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
var normalQuestionCheck = questioncheck;&lt;br /&gt;
&lt;br /&gt;
function extendedQuestionCheck()&lt;br /&gt;
{&lt;br /&gt;
	var valid = normalQuestionCheck();&lt;br /&gt;
	if (!valid)&lt;br /&gt;
		return false;&lt;br /&gt;
		&lt;br /&gt;
	var usedNumbers = &amp;quot;&amp;quot;;&lt;br /&gt;
	ErrorMessages.getInstance().clearErrorMessages();&lt;br /&gt;
	var msg = &amp;quot;&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
	$(&amp;quot;input:text&amp;quot;).each(&lt;br /&gt;
		function(i)&lt;br /&gt;
		{&lt;br /&gt;
			if ($(this).attr(&amp;quot;name&amp;quot;).indexOf(&amp;quot;QUESTION.&amp;quot;) == 0)&lt;br /&gt;
			{&lt;br /&gt;
				//check the value&lt;br /&gt;
				var v = $(this).val();&lt;br /&gt;
				if (!isNumeric_LessThan6(v))&lt;br /&gt;
				{&lt;br /&gt;
					msg = &amp;quot;Only 1-5 are allowed as input&amp;quot;;&lt;br /&gt;
					valid = false;&lt;br /&gt;
					return;&lt;br /&gt;
				}&lt;br /&gt;
				&lt;br /&gt;
				if (usedNumbers.indexOf(v) != -1)&lt;br /&gt;
				{&lt;br /&gt;
					valid = false;&lt;br /&gt;
					msg = &amp;quot;One value can only be specified for one row&amp;quot;;&lt;br /&gt;
					return;&lt;br /&gt;
				}				&lt;br /&gt;
				&lt;br /&gt;
				usedNumbers = usedNumbers + v;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
	if (!valid)&lt;br /&gt;
		ErrorMessages.getInstance().showErrorMessage(msg); &lt;br /&gt;
		&lt;br /&gt;
	return valid;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
questioncheck = extendedQuestionCheck;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
==Source==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:PrioritizeSQInTextGrid_Code.jpg&amp;diff=23814</id>
		<title>File:PrioritizeSQInTextGrid Code.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:PrioritizeSQInTextGrid_Code.jpg&amp;diff=23814"/>
		<updated>2012-02-02T10:44:02Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:PrioritizeSQInTextGrid.jpg&amp;diff=23813</id>
		<title>File:PrioritizeSQInTextGrid.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:PrioritizeSQInTextGrid.jpg&amp;diff=23813"/>
		<updated>2012-02-02T10:44:02Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_column_header_in_text_grid_question&amp;diff=23812</id>
		<title>Show column header in text grid question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_column_header_in_text_grid_question&amp;diff=23812"/>
		<updated>2012-02-02T10:35:14Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to indicate the unit of values to be put inside a text grid question&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to add headers to columns in text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:ShowColHeaderInTextGrid.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
[[Image:ShowColHeaderInTextGrid Code.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	$(&amp;quot;#grid_subquestion_text_1&amp;quot;).parent().before($(&amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Personal information&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&amp;quot;));&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_column_header_in_text_grid_question&amp;diff=23811</id>
		<title>Show column header in text grid question</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_column_header_in_text_grid_question&amp;diff=23811"/>
		<updated>2012-02-02T10:34:35Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to indicate the unit of values to be put inside a text grid question&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to add headers to columns in text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:ShowColHeaderInTextGrid.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
[[Image:ShowColHeaderInTextGrid Code.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	$(&amp;quot;#grid_subquestion_text_1&amp;quot;).parent().before($(&amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Antal minutter&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&amp;quot;));&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:ShowColHeaderInTextGrid_Code.jpg&amp;diff=23810</id>
		<title>File:ShowColHeaderInTextGrid Code.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:ShowColHeaderInTextGrid_Code.jpg&amp;diff=23810"/>
		<updated>2012-02-02T10:33:39Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:ShowColHeaderInTextGrid.jpg&amp;diff=23809</id>
		<title>File:ShowColHeaderInTextGrid.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:ShowColHeaderInTextGrid.jpg&amp;diff=23809"/>
		<updated>2012-02-02T10:33:38Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23808</id>
		<title>Show datepicker in text/text grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23808"/>
		<updated>2012-02-02T10:21:20Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Challenge */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to help the interviewer be faster in entering a meeting day&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to show a calendar inside a text/text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:ShowDatetimePicker.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Use jquery&#039;s datepicker (read more at: http://docs.jquery.com/UI/Datepicker)&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
[[Image:ShowDatetimePicker1.jpg]]&lt;br /&gt;
*Update the layout to include the style sheet for the datepicker&lt;br /&gt;
[[Image:ShowDatetimePicker2.jpg]]&lt;br /&gt;
*Remember to validate the text value when clicking Next (not to be written here)&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
*Javascript&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function getQuestionTextBox(label, sqIndex)&lt;br /&gt;
{&lt;br /&gt;
   return $(&amp;quot;input[name=&#039;QUESTION.&amp;quot;+ label + &amp;quot;.&amp;quot; + sqIndex + &amp;quot;&#039;]&amp;quot;);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   var qTB = getQuestionTextBox(&amp;quot;Q_MeetingTime_TextGrid_ShowDatetimePicker&amp;quot;, 0);		&lt;br /&gt;
	&lt;br /&gt;
   qTB.datepicker(&lt;br /&gt;
         {&lt;br /&gt;
            dateFormat: &#039;dd-mm-yy&#039;,						&lt;br /&gt;
            changeMonth: true,&lt;br /&gt;
            nextText: &#039;&amp;gt;&#039;,&lt;br /&gt;
            prevText: &#039;&amp;lt;&#039;,&lt;br /&gt;
            firstDay: 1&lt;br /&gt;
         }&lt;br /&gt;
      );				&lt;br /&gt;
		&lt;br /&gt;
   $(&amp;quot;input:text&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*CSS&lt;br /&gt;
&amp;lt;source lang=css&amp;gt;&lt;br /&gt;
/* Datepicker----------------------------------*/&lt;br /&gt;
.ui-datepicker { width: 17em; padding: .2em .2em 0; background-color:#dfeaf1;font-family:Verdana}&lt;br /&gt;
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next &lt;br /&gt;
{ position:absolute; top: 2px; width: 1.8em; height: 1.8em; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev { left:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next { right:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next-hover { right:1px; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span &lt;br /&gt;
{ display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month, &lt;br /&gt;
.ui-datepicker select.ui-datepicker-year { width: 30%;}&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }&lt;br /&gt;
.ui-datepicker-year{color:black;font-weight:bold;}&lt;br /&gt;
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }&lt;br /&gt;
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; font-family:Verdana }&lt;br /&gt;
.ui-datepicker td { border: 0; padding: 1px; font-family:Verdana}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker td span, .ui-datepicker td a &lt;br /&gt;
{ display: block; padding: .2em; text-align: right; text-decoration: none; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-header&lt;br /&gt;
{position: relative;background-color:#345879;padding-top: 0.2em;padding-right: 0pt;padding-bottom: 0.2em;padding-left: 0pt;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-today a{ color:red; }&lt;br /&gt;
.ui-helper-clearfix{display: inline-block;}&lt;br /&gt;
.ui-helper-clearfix{display: block;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next&lt;br /&gt;
{position: absolute;top: 2px;width: 1.8em;height: 1.8em; cursor:pointer; color:white;font-weight:bold}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover&lt;br /&gt;
{top: 1px;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-cover {&lt;br /&gt;
    display: none; /*sorry for IE5*/&lt;br /&gt;
    display/**/: block; /*sorry for IE5*/&lt;br /&gt;
    position: absolute; /*must have*/&lt;br /&gt;
    z-index: -1; /*must have*/&lt;br /&gt;
    filter: mask(); /*must have*/&lt;br /&gt;
    top: -4px; /*must have*/&lt;br /&gt;
    left: -4px; /*must have*/&lt;br /&gt;
    width: 200px; /*must have*/&lt;br /&gt;
    height: 200px; /*must have*/&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23807</id>
		<title>Show datepicker in text/text grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23807"/>
		<updated>2012-02-02T10:20:41Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to help the interviewer be faster in entering a meeting day&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to show a calendar inside a text/text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
[[Image:ShowDatetimePicker.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Use jquery&#039;s datepicker (read more at: http://docs.jquery.com/UI/Datepicker)&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
[[Image:ShowDatetimePicker1.jpg]]&lt;br /&gt;
*Update the layout to include the style sheet for the datepicker&lt;br /&gt;
[[Image:ShowDatetimePicker2.jpg]]&lt;br /&gt;
*Remember to validate the text value when clicking Next (not to be written here)&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
*Javascript&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function getQuestionTextBox(label, sqIndex)&lt;br /&gt;
{&lt;br /&gt;
   return $(&amp;quot;input[name=&#039;QUESTION.&amp;quot;+ label + &amp;quot;.&amp;quot; + sqIndex + &amp;quot;&#039;]&amp;quot;);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   var qTB = getQuestionTextBox(&amp;quot;Q_MeetingTime_TextGrid_ShowDatetimePicker&amp;quot;, 0);		&lt;br /&gt;
	&lt;br /&gt;
   qTB.datepicker(&lt;br /&gt;
         {&lt;br /&gt;
            dateFormat: &#039;dd-mm-yy&#039;,						&lt;br /&gt;
            changeMonth: true,&lt;br /&gt;
            nextText: &#039;&amp;gt;&#039;,&lt;br /&gt;
            prevText: &#039;&amp;lt;&#039;,&lt;br /&gt;
            firstDay: 1&lt;br /&gt;
         }&lt;br /&gt;
      );				&lt;br /&gt;
		&lt;br /&gt;
   $(&amp;quot;input:text&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*CSS&lt;br /&gt;
&amp;lt;source lang=css&amp;gt;&lt;br /&gt;
/* Datepicker----------------------------------*/&lt;br /&gt;
.ui-datepicker { width: 17em; padding: .2em .2em 0; background-color:#dfeaf1;font-family:Verdana}&lt;br /&gt;
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next &lt;br /&gt;
{ position:absolute; top: 2px; width: 1.8em; height: 1.8em; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev { left:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next { right:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next-hover { right:1px; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span &lt;br /&gt;
{ display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month, &lt;br /&gt;
.ui-datepicker select.ui-datepicker-year { width: 30%;}&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }&lt;br /&gt;
.ui-datepicker-year{color:black;font-weight:bold;}&lt;br /&gt;
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }&lt;br /&gt;
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; font-family:Verdana }&lt;br /&gt;
.ui-datepicker td { border: 0; padding: 1px; font-family:Verdana}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker td span, .ui-datepicker td a &lt;br /&gt;
{ display: block; padding: .2em; text-align: right; text-decoration: none; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-header&lt;br /&gt;
{position: relative;background-color:#345879;padding-top: 0.2em;padding-right: 0pt;padding-bottom: 0.2em;padding-left: 0pt;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-today a{ color:red; }&lt;br /&gt;
.ui-helper-clearfix{display: inline-block;}&lt;br /&gt;
.ui-helper-clearfix{display: block;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next&lt;br /&gt;
{position: absolute;top: 2px;width: 1.8em;height: 1.8em; cursor:pointer; color:white;font-weight:bold}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover&lt;br /&gt;
{top: 1px;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-cover {&lt;br /&gt;
    display: none; /*sorry for IE5*/&lt;br /&gt;
    display/**/: block; /*sorry for IE5*/&lt;br /&gt;
    position: absolute; /*must have*/&lt;br /&gt;
    z-index: -1; /*must have*/&lt;br /&gt;
    filter: mask(); /*must have*/&lt;br /&gt;
    top: -4px; /*must have*/&lt;br /&gt;
    left: -4px; /*must have*/&lt;br /&gt;
    width: 200px; /*must have*/&lt;br /&gt;
    height: 200px; /*must have*/&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23806</id>
		<title>Show datepicker in text/text grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23806"/>
		<updated>2012-02-02T10:19:19Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Solution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to help the interviewer be faster in entering a meeting day&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to show a calendar inside a text/text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
[[Image:ShowDatetimePicker.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Use jquery&#039;s datepicker (read more at: http://docs.jquery.com/UI/Datepicker)&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
[[Image:ShowDatetimePicker1.jpg]]&lt;br /&gt;
*Update the layout to include the style sheet for the datepicker&lt;br /&gt;
[[Image:ShowDatetimePicker2.jpg]]&lt;br /&gt;
*Remember to validate the text value when clicking Next (not to be written here)&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
*Javascript&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function getQuestionTextBox(label, sqIndex)&lt;br /&gt;
{&lt;br /&gt;
   return $(&amp;quot;input[name=&#039;QUESTION.&amp;quot;+ label + &amp;quot;.&amp;quot; + sqIndex + &amp;quot;&#039;]&amp;quot;);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	var qTB = getQuestionTextBox(&amp;quot;Q2&amp;quot;, 0);		&lt;br /&gt;
	&lt;br /&gt;
   qTB.datepicker(&lt;br /&gt;
         {&lt;br /&gt;
            dateFormat: &#039;dd-mm-yy&#039;,						&lt;br /&gt;
            changeMonth: true,&lt;br /&gt;
            nextText: &#039;&amp;gt;&#039;,&lt;br /&gt;
            prevText: &#039;&amp;lt;&#039;,&lt;br /&gt;
            firstDay: 1&lt;br /&gt;
&lt;br /&gt;
         }&lt;br /&gt;
      );				&lt;br /&gt;
		&lt;br /&gt;
	$(&amp;quot;input:text&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*CSS&lt;br /&gt;
&amp;lt;source lang=css&amp;gt;&lt;br /&gt;
/* Datepicker----------------------------------*/&lt;br /&gt;
.ui-datepicker { width: 17em; padding: .2em .2em 0; background-color:#dfeaf1;font-family:Verdana}&lt;br /&gt;
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next &lt;br /&gt;
{ position:absolute; top: 2px; width: 1.8em; height: 1.8em; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev { left:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next { right:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next-hover { right:1px; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span &lt;br /&gt;
{ display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month, &lt;br /&gt;
.ui-datepicker select.ui-datepicker-year { width: 49%;}&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }&lt;br /&gt;
.ui-datepicker-year{color:white;font-weight:bold;}&lt;br /&gt;
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }&lt;br /&gt;
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; font-family:Verdana }&lt;br /&gt;
.ui-datepicker td { border: 0; padding: 1px; font-family:Verdana}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker td span, .ui-datepicker td a &lt;br /&gt;
{ display: block; padding: .2em; text-align: right; text-decoration: none; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-header&lt;br /&gt;
{position: relative;background-color:#345879;padding-top: 0.2em;padding-right: 0pt;padding-bottom: 0.2em;padding-left: 0pt;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-today a{ color:red; }&lt;br /&gt;
.ui-helper-clearfix{display: inline-block;}&lt;br /&gt;
.ui-helper-clearfix{display: block;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next&lt;br /&gt;
{position: absolute;top: 2px;width: 1.8em;height: 1.8em; cursor:pointer; color:white;font-weight:bold}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover&lt;br /&gt;
{top: 1px;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-cover {&lt;br /&gt;
    display: none; /*sorry for IE5*/&lt;br /&gt;
    display/**/: block; /*sorry for IE5*/&lt;br /&gt;
    position: absolute; /*must have*/&lt;br /&gt;
    z-index: -1; /*must have*/&lt;br /&gt;
    filter: mask(); /*must have*/&lt;br /&gt;
    top: -4px; /*must have*/&lt;br /&gt;
    left: -4px; /*must have*/&lt;br /&gt;
    width: 200px; /*must have*/&lt;br /&gt;
    height: 200px; /*must have*/&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23805</id>
		<title>Show datepicker in text/text grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23805"/>
		<updated>2012-02-02T10:17:30Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Solution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to help the interviewer be faster in entering a meeting day&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to show a calendar inside a text/text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
[[Image:ShowDatetimePicker.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Use jquery&#039;s datepicker (read more at: http://docs.jquery.com/UI/Datepicker)&lt;br /&gt;
*Update the layout to include the stylesheet for the datepicker&lt;br /&gt;
[[Image:ShowDatetimePicker1.jpg]]&lt;br /&gt;
*Remember to validate the text value when clicking Next (not to be written here)&lt;br /&gt;
[[Image:ShowDatetimePicker2.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
*Javascript&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function getQuestionTextBox(label, sqIndex)&lt;br /&gt;
{&lt;br /&gt;
   return $(&amp;quot;input[name=&#039;QUESTION.&amp;quot;+ label + &amp;quot;.&amp;quot; + sqIndex + &amp;quot;&#039;]&amp;quot;);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	var qTB = getQuestionTextBox(&amp;quot;Q2&amp;quot;, 0);		&lt;br /&gt;
	&lt;br /&gt;
   qTB.datepicker(&lt;br /&gt;
         {&lt;br /&gt;
            dateFormat: &#039;dd-mm-yy&#039;,						&lt;br /&gt;
            changeMonth: true,&lt;br /&gt;
            nextText: &#039;&amp;gt;&#039;,&lt;br /&gt;
            prevText: &#039;&amp;lt;&#039;,&lt;br /&gt;
            firstDay: 1&lt;br /&gt;
&lt;br /&gt;
         }&lt;br /&gt;
      );				&lt;br /&gt;
		&lt;br /&gt;
	$(&amp;quot;input:text&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*CSS&lt;br /&gt;
&amp;lt;source lang=css&amp;gt;&lt;br /&gt;
/* Datepicker----------------------------------*/&lt;br /&gt;
.ui-datepicker { width: 17em; padding: .2em .2em 0; background-color:#dfeaf1;font-family:Verdana}&lt;br /&gt;
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next &lt;br /&gt;
{ position:absolute; top: 2px; width: 1.8em; height: 1.8em; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev { left:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next { right:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next-hover { right:1px; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span &lt;br /&gt;
{ display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month, &lt;br /&gt;
.ui-datepicker select.ui-datepicker-year { width: 49%;}&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }&lt;br /&gt;
.ui-datepicker-year{color:white;font-weight:bold;}&lt;br /&gt;
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }&lt;br /&gt;
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; font-family:Verdana }&lt;br /&gt;
.ui-datepicker td { border: 0; padding: 1px; font-family:Verdana}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker td span, .ui-datepicker td a &lt;br /&gt;
{ display: block; padding: .2em; text-align: right; text-decoration: none; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-header&lt;br /&gt;
{position: relative;background-color:#345879;padding-top: 0.2em;padding-right: 0pt;padding-bottom: 0.2em;padding-left: 0pt;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-today a{ color:red; }&lt;br /&gt;
.ui-helper-clearfix{display: inline-block;}&lt;br /&gt;
.ui-helper-clearfix{display: block;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next&lt;br /&gt;
{position: absolute;top: 2px;width: 1.8em;height: 1.8em; cursor:pointer; color:white;font-weight:bold}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover&lt;br /&gt;
{top: 1px;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-cover {&lt;br /&gt;
    display: none; /*sorry for IE5*/&lt;br /&gt;
    display/**/: block; /*sorry for IE5*/&lt;br /&gt;
    position: absolute; /*must have*/&lt;br /&gt;
    z-index: -1; /*must have*/&lt;br /&gt;
    filter: mask(); /*must have*/&lt;br /&gt;
    top: -4px; /*must have*/&lt;br /&gt;
    left: -4px; /*must have*/&lt;br /&gt;
    width: 200px; /*must have*/&lt;br /&gt;
    height: 200px; /*must have*/&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23804</id>
		<title>Show datepicker in text/text grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23804"/>
		<updated>2012-02-02T09:39:43Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Challenge */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to help the interviewer be faster in entering a meeting day&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to show a calendar inside a text/text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
[[Image:ShowDatetimePicker.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Use jquery&#039;s datepicker (read more at: http://docs.jquery.com/UI/Datepicker)&lt;br /&gt;
*Update the layout to include the stylesheet for the datepicker&lt;br /&gt;
*Remember to validate the text value when clicking Next (not to be written here)&lt;br /&gt;
==Code==&lt;br /&gt;
*Javascript&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function getQuestionTextBox(label, sqIndex)&lt;br /&gt;
{&lt;br /&gt;
   return $(&amp;quot;input[name=&#039;QUESTION.&amp;quot;+ label + &amp;quot;.&amp;quot; + sqIndex + &amp;quot;&#039;]&amp;quot;);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	var qTB = getQuestionTextBox(&amp;quot;Q2&amp;quot;, 0);		&lt;br /&gt;
	&lt;br /&gt;
   qTB.datepicker(&lt;br /&gt;
         {&lt;br /&gt;
            dateFormat: &#039;dd-mm-yy&#039;,						&lt;br /&gt;
            changeMonth: true,&lt;br /&gt;
            nextText: &#039;&amp;gt;&#039;,&lt;br /&gt;
            prevText: &#039;&amp;lt;&#039;,&lt;br /&gt;
            firstDay: 1&lt;br /&gt;
&lt;br /&gt;
         }&lt;br /&gt;
      );				&lt;br /&gt;
		&lt;br /&gt;
	$(&amp;quot;input:text&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*CSS&lt;br /&gt;
&amp;lt;source lang=css&amp;gt;&lt;br /&gt;
/* Datepicker----------------------------------*/&lt;br /&gt;
.ui-datepicker { width: 17em; padding: .2em .2em 0; background-color:#dfeaf1;font-family:Verdana}&lt;br /&gt;
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next &lt;br /&gt;
{ position:absolute; top: 2px; width: 1.8em; height: 1.8em; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev { left:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next { right:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next-hover { right:1px; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span &lt;br /&gt;
{ display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month, &lt;br /&gt;
.ui-datepicker select.ui-datepicker-year { width: 49%;}&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }&lt;br /&gt;
.ui-datepicker-year{color:white;font-weight:bold;}&lt;br /&gt;
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }&lt;br /&gt;
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; font-family:Verdana }&lt;br /&gt;
.ui-datepicker td { border: 0; padding: 1px; font-family:Verdana}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker td span, .ui-datepicker td a &lt;br /&gt;
{ display: block; padding: .2em; text-align: right; text-decoration: none; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-header&lt;br /&gt;
{position: relative;background-color:#345879;padding-top: 0.2em;padding-right: 0pt;padding-bottom: 0.2em;padding-left: 0pt;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-today a{ color:red; }&lt;br /&gt;
.ui-helper-clearfix{display: inline-block;}&lt;br /&gt;
.ui-helper-clearfix{display: block;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next&lt;br /&gt;
{position: absolute;top: 2px;width: 1.8em;height: 1.8em; cursor:pointer; color:white;font-weight:bold}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover&lt;br /&gt;
{top: 1px;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-cover {&lt;br /&gt;
    display: none; /*sorry for IE5*/&lt;br /&gt;
    display/**/: block; /*sorry for IE5*/&lt;br /&gt;
    position: absolute; /*must have*/&lt;br /&gt;
    z-index: -1; /*must have*/&lt;br /&gt;
    filter: mask(); /*must have*/&lt;br /&gt;
    top: -4px; /*must have*/&lt;br /&gt;
    left: -4px; /*must have*/&lt;br /&gt;
    width: 200px; /*must have*/&lt;br /&gt;
    height: 200px; /*must have*/&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23803</id>
		<title>Show datepicker in text/text grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23803"/>
		<updated>2012-02-02T09:39:22Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Challenge */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to help the interviewer be faster in entering a meeting day&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to show a calendar inside a text/text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:ShowDatetimePicker.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Solution==&lt;br /&gt;
*Use jquery&#039;s datepicker (read more at: http://docs.jquery.com/UI/Datepicker)&lt;br /&gt;
*Update the layout to include the stylesheet for the datepicker&lt;br /&gt;
*Remember to validate the text value when clicking Next (not to be written here)&lt;br /&gt;
==Code==&lt;br /&gt;
*Javascript&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function getQuestionTextBox(label, sqIndex)&lt;br /&gt;
{&lt;br /&gt;
   return $(&amp;quot;input[name=&#039;QUESTION.&amp;quot;+ label + &amp;quot;.&amp;quot; + sqIndex + &amp;quot;&#039;]&amp;quot;);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	var qTB = getQuestionTextBox(&amp;quot;Q2&amp;quot;, 0);		&lt;br /&gt;
	&lt;br /&gt;
   qTB.datepicker(&lt;br /&gt;
         {&lt;br /&gt;
            dateFormat: &#039;dd-mm-yy&#039;,						&lt;br /&gt;
            changeMonth: true,&lt;br /&gt;
            nextText: &#039;&amp;gt;&#039;,&lt;br /&gt;
            prevText: &#039;&amp;lt;&#039;,&lt;br /&gt;
            firstDay: 1&lt;br /&gt;
&lt;br /&gt;
         }&lt;br /&gt;
      );				&lt;br /&gt;
		&lt;br /&gt;
	$(&amp;quot;input:text&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*CSS&lt;br /&gt;
&amp;lt;source lang=css&amp;gt;&lt;br /&gt;
/* Datepicker----------------------------------*/&lt;br /&gt;
.ui-datepicker { width: 17em; padding: .2em .2em 0; background-color:#dfeaf1;font-family:Verdana}&lt;br /&gt;
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next &lt;br /&gt;
{ position:absolute; top: 2px; width: 1.8em; height: 1.8em; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev { left:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next { right:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next-hover { right:1px; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span &lt;br /&gt;
{ display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month, &lt;br /&gt;
.ui-datepicker select.ui-datepicker-year { width: 49%;}&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }&lt;br /&gt;
.ui-datepicker-year{color:white;font-weight:bold;}&lt;br /&gt;
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }&lt;br /&gt;
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; font-family:Verdana }&lt;br /&gt;
.ui-datepicker td { border: 0; padding: 1px; font-family:Verdana}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker td span, .ui-datepicker td a &lt;br /&gt;
{ display: block; padding: .2em; text-align: right; text-decoration: none; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-header&lt;br /&gt;
{position: relative;background-color:#345879;padding-top: 0.2em;padding-right: 0pt;padding-bottom: 0.2em;padding-left: 0pt;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-today a{ color:red; }&lt;br /&gt;
.ui-helper-clearfix{display: inline-block;}&lt;br /&gt;
.ui-helper-clearfix{display: block;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next&lt;br /&gt;
{position: absolute;top: 2px;width: 1.8em;height: 1.8em; cursor:pointer; color:white;font-weight:bold}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover&lt;br /&gt;
{top: 1px;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-cover {&lt;br /&gt;
    display: none; /*sorry for IE5*/&lt;br /&gt;
    display/**/: block; /*sorry for IE5*/&lt;br /&gt;
    position: absolute; /*must have*/&lt;br /&gt;
    z-index: -1; /*must have*/&lt;br /&gt;
    filter: mask(); /*must have*/&lt;br /&gt;
    top: -4px; /*must have*/&lt;br /&gt;
    left: -4px; /*must have*/&lt;br /&gt;
    width: 200px; /*must have*/&lt;br /&gt;
    height: 200px; /*must have*/&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:ShowDatetimePicker2.jpg&amp;diff=23802</id>
		<title>File:ShowDatetimePicker2.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:ShowDatetimePicker2.jpg&amp;diff=23802"/>
		<updated>2012-02-02T09:38:37Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:ShowDatetimePicker1.jpg&amp;diff=23801</id>
		<title>File:ShowDatetimePicker1.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:ShowDatetimePicker1.jpg&amp;diff=23801"/>
		<updated>2012-02-02T09:38:37Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:ShowDatetimePicker.jpg&amp;diff=23800</id>
		<title>File:ShowDatetimePicker.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:ShowDatetimePicker.jpg&amp;diff=23800"/>
		<updated>2012-02-02T09:38:36Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23781</id>
		<title>Show datepicker in text/text grid questions</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Show_datepicker_in_text/text_grid_questions&amp;diff=23781"/>
		<updated>2012-02-02T05:08:39Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Challenge==&lt;br /&gt;
In order to help the interviewer be faster in entering a meeting day&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to show a calendar inside a text/text grid question&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
[[Image:Datepicker_in_question.png]]&lt;br /&gt;
==Solution==&lt;br /&gt;
*Use jquery&#039;s datepicker (read more at: http://docs.jquery.com/UI/Datepicker)&lt;br /&gt;
*Update the layout to include the stylesheet for the datepicker&lt;br /&gt;
*Remember to validate the text value when clicking Next (not to be written here)&lt;br /&gt;
==Code==&lt;br /&gt;
*Javascript&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function getQuestionTextBox(label, sqIndex)&lt;br /&gt;
{&lt;br /&gt;
   return $(&amp;quot;input[name=&#039;QUESTION.&amp;quot;+ label + &amp;quot;.&amp;quot; + sqIndex + &amp;quot;&#039;]&amp;quot;);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	var qTB = getQuestionTextBox(&amp;quot;Q2&amp;quot;, 0);		&lt;br /&gt;
	&lt;br /&gt;
   qTB.datepicker(&lt;br /&gt;
         {&lt;br /&gt;
            dateFormat: &#039;dd-mm-yy&#039;,						&lt;br /&gt;
            changeMonth: true,&lt;br /&gt;
            nextText: &#039;&amp;gt;&#039;,&lt;br /&gt;
            prevText: &#039;&amp;lt;&#039;,&lt;br /&gt;
            firstDay: 1&lt;br /&gt;
&lt;br /&gt;
         }&lt;br /&gt;
      );				&lt;br /&gt;
		&lt;br /&gt;
	$(&amp;quot;input:text&amp;quot;).width(&amp;quot;200px&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*CSS&lt;br /&gt;
&amp;lt;source lang=css&amp;gt;&lt;br /&gt;
/* Datepicker----------------------------------*/&lt;br /&gt;
.ui-datepicker { width: 17em; padding: .2em .2em 0; background-color:#dfeaf1;font-family:Verdana}&lt;br /&gt;
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next &lt;br /&gt;
{ position:absolute; top: 2px; width: 1.8em; height: 1.8em; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev { left:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next { right:2px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-next-hover { right:1px; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span &lt;br /&gt;
{ display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}&lt;br /&gt;
.ui-datepicker select.ui-datepicker-month, &lt;br /&gt;
.ui-datepicker select.ui-datepicker-year { width: 49%;}&lt;br /&gt;
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }&lt;br /&gt;
.ui-datepicker-year{color:white;font-weight:bold;}&lt;br /&gt;
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }&lt;br /&gt;
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; font-family:Verdana }&lt;br /&gt;
.ui-datepicker td { border: 0; padding: 1px; font-family:Verdana}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker td span, .ui-datepicker td a &lt;br /&gt;
{ display: block; padding: .2em; text-align: right; text-decoration: none; }&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-header&lt;br /&gt;
{position: relative;background-color:#345879;padding-top: 0.2em;padding-right: 0pt;padding-bottom: 0.2em;padding-left: 0pt;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-today a{ color:red; }&lt;br /&gt;
.ui-helper-clearfix{display: inline-block;}&lt;br /&gt;
.ui-helper-clearfix{display: block;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next&lt;br /&gt;
{position: absolute;top: 2px;width: 1.8em;height: 1.8em; cursor:pointer; color:white;font-weight:bold}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover&lt;br /&gt;
{top: 1px;}&lt;br /&gt;
&lt;br /&gt;
.ui-datepicker-cover {&lt;br /&gt;
    display: none; /*sorry for IE5*/&lt;br /&gt;
    display/**/: block; /*sorry for IE5*/&lt;br /&gt;
    position: absolute; /*must have*/&lt;br /&gt;
    z-index: -1; /*must have*/&lt;br /&gt;
    filter: mask(); /*must have*/&lt;br /&gt;
    top: -4px; /*must have*/&lt;br /&gt;
    left: -4px; /*must have*/&lt;br /&gt;
    width: 200px; /*must have*/&lt;br /&gt;
    height: 200px; /*must have*/&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Hide_Next_button_in_n_seconds&amp;diff=23779</id>
		<title>Hide Next button in n seconds</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Hide_Next_button_in_n_seconds&amp;diff=23779"/>
		<updated>2012-02-02T04:58:46Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge  ==&lt;br /&gt;
&lt;br /&gt;
In order to not allow respondent click on the Next button in a period of time&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to hide the Next button in some seconds&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
[[Image:HideNextButton1.jpg]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:HideNextButton2.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Solution  ==&lt;br /&gt;
&lt;br /&gt;
*In questionnaire template editor, choose the question I want to hide the Next button and then go to the Properties - Edit question properties - Language dependent - Select javascript property&lt;br /&gt;
*Override quest.onInit function. &lt;br /&gt;
*In that function, check if the Next button exists. &lt;br /&gt;
*If it doesn&#039;t exist, do nothing, else disable the Next button, set the time out to number of seconds I want to hide the button, then show the button again.&lt;br /&gt;
&lt;br /&gt;
[[Image:HideNextButton Code.jpg]]&lt;br /&gt;
== Code  ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
quest.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
	var secsTimeout = 10;&lt;br /&gt;
	if ( !document.getElementsByName(&#039;next&#039;) || document.getElementsByName(&#039;next&#039;).length == 0 ) &lt;br /&gt;
		// next button not available&lt;br /&gt;
		return;&lt;br /&gt;
	document.getElementsByName(&#039;next&#039;)[0].style.display=&#039;none&#039;;&lt;br /&gt;
	setTimeout(&amp;quot;document.getElementsByName(&#039;next&#039;)[0].style.display=&#039;&#039;;&amp;quot;, secsTimeout*1000);&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:HideNextButton_Code.jpg&amp;diff=23778</id>
		<title>File:HideNextButton Code.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:HideNextButton_Code.jpg&amp;diff=23778"/>
		<updated>2012-02-02T04:55:44Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:HideNextButton2.jpg&amp;diff=23777</id>
		<title>File:HideNextButton2.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:HideNextButton2.jpg&amp;diff=23777"/>
		<updated>2012-02-02T04:55:44Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:HideNextButton1.jpg&amp;diff=23776</id>
		<title>File:HideNextButton1.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:HideNextButton1.jpg&amp;diff=23776"/>
		<updated>2012-02-02T04:55:43Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23769</id>
		<title>Mark answer option with keyboard</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23769"/>
		<updated>2012-02-02T03:53:28Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge == &lt;br /&gt;
In order to allow the respondent to be able to answer a question by hitting a button on his keyboard.&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to specify both which key on the keyboard that should be used, and which answer option that should be answered &lt;br /&gt;
&lt;br /&gt;
== Example == &lt;br /&gt;
[[Image:MakeAnswerOptionWithKeyboard.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
[[Image:MakeAnswerOptionWithKeyboard Code.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Code ==  &lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
//which key on the keyboard that should mark the answer option. The code 32 refers to the space key&lt;br /&gt;
var keyCodetoReactOn = 32;&lt;br /&gt;
&lt;br /&gt;
//enabels you to find out which numerical codes that belongs to which keys on the keyboard.&lt;br /&gt;
//Change false into true, and you will have a dialog that shows you the key code each time you hit a key. &lt;br /&gt;
//When you have found out which code that should mark the answer option, you change true back to false (mostly use for debugging)&lt;br /&gt;
var displayKeyCode = false;&lt;br /&gt;
&lt;br /&gt;
//information on which answer option that should be marked when the respondent uses his keyboard. &lt;br /&gt;
//The answer option list has an index starting with zero when you are referring to answer options with this script. &lt;br /&gt;
//The number 0 therefore refers to the answer option with the value 1. &lt;br /&gt;
//If you want to refer to an answer option with the value 99, you write 98 in the script.&lt;br /&gt;
var answerOptionIndexToCheck = 0;&lt;br /&gt;
&lt;br /&gt;
//the question label of the question where you run the script.&lt;br /&gt;
var qLabel = &amp;quot;Q_Single_MakeAOWithKeyboard&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//the text that should be on the Next button. &lt;br /&gt;
//Note that this text will be the same for all languages if your questionnaire is programmed in multiple languages.&lt;br /&gt;
var buttonText = &amp;quot;Recognize&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//It is advisable that you hide the Next button on questions where you use this script.&lt;br /&gt;
// Otherwise the respondent will have two buttons, which can be confusing&lt;br /&gt;
&lt;br /&gt;
function myHandler(e)&lt;br /&gt;
{&lt;br /&gt;
   if (displayKeyCode)&lt;br /&gt;
      alert(e.keyCode);&lt;br /&gt;
   if (e.keyCode == keyCodetoReactOn)&lt;br /&gt;
      recognize();&lt;br /&gt;
}&lt;br /&gt;
function recognize()&lt;br /&gt;
{&lt;br /&gt;
   quest.options[answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;QUESTION.&amp;quot; + qLabel][answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   moveForward();&lt;br /&gt;
}&lt;br /&gt;
function moveForward()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;dir&amp;quot;].value = &amp;quot;next&amp;quot;;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;].submit();&lt;br /&gt;
}&lt;br /&gt;
question.prototype.getNavigationPanel = function()&lt;br /&gt;
{&lt;br /&gt;
   var sres = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
   if (this.backvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;back\&amp;quot; value=\&amp;quot;&amp;quot; + this.backtext + &amp;quot;\&amp;quot; tabindex=1000 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.back();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.resetvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;reset\&amp;quot; value=\&amp;quot;&amp;quot; + this.resettext + &amp;quot;\&amp;quot; tabindex=1001 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.reset();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.closevisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;close\&amp;quot; value=\&amp;quot;&amp;quot; + this.closetext + &amp;quot;\&amp;quot; tabindex=1002 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.close();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;spaceHandler\&amp;quot; onclick=\&amp;quot;recognize();\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + buttonText + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.nextvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;submit\&amp;quot; name=\&amp;quot;next\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + this.nexttext + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   return sres;&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;spaceHandler&amp;quot;].focus();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23768</id>
		<title>Mark answer option with keyboard</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23768"/>
		<updated>2012-02-02T03:47:33Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Solution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge == &lt;br /&gt;
In order to allow the respondent to be able to answer a question by hitting a button on his keyboard.&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to specify both which key on the keyboard that should be used, and which answer option that should be answered &lt;br /&gt;
&lt;br /&gt;
== Example == &lt;br /&gt;
[[Image:MakeAnswerOptionWithKeyboard.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
[[Image:MakeAnswerOptionWithKeyboard Code.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Code ==  &lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
//which key on the keyboard that should mark the answer option. The code 32 refers to the space key&lt;br /&gt;
var keyCodetoReactOn = 32;&lt;br /&gt;
&lt;br /&gt;
//enabels you to find out which numerical codes that belongs to which keys on the keyboard.&lt;br /&gt;
//Change false into true, and you will have a dialog that shows you the key code each time you hit a key. &lt;br /&gt;
//When you have found out which code that should mark the answer option, you change true back to false (mostly use for debugging)&lt;br /&gt;
var displayKeyCode = false;&lt;br /&gt;
&lt;br /&gt;
//information on which answer option that should be marked when the respondent uses his keyboard. &lt;br /&gt;
//The answer option list has an index starting with zero when you are referring to answer options with this script. &lt;br /&gt;
//The number 0 therefore refers to the answer option with the value 1. &lt;br /&gt;
//If you want to refer to an answer option with the value 99, you write 98 in the script.&lt;br /&gt;
var answerOptionIndexToCheck = 0;&lt;br /&gt;
&lt;br /&gt;
//the question label of the question where you run the script.&lt;br /&gt;
var qLabel = &amp;quot;Q1&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//the text that should be on the Next button. &lt;br /&gt;
//Note that this text will be the same for all languages if your questionnaire is programmed in multiple languages.&lt;br /&gt;
var buttonText = &amp;quot;Recognize&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//It is advisable that you hide the Next button on questions where you use this script.&lt;br /&gt;
// Otherwise the respondent will have two buttons, which can be confusing&lt;br /&gt;
&lt;br /&gt;
function myHandler(e)&lt;br /&gt;
{&lt;br /&gt;
   if (displayKeyCode)&lt;br /&gt;
      alert(e.keyCode);&lt;br /&gt;
   if (e.keyCode == keyCodetoReactOn)&lt;br /&gt;
      recognize();&lt;br /&gt;
}&lt;br /&gt;
function recognize()&lt;br /&gt;
{&lt;br /&gt;
   quest.options[answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;QUESTION.&amp;quot; + qLabel][answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   moveForward();&lt;br /&gt;
}&lt;br /&gt;
function moveForward()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;dir&amp;quot;].value = &amp;quot;next&amp;quot;;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;].submit();&lt;br /&gt;
}&lt;br /&gt;
question.prototype.getNavigationPanel = function()&lt;br /&gt;
{&lt;br /&gt;
   var sres = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
   if (this.backvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;back\&amp;quot; value=\&amp;quot;&amp;quot; + this.backtext + &amp;quot;\&amp;quot; tabindex=1000 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.back();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.resetvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;reset\&amp;quot; value=\&amp;quot;&amp;quot; + this.resettext + &amp;quot;\&amp;quot; tabindex=1001 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.reset();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.closevisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;close\&amp;quot; value=\&amp;quot;&amp;quot; + this.closetext + &amp;quot;\&amp;quot; tabindex=1002 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.close();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;spaceHandler\&amp;quot; onclick=\&amp;quot;recognize();\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + buttonText + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.nextvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;submit\&amp;quot; name=\&amp;quot;next\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + this.nexttext + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   return sres;&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;spaceHandler&amp;quot;].focus();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23767</id>
		<title>Mark answer option with keyboard</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23767"/>
		<updated>2012-02-02T03:46:09Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Solution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge == &lt;br /&gt;
In order to allow the respondent to be able to answer a question by hitting a button on his keyboard.&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to specify both which key on the keyboard that should be used, and which answer option that should be answered &lt;br /&gt;
&lt;br /&gt;
== Example == &lt;br /&gt;
[[Image:MakeAnswerOptionWithKeyboard.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
[[IMG:MakeAnswerOptionWithKeyboard Code.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Code ==  &lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
//which key on the keyboard that should mark the answer option. The code 32 refers to the space key&lt;br /&gt;
var keyCodetoReactOn = 32;&lt;br /&gt;
&lt;br /&gt;
//enabels you to find out which numerical codes that belongs to which keys on the keyboard.&lt;br /&gt;
//Change false into true, and you will have a dialog that shows you the key code each time you hit a key. &lt;br /&gt;
//When you have found out which code that should mark the answer option, you change true back to false (mostly use for debugging)&lt;br /&gt;
var displayKeyCode = false;&lt;br /&gt;
&lt;br /&gt;
//information on which answer option that should be marked when the respondent uses his keyboard. &lt;br /&gt;
//The answer option list has an index starting with zero when you are referring to answer options with this script. &lt;br /&gt;
//The number 0 therefore refers to the answer option with the value 1. &lt;br /&gt;
//If you want to refer to an answer option with the value 99, you write 98 in the script.&lt;br /&gt;
var answerOptionIndexToCheck = 0;&lt;br /&gt;
&lt;br /&gt;
//the question label of the question where you run the script.&lt;br /&gt;
var qLabel = &amp;quot;Q1&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//the text that should be on the Next button. &lt;br /&gt;
//Note that this text will be the same for all languages if your questionnaire is programmed in multiple languages.&lt;br /&gt;
var buttonText = &amp;quot;Recognize&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//It is advisable that you hide the Next button on questions where you use this script.&lt;br /&gt;
// Otherwise the respondent will have two buttons, which can be confusing&lt;br /&gt;
&lt;br /&gt;
function myHandler(e)&lt;br /&gt;
{&lt;br /&gt;
   if (displayKeyCode)&lt;br /&gt;
      alert(e.keyCode);&lt;br /&gt;
   if (e.keyCode == keyCodetoReactOn)&lt;br /&gt;
      recognize();&lt;br /&gt;
}&lt;br /&gt;
function recognize()&lt;br /&gt;
{&lt;br /&gt;
   quest.options[answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;QUESTION.&amp;quot; + qLabel][answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   moveForward();&lt;br /&gt;
}&lt;br /&gt;
function moveForward()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;dir&amp;quot;].value = &amp;quot;next&amp;quot;;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;].submit();&lt;br /&gt;
}&lt;br /&gt;
question.prototype.getNavigationPanel = function()&lt;br /&gt;
{&lt;br /&gt;
   var sres = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
   if (this.backvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;back\&amp;quot; value=\&amp;quot;&amp;quot; + this.backtext + &amp;quot;\&amp;quot; tabindex=1000 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.back();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.resetvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;reset\&amp;quot; value=\&amp;quot;&amp;quot; + this.resettext + &amp;quot;\&amp;quot; tabindex=1001 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.reset();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.closevisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;close\&amp;quot; value=\&amp;quot;&amp;quot; + this.closetext + &amp;quot;\&amp;quot; tabindex=1002 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.close();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;spaceHandler\&amp;quot; onclick=\&amp;quot;recognize();\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + buttonText + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.nextvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;submit\&amp;quot; name=\&amp;quot;next\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + this.nexttext + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   return sres;&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;spaceHandler&amp;quot;].focus();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23766</id>
		<title>Mark answer option with keyboard</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23766"/>
		<updated>2012-02-02T03:45:31Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Example */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge == &lt;br /&gt;
In order to allow the respondent to be able to answer a question by hitting a button on his keyboard.&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to specify both which key on the keyboard that should be used, and which answer option that should be answered &lt;br /&gt;
&lt;br /&gt;
== Example == &lt;br /&gt;
[[Image:MakeAnswerOptionWithKeyboard.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
== Code ==  &lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
//which key on the keyboard that should mark the answer option. The code 32 refers to the space key&lt;br /&gt;
var keyCodetoReactOn = 32;&lt;br /&gt;
&lt;br /&gt;
//enabels you to find out which numerical codes that belongs to which keys on the keyboard.&lt;br /&gt;
//Change false into true, and you will have a dialog that shows you the key code each time you hit a key. &lt;br /&gt;
//When you have found out which code that should mark the answer option, you change true back to false (mostly use for debugging)&lt;br /&gt;
var displayKeyCode = false;&lt;br /&gt;
&lt;br /&gt;
//information on which answer option that should be marked when the respondent uses his keyboard. &lt;br /&gt;
//The answer option list has an index starting with zero when you are referring to answer options with this script. &lt;br /&gt;
//The number 0 therefore refers to the answer option with the value 1. &lt;br /&gt;
//If you want to refer to an answer option with the value 99, you write 98 in the script.&lt;br /&gt;
var answerOptionIndexToCheck = 0;&lt;br /&gt;
&lt;br /&gt;
//the question label of the question where you run the script.&lt;br /&gt;
var qLabel = &amp;quot;Q1&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//the text that should be on the Next button. &lt;br /&gt;
//Note that this text will be the same for all languages if your questionnaire is programmed in multiple languages.&lt;br /&gt;
var buttonText = &amp;quot;Recognize&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//It is advisable that you hide the Next button on questions where you use this script.&lt;br /&gt;
// Otherwise the respondent will have two buttons, which can be confusing&lt;br /&gt;
&lt;br /&gt;
function myHandler(e)&lt;br /&gt;
{&lt;br /&gt;
   if (displayKeyCode)&lt;br /&gt;
      alert(e.keyCode);&lt;br /&gt;
   if (e.keyCode == keyCodetoReactOn)&lt;br /&gt;
      recognize();&lt;br /&gt;
}&lt;br /&gt;
function recognize()&lt;br /&gt;
{&lt;br /&gt;
   quest.options[answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;QUESTION.&amp;quot; + qLabel][answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   moveForward();&lt;br /&gt;
}&lt;br /&gt;
function moveForward()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;dir&amp;quot;].value = &amp;quot;next&amp;quot;;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;].submit();&lt;br /&gt;
}&lt;br /&gt;
question.prototype.getNavigationPanel = function()&lt;br /&gt;
{&lt;br /&gt;
   var sres = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
   if (this.backvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;back\&amp;quot; value=\&amp;quot;&amp;quot; + this.backtext + &amp;quot;\&amp;quot; tabindex=1000 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.back();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.resetvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;reset\&amp;quot; value=\&amp;quot;&amp;quot; + this.resettext + &amp;quot;\&amp;quot; tabindex=1001 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.reset();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.closevisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;close\&amp;quot; value=\&amp;quot;&amp;quot; + this.closetext + &amp;quot;\&amp;quot; tabindex=1002 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.close();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;spaceHandler\&amp;quot; onclick=\&amp;quot;recognize();\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + buttonText + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.nextvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;submit\&amp;quot; name=\&amp;quot;next\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + this.nexttext + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   return sres;&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;spaceHandler&amp;quot;].focus();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:MakeAnswerOptionWithKeyboard_Code.jpg&amp;diff=23765</id>
		<title>File:MakeAnswerOptionWithKeyboard Code.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:MakeAnswerOptionWithKeyboard_Code.jpg&amp;diff=23765"/>
		<updated>2012-02-02T03:44:45Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:MakeAnswerOptionWithKeyboard.jpg&amp;diff=23764</id>
		<title>File:MakeAnswerOptionWithKeyboard.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:MakeAnswerOptionWithKeyboard.jpg&amp;diff=23764"/>
		<updated>2012-02-02T03:44:45Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23763</id>
		<title>Mark answer option with keyboard</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Mark_answer_option_with_keyboard&amp;diff=23763"/>
		<updated>2012-02-02T03:10:27Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge == &lt;br /&gt;
In order to allow the respondent to be able to answer a question by hitting a button on his keyboard.&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to specify both which key on the keyboard that should be used, and which answer option that should be answered &lt;br /&gt;
&lt;br /&gt;
== Example == &lt;br /&gt;
[[Image:MapKey_Before.JPG‎ ]]&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Single question to Questionnaire editor like below&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script &lt;br /&gt;
== Code ==  &lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
//which key on the keyboard that should mark the answer option. The code 32 refers to the space key&lt;br /&gt;
var keyCodetoReactOn = 32;&lt;br /&gt;
&lt;br /&gt;
//enabels you to find out which numerical codes that belongs to which keys on the keyboard.&lt;br /&gt;
//Change false into true, and you will have a dialog that shows you the key code each time you hit a key. &lt;br /&gt;
//When you have found out which code that should mark the answer option, you change true back to false (mostly use for debugging)&lt;br /&gt;
var displayKeyCode = false;&lt;br /&gt;
&lt;br /&gt;
//information on which answer option that should be marked when the respondent uses his keyboard. &lt;br /&gt;
//The answer option list has an index starting with zero when you are referring to answer options with this script. &lt;br /&gt;
//The number 0 therefore refers to the answer option with the value 1. &lt;br /&gt;
//If you want to refer to an answer option with the value 99, you write 98 in the script.&lt;br /&gt;
var answerOptionIndexToCheck = 0;&lt;br /&gt;
&lt;br /&gt;
//the question label of the question where you run the script.&lt;br /&gt;
var qLabel = &amp;quot;Q1&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//the text that should be on the Next button. &lt;br /&gt;
//Note that this text will be the same for all languages if your questionnaire is programmed in multiple languages.&lt;br /&gt;
var buttonText = &amp;quot;Recognize&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//It is advisable that you hide the Next button on questions where you use this script.&lt;br /&gt;
// Otherwise the respondent will have two buttons, which can be confusing&lt;br /&gt;
&lt;br /&gt;
function myHandler(e)&lt;br /&gt;
{&lt;br /&gt;
   if (displayKeyCode)&lt;br /&gt;
      alert(e.keyCode);&lt;br /&gt;
   if (e.keyCode == keyCodetoReactOn)&lt;br /&gt;
      recognize();&lt;br /&gt;
}&lt;br /&gt;
function recognize()&lt;br /&gt;
{&lt;br /&gt;
   quest.options[answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;QUESTION.&amp;quot; + qLabel][answerOptionIndexToCheck].checked = true;&lt;br /&gt;
   moveForward();&lt;br /&gt;
}&lt;br /&gt;
function moveForward()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;dir&amp;quot;].value = &amp;quot;next&amp;quot;;&lt;br /&gt;
   document[&amp;quot;query&amp;quot;].submit();&lt;br /&gt;
}&lt;br /&gt;
question.prototype.getNavigationPanel = function()&lt;br /&gt;
{&lt;br /&gt;
   var sres = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
   if (this.backvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;back\&amp;quot; value=\&amp;quot;&amp;quot; + this.backtext + &amp;quot;\&amp;quot; tabindex=1000 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.back();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.resetvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;reset\&amp;quot; value=\&amp;quot;&amp;quot; + this.resettext + &amp;quot;\&amp;quot; tabindex=1001 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.reset();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.closevisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;close\&amp;quot; value=\&amp;quot;&amp;quot; + this.closetext + &amp;quot;\&amp;quot; tabindex=1002 onclick=\&amp;quot;&amp;quot; + this.reference + &amp;quot;.close();\&amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
   sres += &amp;quot;&amp;lt;input type=\&amp;quot;button\&amp;quot; name=\&amp;quot;spaceHandler\&amp;quot; onclick=\&amp;quot;recognize();\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + buttonText + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   if (this.nextvisible) sres += &amp;quot;&amp;lt;input type=\&amp;quot;submit\&amp;quot; name=\&amp;quot;next\&amp;quot; onkeydown=\&amp;quot;return myHandler(event)\&amp;quot; value=\&amp;quot;&amp;quot; + this.nexttext + &amp;quot;\&amp;quot; tabindex=0&amp;gt;&amp;quot;;&lt;br /&gt;
   return sres;&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   document[&amp;quot;query&amp;quot;][&amp;quot;spaceHandler&amp;quot;].focus();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Next_button_count_down&amp;diff=23746</id>
		<title>Next button count down</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Next_button_count_down&amp;diff=23746"/>
		<updated>2012-02-01T03:07:32Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge == &lt;br /&gt;
In order to control when the next button should be available for the respondent&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to hide Next button in specify time&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*I have a Text question like below.&lt;br /&gt;
&lt;br /&gt;
[[Image:NextButtonAvailable_Before.JPG‎ ]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:NextButtonAvailable_After.JPG]]&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Text grid question to Questionnaire editor&lt;br /&gt;
*This script only works in combination with the question property count down. The number you define in count down, is the number of seconds the next button will be unavaliable for the respondent.&lt;br /&gt;
[[Image:CountDownNextButton.JPG]]&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script&lt;br /&gt;
[[Image:NextButtonCountDown.png]]&lt;br /&gt;
&lt;br /&gt;
== Code ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
function setVisibility(visible)&lt;br /&gt;
{&lt;br /&gt;
   if (!document.getElementsByName(&#039;next&#039;) || document.getElementsByName(&#039;next&#039;).length == 0)&lt;br /&gt;
      // next button not available&lt;br /&gt;
      return;&lt;br /&gt;
   if (visible)&lt;br /&gt;
      document.getElementsByName(&#039;next&#039;)[0].style.display = &#039;&#039;;&lt;br /&gt;
   else&lt;br /&gt;
      document.getElementsByName(&#039;next&#039;)[0].style.display = &#039;none&#039;;&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   // set invisible onload&lt;br /&gt;
   setVisibility(false);&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onCountdown = function()&lt;br /&gt;
{&lt;br /&gt;
   //this.next();&lt;br /&gt;
   if (this.countdown != null &amp;amp;&amp;amp; this.countdown &amp;gt; 0)&lt;br /&gt;
   {&lt;br /&gt;
      this.countdown--;&lt;br /&gt;
      this.countDownObj.value--;&lt;br /&gt;
      this.countDownObj.render();&lt;br /&gt;
      if (this.countdown == 0)&lt;br /&gt;
      {&lt;br /&gt;
         // Disable the timed trigger&lt;br /&gt;
         window.clearInterval(this.countdownHandle);&lt;br /&gt;
         setVisibility(true);&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Next_button_count_down&amp;diff=23745</id>
		<title>Next button count down</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Next_button_count_down&amp;diff=23745"/>
		<updated>2012-02-01T03:00:29Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Solution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Challenge == &lt;br /&gt;
In order to control when the next button should be available for the respondent&lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator&lt;br /&gt;
&lt;br /&gt;
I want to hide Next button in specify time&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*I have a Text question like below.&lt;br /&gt;
&lt;br /&gt;
[[Image:NextButtonAvailable_Before.JPG‎ ]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:NextButtonAvailable_After.JPG]]&lt;br /&gt;
&lt;br /&gt;
== Solution ==&lt;br /&gt;
*Add a Text grid question to Questionnaire editor&lt;br /&gt;
*This script only works in combination with the question property count down. The number you define in count down, is the number of seconds the next button will be unavaliable for the respondent.&lt;br /&gt;
[[Image:CountDownNextButton.JPG]]&lt;br /&gt;
*Go to menu Properties -&amp;gt; Question scripts -&amp;gt; Java script tab -&amp;gt; Input script&lt;br /&gt;
[[Image:NextButtonCountDown.png]]&lt;br /&gt;
&lt;br /&gt;
== Code ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
function setVisibility(visible)&lt;br /&gt;
{&lt;br /&gt;
   if (!document.getElementsByName(&#039;next&#039;) || document.getElementsByName(&#039;next&#039;).length == 0)&lt;br /&gt;
      // next button not available&lt;br /&gt;
      return;&lt;br /&gt;
   if (visible)&lt;br /&gt;
      document.getElementsByName(&#039;next&#039;)[0].style.display = &#039;&#039;;&lt;br /&gt;
   else&lt;br /&gt;
      document.getElementsByName(&#039;next&#039;)[0].style.display = &#039;none&#039;;&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onInit = function()&lt;br /&gt;
{&lt;br /&gt;
   // set invisible onload&lt;br /&gt;
   setVisibility(false);&lt;br /&gt;
}&lt;br /&gt;
question.prototype.onCountdown = function()&lt;br /&gt;
{&lt;br /&gt;
   //this.next();&lt;br /&gt;
   if (this.countdown != null &amp;amp;&amp;amp; this.countdown &amp;gt; 0)&lt;br /&gt;
   {&lt;br /&gt;
      this.countdown--;&lt;br /&gt;
      this.countDownObj.value--;&lt;br /&gt;
      this.countDownObj.render();&lt;br /&gt;
      if (this.countdown == 0)&lt;br /&gt;
      {&lt;br /&gt;
         // Disable the timed trigger&lt;br /&gt;
         window.clearInterval(this.countdownHandle);&lt;br /&gt;
         setVisibility(true);&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:NextButtonCountDown.png&amp;diff=23744</id>
		<title>File:NextButtonCountDown.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:NextButtonCountDown.png&amp;diff=23744"/>
		<updated>2012-02-01T02:59:52Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Maximum_text_length&amp;diff=23484</id>
		<title>Maximum text length</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Maximum_text_length&amp;diff=23484"/>
		<updated>2012-01-16T10:22:56Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Maximum text length  ==&lt;br /&gt;
&lt;br /&gt;
In order to limit number of characters that respondent input to text box. &lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator &lt;br /&gt;
&lt;br /&gt;
I want to set maximum length on text question. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
*I have a Text grid question like below.&lt;br /&gt;
&lt;br /&gt;
[[Image:MaximumTextLength1.jpg]] &lt;br /&gt;
&lt;br /&gt;
*I want to set maximum length on text question.&lt;br /&gt;
&lt;br /&gt;
[[Image:MaximumTextLength2.jpg]] &lt;br /&gt;
&lt;br /&gt;
=== Solution  ===&lt;br /&gt;
&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below &lt;br /&gt;
*Go to menu Properties -&amp;amp;gt; Question scripts -&amp;amp;gt; Java script tab -&amp;amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
[[Image:MaximumTextLength Code.jpg]] &lt;br /&gt;
&lt;br /&gt;
=== Code  ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
quest.maxlength = 10;&lt;br /&gt;
&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== Source  ===&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Maximum_text_length&amp;diff=23483</id>
		<title>Maximum text length</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Maximum_text_length&amp;diff=23483"/>
		<updated>2012-01-16T09:58:34Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Maximum text length  ==&lt;br /&gt;
&lt;br /&gt;
In order to limit number of characters that respondent input to text box. &lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator &lt;br /&gt;
&lt;br /&gt;
I want to set maximum length on text question. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
*I have a Text grid question like below.&lt;br /&gt;
&lt;br /&gt;
[[Image:MaximumTextLength1.jpg]]&lt;br /&gt;
&lt;br /&gt;
*I want to set maximum text length.&lt;br /&gt;
&lt;br /&gt;
[[Image:MaximumTextLength2.jpg]]&lt;br /&gt;
&lt;br /&gt;
=== Solution  ===&lt;br /&gt;
&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below &lt;br /&gt;
*Go to menu Properties -&amp;amp;gt; Question scripts -&amp;amp;gt; Java script tab -&amp;amp;gt; Input script&lt;br /&gt;
[[Image:MaximumTextLength Code.jpg]]&lt;br /&gt;
&lt;br /&gt;
=== Code  ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
quest.maxlength = 10;&lt;br /&gt;
&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== Source  ===&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:MaximumTextLength_Code.jpg&amp;diff=23482</id>
		<title>File:MaximumTextLength Code.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:MaximumTextLength_Code.jpg&amp;diff=23482"/>
		<updated>2012-01-16T09:57:29Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:MaximumTextLength2.jpg&amp;diff=23481</id>
		<title>File:MaximumTextLength2.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:MaximumTextLength2.jpg&amp;diff=23481"/>
		<updated>2012-01-16T09:57:29Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=File:MaximumTextLength1.jpg&amp;diff=23480</id>
		<title>File:MaximumTextLength1.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=File:MaximumTextLength1.jpg&amp;diff=23480"/>
		<updated>2012-01-16T09:57:29Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Change_text_box_size&amp;diff=23479</id>
		<title>Change text box size</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Change_text_box_size&amp;diff=23479"/>
		<updated>2012-01-16T09:39:20Z</updated>

		<summary type="html">&lt;p&gt;Cg van: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Change Text box size  ==&lt;br /&gt;
&lt;br /&gt;
In order to make text box wider. &lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator &lt;br /&gt;
&lt;br /&gt;
I want to change text box size &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
*I have a Text grid question like below.&lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeTextBoxSize1.jpg]] &lt;br /&gt;
&lt;br /&gt;
*I want to change text box size.&lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeTextBoxSize2.jpg]] &lt;br /&gt;
&lt;br /&gt;
=== Solution  ===&lt;br /&gt;
&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below &lt;br /&gt;
*Go to menu Properties -&amp;amp;gt; Question scripts -&amp;amp;gt; Java script tab -&amp;amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeTextBoxSize Code.jpg]] &lt;br /&gt;
&lt;br /&gt;
=== Code  ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
quest.size=50;&lt;br /&gt;
&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== Source  ===&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
	<entry>
		<id>https://wiki.catglobe.com/index.php?title=Change_text_box_size&amp;diff=23478</id>
		<title>Change text box size</title>
		<link rel="alternate" type="text/html" href="https://wiki.catglobe.com/index.php?title=Change_text_box_size&amp;diff=23478"/>
		<updated>2012-01-16T08:29:54Z</updated>

		<summary type="html">&lt;p&gt;Cg van: /* Change Text box size */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Change Text box size  ==&lt;br /&gt;
&lt;br /&gt;
You want to change the text box size in a Text question .The script is often used together with the Maximum text length script &lt;br /&gt;
&lt;br /&gt;
In order to make text box wider. &lt;br /&gt;
&lt;br /&gt;
As a questionnaire creator &lt;br /&gt;
&lt;br /&gt;
I want to change text box size &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
*I have a Text grid question like below.&lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeTextBoxSize1.jpg]] &lt;br /&gt;
&lt;br /&gt;
*I want to change text box size.&lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeTextBoxSize2.jpg]] &lt;br /&gt;
&lt;br /&gt;
=== Solution  ===&lt;br /&gt;
&lt;br /&gt;
*Add a Text grid question to Questionnaire editor like below &lt;br /&gt;
*Go to menu Properties -&amp;amp;gt; Question scripts -&amp;amp;gt; Java script tab -&amp;amp;gt; Input script&lt;br /&gt;
&lt;br /&gt;
[[Image:ChangeTextBoxSize Code.jpg]] &lt;br /&gt;
&lt;br /&gt;
=== Code  ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
quest.size=50;&lt;br /&gt;
&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== Source  ===&lt;br /&gt;
&lt;br /&gt;
Questionnaire Resource Id on cg site: 159730&lt;/div&gt;</summary>
		<author><name>Cg van</name></author>
	</entry>
</feed>