View Issue Details

This bug affects 3 person(s).
 22
IDProjectCategoryView StatusLast Update
19404Bug reportsImport/Exportpublic2024-10-27 13:31
Reporterriadh2020 Assigned Totibor.pacalat  
PrioritynoneSeverityblock 
Status ready for code reviewResolutionopen 
Product Version6.4.x 
Summary19404: Export survey propblem with PHP version 8.0
Description

When I tray to export a survey to LSS format I get a white page ( on PHP version 8.0) but when I downgrade the PHP version to 7.433 there will be no problem.

Steps To Reproduce

Steps to reproduce

(Replace this text with detailed step-by-step instructions on how to reproduce the issue)

Expected result

(Write here what you expected to happen)

Actual result

(Write here what happened instead)

TagsNo tags attached.
Bug heat22
Complete LimeSurvey version number (& build)6.4.5
I will donate to the project if issue is resolvedNo
BrowserFirefox
Database type & version623
Server OS (if known)
Webserver software & version (if known)Local server ( APPACHE 2.45 MYSQL 8.0)
PHP Version8.0

Users monitoring this issue

fullpowerone, riadh2020

Activities

DenisChenu

DenisChenu

2024-02-09 15:40

developer   ~79437

Can you enable debug = 2 in application/config/config.php and try again, please? Paste the complete error message here.

riadh2020

riadh2020

2024-02-09 16:27

reporter   ~79438

After (enable debug = 2) abd when I export the survey there is a blank page, and when I tray to copy the survey I have this error ( See attached file) thanks

