You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jo...@apache.org on 2009/02/04 00:43:00 UTC
svn commit: r740515 -
/ofbiz/trunk/applications/content/script/org/ofbiz/content/survey/SurveyServices.xml
Author: jonesde
Date: Tue Feb 3 23:43:00 2009
New Revision: 740515
URL: http://svn.apache.org/viewvc?rev=740515&view=rev
Log:
Fixed bug with createSurveyResponse in a way that allows numeric IDs; there is a special problem here because variable names are set and then later used in an expression, which is why most of these expressions are working fine but these are not; also found a bug in updateSurvey with a variable name that was wrong causing updates not to work and fixed that
Modified:
ofbiz/trunk/applications/content/script/org/ofbiz/content/survey/SurveyServices.xml
Modified: ofbiz/trunk/applications/content/script/org/ofbiz/content/survey/SurveyServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/script/org/ofbiz/content/survey/SurveyServices.xml?rev=740515&r1=740514&r2=740515&view=diff
==============================================================================
--- ofbiz/trunk/applications/content/script/org/ofbiz/content/survey/SurveyServices.xml (original)
+++ ofbiz/trunk/applications/content/script/org/ofbiz/content/survey/SurveyServices.xml Tue Feb 3 23:43:00 2009
@@ -37,7 +37,7 @@
<fail-message message="Security Error: to run updateSurvey you must have the CONTENTMGR_UPDATE or CONTENTMGR_ADMIN permission"/>
</check-permission>
<check-errors/>
- <entity-one entity-name="Survey" value-field="lookupKeyValue"/>
+ <entity-one entity-name="Survey" value-field="lookedUpValue"/>
<set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
<store-value value-field="lookedUpValue"/>
</simple-method>
@@ -455,16 +455,16 @@
<if-empty field="surveyQuestionAndAppl.surveyMultiRespColId">
<get-related value-field="surveyMultiResp" relation-name="SurveyMultiRespColumn" list="surveyMultiRespColumnList" use-cache="true"/>
<iterate entry="surveyMultiRespColumn" list="surveyMultiRespColumnList">
- <set field="answerFieldName" value="answers.${surveyQuestionAndAppl.surveyQuestionId}_${surveyMultiRespColumn.surveyMultiRespColId}"/>
+ <set field="answerFieldName" value="answers["${surveyQuestionAndAppl.surveyQuestionId}_${surveyMultiRespColumn.surveyMultiRespColId}"]"/>
<call-simple-method method-name="validateSurveyResponseInline"/>
</iterate>
<else>
- <set field="answerFieldName" value="answers.${surveyQuestionAndAppl.surveyQuestionId}_${surveyQuestionAndAppl.surveyMultiRespColId}"/>
+ <set field="answerFieldName" value="answers["${surveyQuestionAndAppl.surveyQuestionId}_${surveyQuestionAndAppl.surveyMultiRespColId}"]"/>
<call-simple-method method-name="validateSurveyResponseInline"/>
</else>
</if-empty>
<else>
- <set field="answerFieldName" value="answers.${surveyQuestionAndAppl.surveyQuestionId}"/>
+ <set field="answerFieldName" value="answers["${surveyQuestionAndAppl.surveyQuestionId}"]"/>
<call-simple-method method-name="validateSurveyResponseInline"/>
</else>
</if-not-empty>
@@ -559,7 +559,7 @@
<!-- =============== Inline method used by createSurveyResponse ============== -->
<simple-method method-name="validateSurveyResponseInline" short-description="validateSurveyResponseInline" login-required="false">
- <!-- Is required? -->
+ <!-- see if response is required -->
<if-compare field="surveyQuestionAndAppl.requiredField" operator="equals" value="Y">
<if-empty field="${answerFieldName}">
<add-error><fail-message message="The question [${surveyQuestionAndAppl.question}] requires a response."/></add-error>
@@ -638,7 +638,7 @@
<simple-method method-name="processSurveyResponseInline" short-description="processSurveyResponseInline" login-required="false">
<if-not-empty field="currentAnswers">
- <set field="responseAnswer" from-field="currentAnswers.${currentFieldName}"/>
+ <set field="responseAnswer" from-field="currentAnswers["${currentFieldName}"]"/>
</if-not-empty>
<if>
@@ -671,61 +671,61 @@
<create-value value-field="responseAnswer"/>
</then>
</if>
- <if-not-empty field="answers.${currentFieldName}">
+ <if-not-empty field="answers["${currentFieldName}"]">
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="BOOLEAN">
- <set field="responseAnswer.booleanResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.booleanResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="EMAIL">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="DATE">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="URL">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="CREDIT_CARD">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="GIFT_CARD">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="PASSWORD">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="TEXT_SHORT">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="TEXT_LONG">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="TEXTAREA">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="NUMBER_CURRENCY">
- <set field="responseAnswer.currencyResponse" from-field="answers.${currentFieldName}" type="BigDecimal"/>
+ <set field="responseAnswer.currencyResponse" from-field="answers["${currentFieldName}"]" type="BigDecimal"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="NUMBER_FLOAT">
- <set field="responseAnswer.floatResponse" from-field="answers.${currentFieldName}" type="Double"/>
+ <set field="responseAnswer.floatResponse" from-field="answers["${currentFieldName}"]" type="Double"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="NUMBER_LONG">
- <set field="responseAnswer.numericResponse" from-field="answers.${currentFieldName}" type="Long"/>
+ <set field="responseAnswer.numericResponse" from-field="answers["${currentFieldName}"]" type="Long"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="OPTION">
- <set from-field="answers.${currentFieldName}" field="responseAnswer.surveyOptionSeqId"/>
+ <set field="responseAnswer.surveyOptionSeqId" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="GEO">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="ENUMERATION">
- <set field="responseAnswer.textResponse" from-field="answers.${currentFieldName}"/>
+ <set field="responseAnswer.textResponse" from-field="answers["${currentFieldName}"]"/>
</if-compare>
<if-compare field="surveyQuestionAndAppl.surveyQuestionTypeId" operator="equals" value="CONTENT">
<!-- <log level="always" message="Found CONTENT type question"/> -->
- <if-instance-of field="answers.${currentFieldName}" class="java.nio.ByteBuffer">
+ <if-instance-of field="answers["${currentFieldName}"]" class="java.nio.ByteBuffer">
<set from-field="answers._${surveyQuestionAndAppl.surveyQuestionId}_contentType" field="partyContent._uploadedFile_contentType"/>
<set from-field="answers._${surveyQuestionAndAppl.surveyQuestionId}_fileName" field="partyContent._uploadedFile_fileName"/>
- <set from-field="answers.${currentFieldName}" field="partyContent.uploadedFile"/>
+ <set from-field="answers["${currentFieldName}"]" field="partyContent.uploadedFile"/>
<set value="DOCUMENT" field="partyContent.contentTypeId"/>
<set value="PERSONAL" field="partyContent.dataCategoryId"/>
<set value="CTNT_PUBLISHED" field="partyContent.statusId"/>
@@ -733,7 +733,7 @@
<result-to-field result-name="contentId" field="responseAnswer.contentId"/>
</call-service>
<else>
- <set from-field="answers.${currentFieldName}" field="responseAnswer.contentId"/>
+ <set from-field="answers["${currentFieldName}"]" field="responseAnswer.contentId"/>
</else>
</if-instance-of>
</if-compare>