preparing for merge

This commit is contained in:
Kaleb Murphy 2008-11-06 20:18:23 +00:00
parent edd6eb4c38
commit d8bc8f1520
5 changed files with 21 additions and 112 deletions

View file

@ -242,13 +242,9 @@ sub loadSurveyJSON{
$jsonHash = $self->session->db->quickScalar("select surveyJSON from Survey where assetId = ?",[$self->getId]) if(! defined $jsonHash); $jsonHash = $self->session->db->quickScalar("select surveyJSON from Survey where assetId = ?",[$self->getId]) if(! defined $jsonHash);
$self->session->errorHandler->error("LOADING JSON");
eval{ eval{
$self->{survey} = WebGUI::Asset::Wobject::Survey::SurveyJSON->new($jsonHash,$self->session->errorHandler); $self->{survey} = WebGUI::Asset::Wobject::Survey::SurveyJSON->new($jsonHash,$self->session->errorHandler);
}; };
$self->session->errorHandler->error("Loaded JSON".$@);
#$self->session->errorHandler->error("Loaded JSON\n\n".Dumper $self->survey->freeze);
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
@ -268,8 +264,6 @@ sub saveSurveyJSON{
my $data = $self->survey->freeze(); my $data = $self->survey->freeze();
$self->session->errorHandler->error("Saving THIS DATA");#\n\n".$data);
$self->session->db->write("update Survey set surveyJSON = ? where assetId = ?",[$data,$self->getId]); $self->session->db->write("update Survey set surveyJSON = ? where assetId = ?",[$data,$self->getId]);
} }
@ -295,7 +289,6 @@ sub www_editSurvey {
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_submitObjectEdit{ sub www_submitObjectEdit{
my $self = shift; my $self = shift;
$self->session->errorHandler->error("Submit Edit Object");
# my $ref = @{decode_json($self->session->form->process("data"))}; # my $ref = @{decode_json($self->session->form->process("data"))};
my $responses = $self->session->form->paramsHashRef(); my $responses = $self->session->form->paramsHashRef();
@ -304,15 +297,12 @@ $self->session->errorHandler->error("Submit Edit Object");
$self->loadSurveyJSON(); $self->loadSurveyJSON();
if($responses->{delete}){ if($responses->{delete}){
$self->session->errorHandler->error("Deleting ".join(',',@address));
return $self->deleteObject(\@address); return $self->deleteObject(\@address);
} }
elsif($responses->{copy}){ elsif($responses->{copy}){
$self->session->errorHandler->error("Copying ".join(',',@address));
return $self->copyObject(\@address); return $self->copyObject(\@address);
} }
$self->session->errorHandler->error("Updating ".join(',',@address));
#each object checks the ref and then either updates or passes it to the correct child. New objects will have an index of -1. #each object checks the ref and then either updates or passes it to the correct child. New objects will have an index of -1.
my $message = $self->survey->update(\@address,$responses); my $message = $self->survey->update(\@address,$responses);
@ -350,7 +340,6 @@ sub deleteObject{
}else{ }else{
pop(@{$address});# unless @$address == 1 and $$address[0] == 0; pop(@{$address});# unless @$address == 1 and $$address[0] == 0;
} }
$self->session->errorHandler->error("returning ".join(',',@$address));
return $self->www_loadSurvey({address => $address, message=>$message}); return $self->www_loadSurvey({address => $address, message=>$message});
} }
@ -361,18 +350,15 @@ sub www_newObject{
my $self = shift; my $self = shift;
my $ref; my $ref;
$self->session->errorHandler->error("Entering newObject");
my $ids = $self->session->form->process("data"); my $ids = $self->session->form->process("data");
my @inAddress = split/-/,$ids; my @inAddress = split/-/,$ids;
$self->session->errorHandler->error("Address is:".join(',', @inAddress));
$self->loadSurveyJSON(); $self->loadSurveyJSON();
#Don't save after this as the new object should not stay in the survey #Don't save after this as the new object should not stay in the survey
my $address = $self->survey->newObject(\@inAddress); my $address = $self->survey->newObject(\@inAddress);
$self->session->errorHandler->error("New objects address is:".join(',', @$address));
#The new temp object has an address of NEW, which means it is not a real final address. #The new temp object has an address of NEW, which means it is not a real final address.
@ -386,7 +372,6 @@ sub www_dragDrop{
my $self = shift; my $self = shift;
my $p = decode_json($self->session->form->process("data")); my $p = decode_json($self->session->form->process("data"));
$self->session->errorHandler->error("In Drag Drop ".Dumper $p);
my @tid = split/-/,$p->{target}->{id}; my @tid = split/-/,$p->{target}->{id};
my @bid = split/-/,$p->{before}->{id}; my @bid = split/-/,$p->{before}->{id};
@ -430,7 +415,6 @@ $self->session->errorHandler->error("In Drag Drop ".Dumper $p);
} }
$self->saveSurveyJSON(); $self->saveSurveyJSON();
$self->session->errorHandler->error("Finsihed Drag Drop ".Dumper $self->survey->freeze());
return $self->www_loadSurvey({address => $address}); return $self->www_loadSurvey({address => $address});
} }
@ -440,7 +424,6 @@ $self->session->errorHandler->error("Finsihed Drag Drop ".Dumper $self->survey->
sub www_loadSurvey{ sub www_loadSurvey{
my ($self,$options) = @_; my ($self,$options) = @_;
$self->session->errorHandler->error("Entering loadSurvey");
$self->loadSurveyJSON(); $self->loadSurveyJSON();
my $address = defined $options->{address} ? $options->{address} : undef; my $address = defined $options->{address} ? $options->{address} : undef;
@ -452,13 +435,9 @@ $self->session->errorHandler->error("Entering loadSurvey");
} }
} }
my $message = defined $options->{message} ? $options->{message} : ''; my $message = defined $options->{message} ? $options->{message} : '';
#$self->session->errorHandler->error("Getting edit vars:".join(',',@$address));
my $var = defined $options->{var} ? $options->{var} : $self->survey->getEditVars($address); my $var = defined $options->{var} ? $options->{var} : $self->survey->getEditVars($address);
#$self->session->errorHandler->error("Got edit vars".Dumper $self->survey->freeze);
#$self->session->errorHandler->error("Loaded beginning params ".join(',',@$address));
my $editHtml; my $editHtml;
#$self->session->errorHandler->error("The edit vars:".Dumper $var);
if($var->{type} eq 'section'){ if($var->{type} eq 'section'){
$editHtml = $self->processTemplate($var,$self->get("sectionEditTemplateId")); $editHtml = $self->processTemplate($var,$self->get("sectionEditTemplateId"));
}elsif($var->{type} eq 'question'){ }elsif($var->{type} eq 'question'){
@ -466,7 +445,6 @@ $self->session->errorHandler->error("Entering loadSurvey");
}elsif($var->{type} eq 'answer'){ }elsif($var->{type} eq 'answer'){
$editHtml = $self->processTemplate($var,$self->get("answerEditTemplateId")); $editHtml = $self->processTemplate($var,$self->get("answerEditTemplateId"));
} }
#$self->session->errorHandler->error("The HTML :$editHtml");
my %buttons; my %buttons;
$buttons{question} = $$address[0]; $buttons{question} = $$address[0];
@ -475,7 +453,6 @@ $self->session->errorHandler->error("Entering loadSurvey");
} }
my $data = $self->survey->getDragDropList($address); my $data = $self->survey->getDragDropList($address);
#$self->session->errorHandler->error("The DD data :".Dumper $data);
my $html; my $html;
my ($scount,$qcount,$acount) = (-1,-1,-1); my ($scount,$qcount,$acount) = (-1,-1,-1);
my $lastType; my $lastType;
@ -512,7 +489,6 @@ $self->session->errorHandler->error("Entering loadSurvey");
$lastType = 'answer'; $lastType = 'answer';
} }
} }
#$self->session->errorHandler->error($html);
#address is the address of the focused object #address is the address of the focused object
#buttons are the data to create the Add buttons #buttons are the data to create the Add buttons
@ -521,13 +497,6 @@ $self->session->errorHandler->error("Entering loadSurvey");
#ids is a list of all ids passed in which are draggable (for adding events) #ids is a list of all ids passed in which are draggable (for adding events)
#type is the object type #type is the object type
my $return = {"address",$address,"buttons",\%buttons,"edithtml",$editHtml,"ddhtml",$html,"ids",\@ids,"type",$var->{type}}; my $return = {"address",$address,"buttons",\%buttons,"edithtml",$editHtml,"ddhtml",$html,"ids",\@ids,"type",$var->{type}};
#$self->session->errorHandler->error(Dumper $return);
eval{
# $self->session->errorHandler->error(encode_json($return));
};
#$self->session->errorHandler->error($@);
$self->session->errorHandler->error("Returning from loadSurvey");
$self->session->http->setMimeType('application/json'); $self->session->http->setMimeType('application/json');
return encode_json($return); return encode_json($return);
} }
@ -632,12 +601,10 @@ sub www_takeSurvey{
eval{ eval{
my $responseId = $self->getResponseId(); my $responseId = $self->getResponseId();
if(!$responseId){ if(!$responseId){
$self->session->errorHandler->error("\n\nIn takeSurvey with no reponseId $responseId");
return $self->surveyEnd(); return $self->surveyEnd();
} }
}; };
$self->session->errorHandler->error($@) if defined $@;
return $out; return $out;
} }
@ -658,10 +625,8 @@ sub www_submitQuestions{
my $responseId = $self->getResponseId(); my $responseId = $self->getResponseId();
if(!$responseId){return $self->surveyEnd();} if(!$responseId){return $self->surveyEnd();}
$self->session->errorHandler->error("\n\nIn submitQuestions with reponseId $responseId");
my $responses = $self->session->form->paramsHashRef(); my $responses = $self->session->form->paramsHashRef();
$self->session->errorHandler->error(Dumper $responses);
delete $$responses{'func'}; delete $$responses{'func'};
my @goodResponses = keys %$responses;#load everything. my @goodResponses = keys %$responses;#load everything.
@ -720,13 +685,11 @@ $self->session->errorHandler->error(Dumper $responses);
sub www_loadQuestions{ sub www_loadQuestions{
my $self=shift; my $self=shift;
$self->session->errorHandler->error("\n\n\n\n\t\t\t\t\t\t\t\t\t---In loadQuestions");
if(!$self->canTakeSurvey()){ if(!$self->canTakeSurvey()){
return $self->surveyEnd(); return $self->surveyEnd();
} }
$self->session->errorHandler->error("Can take survey");
my $responseId = $self->getResponseId();#also loads the survey and response my $responseId = $self->getResponseId();#also loads the survey and response
if(!$responseId){ if(!$responseId){
@ -739,18 +702,14 @@ $self->session->errorHandler->error("Can take survey");
eval{ eval{
$questions = $self->response->nextQuestions(); $questions = $self->response->nextQuestions();
}; };
$self->session->errorHandler->error($@) if($@);
$self->session->errorHandler->error("Load Questions had ".@$questions." questions") if(ref $questions eq 'ARRAY');
my $section = $self->response->nextSection(); my $section = $self->response->nextSection();
#$self->session->errorHandler->error(Dumper $section);
#return $self->prepareShowSurveyTemplate($section,$questions); #return $self->prepareShowSurveyTemplate($section,$questions);
$section->{id} = $self->response->nextSectionId(); $section->{id} = $self->response->nextSectionId();
my $text = $self->prepareShowSurveyTemplate($section,$questions); my $text = $self->prepareShowSurveyTemplate($section,$questions);
$self->session->errorHandler->error("Load Questions returning");
return $text; return $text;
} }
@ -759,7 +718,6 @@ $self->session->errorHandler->error("Load Questions returning");
sub surveyEnd{ sub surveyEnd{
my $self = shift; my $self = shift;
my $url = shift; my $url = shift;
$self->session->errorHandler->error("-------SurveyEnd $url");
my $responseId = $self->getResponseId();#also loads the survey and response my $responseId = $self->getResponseId();#also loads the survey and response
# $self->session->db->write("update Survey_response set endDate = ? and isComplete = 1 where Survey_responseId = ?",[WebGUI::DateTime->now->toDatabase,$responseId]); # $self->session->db->write("update Survey_response set endDate = ? and isComplete = 1 where Survey_responseId = ?",[WebGUI::DateTime->now->toDatabase,$responseId]);
$self->session->db->setRow("Survey_response","Survey_responseId",{ $self->session->db->setRow("Survey_response","Survey_responseId",{
@ -775,7 +733,6 @@ $self->session->errorHandler->error("-------SurveyEnd $url");
$url = "/"; $url = "/";
} }
} }
$self->session->errorHandler->error("-------SurveyEnd $url");
$self->session->http->setMimeType('application/json'); $self->session->http->setMimeType('application/json');
return encode_json({"type","forward","url",$url}); return encode_json({"type","forward","url",$url});
} }
@ -795,9 +752,7 @@ sub prepareShowSurveyTemplate{
my %fileUpload = ('File Upload',1); my %fileUpload = ('File Upload',1);
my %hidden = ('Hidden',1); my %hidden = ('Hidden',1);
$self->session->errorHandler->error("Preparing to insert question for $#$questions questions");
foreach my $q(@$questions){ foreach my $q(@$questions){
$self->session->errorHandler->error("Question Text is: ".$q->{text});
if($fileUpload{$$q{'questionType'}}){ $q->{'fileLoader'} = 1; } if($fileUpload{$$q{'questionType'}}){ $q->{'fileLoader'} = 1; }
elsif($text{$$q{'questionType'}}){ $q->{'textType'} = 1; } elsif($text{$$q{'questionType'}}){ $q->{'textType'} = 1; }
elsif($hidden{$$q{'questionType'}}){ $q->{'hidden'} = 1; } elsif($hidden{$$q{'questionType'}}){ $q->{'hidden'} = 1; }
@ -823,7 +778,6 @@ $self->session->errorHandler->error("Question Text is: ".$q->{text});
} }
$section->{'questions'} = $questions; $section->{'questions'} = $questions;
#$self->session->errorHandler->error(Dumper $section);
my $out = $self->processTemplate($section,$self->get("surveyQuestionsId")); my $out = $self->processTemplate($section,$self->get("surveyQuestionsId"));
$self->session->http->setMimeType('application/json'); $self->session->http->setMimeType('application/json');
@ -849,18 +803,14 @@ sub loadBothJSON{
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub loadResponseJSON{ sub loadResponseJSON{
my $self = shift; my $self = shift;
$self->log("1");
my $jsonHash = shift; my $jsonHash = shift;
my $rId = shift; my $rId = shift;
$rId = defined $rId ? $rId : $self->{responseId}; $rId = defined $rId ? $rId : $self->{responseId};
if(defined $self->response and ! defined $rId){return;} if(defined $self->response and ! defined $rId){return;}
$self->log("loading $rId");
$jsonHash = $self->session->db->quickScalar("select responseJSON from Survey_response where assetId = ? and Survey_responseId = ?", $jsonHash = $self->session->db->quickScalar("select responseJSON from Survey_response where assetId = ? and Survey_responseId = ?",
[$self->getId,$rId]) if(! defined $jsonHash); [$self->getId,$rId]) if(! defined $jsonHash);
$self->log("jsonhash was ".(length $jsonHash));
$self->{response} = WebGUI::Asset::Wobject::Survey::ResponseJSON->new($jsonHash,$self->session->errorHandler, $self->survey);
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
@ -869,7 +819,6 @@ sub saveResponseJSON{
my $data = $self->response->freeze(); my $data = $self->response->freeze();
$self->session->errorHandler->error("Saving RESPONSE to ".$self->{responseId}." for $data");
$self->session->db->write("update Survey_response set responseJSON = ? where Survey_responseId = ?",[$data,$self->{responseId}]); $self->session->db->write("update Survey_response set responseJSON = ? where Survey_responseId = ?",[$data,$self->{responseId}]);
} }
@ -939,18 +888,15 @@ sub getResponseId{
assetId=>$self->getId(), assetId=>$self->getId(),
anonId=>$anonId anonId=>$anonId
}); });
$self->session->errorHandler->error("Creating a new response and survey order");
$self->loadBothJSON($responseId); $self->loadBothJSON($responseId);
$self->response->createSurveyOrder(); $self->response->createSurveyOrder();
$self->{responseId} = $responseId; $self->{responseId} = $responseId;
$self->saveResponseJSON(); $self->saveResponseJSON();
}else{ }else{
$self->session->errorHandler->error("No responses left max=$allowedTakes used up=$haveTaken");
} }
} }
$self->{responseId} = $responseId; $self->{responseId} = $responseId;
$self->loadBothJSON($responseId); $self->loadBothJSON($responseId);
$self->session->errorHandler->error("Survey Response was ".$responseId);
return $responseId; return $responseId;
} }
@ -962,7 +908,6 @@ sub canTakeSurvey{
return $self->{canTake} if(defined $self->{canTake}); return $self->{canTake} if(defined $self->{canTake});
$self->session->errorHandler->error("Can take was NOT already defined");
if(!$self->session->user->isInGroup($self->get("groupToTakeSurvey"))){ if(!$self->session->user->isInGroup($self->get("groupToTakeSurvey"))){
return 0; return 0;
@ -982,15 +927,12 @@ $self->session->errorHandler->error("Can take was NOT already defined");
$takenCount = $self->session->db->quickScalar("select count(*) from Survey_response where userId = ? and assetId = ? and isComplete = ?",[$id,$self->getId(),1]); $takenCount = $self->session->db->quickScalar("select count(*) from Survey_response where userId = ? and assetId = ? and isComplete = ?",[$id,$self->getId(),1]);
} }
$self->session->errorHandler->error("userid is ".$id."\t and ip is ".$ip);
$self->session->errorHandler->error("max ".$maxTakes." taken ".$takenCount);
if($takenCount >= $maxTakes){ if($takenCount >= $maxTakes){
$self->{canTake} = 0; $self->{canTake} = 0;
}else{ }else{
$self->{canTake} = 1; $self->{canTake} = 1;
} }
$self->session->errorHandler->error("Can take survey returning ".$self->{canTake});
return $self->{canTake}; return $self->{canTake};
} }