ValueError.htm (37,192 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>ValueError</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>ValueError</h1>

	<p class="message">
		XMLWriter::startElement(): Argument #2 must be a valid element name, &quot;@attributes&quot; given	</p>

	<div class="source">
		<p class="file">C:\laragon\www\limesurvey\application\helpers\export_helper.php(3152)</p>
		<div class="code"><pre><span class="ln">3140</span> * @param int $sParentKey parent key
<span class="ln">3141</span> */
<span class="ln">3142</span> function writeXmlFromArray(XMLWriter $xml, $aData, $sParentKey = &#039;&#039;)
<span class="ln">3143</span> {
<span class="ln">3144</span>     $bCloseElement = false;
<span class="ln">3145</span>     foreach ($aData as $key =&gt; $value) {
<span class="ln">3146</span>         if (!empty($value)) {
<span class="ln">3147</span>             if (is_array($value)) {
<span class="ln">3148</span>                 if (is_numeric($key)) {
<span class="ln">3149</span>                     $xml-&gt;startElement($sParentKey);
<span class="ln">3150</span>                     $bCloseElement = true;
<span class="ln">3151</span>                 } elseif (isAssociativeArray($value)) {
<span class="error"><span class="ln error-ln">3152</span>                     $xml-&gt;startElement($key);
</span><span class="ln">3153</span>                     $bCloseElement = true;
<span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
<span class="ln">3158</span>                 } else {
<span class="ln">3159</span>                     writeXmlFromArray($xml, $value, $key);
<span class="ln">3160</span>                 }
<span class="ln">3161</span> 
<span class="ln">3162</span>                 if ($bCloseElement === true) {
<span class="ln">3163</span>                     $xml-&gt;endElement();
<span class="ln">3164</span>                     $bCloseElement = false;
</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;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3152): <strong>XMLWriter</strong>-><strong>startElement</strong>(&quot;@attributes&quot;)				</div>

				<div class="code"><pre><span class="ln">3147</span>             if (is_array($value)) {
<span class="ln">3148</span>                 if (is_numeric($key)) {
<span class="ln">3149</span>                     $xml-&gt;startElement($sParentKey);
<span class="ln">3150</span>                     $bCloseElement = true;
<span class="ln">3151</span>                 } elseif (isAssociativeArray($value)) {
<span class="error"><span class="ln error-ln">3152</span>                     $xml-&gt;startElement($key);
</span><span class="ln">3153</span>                     $bCloseElement = true;
<span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
</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;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159): <strong>writeXmlFromArray</strong>(XMLWriter, array(&quot;@attributes&quot; =&gt; array(&quot;type&quot; =&gt; &quot;dropdown&quot;, &quot;category&quot; =&gt; &quot;Simple options&quot;, &quot;width&quot; =&gt; &quot;12&quot;, &quot;title&quot; =&gt; &quot;Variations&quot;, ...)), &quot;cssframework&quot;)				</div>

				<div class="code"><pre><span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
<span class="ln">3158</span>                 } else {
<span class="error"><span class="ln error-ln">3159</span>                     writeXmlFromArray($xml, $value, $key);
</span><span class="ln">3160</span>                 }
<span class="ln">3161</span> 
<span class="ln">3162</span>                 if ($bCloseElement === true) {
<span class="ln">3163</span>                     $xml-&gt;endElement();
<span class="ln">3164</span>                     $bCloseElement = false;
</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;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159): <strong>writeXmlFromArray</strong>(XMLWriter, array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...), &quot;options&quot;)				</div>

				<div class="code"><pre><span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
<span class="ln">3158</span>                 } else {
<span class="error"><span class="ln error-ln">3159</span>                     writeXmlFromArray($xml, $value, $key);
</span><span class="ln">3160</span>                 }
<span class="ln">3161</span> 
<span class="ln">3162</span>                 if ($bCloseElement === true) {
<span class="ln">3163</span>                     $xml-&gt;endElement();
<span class="ln">3164</span>                     $bCloseElement = false;
</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;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159): <strong>writeXmlFromArray</strong>(XMLWriter, array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...)), &quot;config&quot;)				</div>

				<div class="code"><pre><span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
<span class="ln">3158</span>                 } else {
<span class="error"><span class="ln error-ln">3159</span>                     writeXmlFromArray($xml, $value, $key);
</span><span class="ln">3160</span>                 }
<span class="ln">3161</span> 
<span class="ln">3162</span>                 if ($bCloseElement === true) {
<span class="ln">3163</span>                     $xml-&gt;endElement();
<span class="ln">3164</span>                     $bCloseElement = false;
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#4			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3157): <strong>writeXmlFromArray</strong>(XMLWriter, array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;HQCfruity&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...))), &quot;theme&quot;)				</div>

				<div class="code"><pre><span class="ln">3152</span>                     $xml-&gt;startElement($key);
<span class="ln">3153</span>                     $bCloseElement = true;
<span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="error"><span class="ln error-ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
</span><span class="ln">3158</span>                 } else {
<span class="ln">3159</span>                     writeXmlFromArray($xml, $value, $key);
<span class="ln">3160</span>                 }
<span class="ln">3161</span> 
<span class="ln">3162</span>                 if ($bCloseElement === true) {
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#5			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159): <strong>writeXmlFromArray</strong>(XMLWriter, array(array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;bootswatch&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;font&quot; =&gt; &quot;noto&quot;, &quot;cssframework&quot; =&gt; &quot;invalid:image::theme::css\variations\cyborg.min.css&quot;, &quot;brandlogofile&quot; =&gt; &quot;image::theme::files\logo.png&quot;, &quot;container&quot; =&gt; &quot;off&quot;, ...))), array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;HQCfruity&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...))), array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;vanilla&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...)))), &quot;theme&quot;)				</div>

				<div class="code"><pre><span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
<span class="ln">3158</span>                 } else {
<span class="error"><span class="ln error-ln">3159</span>                     writeXmlFromArray($xml, $value, $key);
</span><span class="ln">3160</span>                 }
<span class="ln">3161</span> 
<span class="ln">3162</span>                 if ($bCloseElement === true) {
<span class="ln">3163</span>                     $xml-&gt;endElement();
<span class="ln">3164</span>                     $bCloseElement = false;
</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;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159): <strong>writeXmlFromArray</strong>(XMLWriter, array(&quot;theme&quot; =&gt; array(array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;bootswatch&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;font&quot; =&gt; &quot;noto&quot;, &quot;cssframework&quot; =&gt; &quot;invalid:image::theme::css\variations\cyborg.min.css&quot;, &quot;brandlogofile&quot; =&gt; &quot;image::theme::files\logo.png&quot;, &quot;container&quot; =&gt; &quot;off&quot;, ...))), array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;HQCfruity&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...))), array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;vanilla&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...))))), &quot;themes_inherited&quot;)				</div>

				<div class="code"><pre><span class="ln">3154</span>                 }
<span class="ln">3155</span> 
<span class="ln">3156</span>                 if (is_numeric($key)) {
<span class="ln">3157</span>                     writeXmlFromArray($xml, $value, $sParentKey);
<span class="ln">3158</span>                 } else {
<span class="error"><span class="ln error-ln">3159</span>                     writeXmlFromArray($xml, $value, $key);
</span><span class="ln">3160</span>                 }
<span class="ln">3161</span> 
<span class="ln">3162</span>                 if ($bCloseElement === true) {
<span class="ln">3163</span>                     $xml-&gt;endElement();
<span class="ln">3164</span>                     $bCloseElement = false;
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#7			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\application\helpers\export_helper.php(3205): <strong>writeXmlFromArray</strong>(XMLWriter, array(&quot;themes_inherited&quot; =&gt; array(&quot;theme&quot; =&gt; array(array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;bootswatch&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;font&quot; =&gt; &quot;noto&quot;, &quot;cssframework&quot; =&gt; &quot;invalid:image::theme::css\variations\cyborg.min.css&quot;, &quot;brandlogofile&quot; =&gt; &quot;image::theme::files\logo.png&quot;, &quot;container&quot; =&gt; &quot;off&quot;, ...))), array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;HQCfruity&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...))), array(&quot;id&quot; =&gt; null, &quot;sid&quot; =&gt; 644215, &quot;template_name&quot; =&gt; &quot;vanilla&quot;, &quot;config&quot; =&gt; array(&quot;options&quot; =&gt; array(&quot;container&quot; =&gt; &quot;on&quot;, &quot;zebrastriping&quot; =&gt; &quot;off&quot;, &quot;stickymatrixheaders&quot; =&gt; &quot;off&quot;, &quot;greyoutselected&quot; =&gt; &quot;off&quot;, ...)))))))				</div>

				<div class="code"><pre><span class="ln">3200</span>             }
