View Issue Details

This bug affects 1 person(s).
 4
IDProjectCategoryView StatusLast Update
09285Bug reportsSurvey takingpublic2014-11-13 17:11
ReporterDenisChenu Assigned ToDenisChenu  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version2.05+ 
Fixed in Version2.05+ 
Summary09285: Index complet + mandatory question :undefined notice
Description

With complete index + mandatory array question type (at step > 1) : you can have undefined notice

Steps To Reproduce

Set debug > 1
Import and activate lss file
ACtivate
Launch with newtest/Y
Click next on welcome page
Click 'Come here with index' on first question page

Additional Information

$notanswered get surely only the question, not the subquestion.

2 way to fix it :

  • Remove $notanswered array test, and just do :
    isset($SESSION['survey'.Yii::app()->getConfig('surveyID')][$myfname]) && $SESSION['survey'.Yii::app()->getConfig('surveyID')][$myfname]==""
  • Fix $notanswered array somwhere.
TagsNo tags attached.
Attached Files
PHP notice.html (21,472 bytes)   
<!DOCTYPE html PUBLIC
	"-//W3C//DTD XHTML 1.0 Transitional//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>PHP notice</title>

<style type="text/css">
/*<![CDATA[*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}
body{line-height:1;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:none;}
:focus{outline:0;}
ins{text-decoration:none;}
del{text-decoration:line-through;}
table{border-collapse:collapse;border-spacing:0;}

body {
	font: normal 9pt "Verdana";
	color: #000;
	background: #fff;
}

h1 {
	font: normal 18pt "Verdana";
	color: #f00;
	margin-bottom: .5em;
}

h2 {
	font: normal 14pt "Verdana";
	color: #800000;
	margin-bottom: .5em;
}

h3 {
	font: bold 11pt "Verdana";
}

pre {
	font: normal 11pt Menlo, Consolas, "Lucida Console", Monospace;
}

pre span.error {
	display: block;
	background: #fce3e3;
}

pre span.ln {
	color: #999;
	padding-right: 0.5em;
	border-right: 1px solid #ccc;
}

pre span.error-ln {
	font-weight: bold;
}

.container {
	margin: 1em 4em;
}

.version {
	color: gray;
	font-size: 8pt;
	border-top: 1px solid #aaa;
	padding-top: 1em;
	margin-bottom: 1em;
}

.message {
	color: #000;
	padding: 1em;
	font-size: 11pt;
	background: #f3f3f3;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-bottom: 1em;
	line-height: 160%;
}

.source {
	margin-bottom: 1em;
}

.code pre {
	background-color: #ffe;
	margin: 0.5em 0;
	padding: 0.5em;
	line-height: 125%;
	border: 1px solid #eee;
}

.source .file {
	margin-bottom: 1em;
	font-weight: bold;
}

.traces {
	margin: 2em 0;
}

.trace {
	margin: 0.5em 0;
	padding: 0.5em;
}

.trace.app {
	border: 1px dashed #c00;
}

.trace .number {
	text-align: right;
	width: 2em;
	padding: 0.5em;
}

.trace .content {
	padding: 0.5em;
}

.trace .plus,
.trace .minus {
	display:inline;
	vertical-align:middle;
	text-align:center;
	border:1px solid #000;
	color:#000;
	font-size:10px;
	line-height:10px;
	margin:0;
	padding:0 1px;
	width:10px;
	height:10px;
}

.trace.collapsed .minus,
.trace.expanded .plus,
.trace.collapsed pre {
	display: none;
}

.trace-file {
	cursor: pointer;
	padding: 0.2em;
}

.trace-file:hover {
	background: #f0ffff;
}
/*]]>*/
</style>
</head>