View file

@ -1,20 +0,0 @@
CREATE TABLE `Survey` (
`groupToTakeSurvey` varchar(22) character set utf8 collate utf8_bin NOT NULL default '2',
`groupToViewReports` varchar(22) character set utf8 collate utf8_bin NOT NULL default '3',
`responseTemplateId` varchar(22) character set utf8 collate utf8_bin NOT NULL default '',
`overviewTemplateId` varchar(22) character set utf8 collate utf8_bin NOT NULL default '',
`maxResponsesPerUser` int(11) NOT NULL default '1',
`gradebookTemplateId` varchar(22) character set utf8 collate utf8_bin NOT NULL default '',
`assetId` varchar(22) character set utf8 collate utf8_bin NOT NULL default '',
`templateId` varchar(22) character set utf8 collate utf8_bin NOT NULL default '',
`revisionDate` bigint(20) NOT NULL default '0',
`surveyEditTemplateId` varchar(22) NOT NULL,
`answerEditTemplateId` varchar(22) NOT NULL,
`questionEditTemplateId` varchar(22) NOT NULL,
`sectionEditTemplateId` varchar(22) NOT NULL,
`surveyTakeTemplateId` varchar(22) NOT NULL,
`surveyQuestionsId` varchar(22) NOT NULL,
`exitURL` varchar(512) default NULL,
`surveyJSON` longblob,
PRIMARY KEY (`assetId`,`revisionDate`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8

View file

@ -49,18 +49,18 @@ sub getDragDropList{
my $self = shift; my $self = shift;
my $address = shift; my $address = shift;
my @data; my @data;
#$self->log("dd'ing sections".$#{$self->sections}); ##$self->log("dd'ing sections".$#{$self->sections});
eval{ eval{
for(my $i = 0; $i <= $#{$self->sections}; $i++){ for(my $i = 0; $i <= $#{$self->sections}; $i++){
push(@data,{text=>$self->section([$i])->{title}, type=>'section'}); push(@data,{text=>$self->section([$i])->{title}, type=>'section'});
if($address->[0] == $i){ if($address->[0] == $i){
for(my $x = 0; $x <= $#{$self->questions($address)}; $x++){ for(my $x = 0; $x <= $#{$self->questions($address)}; $x++){
##$self->log("dd'ing questions".$#{$self->questions}); ###$self->log("dd'ing questions".$#{$self->questions});
push(@data,{text=>$self->question([$i,$x])->{text}, type=>'question'}); push(@data,{text=>$self->question([$i,$x])->{text}, type=>'question'});
if($address->[1] == $x){ if($address->[1] == $x){
for(my $y = 0; $y <= $#{$self->answers($address)}; $y++){ for(my $y = 0; $y <= $#{$self->answers($address)}; $y++){
##$self->log("dd'ing answers".$#{$self->answers}); ###$self->log("dd'ing answers".$#{$self->answers});
push(@data,{text=>$self->answer([$i,$x,$y])->{text}, type=>'answer'}); push(@data,{text=>$self->answer([$i,$x,$y])->{text}, type=>'answer'});
} }
} }
@ -68,8 +68,8 @@ eval{
} }
} }
}; };
#$self->log($@); ##$self->log($@);
##$self->log('finished dding'); ###$self->log('finished dding');
return \@data; return \@data;
} }
@ -150,14 +150,14 @@ sub update{
my $object; my $object;
my $newQuestion = 0; my $newQuestion = 0;
if(@$address == 1){ if(@$address == 1){
#$self->log("A section"); ##$self->log("A section");
$object = $self->section($address); $object = $self->section($address);
if(! defined $object){ if(! defined $object){
$object = $self->newSection(); $object = $self->newSection();
push(@{$self->sections},$object); push(@{$self->sections},$object);
} }
}elsif(@$address == 2){ }elsif(@$address == 2){
#$self->log("A question"); ##$self->log("A question");
$object = $self->question($address); $object = $self->question($address);
if(! defined $object){ if(! defined $object){
my $newQuestion = 1; my $newQuestion = 1;
@ -165,7 +165,7 @@ sub update{
push(@{$self->questions($address)},$object); push(@{$self->questions($address)},$object);
} }
}elsif(@$address == 3){ }elsif(@$address == 3){
#$self->log("A answer"); ##$self->log("A answer");
$object = $self->answer($address); $object = $self->answer($address);
if(! defined $object){ if(! defined $object){
$object = $self->newAnswer(); $object = $self->newAnswer();
@ -178,7 +178,7 @@ sub update{
} }
} }
for my $key(keys %$object){ for my $key(keys %$object){
#$self->log("$key $$object{$key}"); ##$self->log("$key $$object{$key}");
$object->{$key} = $ref->{$key} if(defined $$ref{$key}); $object->{$key} = $ref->{$key} if(defined $$ref{$key});
} }
} }
@ -188,7 +188,7 @@ sub update{
# ref should contain all the information for the new # ref should contain all the information for the new
sub insertObject{ sub insertObject{
my ($self,$object,$address) = @_; my ($self,$object,$address) = @_;
#$self->log("Inserting ".join(',',@$address)); ##$self->log("Inserting ".join(',',@$address));
if(@$address == 1){ if(@$address == 1){
splice(@{$self->sections($address)},$$address[0] + 1, 0, $object); splice(@{$self->sections($address)},$$address[0] + 1, 0, $object);
}elsif(@$address == 2){ }elsif(@$address == 2){
@ -196,7 +196,7 @@ sub insertObject{
}elsif(@$address == 3){ }elsif(@$address == 3){
splice(@{$self->answers($address)},$$address[2] + 1, 0, $object); splice(@{$self->answers($address)},$$address[2] + 1, 0, $object);
} }
#$self->log("Finished inserting "); ##$self->log("Finished inserting ");
} }
@ -206,13 +206,13 @@ sub copy{
my %newSection = %{$self->section($address)}; my %newSection = %{$self->section($address)};
push(@{$self->sections}, \%newSection); push(@{$self->sections}, \%newSection);
return [$#{$self->sections}]; return [$#{$self->sections}];
#$self->log("copying here $$address[0] :".$#{$self->sections}); ##$self->log("copying here $$address[0] :".$#{$self->sections});
}elsif(@$address == 2){ }elsif(@$address == 2){
#$self->log("copying question $$address[0] $$address[1]"); ##$self->log("copying question $$address[0] $$address[1]");
my %newQuestion = %{$self->question($address)}; my %newQuestion = %{$self->question($address)};
push( @{$self->questions($address)}, \%newQuestion); push( @{$self->questions($address)}, \%newQuestion);
$$address[1] = $#{$self->questions($address)}; $$address[1] = $#{$self->questions($address)};
#$self->log("to $$address[0] $$address[1]"); ##$self->log("to $$address[0] $$address[1]");
return $address; return $address;
} }
} }
@ -221,14 +221,14 @@ sub copy{
sub remove{ sub remove{
my ($self,$address,$movingOverride) = @_; my ($self,$address,$movingOverride) = @_;
if(@$address == 1){ if(@$address == 1){
#$self->log("removing here $$address[0] :".$#{$self->sections}) if($$address[0] != 0 or defined $movingOverride);; ##$self->log("removing here $$address[0] :".$#{$self->sections}) if($$address[0] != 0 or defined $movingOverride);;
splice(@{$self->{sections}},$$address[0],1) if($$address[0] != 0 or defined $movingOverride);#can't delete the first section splice(@{$self->{sections}},$$address[0],1) if($$address[0] != 0 or defined $movingOverride);#can't delete the first section
#$self->log("removing here $$address[0] :".$#{$self->sections}); ##$self->log("removing here $$address[0] :".$#{$self->sections});
}elsif(@$address == 2){ }elsif(@$address == 2){
#$self->log("removing here $$address[0] $$address[1]"); ##$self->log("removing here $$address[0] $$address[1]");
splice(@{$self->questions($address)},$$address[1],1); splice(@{$self->questions($address)},$$address[1],1);
}elsif(@$address == 3){ }elsif(@$address == 3){
#$self->log("removing here $$address[0] $$address[1] $$address[2]"); ##$self->log("removing here $$address[0] $$address[1] $$address[2]");
splice(@{$self->answers($address)},$$address[2],1); splice(@{$self->answers($address)},$$address[2],1);
} }
} }
@ -299,7 +299,7 @@ sub updateQuestionAnswers{
my $address = shift; my $address = shift;
my $type = shift; my $type = shift;
#$self->log("In updateQuestion"); ##$self->log("In updateQuestion");
my @addy = @{$address}; my @addy = @{$address};
my $question = $self->question($address); my $question = $self->question($address);
@ -391,11 +391,11 @@ sub addAnswersToQuestion{
my $addy = shift; my $addy = shift;
my $ans = shift; my $ans = shift;
my $verbs = shift; my $verbs = shift;
#$self->log(Dumper $verbs); ##$self->log(Dumper $verbs);
for(0 .. $#$ans){ for(0 .. $#$ans){
push(@{$self->question($addy)->{answers}},$self->newAnswer()); push(@{$self->question($addy)->{answers}},$self->newAnswer());
$$addy[2] = $_; $$addy[2] = $_;
#$self->log("$_:".defined $$verbs{$_}." ".$$verbs{$_}); ##$self->log("$_:".defined $$verbs{$_}." ".$$verbs{$_});
if(defined $$verbs{$_} and $_ == $$verbs{$_}){ if(defined $$verbs{$_} and $_ == $$verbs{$_}){
$self->update($addy,{'text',$$ans[$_],'recordedAnswer',$_+1,'verbatim',1}); $self->update($addy,{'text',$$ans[$_],'recordedAnswer',$_+1,'verbatim',1});
}else{ }else{

View file

@ -1,13 +0,0 @@
CREATE TABLE `Survey_response` (
`assetId` varchar(22) character set utf8 collate utf8_bin NOT NULL,
`Survey_responseId` varchar(22) character set utf8 collate utf8_bin NOT NULL default '',
`userId` varchar(22) default NULL,
`username` varchar(255) default NULL,
`ipAddress` varchar(15) default NULL,
`startDate` bigint(20) NOT NULL default '0',
`endDate` bigint(20) NOT NULL default '0',
`isComplete` int(11) NOT NULL default '0',
`anonId` varchar(255) default NULL,
`responseJSON` longblob,
PRIMARY KEY (`Survey_responseId`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8