<span class="ln">3201</span>         }
<span class="ln">3202</span>     }
<span class="ln">3203</span> 
<span class="ln">3204</span>     if ($oXml !== null &amp;&amp; !empty($aThemeData)) {
<span class="error"><span class="ln error-ln">3205</span>         writeXmlFromArray($oXml, $aThemeData);
</span><span class="ln">3206</span>     }
<span class="ln">3207</span> }
<span class="ln">3208</span> 
<span class="ln">3209</span> 
<span class="ln">3210</span> function MaskFormula($sValue)
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#8			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\application\helpers\export_helper.php(1047): <strong>surveyGetThemeConfiguration</strong>(644215, XMLWriter, true, &quot;themes_inherited&quot;)				</div>

				<div class="code"><pre><span class="ln">1042</span>     $xml-&gt;endElement();
<span class="ln">1043</span>     surveyGetXMLStructure($iSurveyID, $xml, $exclude);
<span class="ln">1044</span>     // survey theme configuration - db values
<span class="ln">1045</span>     surveyGetThemeConfiguration($iSurveyID, $xml, false, &#039;themes&#039;);
<span class="ln">1046</span>     // survey theme configuration - inherited values
<span class="error"><span class="ln error-ln">1047</span>     surveyGetThemeConfiguration($iSurveyID, $xml, true, &#039;themes_inherited&#039;);
</span><span class="ln">1048</span>     $xml-&gt;endElement(); // close columns
<span class="ln">1049</span>     $xml-&gt;endDocument();
<span class="ln">1050</span>     return $xml-&gt;outputMemory(true);
<span class="ln">1051</span> }
<span class="ln">1052</span> 
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#9			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\application\controllers\SurveyAdministrationController.php(2362): <strong>surveyGetXMLData</strong>(644215, array())				</div>

				<div class="code"><pre><span class="ln">2357</span>                 ) {
<span class="ln">2358</span>                     $aData[&#039;sErrorMessage&#039;] = gT(&quot;We are sorry but you don&#039;t have permissions to do this.&quot;);
<span class="ln">2359</span>                     $aData[&#039;bFailed&#039;] = true;
<span class="ln">2360</span>                 } else {
<span class="ln">2361</span>                     Yii::app()-&gt;loadHelper(&#039;export&#039;);
<span class="error"><span class="ln error-ln">2362</span>                     $copysurveydata = surveyGetXMLData($iSurveyID, $aExcludes);
</span><span class="ln">2363</span>                     if (empty(Yii::app()-&gt;request-&gt;getPost(&#039;copysurveyname&#039;))) {
<span class="ln">2364</span>                         $sourceSurvey = Survey::model()-&gt;findByPk($iSurveyID);
<span class="ln">2365</span>                         $sNewSurveyName = $sourceSurvey-&gt;currentLanguageSettings-&gt;surveyls_title;
<span class="ln">2366</span>                     } else {
<span class="ln">2367</span>                         $sNewSurveyName = Yii::app()-&gt;request-&gt;getPost(&#039;copysurveyname&#039;);
</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;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\actions\CInlineAction.php(49): <strong>SurveyAdministrationController</strong>-><strong>actionCopy</strong>()				</div>

				<div class="code"><pre><span class="ln">44</span>         $controller=$this-&gt;getController();
<span class="ln">45</span>         $method=new ReflectionMethod($controller, $methodName);
<span class="ln">46</span>         if($method-&gt;getNumberOfParameters()&gt;0)
<span class="ln">47</span>             return $this-&gt;runWithParamsInternal($controller, $method, $params);
<span class="ln">48</span> 
<span class="error"><span class="ln error-ln">49</span>         $controller-&gt;$methodName();
</span><span class="ln">50</span>         return true;
<span class="ln">51</span>     }
<span class="ln">52</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;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(308): <strong>CInlineAction</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">
				#12			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\filters\CFilterChain.php(134): <strong>CController</strong>-><strong>runAction</strong>(CInlineAction)				</div>

				<div class="code"><pre><span class="ln">129</span>             $filter=$this-&gt;itemAt($this-&gt;filterIndex++);
<span class="ln">130</span>             Yii::trace(&#039;Running filter &#039;.($filter instanceof CInlineFilter ? get_class($this-&gt;controller).&#039;.filter&#039;.$filter-&gt;name.&#039;()&#039;:get_class($filter).&#039;.filter()&#039;),&#039;system.web.filters.CFilterChain&#039;);
<span class="ln">131</span>             $filter-&gt;filter($this);
<span class="ln">132</span>         }
<span class="ln">133</span>         else
<span class="error"><span class="ln error-ln">134</span>             $this-&gt;controller-&gt;runAction($this-&gt;action);
</span><span class="ln">135</span>     }
<span class="ln">136</span> }</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;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(1119): <strong>CFilterChain</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">1114</span>      * @throws CHttpException if the current request is not a POST request
<span class="ln">1115</span>      */
<span class="ln">1116</span>     public function filterPostOnly($filterChain)
<span class="ln">1117</span>     {
<span class="ln">1118</span>         if(Yii::app()-&gt;getRequest()-&gt;getIsPostRequest())
<span class="error"><span class="ln error-ln">1119</span>             $filterChain-&gt;run();
</span><span class="ln">1120</span>         else
<span class="ln">1121</span>             throw new CHttpException(400,Yii::t(&#039;yii&#039;,&#039;Your request is invalid.&#039;));
<span class="ln">1122</span>     }
<span class="ln">1123</span> 
<span class="ln">1124</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#14			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\filters\CInlineFilter.php(58): <strong>CController</strong>-><strong>filterPostOnly</strong>(CFilterChain)				</div>

				<div class="code"><pre><span class="ln">53</span>      * @param CFilterChain $filterChain the filter chain that the filter is on.
<span class="ln">54</span>      */
<span class="ln">55</span>     public function filter($filterChain)
<span class="ln">56</span>     {
<span class="ln">57</span>         $method=&#039;filter&#039;.$this-&gt;name;
<span class="error"><span class="ln error-ln">58</span>         $filterChain-&gt;controller-&gt;$method($filterChain);
</span><span class="ln">59</span>     }
<span class="ln">60</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#15			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\filters\CFilterChain.php(131): <strong>CInlineFilter</strong>-><strong>filter</strong>(CFilterChain)				</div>

				<div class="code"><pre><span class="ln">126</span>     {
<span class="ln">127</span>         if($this-&gt;offsetExists($this-&gt;filterIndex))
<span class="ln">128</span>         {
<span class="ln">129</span>             $filter=$this-&gt;itemAt($this-&gt;filterIndex++);
<span class="ln">130</span>             Yii::trace(&#039;Running filter &#039;.($filter instanceof CInlineFilter ? get_class($this-&gt;controller).&#039;.filter&#039;.$filter-&gt;name.&#039;()&#039;:get_class($filter).&#039;.filter()&#039;),&#039;system.web.filters.CFilterChain&#039;);
<span class="error"><span class="ln error-ln">131</span>             $filter-&gt;filter($this);
</span><span class="ln">132</span>         }
<span class="ln">133</span>         else
<span class="ln">134</span>             $this-&gt;controller-&gt;runAction($this-&gt;action);
<span class="ln">135</span>     }
<span class="ln">136</span> }</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#16			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(291): <strong>CFilterChain</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">286</span>             $this-&gt;runAction($action);
<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="error"><span class="ln error-ln">291</span>             CFilterChain::create($this,$action,$filters)-&gt;run();
</span><span class="ln">292</span>             $this-&gt;_action=$priorAction;
<span class="ln">293</span>         }
<span class="ln">294</span>     }
<span class="ln">295</span> 
<span class="ln">296</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#17			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(265): <strong>CController</strong>-><strong>runActionWithFilters</strong>(CInlineAction, array(&quot;postOnly + copy&quot;))				</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 app collapsed">
			<td class="number">
				#18			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\application\controllers\LSBaseController.php(145): <strong>CController</strong>-><strong>run</strong>(&quot;copy&quot;)				</div>

				<div class="code"><pre><span class="ln">140</span>                     $this-&gt;redirect(array(&#039;/admin/authentication/sa/login&#039;));
<span class="ln">141</span>                 }
<span class="ln">142</span>             }
<span class="ln">143</span>         }
<span class="ln">144</span> 
<span class="error"><span class="ln error-ln">145</span>         parent::run($action);
</span><span class="ln">146</span>     }
<span class="ln">147</span> 
<span class="ln">148</span>     /**
<span class="ln">149</span>      * Load and set session vars
<span class="ln">150</span>      *
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#19			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CWebApplication.php(282): <strong>LSBaseController</strong>-><strong>run</strong>(&quot;copy&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">
				#20			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CWebApplication.php(141): <strong>CWebApplication</strong>-><strong>runController</strong>(&quot;surveyAdministration/copy&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">
				#21			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\vendor\yiisoft\yii\framework\base\CApplication.php(185): <strong>CWebApplication</strong>-><strong>processRequest</strong>()				</div>

				<div class="code"><pre><span class="ln">180</span>     public function run()
<span class="ln">181</span>     {
<span class="ln">182</span>         if($this-&gt;hasEventHandler(&#039;onBeginRequest&#039;))
<span class="ln">183</span>             $this-&gt;onBeginRequest(new CEvent($this));
<span class="ln">184</span>         register_shutdown_function(array($this,&#039;end&#039;),0,false);
<span class="error"><span class="ln error-ln">185</span>         $this-&gt;processRequest();
</span><span class="ln">186</span>         if($this-&gt;hasEventHandler(&#039;onEndRequest&#039;))
<span class="ln">187</span>             $this-&gt;onEndRequest(new CEvent($this));
<span class="ln">188</span>     }
<span class="ln">189</span> 
<span class="ln">190</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#22			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\laragon\www\limesurvey\index.php(161): <strong>CApplication</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">156</span> require_once APPPATH . &#039;core/LSYii_Application&#039; . EXT;
<span class="ln">157</span> 
<span class="ln">158</span> $config = require_once(APPPATH . &#039;config/internal&#039; . EXT);
<span class="ln">159</span> 
<span class="ln">160</span> Yii::$enableIncludePath = false;
<span class="error"><span class="ln error-ln">161</span> Yii::createApplication(&#039;LSYii_Application&#039;, $config)-&gt;run();
</span><span class="ln">162</span> 
<span class="ln">163</span> /* End of file index.php */
<span class="ln">164</span> /* Location: ./index.php */
</pre></div>			</td>
		</tr>
				</table>
	</div>

	<div class="version">
		2024-02-09 15:21:13 Apache/2.4.54 (Win64) OpenSSL/1.1.1q mod_fcgid/2.3.10-dev <a href="https://www.yiiframework.com/">Yii Framework</a>/1.1.29	</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>
ValueError.htm (37,192 bytes)   
ValueError.txt (17,224 bytes)   
  ValueError

XMLWriter::startElement(): Argument #2 must be a valid element name,
"@attributes" given

C:\laragon\www\limesurvey\application\helpers\export_helper.php(3152)

3140 * @param int $sParentKey parent key
3141 */
3142 function writeXmlFromArray(XMLWriter $xml, $aData, $sParentKey = '')
3143 {
3144     $bCloseElement = false;
3145     foreach ($aData as $key => $value) {
3146         if (!empty($value)) {
3147             if (is_array($value)) {
3148                 if (is_numeric($key)) {
3149                     $xml->startElement($sParentKey);
3150                     $bCloseElement = true;
3151                 } elseif (isAssociativeArray($value)) {
3152                     $xml->startElement($key);
3153                     $bCloseElement = true;
3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);
3158                 } else {
3159                     writeXmlFromArray($xml, $value, $key);
3160                 }
3161 
3162                 if ($bCloseElement === true) {
3163                     $xml->endElement();
3164                     $bCloseElement = false;


    Stack Trace

#0 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3152):
*XMLWriter*->*startElement*("@attributes")

3147             if (is_array($value)) {
3148                 if (is_numeric($key)) {
3149                     $xml->startElement($sParentKey);
3150                     $bCloseElement = true;
3151                 } elseif (isAssociativeArray($value)) {
3152                     $xml->startElement($key);
3153                     $bCloseElement = true;
3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);

#1 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159):
*writeXmlFromArray*(XMLWriter, array("@attributes" => array("type" =>
"dropdown", "category" => "Simple options", "width" => "12", "title" =>
"Variations", ...)), "cssframework")

3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);
3158                 } else {
3159                     writeXmlFromArray($xml, $value, $key);
3160                 }
3161 
3162                 if ($bCloseElement === true) {
3163                     $xml->endElement();
3164                     $bCloseElement = false;

#2 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159):
*writeXmlFromArray*(XMLWriter, array("container" => "on",
"zebrastriping" => "off", "stickymatrixheaders" => "off",
"greyoutselected" => "off", ...), "options")

3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);
3158                 } else {
3159                     writeXmlFromArray($xml, $value, $key);
3160                 }
3161 
3162                 if ($bCloseElement === true) {
3163                     $xml->endElement();
3164                     $bCloseElement = false;

#3 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159):
*writeXmlFromArray*(XMLWriter, array("options" => array("container" =>
"on", "zebrastriping" => "off", "stickymatrixheaders" => "off",
"greyoutselected" => "off", ...)), "config")

3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);
3158                 } else {
3159                     writeXmlFromArray($xml, $value, $key);
3160                 }
3161 
3162                 if ($bCloseElement === true) {
3163                     $xml->endElement();
3164                     $bCloseElement = false;

#4 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3157):
*writeXmlFromArray*(XMLWriter, array("id" => null, "sid" => 644215,
"template_name" => "HQCfruity", "config" => array("options" =>
array("container" => "on", "zebrastriping" => "off",
"stickymatrixheaders" => "off", "greyoutselected" => "off", ...))),
"theme")

3152                     $xml->startElement($key);
3153                     $bCloseElement = true;
3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);
3158                 } else {
3159                     writeXmlFromArray($xml, $value, $key);
3160                 }
3161 
3162                 if ($bCloseElement === true) {

#5 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159):
*writeXmlFromArray*(XMLWriter, array(array("id" => null, "sid" =>
644215, "template_name" => "bootswatch", "config" => array("options" =>
array("font" => "noto", "cssframework" =>
"invalid:image::theme::css\variations\cyborg.min.css", "brandlogofile"
=> "image::theme::files\logo.png", "container" => "off", ...))),
array("id" => null, "sid" => 644215, "template_name" => "HQCfruity",
"config" => array("options" => array("container" => "on",
"zebrastriping" => "off", "stickymatrixheaders" => "off",
"greyoutselected" => "off", ...))), array("id" => null, "sid" => 644215,
"template_name" => "vanilla", "config" => array("options" =>
array("container" => "on", "zebrastriping" => "off",
"stickymatrixheaders" => "off", "greyoutselected" => "off", ...)))),
"theme")

3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);
3158                 } else {
3159                     writeXmlFromArray($xml, $value, $key);
3160                 }
3161 
3162                 if ($bCloseElement === true) {
3163                     $xml->endElement();
3164                     $bCloseElement = false;

#6 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3159):
*writeXmlFromArray*(XMLWriter, array("theme" => array(array("id" =>
null, "sid" => 644215, "template_name" => "bootswatch", "config" =>
array("options" => array("font" => "noto", "cssframework" =>
"invalid:image::theme::css\variations\cyborg.min.css", "brandlogofile"
=> "image::theme::files\logo.png", "container" => "off", ...))),
array("id" => null, "sid" => 644215, "template_name" => "HQCfruity",
"config" => array("options" => array("container" => "on",
"zebrastriping" => "off", "stickymatrixheaders" => "off",
"greyoutselected" => "off", ...))), array("id" => null, "sid" => 644215,
"template_name" => "vanilla", "config" => array("options" =>
array("container" => "on", "zebrastriping" => "off",
"stickymatrixheaders" => "off", "greyoutselected" => "off", ...))))),
"themes_inherited")

3154                 }
3155 
3156                 if (is_numeric($key)) {
3157                     writeXmlFromArray($xml, $value, $sParentKey);
3158                 } else {
3159                     writeXmlFromArray($xml, $value, $key);
3160                 }
3161 
3162                 if ($bCloseElement === true) {
3163                     $xml->endElement();
3164                     $bCloseElement = false;

#7 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(3205):
*writeXmlFromArray*(XMLWriter, array("themes_inherited" => array("theme"
=> array(array("id" => null, "sid" => 644215, "template_name" =>
"bootswatch", "config" => array("options" => array("font" => "noto",
"cssframework" => "invalid:image::theme::css\variations\cyborg.min.css",
"brandlogofile" => "image::theme::files\logo.png", "container" =>
"off", ...))), array("id" => null, "sid" => 644215, "template_name" =>
"HQCfruity", "config" => array("options" => array("container" => "on",
"zebrastriping" => "off", "stickymatrixheaders" => "off",
"greyoutselected" => "off", ...))), array("id" => null, "sid" => 644215,
"template_name" => "vanilla", "config" => array("options" =>
array("container" => "on", "zebrastriping" => "off",
"stickymatrixheaders" => "off", "greyoutselected" => "off", ...)))))))

3200             }
3201         }
3202     }
3203 
3204     if ($oXml !== null && !empty($aThemeData)) {
3205         writeXmlFromArray($oXml, $aThemeData);
3206     }
3207 }
3208 
3209 
3210 function MaskFormula($sValue)

