From 6cb66e4fc5eea1ddbbd0979d587be758a2504168 Mon Sep 17 00:00:00 2001 From: Roy Johnson Date: Mon, 25 Jul 2005 19:36:30 +0000 Subject: [PATCH] Added HTMLArea and textarea answer types to the Survey Asset --- lib/WebGUI/Asset/Wobject/Survey.pm | 30 +++++++++++++++++++++---- lib/WebGUI/i18n/English/Asset_Survey.pm | 12 ++++++++++ 2 files changed, 38 insertions(+), 4 deletions(-) diff --git a/lib/WebGUI/Asset/Wobject/Survey.pm b/lib/WebGUI/Asset/Wobject/Survey.pm index 638986352..16130e6c5 100644 --- a/lib/WebGUI/Asset/Wobject/Survey.pm +++ b/lib/WebGUI/Asset/Wobject/Survey.pm @@ -407,15 +407,25 @@ sub getQuestionVars { name=>'comment_'.$questionId }); $var{'question.comment.label'} = WebGUI::International::get(51,'Asset_Survey'); - if ($question->{answerFieldType} eq "text") { - my ($answer) = WebGUI::SQL->quickArray("select Survey_answerId from Survey_answer where Survey_questionId=".quote($question->{Survey_questionId})); - $var{'question.answer.field'} = WebGUI::Form::hidden({ + + my $answer; + ($answer) = WebGUI::SQL->quickArray("select Survey_answerId from Survey_answer where Survey_questionId=".quote($question->{Survey_questionId})); + $var{'question.answer.field'} = WebGUI::Form::hidden({ name=>'answerId_'.$questionId, value=>$answer }); + if ($question->{answerFieldType} eq "text") { $var{'question.answer.field'} .= WebGUI::Form::text({ name=>'textResponse_'.$questionId }); + } elsif ($question->{answerFieldType} eq "HTMLArea") { + $var{'question.answer.field'} .= WebGUI::Form::HTMLArea({ + name=>'textResponse_'.$questionId + }); + } elsif ($question->{answerFieldType} eq "textArea") { + $var{'question.answer.field'} .= WebGUI::Form::textarea({ + name=>'textResponse_'.$questionId + }); } else { my $answer = WebGUI::SQL->buildHashRef("select Survey_answerId,answer from Survey_answer where Survey_questionId=".quote($question->{Survey_questionId})." order by sequenceNumber"); if ($question->{randomizeAnswers}) { @@ -827,6 +837,8 @@ sub www_editQuestion { "addBooleanAnswer" => WebGUI::International::get(25,'Asset_Survey'), "addFrequencyAnswer" => WebGUI::International::get(26,'Asset_Survey'), "addOpinionAnswer" => WebGUI::International::get(27,'Asset_Survey'), + "addHTMLAreaAnswer" => WebGUI::International::get(100,'Asset_Survey'), + "addTextAreaAnswer" => WebGUI::International::get(101,'Asset_Survey'), #"addQuestion" => WebGUI::International::get(28,'Asset_Survey'), "backToPage" => WebGUI::International::get(745,'Asset_Survey') ); @@ -838,7 +850,11 @@ sub www_editQuestion { } $f->submit; my $output = $f->print; - if ($question->{Survey_questionId} ne "new" && $question->{answerFieldType} ne "text") { + if ($question->{Survey_questionId} ne "new" + && $question->{answerFieldType} ne "text" + && $question->{answerFieldType} ne "HTMLArea" + && $question->{answerFieldType} ne "textArea" + ) { $output .= ''.WebGUI::International::get(23,'Asset_Survey').'

'; $sth = WebGUI::SQL->read("select Survey_answerId,answer from Survey_answer @@ -893,6 +909,12 @@ sub www_editQuestionSave { $_[0]->addAnswer(42,$session{form}{qid}); $_[0]->addAnswer(43,$session{form}{qid}); $_[0]->addAnswer(39,$session{form}{qid}); + } elsif ($session{form}{proceed} eq "addHTMLAreaAnswer") { + $_[0]->setAnswerType("HTMLArea",$session{form}{qid}); + $_[0]->addAnswer(0,$session{form}{qid}); + } elsif ($session{form}{proceed} eq "addTextAreaAnswer") { + $_[0]->setAnswerType("textArea",$session{form}{qid}); + $_[0]->addAnswer(0,$session{form}{qid}); } elsif ($session{form}{proceed} eq "addQuestion") { $session{form}{qid} = "new"; return $_[0]->www_editQuestion(); diff --git a/lib/WebGUI/i18n/English/Asset_Survey.pm b/lib/WebGUI/i18n/English/Asset_Survey.pm index c3cc1e8fb..1e22843d3 100644 --- a/lib/WebGUI/i18n/English/Asset_Survey.pm +++ b/lib/WebGUI/i18n/English/Asset_Survey.pm @@ -1,11 +1,23 @@ package WebGUI::i18n::English::Asset_Survey; our $I18N = { + + '100' => { + message => q|Add a HTML Area Answer|, + lastUpdated => 1122296097 + }, + + '101' => { + message => q|Add a Text Area Answer|, + lastUpdated => 1122296097 + }, + '32' => { message => q|False|, lastUpdated => 1037498832 }, + '33' => { message => q|Strongly Agree|, lastUpdated => 1037498857