View Issue Details

IDProjectCategoryView StatusLast Update
07040Development Import/Exportpublic2013-02-07 10:40
ReporterDenisChenu Assigned ToDenisChenu  
PrioritynormalSeveritycrash 
Status closedResolutionfixed 
Product Version2.1 
Fixed in Version2.1 
Summary07040: Impossibe to copy survey
DescriptionWhen trying to copy a survey,
CException
 Property "Questions.class" is not defined.
Steps To ReproduceAdd an new survey,
Add a group
Add a question (i don't change default: then Long free text)

Click on add new survey again, go to copy survey tab, select your new survey
Error
Additional InformationA new survey with the new name exist, an new froup too, but no question.
TagsNo tags attached.

Activities

DenisChenu

DenisChenu

2012-12-06 12:20

developer  

copy.html (22,357 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>CException</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>CException</h1>

	<p class="message">
		Property "Questions.class" is not defined.	</p>

	<div class="source">
		<p class="file">/home/sondages.pro/htdocs/limesurvey_GIT/dev/framework/db/ar/CActiveRecord.php(160)</p>
		<div class="code"><pre><span class="ln">148</span>      * PHP setter magic method.
<span class="ln">149</span>      * This method is overridden so that AR attributes can be accessed like properties.
<span class="ln">150</span>      * @param string $name property name
<span class="ln">151</span>      * @param mixed $value property value
<span class="ln">152</span>      */
<span class="ln">153</span>     public function __set($name,$value)
<span class="ln">154</span>     {
<span class="ln">155</span>         if($this-&gt;setAttribute($name,$value)===false)
<span class="ln">156</span>         {
<span class="ln">157</span>             if(isset($this-&gt;getMetaData()-&gt;relations[$name]))
<span class="ln">158</span>                 $this-&gt;_related[$name]=$value;
<span class="ln">159</span>             else
<span class="error"><span class="ln error-ln">160</span>                 parent::__set($name,$value);
</span><span class="ln">161</span>         }
<span class="ln">162</span>     }
<span class="ln">163</span> 
<span class="ln">164</span>     /**
<span class="ln">165</span>      * Checks if a property value is null.
<span class="ln">166</span>      * This method overrides the parent implementation by checking
<span class="ln">167</span>      * if the named attribute is null or not.
<span class="ln">168</span>      * @param string $name the property name or the event name
<span class="ln">169</span>      * @return boolean whether the property value is null
<span class="ln">170</span>      */
<span class="ln">171</span>     public function __isset($name)
<span class="ln">172</span>     {
</pre></div>	</div>

	<div class="traces">
		<h2>Stack Trace</h2>
				<table style="width:100%;">
						<tbody><tr class="trace core collapsed">
			<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/dev/framework/db/ar/CActiveRecord.php(160): <strong>CComponent</strong>-&gt;<strong>__set</strong>("class", "List")				</div>

				<div class="code"><pre><span class="ln">155</span>         if($this-&gt;setAttribute($name,$value)===false)
<span class="ln">156</span>         {
<span class="ln">157</span>             if(isset($this-&gt;getMetaData()-&gt;relations[$name]))
<span class="ln">158</span>                 $this-&gt;_related[$name]=$value;
<span class="ln">159</span>             else
<span class="error"><span class="ln error-ln">160</span>                 parent::__set($name,$value);
</span><span class="ln">161</span>         }
<span class="ln">162</span>     }
<span class="ln">163</span> 
<span class="ln">164</span>     /**
<span class="ln">165</span>      * Checks if a property value is null.
</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/dev/application/models/Questions.php(232): <strong>CActiveRecord</strong>-&gt;<strong>__set</strong>("class", "List")				</div>

				<div class="code"><pre><span class="ln">227</span>         */
<span class="ln">228</span>         function insertRecords($data)
<span class="ln">229</span>         {
<span class="ln">230</span>             $questions = new self;
<span class="ln">231</span>             foreach ($data as $k =&gt; $v){
<span class="error"><span class="ln error-ln">232</span>                 $questions-&gt;$k = $v;
</span><span class="ln">233</span>                 }
<span class="ln">234</span>             try
<span class="ln">235</span>             {
<span class="ln">236</span>                 $questions-&gt;save();
<span class="ln">237</span>                 return $questions-&gt;qid;
</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/dev/application/helpers/admin/import_helper.php(3659): <strong>Questions</strong>-&gt;<strong>insertRecords</strong>(array("parent_qid" =&gt; "0", "sid" =&gt; "452179", "gid" =&gt; "38", "tid" =&gt; "3", ...))				</div>

				<div class="code"><pre><span class="ln">3654</span>                 $insertdata['tid'] = Question_types::model()-&gt;findByAttributes(array('class' =&gt; $insertdata['class']))-&gt;getAttribute('tid');
<span class="ln">3655</span>                 unset($insertdata['class']);
<span class="ln">3656</span>             }
<span class="ln">3657</span>             if ($insertdata)
<span class="ln">3658</span>                 XSSFilterArray($insertdata);
<span class="error"><span class="ln error-ln">3659</span>             $newqid = Questions::model()-&gt;insertRecords($insertdata) or safeDie($clang-&gt;gT("Error").": Failed to insert data [4]&lt;br /&gt;");
</span><span class="ln">3660</span>             if (!isset($aQIDReplacements[$oldqid]))
<span class="ln">3661</span>             {
<span class="ln">3662</span>                 $aQIDReplacements[$oldqid]=$newqid;
<span class="ln">3663</span>                 $results['questions']++;
<span class="ln">3664</span>             }
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<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/dev/application/controllers/admin/surveyadmin.php(956): <strong>XMLImportSurvey</strong>("", "&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;document&gt;
 &lt;LimeSurveyDo...", "sddsqd")				</div>

				<div class="code"><pre><span class="ln">951</span>                 $aImportResults=importSurveyFile($sFullFilepath,(isset($_POST['translinksfields'])));
<span class="ln">952</span>                 if (is_null($aImportResults)) $importerror = true;
<span class="ln">953</span>             }
<span class="ln">954</span>             elseif ($action == 'copysurvey' &amp;&amp; (empty($importerror) || !$importerror))
<span class="ln">955</span>             {
<span class="error"><span class="ln error-ln">956</span>                 $aImportResults = XMLImportSurvey('', $copysurveydata, $sNewSurveyName);
</span><span class="ln">957</span>                 if (!isset($exclude['permissions']))
<span class="ln">958</span>                 {
<span class="ln">959</span>                     Survey_permissions::model()-&gt;copySurveyPermissions($iSurveyID,$aImportResults['newsid']);
<span class="ln">960</span>                 }
<span class="ln">961</span>             }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#4			</td>
			<td class="content">
				<div class="trace-file">
										&nbsp;unknown(0): <strong>SurveyAdmin</strong>-&gt;<strong>copy</strong>()				</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/dev/framework/web/actions/CAction.php(107): <strong>ReflectionMethod</strong>-&gt;<strong>invokeArgs</strong>(SurveyAdmin, array())				</div>

				<div class="code"><pre><span class="ln">102</span>             else if($param-&gt;isDefaultValueAvailable())
<span class="ln">103</span>                 $ps[]=$param-&gt;getDefaultValue();
<span class="ln">104</span>             else
<span class="ln">105</span>                 return false;
<span class="ln">106</span>         }
<span class="error"><span class="ln error-ln">107</span>         $method-&gt;invokeArgs($object,$ps);
</span><span class="ln">108</span>         return true;
<span class="ln">109</span>     }
<span class="ln">110</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace app 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/dev/application/core/Survey_Common_Action.php(89): <strong>CAction</strong>-&gt;<strong>runWithParamsInternal</strong>(SurveyAdmin, ReflectionMethod, array("sa" =&gt; "copy"))				</div>

				<div class="code"><pre><span class="ln">84</span>             $oMethod = new ReflectionMethod($this, $sDefault);
<span class="ln">85</span>         }
<span class="ln">86</span> 
<span class="ln">87</span>         // We're all good to go, let's execute it
<span class="ln">88</span>         // runWithParamsInternal would automatically get the parameters of the method and populate them as required with the params
<span class="error"><span class="ln error-ln">89</span>         return parent::runWithParamsInternal($this, $oMethod, $params);
</span><span class="ln">90</span>     }
<span class="ln">91</span> 
<span class="ln">92</span>     /**
<span class="ln">93</span>     * Some functions have different parameters, which are just an alias of the
<span class="ln">94</span>     * usual parameters we're getting in the url. This function just populates
</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/dev/framework/web/CController.php(309): <strong>Survey_Common_Action</strong>-&gt;<strong>runWithParams</strong>(array("sa" =&gt; "copy"))				</div>

				<div class="code"><pre><span class="ln">304</span>     {
<span class="ln">305</span>         $priorAction=$this-&gt;_action;
<span class="ln">306</span>         $this-&gt;_action=$action;
<span class="ln">307</span>         if($this-&gt;beforeAction($action))
<span class="ln">308</span>         {
<span class="error"><span class="ln error-ln">309</span>             if($action-&gt;runWithParams($this-&gt;getActionParams())===false)
</span><span class="ln">310</span>                 $this-&gt;invalidActionParams($action);
<span class="ln">311</span>             else
<span class="ln">312</span>                 $this-&gt;afterAction($action);
<span class="ln">313</span>         }
<span class="ln">314</span>         $this-&gt;_action=$priorAction;
</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/dev/framework/web/CController.php(287): <strong>CController</strong>-&gt;<strong>runAction</strong>(SurveyAdmin)				</div>

				<div class="code"><pre><span class="ln">282</span>      * @see runAction
<span class="ln">283</span>      */
<span class="ln">284</span>     public function runActionWithFilters($action,$filters)
<span class="ln">285</span>     {
<span class="ln">286</span>         if(empty($filters))
<span class="error"><span class="ln error-ln">287</span>             $this-&gt;runAction($action);
</span><span class="ln">288</span>         else
<span class="ln">289</span>         {
<span class="ln">290</span>             $priorAction=$this-&gt;_action;
<span class="ln">291</span>             $this-&gt;_action=$action;
<span class="ln">292</span>             CFilterChain::create($this,$action,$filters)-&gt;run();
</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/dev/framework/web/CController.php(266): <strong>CController</strong>-&gt;<strong>runActionWithFilters</strong>(SurveyAdmin, array())				</div>

				<div class="code"><pre><span class="ln">261</span>         {
<span class="ln">262</span>             if(($parent=$this-&gt;getModule())===null)
<span class="ln">263</span>                 $parent=Yii::app();
<span class="ln">264</span>             if($parent-&gt;beforeControllerAction($this,$action))
<span class="ln">265</span>             {
<span class="error"><span class="ln error-ln">266</span>                 $this-&gt;runActionWithFilters($action,$this-&gt;filters());
</span><span class="ln">267</span>                 $parent-&gt;afterControllerAction($this,$action);
<span class="ln">268</span>             }
<span class="ln">269</span>         }
<span class="ln">270</span>         else
<span class="ln">271</span>             $this-&gt;missingAction($actionID);
</pre></div>			</td>
		</tr>
						<tr class="trace app 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/dev/application/controllers/AdminController.php(160): <strong>CController</strong>-&gt;<strong>run</strong>("survey")				</div>

				<div class="code"><pre><span class="ln">155</span>                 Yii::app()-&gt;session['redirectopage'] = Yii::app()-&gt;request-&gt;requestUri;
<span class="ln">156</span> 
<span class="ln">157</span>                 $this-&gt;redirect($this-&gt;createUrl('/admin/authentication/sa/login'));
<span class="ln">158</span>             }
<span class="ln">159</span> 
<span class="error"><span class="ln error-ln">160</span>             return parent::run($sAction);
</span><span class="ln">161</span>     }
<span class="ln">162</span> 
<span class="ln">163</span>     /**
<span class="ln">164</span>     * Routes all the actions to their respective places
<span class="ln">165</span>     *
</pre></div>			</td>
		</tr>
						<tr class="trace core 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/dev/framework/web/CWebApplication.php(283): <strong>AdminController</strong>-&gt;<strong>run</strong>("survey")				</div>

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

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

				<div class="code"><pre><span class="ln">157</span>      */