#8 	
+
–
 C:\laragon\www\limesurvey\application\helpers\export_helper.php(1047):
*surveyGetThemeConfiguration*(644215, XMLWriter, true, "themes_inherited")

1042     $xml->endElement();
1043     surveyGetXMLStructure($iSurveyID, $xml, $exclude);
1044     // survey theme configuration - db values
1045     surveyGetThemeConfiguration($iSurveyID, $xml, false, 'themes');
1046     // survey theme configuration - inherited values
1047     surveyGetThemeConfiguration($iSurveyID, $xml, true, 'themes_inherited');
1048     $xml->endElement(); // close columns
1049     $xml->endDocument();
1050     return $xml->outputMemory(true);
1051 }
1052 

#9 	
+
–
 C:
\laragon\www\limesurvey\application\controllers\SurveyAdministrationController.php(2362): *surveyGetXMLData*(644215, array())

2357                 ) {
2358                     $aData['sErrorMessage'] = gT("We are sorry but you don't have permissions to do this.");
2359                     $aData['bFailed'] = true;
2360                 } else {
2361                     Yii::app()->loadHelper('export');
2362                     $copysurveydata = surveyGetXMLData($iSurveyID, $aExcludes);
2363                     if (empty(Yii::app()->request->getPost('copysurveyname'))) {
2364                         $sourceSurvey = Survey::model()->findByPk($iSurveyID);
2365                         $sNewSurveyName = $sourceSurvey->currentLanguageSettings->surveyls_title;
2366                     } else {
2367                         $sNewSurveyName = Yii::app()->request->getPost('copysurveyname');

#10 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\actions\CInlineAction.php(49): *SurveyAdministrationController*->*actionCopy*()

44         $controller=$this->getController();
45         $method=new ReflectionMethod($controller, $methodName);
46         if($method->getNumberOfParameters()>0)
47             return $this->runWithParamsInternal($controller, $method, $params);
48 
49         $controller->$methodName();
50         return true;
51     }
52 }

