('number',models.CharField(help_text=b'eg. <tt>1</tt>, <tt>2a</tt>, <tt>2b</tt>, <tt>3c</tt><br /> Number is also used for ordering questions.',max_length=8)),
('sort_id',models.IntegerField(help_text=b'Questions within a questionset are sorted by sort order first, question number second',null=True,blank=True)),
('type',models.CharField(help_text="Determines the means of answering the question. An open question gives the user a single-line textfield, multiple-choice gives the user a number of choices he/she can choose from. If a question is multiple-choice, enter the choices this user can choose from below'.",max_length=32,verbose_name='Type of question',choices=[(b'open',b'Open Answer, single line [input]'),(b'open-textfield',b'Open Answer, multi-line [textarea]'),(b'choice-yesno',b'Yes/No Choice [radio]'),(b'choice-yesnocomment',b'Yes/No Choice with optional comment [radio, input]'),(b'choice-yesnodontknow',b"Yes/No/Don't know Choice [radio]"),(b'choice-yesno-optional',b'Optional Yes/No Choice [radio]'),(b'choice-yesnocomment-optional',b'Optional Yes/No Choice with optional comment [radio, input]'),(b'choice-yesnodontknow-optional',b"Optional Yes/No/Don't know Choice [radio]"),(b'comment',b'Comment Only'),(b'choice',b'Choice [radio]'),(b'choice-freeform',b'Choice with a freeform option [radio]'),(b'choice-optional',b'Optional choice [radio]'),(b'choice-freeform-optional',b'Optional choice with a freeform option [radio]'),(b'dropdown',b'Dropdown choice [select]'),(b'choice-multiple',b'Multiple-Choice, Multiple-Answers [checkbox]'),(b'choice-multiple-freeform',b'Multiple-Choice, Multiple-Answers, plus freeform [checkbox, input]'),(b'choice-multiple-values',b'Multiple-Choice, Multiple-Answers [checkboxes], plus value box [input] for each selected answer'),(b'range',b'Range of numbers [select]'),(b'number',b'Number [input]'),(b'timeperiod',b'Time Period [input, select]'),(b'custom',b'Custom field'),(b'sameas',b'Same as Another Question (put sameas=question.number in checks or sameasid=question.id)')])),
('extra_en',models.CharField(help_text='Extra information (use on question type)',max_length=512,null=True,verbose_name='Extra information',blank=True)),
('checks',models.CharField(help_text=b'Additional checks to be performed for this value (space separated) <br /><br />For text fields, <tt>required</tt> is a valid check.<br />For yes/no choice, <tt>required</tt>, <tt>required-yes</tt>, and <tt>required-no</tt> are valid.<br /><br />If this question is required only if another question\'s answer is something specific, use <tt>requiredif="QuestionNumber,Value"</tt> or <tt>requiredif="QuestionNumber,!Value"</tt> for anything but a specific value. You may also combine tests appearing in <tt>requiredif</tt> by joining them with the words <tt>and</tt> or <tt>or</tt>, eg. <tt>requiredif="Q1,A or Q2,B"</tt>',max_length=512,null=True,verbose_name='Additional checks',blank=True)),
('redirect_url',models.CharField(default=b'',help_text=b"URL to redirect to when Questionnaire is complete. Macros: $SUBJECTID, $RUNID, $LANG. Leave blank to render the 'complete.$LANG.html' template.",max_length=128,blank=True)),
('parse_html',models.BooleanField(default=False,verbose_name=b'Render html instead of name for questionnaire?')),
('admin_access_only',models.BooleanField(default=False,verbose_name=b'Only allow access to logged in users? (This allows entering paper questionnaires without allowing new external submissions)')),
('checks',models.CharField(help_text=b'Current options are \'femaleonly\' or \'maleonly\' and shownif="QuestionNumber,Answer" which takes the same format as <tt>requiredif</tt> for questions.',max_length=256,blank=True)),
('formtype',models.CharField(default=b'email',max_length=16,verbose_name='Form Type',choices=[(b'email','Subject receives emails'),(b'paperform','Subject is sent paper form')])),