<span class="ln">158</span>     public function run()
<span class="ln">159</span>     {
<span class="ln">160</span>         if($this-&gt;hasEventHandler('onBeginRequest'))
<span class="ln">161</span>             $this-&gt;onBeginRequest(new CEvent($this));
<span class="error"><span class="ln error-ln">162</span>         $this-&gt;processRequest();
</span><span class="ln">163</span>         if($this-&gt;hasEventHandler('onEndRequest'))
<span class="ln">164</span>             $this-&gt;onEndRequest(new CEvent($this));
<span class="ln">165</span>     }
<span class="ln">166</span> 
<span class="ln">167</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#14			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/sondages.pro/htdocs/limesurvey_GIT/dev/index.php(193): <strong>CApplication</strong>-&gt;<strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">188</span>         die (sprintf('%s should be writable by the webserver (755 of 775).', $runtimePath));
<span class="ln">189</span>     }
<span class="ln">190</span> }
<span class="ln">191</span> 
<span class="ln">192</span> 
<span class="error"><span class="ln error-ln">193</span> Yii::createApplication('LSYii_Application', $config)-&gt;run();
</span><span class="ln">194</span> 
<span class="ln">195</span> /* End of file index.php */
<span class="ln">196</span> /* Location: ./index.php */
</pre></div>			</td>
		</tr>
				</tbody></table>
	</div>

	<div class="version">
		2012-12-06 12:18:55 Apache/2.2.16 (Debian) <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.12	</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>