#11 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(308): *CInlineAction*->*runWithParams*(array())

303     {
304         $priorAction=$this->_action;
305         $this->_action=$action;
306         if($this->beforeAction($action))
307         {
308             if($action->runWithParams($this->getActionParams())===false)
309                 $this->invalidActionParams($action);
310             else
311                 $this->afterAction($action);
312         }
313         $this->_action=$priorAction;

#12 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\filters\CFilterChain.php(134): *CController*->*runAction*(CInlineAction)

129             $filter=$this->itemAt($this->filterIndex++);
130             Yii::trace('Running filter '.($filter instanceof CInlineFilter ? get_class($this->controller).'.filter'.$filter->name.'()':get_class($filter).'.filter()'),'system.web.filters.CFilterChain');
131             $filter->filter($this);
132         }
133         else
134             $this->controller->runAction($this->action);
135     }
136 }

#13 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(1119): *CFilterChain*->*run*()

1114      * @throws CHttpException if the current request is not a POST request
1115      */
1116     public function filterPostOnly($filterChain)
1117     {
1118         if(Yii::app()->getRequest()->getIsPostRequest())
1119             $filterChain->run();
1120         else
1121             throw new CHttpException(400,Yii::t('yii','Your request is invalid.'));
1122     }
1123 
1124     /**

#14 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\filters\CInlineFilter.php(58): *CController*->*filterPostOnly*(CFilterChain)

53      * @param CFilterChain $filterChain the filter chain that the filter is on.
54      */
55     public function filter($filterChain)
56     {
57         $method='filter'.$this->name;
58         $filterChain->controller->$method($filterChain);
59     }
60 }