<body>
<div class="container">
	<h1>PHP notice</h1>

	<p class="message">
		Undefined index: 696427X1932X42024SQ001	</p>

	<div class="source">
		<p class="file">/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/application/helpers/qanda_helper.php(4659)</p>
		<div class="code"><pre><span class="ln">4647</span>             $answertext = $ansrow[&#039;question&#039;];
<span class="ln">4648</span>             $answertextsave=$answertext;
<span class="ln">4649</span>             if (strpos($answertext,&#039;|&#039;))
<span class="ln">4650</span>             {
<span class="ln">4651</span>                 $answertext=substr($answertext,0, strpos($answertext,&#039;|&#039;));
<span class="ln">4652</span>             }
<span class="ln">4653</span>             /* Check if this item has not been answered: the &#039;notanswered&#039; variable must be an array,
<span class="ln">4654</span>             containing a list of unanswered questions, the current question must be in the array,
<span class="ln">4655</span>             and there must be no answer available for the item in this session. */
<span class="ln">4656</span> 
<span class="ln">4657</span>             if (strpos($answertext,&#039;|&#039;)) {$answerwidth=$answerwidth/2;}
<span class="ln">4658</span> 
<span class="error"><span class="ln error-ln">4659</span>             if ($ia[6]==&#039;Y&#039; &amp;&amp; (is_array($notanswered)) &amp;&amp; (array_search($myfname, $notanswered) !== FALSE) &amp;&amp; ($_SESSION[&#039;survey_&#039;.Yii::app()-&gt;getConfig(&#039;surveyID&#039;)][$myfname] == &#039;&#039;) ) {
</span><span class="ln">4660</span>                 $answertext = &#039;&lt;span class=&quot;errormandatory&quot;&gt;&#039;.$answertext.&#039;&lt;/span&gt;&#039;;
<span class="ln">4661</span>             }
<span class="ln">4662</span>             // Get array_filter stuff
<span class="ln">4663</span>             //
<span class="ln">4664</span>             // TMSW - is this correct?
<span class="ln">4665</span>             $trbc = alternation($trbc , &#039;row&#039;);
<span class="ln">4666</span>             list($htmltbody2, $hiddenfield)=return_array_filter_strings($ia, $aQuestionAttributes, $thissurvey, $ansrow, $myfname, $trbc, $myfname,&quot;tr&quot;,&quot;$trbc answers-list radio-list&quot;);
<span class="ln">4667</span>             $fn++;
<span class="ln">4668</span>             $answer .= $htmltbody2;
<span class="ln">4669</span> 
<span class="ln">4670</span>             $answer .= &quot;\t&lt;th class=\&quot;answertext\&quot;&gt;\n$answertext&quot;
<span class="ln">4671</span>             . $hiddenfield
</pre></div>	</div>

	<div class="traces">
		<h2>Stack Trace</h2>
				<table style="width:100%;">
						<tr class="trace app expanded">
			<td class="number">
				#0			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/application/helpers/qanda_helper.php(265): <strong>do_array</strong>(array(&quot;42024&quot;, &quot;696427X1932X42024&quot;, &quot;ARRAY&quot;, &quot;An array : this launch undefined notice with index&quot;, ...))				</div>

				<div class="code"><pre><span class="ln">260</span>             break;
<span class="ln">261</span>         case &#039;E&#039;: //ARRAY (Increase/Same/Decrease) radio-buttons
<span class="ln">262</span>             $values=do_array_increasesamedecrease($ia);
<span class="ln">263</span>             break;
<span class="ln">264</span>         case &#039;F&#039;: //ARRAY (Flexible) - Row Format
<span class="error"><span class="ln error-ln">265</span>             $values=do_array($ia);
</span><span class="ln">266</span>             break;
<span class="ln">267</span>         case &#039;H&#039;: //ARRAY (Flexible) - Column Format
<span class="ln">268</span>             $values=do_arraycolumns($ia);
<span class="ln">269</span>             break;
<span class="ln">270</span>         case &#039;:&#039;: //ARRAY (Multi Flexi) 1 to 10
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#1			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/application/helpers/SurveyRuntimeHelper.php(860): <strong>retrieveAnswers</strong>(array(&quot;42024&quot;, &quot;696427X1932X42024&quot;, &quot;ARRAY&quot;, &quot;An array : this launch undefined notice with index&quot;, ...), &quot;696427&quot;)				</div>

				<div class="code"><pre><span class="ln">855</span>                     }
<span class="ln">856</span> 
<span class="ln">857</span>                     //Get the answers/inputnames
<span class="ln">858</span>                     // TMSW - can content of retrieveAnswers() be provided by LEM?  Review scope of what it provides.
<span class="ln">859</span>                     // TODO - retrieveAnswers is slow - queries database separately for each question. May be fixed in _CI or _YII ports, so ignore for now
<span class="error"><span class="ln error-ln">860</span>                     list($plus_qanda, $plus_inputnames) = retrieveAnswers($ia, $surveyid);
</span><span class="ln">861</span>                     if ($plus_qanda)
<span class="ln">862</span>                     {
<span class="ln">863</span>                         $plus_qanda[] = $ia[4];
<span class="ln">864</span>                         $plus_qanda[] = $ia[6]; // adds madatory identifyer for adding mandatory class to question wrapping div
<span class="ln">865</span>                         // Add a finalgroup in qa array , needed for random attribute : TODO: find a way to have it in new quanda_helper in 2.1
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#2			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/application/controllers/survey/index.php(571): <strong>SurveyRuntimeHelper</strong>-><strong>run</strong>(&quot;696427&quot;, array(&quot;surveyid&quot; =&gt; &quot;696427&quot;, &quot;thissurvey&quot; =&gt; array(&quot;sid&quot; =&gt; &quot;696427&quot;, &quot;owner_id&quot; =&gt; &quot;1&quot;, &quot;admin&quot; =&gt; &quot;Denis Chenu&quot;, &quot;active&quot; =&gt; &quot;Y&quot;, ...), &quot;thisstep&quot; =&gt; &quot;1&quot;, &quot;tokensexist&quot; =&gt; 0, ...))				</div>

				<div class="code"><pre><span class="ln">566</span>         //Send local variables to the appropriate survey type
<span class="ln">567</span>         unset($redata);
<span class="ln">568</span>         $redata = compact(array_keys(get_defined_vars()));
<span class="ln">569</span>         Yii::import(&#039;application.helpers.SurveyRuntimeHelper&#039;);
<span class="ln">570</span>         $tmp = new SurveyRuntimeHelper();
<span class="error"><span class="ln error-ln">571</span>         $tmp-&gt;run($surveyid,$redata);
</span><span class="ln">572</span> 
<span class="ln">573</span>         if (isset($_POST[&#039;saveall&#039;]) || isset($flashmessage))
<span class="ln">574</span>         {
<span class="ln">575</span>             echo &quot;&lt;script type=&#039;text/javascript&#039;&gt; $(document).ready( function() { alert(&#039;&quot;.$clang-&gt;gT(&quot;Your responses were successfully saved.&quot;,&quot;js&quot;).&quot;&#039;);}) &lt;/script&gt;&quot;;
<span class="ln">576</span>         }
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#3			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/application/controllers/survey/index.php(46): <strong>index</strong>-><strong>action</strong>()				</div>

				<div class="code"><pre><span class="ln">41</span>             App()-&gt;getClientScript()-&gt;render($buffer);
<span class="ln">42</span>             App()-&gt;getClientScript()-&gt;reset();
<span class="ln">43</span>             return $buffer;
<span class="ln">44</span>         });
<span class="ln">45</span>         ob_implicit_flush(false);
<span class="error"><span class="ln error-ln">46</span>         $this-&gt;action();
</span><span class="ln">47</span>         ob_flush();
<span class="ln">48</span>     }
<span class="ln">49</span> 
<span class="ln">50</span>     function action()
<span class="ln">51</span>     {
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#4			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/framework/web/actions/CAction.php(76): <strong>index</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">71</span>     {
<span class="ln">72</span>         $method=new ReflectionMethod($this, &#039;run&#039;);
<span class="ln">73</span>         if($method-&gt;getNumberOfParameters()&gt;0)
<span class="ln">74</span>             return $this-&gt;runWithParamsInternal($this, $method, $params);
<span class="ln">75</span>         else
<span class="error"><span class="ln error-ln">76</span>             return $this-&gt;run();
</span><span class="ln">77</span>     }
<span class="ln">78</span> 
<span class="ln">79</span>     /**
<span class="ln">80</span>      * Executes a method of an object with the supplied named parameters.
<span class="ln">81</span>      * This method is internally used.
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#5			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/framework/web/CController.php(308): <strong>CAction</strong>-><strong>runWithParams</strong>(array())				</div>

				<div class="code"><pre><span class="ln">303</span>     {
<span class="ln">304</span>         $priorAction=$this-&gt;_action;
<span class="ln">305</span>         $this-&gt;_action=$action;
<span class="ln">306</span>         if($this-&gt;beforeAction($action))
<span class="ln">307</span>         {
<span class="error"><span class="ln error-ln">308</span>             if($action-&gt;runWithParams($this-&gt;getActionParams())===false)
</span><span class="ln">309</span>                 $this-&gt;invalidActionParams($action);
<span class="ln">310</span>             else
<span class="ln">311</span>                 $this-&gt;afterAction($action);
<span class="ln">312</span>         }
<span class="ln">313</span>         $this-&gt;_action=$priorAction;
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#6			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/framework/web/CController.php(286): <strong>CController</strong>-><strong>runAction</strong>(index)				</div>

				<div class="code"><pre><span class="ln">281</span>      * @see runAction
<span class="ln">282</span>      */
<span class="ln">283</span>     public function runActionWithFilters($action,$filters)
<span class="ln">284</span>     {
<span class="ln">285</span>         if(empty($filters))
<span class="error"><span class="ln error-ln">286</span>             $this-&gt;runAction($action);
</span><span class="ln">287</span>         else
<span class="ln">288</span>         {
<span class="ln">289</span>             $priorAction=$this-&gt;_action;
<span class="ln">290</span>             $this-&gt;_action=$action;
<span class="ln">291</span>             CFilterChain::create($this,$action,$filters)-&gt;run();
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#7			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/framework/web/CController.php(265): <strong>CController</strong>-><strong>runActionWithFilters</strong>(index, array())				</div>

				<div class="code"><pre><span class="ln">260</span>         {
<span class="ln">261</span>             if(($parent=$this-&gt;getModule())===null)
<span class="ln">262</span>                 $parent=Yii::app();
<span class="ln">263</span>             if($parent-&gt;beforeControllerAction($this,$action))
<span class="ln">264</span>             {
<span class="error"><span class="ln error-ln">265</span>                 $this-&gt;runActionWithFilters($action,$this-&gt;filters());
</span><span class="ln">266</span>                 $parent-&gt;afterControllerAction($this,$action);
<span class="ln">267</span>             }
<span class="ln">268</span>         }
<span class="ln">269</span>         else
<span class="ln">270</span>             $this-&gt;missingAction($actionID);
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#8			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/framework/web/CWebApplication.php(282): <strong>CController</strong>-><strong>run</strong>(&quot;index&quot;)				</div>

				<div class="code"><pre><span class="ln">277</span>         {
<span class="ln">278</span>             list($controller,$actionID)=$ca;
<span class="ln">279</span>             $oldController=$this-&gt;_controller;
<span class="ln">280</span>             $this-&gt;_controller=$controller;
<span class="ln">281</span>             $controller-&gt;init();
<span class="error"><span class="ln error-ln">282</span>             $controller-&gt;run($actionID);
</span><span class="ln">283</span>             $this-&gt;_controller=$oldController;
<span class="ln">284</span>         }
<span class="ln">285</span>         else
<span class="ln">286</span>             throw new CHttpException(404,Yii::t(&#039;yii&#039;,&#039;Unable to resolve the request &quot;{route}&quot;.&#039;,
<span class="ln">287</span>                 array(&#039;{route}&#039;=&gt;$route===&#039;&#039;?$this-&gt;defaultController:$route)));
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#9			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/framework/web/CWebApplication.php(141): <strong>CWebApplication</strong>-><strong>runController</strong>(&quot;survey/index&quot;)				</div>

				<div class="code"><pre><span class="ln">136</span>             foreach(array_splice($this-&gt;catchAllRequest,1) as $name=&gt;$value)
<span class="ln">137</span>                 $_GET[$name]=$value;
<span class="ln">138</span>         }
<span class="ln">139</span>         else
<span class="ln">140</span>             $route=$this-&gt;getUrlManager()-&gt;parseUrl($this-&gt;getRequest());
<span class="error"><span class="ln error-ln">141</span>         $this-&gt;runController($route);
</span><span class="ln">142</span>     }
<span class="ln">143</span> 
<span class="ln">144</span>     /**
<span class="ln">145</span>      * Registers the core application components.
<span class="ln">146</span>      * This method overrides the parent implementation by registering additional core components.
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#10			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/framework/base/CApplication.php(180): <strong>CWebApplication</strong>-><strong>processRequest</strong>()				</div>

				<div class="code"><pre><span class="ln">175</span>     public function run()
<span class="ln">176</span>     {
<span class="ln">177</span>         if($this-&gt;hasEventHandler(&#039;onBeginRequest&#039;))
<span class="ln">178</span>             $this-&gt;onBeginRequest(new CEvent($this));
<span class="ln">179</span>         register_shutdown_function(array($this,&#039;end&#039;),0,false);
<span class="error"><span class="ln error-ln">180</span>         $this-&gt;processRequest();
</span><span class="ln">181</span>         if($this-&gt;hasEventHandler(&#039;onEndRequest&#039;))
<span class="ln">182</span>             $this-&gt;onEndRequest(new CEvent($this));
<span class="ln">183</span>     }
<span class="ln">184</span> 
<span class="ln">185</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#11			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/LimeSurvey/index.php(200): <strong>CApplication</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">195</span>         die (sprintf(&#039;%s should be writable by the webserver (755 or 775).&#039;, $runtimePath));
<span class="ln">196</span>     }
<span class="ln">197</span> }
<span class="ln">198</span> 
<span class="ln">199</span> 
<span class="error"><span class="ln error-ln">200</span> Yii::createApplication(&#039;LSYii_Application&#039;, $config)-&gt;run();
</span><span class="ln">201</span> 
<span class="ln">202</span> /* End of file index.php */
<span class="ln">203</span> /* Location: ./index.php */
</pre></div>			</td>
		</tr>
				</table>
	</div>

	<div class="version">
		2014-10-08 10:48:38 Apache/2.2.22 (Debian) <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.15	</div>
</div>

<script type="text/javascript">
/*<![CDATA[*/
var traceReg = new RegExp("(^|\\s)trace-file(\\s|$)");
var collapsedReg = new RegExp("(^|\\s)collapsed(\\s|$)");

var e = document.getElementsByTagName("div");
for(var j=0,len=e.length;j<len;j++){
	if(traceReg.test(e[j].className)){
		e[j].onclick = function(){
			var trace = this.parentNode.parentNode;
			if(collapsedReg.test(trace.className))
				trace.className = trace.className.replace("collapsed", "expanded");
			else
				trace.className = trace.className.replace("expanded", "collapsed");
		}
	}
}
/*]]>*/
</script>

</body>
</html>
PHP notice.html (21,472 bytes)   
Bug heat4
Complete LimeSurvey version number (& build)141008
I will donate to the project if issue is resolvedNo
Browsernot relevant
Database type & versionmysql
Server OS (if known)debian/linux
Webserver software & version (if known)apache
PHP VersionPHP Version 5.4.4

Relationships

related to 09198 closedDenisChenu complete group's navigation can stop before clicked group 

Users monitoring this issue

There are no users monitoring this issue.

Activities

DenisChenu

DenisChenu

2014-10-08 11:29

developer   ~30749

With debug=0 : all sub question seems invalid

DenisChenu

DenisChenu

2014-10-10 10:07

developer   ~30758

OK, got it.

The index validate all the group, then ending to the last group : $stepInfo = LimeExpressionManager::singleton()->_ValidateGroup($key);

Then somewhere $moveResult = LimeExpressionManager::GetLastMoveResult(true); get the moveresult of all survey (or the last group ? not sure). Then we msut somewhere set $moveResult to array() if index==2 and move!=movenext/movesubmit.

DenisChenu

DenisChenu

2014-10-14 09:51

developer   ~30796

...
Not that ... somewhere else then .....

DenisChenu

DenisChenu

2014-10-17 08:18

developer   ~30805

Please try and do a lot of different test with https://github.com/LimeSurvey/LimeSurvey/pull/227

DenisChenu

DenisChenu

2014-11-13 16:33

developer   ~30975

Fix committed to master branch: http://bugs.limesurvey.org/plugin.php?page=Source/view&amp;id=14620

c_schmitz

c_schmitz

2014-11-13 17:11

administrator   ~30981

Version 2.05 Build 141113 released

Related Changesets

LimeSurvey: master be983708

2014-11-01 16:47:55

DenisChenu

Details Diff
Fixed issue 09328: Language changer causes warning for mandatory questions
Fixed issue 09285: Index complet + mandatory question :undefined notice
Fixed issue 09198: complete group's navigation can stop before clicked group
Fixed issue 08806: questionindex to 2 allow invalid survey submitted
Dev: use $force in _validateGroup and _validateQuestion
Dev: this allow save value in DB for equation and some other, but never return error.
Dev: update EM, then need testing
Affected Issues
08806, 09198, 09285, 09328
mod - application/helpers/SurveyRuntimeHelper.php Diff File
mod - application/helpers/expressions/em_manager_helper.php Diff File

LimeSurvey: master 3f5fbf78

2014-11-10 16:34:08

DenisChenu

Details Diff
Dev: refix 09285 2 : condition : go after, do to : broke
Dev: Adding $_SESSION[$LEM->sessid][$answer]=null in _validateQuestion , this ensure using $_SESSION[$LEM->sessid][$answer]
Dev: then remove the quick fix at qanda_helper only for $ia[1] (without sub question)
Dev: remove global $notanswered at each do_ function, get it by GetLastMoveResult
Affected Issues
09285
mod - application/helpers/SurveyRuntimeHelper.php Diff File
mod - application/helpers/expressions/em_manager_helper.php Diff File
mod - application/helpers/qanda_helper.php Diff File

Issue History

Date Modified Username Field Change
2014-10-08 10:53 DenisChenu New Issue
2014-10-08 10:53 DenisChenu File Added: PHP notice.html
2014-10-08 10:53 DenisChenu File Added: limesurvey_survey_brokenindex.lss
2014-10-08 11:29 DenisChenu Note Added: 30749
2014-10-09 16:37 DenisChenu Relationship added related to 09198
2014-10-10 10:07 DenisChenu Note Added: 30758
2014-10-10 14:05 c_schmitz Assigned To => DenisChenu
2014-10-10 14:05 c_schmitz Status new => assigned
2014-10-14 09:51 DenisChenu Note Added: 30796
2014-10-17 08:18 DenisChenu Note Added: 30805
2014-11-13 16:33 DenisChenu Changeset attached => LimeSurvey master be983708
2014-11-13 16:33 DenisChenu Changeset attached => LimeSurvey master 3f5fbf78
2014-11-13 16:33 DenisChenu Note Added: 30975
2014-11-13 16:33 DenisChenu Resolution open => fixed
2014-11-13 16:37 DenisChenu Status assigned => resolved
2014-11-13 16:37 DenisChenu Fixed in Version => 2.05+
2014-11-13 17:11 c_schmitz Note Added: 30981
2014-11-13 17:11 c_schmitz Status resolved => closed