copy.html (22,357 bytes)   
DenisChenu

DenisChenu

2013-02-01 16:57

developer   ~23936

It's the export system:
Create a question->Class,

Because exprt lss from 2.1 and try to reimport give the same bug.
Mazi

Mazi

2013-02-04 17:00

partner   ~23946

Sam, can you try to fix this, because currently one can hardly test any 2.1 functionality when not being able to copy or import a test survey.

Thanks!
DenisChenu

DenisChenu

2013-02-07 10:20

developer   ~23956

Fix committed to 2.1 branch: http://bugs.limesurvey.org/plugin.php?page=Source/view&id=11566
DenisChenu

DenisChenu

2013-02-07 10:37

developer   ~23957

Need reworking for Plugin / Leave some comment in import_helper
DenisChenu

DenisChenu

2013-02-07 10:39

developer   ~23958

Reopened for some comment :

In import_helper : system is after
// Replace $insertdata['tid'] for Plugin system

Related Changesets

LimeSurvey: 2.1 90fc75d1

2013-02-07 09:17:05

DenisChenu

Details Diff
Dev: Fixed issue 07040: Impossibe to copy survey
Dev: Fixed issue: subquestion are new question when importing a LS2.0 lss survey
Dev: tested: copy, import LS2.0 lss,export+import LS2.1 lss with "docs/demosurvey/All question type EN/FR/ls191_sample_survey_multilingual
Dev: still a EM bug with this survey: if QCS3 is displaye: EM search for subQuestion and throw error : undefined index line 4522/em_manager_helper.php
Affected Issues
07040
mod - application/controllers/admin/surveyadmin.php Diff File
mod - application/helpers/admin/import_helper.php Diff File
mod - application/modules/CheckQuestion.php Diff File