#15 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\filters\CFilterChain.php(131): *CInlineFilter*->*filter*(CFilterChain)

126     {
127         if($this->offsetExists($this->filterIndex))
128         {
129             $filter=$this->itemAt($this->filterIndex++);
130             Yii::trace('Running filter '.($filter instanceof CInlineFilter ? get_class($this->controller).'.filter'.$filter->name.'()':get_class($filter).'.filter()'),'system.web.filters.CFilterChain');
131             $filter->filter($this);
132         }
133         else
134             $this->controller->runAction($this->action);
135     }
136 }

#16 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(291): *CFilterChain*->*run*()

286             $this->runAction($action);
287         else
288         {
289             $priorAction=$this->_action;
290             $this->_action=$action;
291             CFilterChain::create($this,$action,$filters)->run();
292             $this->_action=$priorAction;
293         }
294     }
295 
296     /**

#17 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CController.php(265): *CController*->*runActionWithFilters*(CInlineAction, array("postOnly + copy"))

260         {
261             if(($parent=$this->getModule())===null)
262                 $parent=Yii::app();
263             if($parent->beforeControllerAction($this,$action))
264             {
265                 $this->runActionWithFilters($action,$this->filters());
266                 $parent->afterControllerAction($this,$action);
267             }
268         }
269         else
270             $this->missingAction($actionID);

#18 	
+
–
 C:
\laragon\www\limesurvey\application\controllers\LSBaseController.php(145): *CController*->*run*("copy")

140                     $this->redirect(array('/admin/authentication/sa/login'));
141                 }
142             }
143         }
144 
145         parent::run($action);
146     }
147 
148     /**
149      * Load and set session vars
150      *

#19 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CWebApplication.php(282): *LSBaseController*->*run*("copy")

277         {
278             list($controller,$actionID)=$ca;
279             $oldController=$this->_controller;
280             $this->_controller=$controller;
281             $controller->init();
282             $controller->run($actionID);
283             $this->_controller=$oldController;
284         }
285         else
286             throw new CHttpException(404,Yii::t('yii','Unable to resolve the request "{route}".',
287                 array('{route}'=>$route===''?$this->defaultController:$route)));

#20 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\web\CWebApplication.php(141): *CWebApplication*->*runController*("surveyAdministration/copy")

136             foreach(array_splice($this->catchAllRequest,1) as $name=>$value)
137                 $_GET[$name]=$value;
138         }
139         else
140             $route=$this->getUrlManager()->parseUrl($this->getRequest());
141         $this->runController($route);
142     }
143 
144     /**
145      * Registers the core application components.
146      * This method overrides the parent implementation by registering additional core components.

#21 	
+
–
 C:
\laragon\www\limesurvey\vendor\yiisoft\yii\framework\base\CApplication.php(185): *CWebApplication*->*processRequest*()

180     public function run()
181     {
182         if($this->hasEventHandler('onBeginRequest'))
183             $this->onBeginRequest(new CEvent($this));
184         register_shutdown_function(array($this,'end'),0,false);
185         $this->processRequest();
186         if($this->hasEventHandler('onEndRequest'))
187             $this->onEndRequest(new CEvent($this));
188     }
189 
190     /**

#22 	
+
–
 C:\laragon\www\limesurvey\index.php(161): *CApplication*->*run*()

156 require_once APPPATH . 'core/LSYii_Application' . EXT;
157 
158 $config = require_once(APPPATH . 'config/internal' . EXT);
159 
160 Yii::$enableIncludePath = false;
161 Yii::createApplication('LSYii_Application', $config)->run();
162 
163 /* End of file index.php */
164 /* Location: ./index.php */

2024-02-09 15:21:13 Apache/2.4.54 (Win64) OpenSSL/1.1.1q mod_fcgid/
2.3.10-dev Yii Framework <https://www.yiiframework.com/>/1.1.29
ValueError.txt (17,224 bytes)   
DenisChenu

DenisChenu

2024-05-07 11:42

developer   ~80080

@tibor.pacalat : I don't have really idea on how to fix this.

I can just add an hack, but all TemlplateConfiguration can be rewrite here

tibor.pacalat

tibor.pacalat

2024-05-16 16:35

administrator   ~80121

I don't quite understand your PR @DenisChenu. Can you explain it to me? Also, how do I reproduce the issue?

DenisChenu

DenisChenu

2024-05-16 18:23

developer   ~80125

Argl … I can not reproduce today !

But i some condition (find how) cssframework didn't have DB values and return array of @attributes

You see this with Html Error XMLWriter::startElement(): Argument #2 must be a valid element name, "@attributes" given

Then i just check if it's a real array of value or only a array of attributes

DenisChenu

DenisChenu

2024-05-16 18:24

developer   ~80126

I think it can be with OLD theme still in DB but not 6.X compatible ?

Issue History

Date Modified Username Field Change
2024-02-09 12:32 riadh2020 New Issue
2024-02-09 12:44 riadh2020 Issue Monitored: riadh2020
2024-02-09 12:44 riadh2020 Bug heat 0 => 2
2024-02-09 15:40 DenisChenu Note Added: 79437
2024-02-09 15:40 DenisChenu Bug heat 2 => 4
2024-02-09 16:27 riadh2020 Note Added: 79438
2024-02-09 16:27 riadh2020 File Added: ValueError.htm
2024-02-09 16:27 riadh2020 File Added: ValueError.txt
2024-02-09 16:27 riadh2020 Bug heat 4 => 6
2024-03-21 15:25 tibor.pacalat Assigned To => DenisChenu
2024-03-21 15:25 tibor.pacalat Status new => assigned
2024-05-07 11:42 DenisChenu Status assigned => confirmed
2024-05-07 11:42 DenisChenu Note Added: 80080
2024-05-14 18:42 DenisChenu Assigned To DenisChenu => tibor.pacalat
2024-05-14 18:42 DenisChenu Status confirmed => ready for code review
2024-05-16 16:35 tibor.pacalat Note Added: 80121
2024-05-16 16:35 tibor.pacalat Bug heat 6 => 8
2024-05-16 18:23 DenisChenu Note Added: 80125
2024-05-16 18:24 DenisChenu Note Added: 80126
2024-06-28 10:58 guest Bug heat 8 => 14
2024-10-27 13:20 fullpowerone Bug heat 14 => 20
2024-10-27 13:31 fullpowerone Issue Monitored: fullpowerone
2024-10-27 13:31 fullpowerone Bug heat 20 => 22