Issue History

Date Modified Username Field Change
2012-12-06 12:19 DenisChenu New Issue
2012-12-06 12:20 DenisChenu File Added: copy.html
2012-12-06 12:20 DenisChenu Severity minor => crash
2012-12-06 13:02 c_schmitz Project Bug reports => Development
2012-12-06 13:02 c_schmitz Assigned To => user16774
2012-12-06 13:02 c_schmitz Status new => assigned
2013-02-01 16:56 DenisChenu Assigned To user16774 =>
2013-02-01 16:57 DenisChenu Note Added: 23936
2013-02-01 16:57 DenisChenu Assigned To => DenisChenu
2013-02-01 16:57 DenisChenu Status assigned => new
2013-02-01 16:57 DenisChenu Assigned To DenisChenu =>
2013-02-04 17:00 Mazi Assigned To => sammousa
2013-02-04 17:00 Mazi Status new => assigned
2013-02-04 17:00 Mazi Note Added: 23946
2013-02-07 10:14 DenisChenu Assigned To sammousa => DenisChenu
2013-02-07 10:20 DenisChenu Changeset attached => LimeSurvey 2.1 90fc75d1
2013-02-07 10:20 DenisChenu Note Added: 23956
2013-02-07 10:20 DenisChenu Resolution open => fixed
2013-02-07 10:37 DenisChenu Note Added: 23957
2013-02-07 10:37 DenisChenu Status assigned => resolved
2013-02-07 10:37 DenisChenu Fixed in Version => 2.1
2013-02-07 10:37 DenisChenu Status resolved => closed
2013-02-07 10:39 DenisChenu Note Added: 23958
2013-02-07 10:39 DenisChenu Status closed => feedback
2013-02-07 10:39 DenisChenu Resolution fixed => reopened
2013-02-07 10:40 DenisChenu Status feedback => closed
2013-02-07 10:40 DenisChenu Resolution reopened => fixed