View Issue Details

IDProjectCategoryView StatusLast Update
15810Bug reportsUser / Groups / Rolespublic2021-03-10 17:08
ReporterJMI Assigned Toollehar  
PrioritynoneSeveritypartial_block 
Status feedbackResolutionopen 
Product Version3.21.3 
Summary15810: PHP notice : usergroups interface breakdown
Descriptionusergroups interface breakdown when we use debug mode in the config.php
Steps To Reproducedebug = 2 in your config.php
and try to acces in the usergroups interface
TagsNo tags attached.
Complete LimeSurvey version number (& build)Version 3.21.4+200108
I will donate to the project if issue is resolvedNo
BrowserFirefox
Database & DB-Version10.1.41-MariaDB-0+deb9u1
Server OS (if known)Debian 9.9
Webserver software & version (if known)Apache/2.4.25 (Debian)
PHP VersionPHP Version 7.0.33-0+deb9u6

Activities

JMI

JMI

2020-02-01 13:42

reporter  

PHPnotice-erreur-acces-interface-creation-groupes.html (40,998 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">
		Trying to get property of non-object	</p>

	<div class="source">
		<p class="file">/var/www/limesurvey.?????.????/www/framework/base/CComponent.php(614) : eval()'d code(1)</p>
			</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;/var/www/limesurvey.?????.????/www/framework/base/CComponent.php(614): <strong>eval</strong>()				</div>

				<div class="code"><pre><span class="ln">609</span>         if(is_string($_expression_))
<span class="ln">610</span>         {
<span class="ln">611</span>             extract($_data_);
<span class="ln">612</span>             try
<span class="ln">613</span>             {
<span class="error"><span class="ln error-ln">614</span>                 return eval('return ' . $_expression_ . ';');
</span><span class="ln">615</span>             }
<span class="ln">616</span>             catch (ParseError $e)
<span class="ln">617</span>             {
<span class="ln">618</span>                 return false;
<span class="ln">619</span>             }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#1			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/zii/widgets/grid/CDataColumn.php(142): <strong>CComponent</strong>-&gt;<strong>evaluateExpression</strong>("$data-&gt;owner-&gt;users_name", array("data" =&gt; UserGroup, "row" =&gt; 2))				</div>

				<div class="code"><pre><span class="ln">137</span>      */
<span class="ln">138</span>     public function getDataCellContent($row)
<span class="ln">139</span>     {
<span class="ln">140</span>         $data=$this-&gt;grid-&gt;dataProvider-&gt;data[$row];
<span class="ln">141</span>         if($this-&gt;value!==null)
<span class="error"><span class="ln error-ln">142</span>             $value=$this-&gt;evaluateExpression($this-&gt;value,array('data'=&gt;$data,'row'=&gt;$row));
</span><span class="ln">143</span>         elseif($this-&gt;name!==null)
<span class="ln">144</span>             $value=CHtml::value($data,$this-&gt;name);
<span class="ln">145</span>         return $value===null ? $this-&gt;grid-&gt;nullDisplay : $this-&gt;grid-&gt;getFormatter()-&gt;format($value,$this-&gt;type);
<span class="ln">146</span>     }
<span class="ln">147</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#2			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/zii/widgets/grid/CGridColumn.php(231): <strong>CDataColumn</strong>-&gt;<strong>getDataCellContent</strong>(2)				</div>

				<div class="code"><pre><span class="ln">226</span>      * @param mixed $data the data associated with the row
<span class="ln">227</span>      * @deprecated since 1.1.16. Use {@link getDataCellContent()} instead.
<span class="ln">228</span>      */
<span class="ln">229</span>     protected function renderDataCellContent($row,$data)
<span class="ln">230</span>     {
<span class="error"><span class="ln error-ln">231</span>         echo $this-&gt;getDataCellContent($row);
</span><span class="ln">232</span>     }
<span class="ln">233</span> 
<span class="ln">234</span>     /**
<span class="ln">235</span>      * Returns the filter cell content.
<span class="ln">236</span>      * The default implementation simply returns an empty column.
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#3			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/zii/widgets/grid/CGridColumn.php(154): <strong>CGridColumn</strong>-&gt;<strong>renderDataCellContent</strong>(2, UserGroup)				</div>

				<div class="code"><pre><span class="ln">149</span>                 else
<span class="ln">150</span>                     $options['class']=$class;
<span class="ln">151</span>             }
<span class="ln">152</span>         }
<span class="ln">153</span>         echo CHtml::openTag('td',$options);
<span class="error"><span class="ln error-ln">154</span>         $this-&gt;renderDataCellContent($row,$data);
</span><span class="ln">155</span>         echo '&lt;/td&gt;';
<span class="ln">156</span>     }
<span class="ln">157</span> 
<span class="ln">158</span>     /**
<span class="ln">159</span>      * Renders the footer cell.
</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;/var/www/limesurvey.?????.????/www/framework/zii/widgets/grid/CGridView.php(639): <strong>CGridColumn</strong>-&gt;<strong>renderDataCell</strong>(2)				</div>

				<div class="code"><pre><span class="ln">634</span>      * @param integer $row
<span class="ln">635</span>      * @since 1.1.16
<span class="ln">636</span>      */
<span class="ln">637</span>     protected function renderDataCell($column, $row)
<span class="ln">638</span>     {
<span class="error"><span class="ln error-ln">639</span>         $column-&gt;renderDataCell($row);
</span><span class="ln">640</span>     }
<span class="ln">641</span>     
<span class="ln">642</span>     /**
<span class="ln">643</span>      * @return boolean whether the table should render a footer.
<span class="ln">644</span>      * This is true if any of the {@link columns} has a true {@link CGridColumn::hasFooter} value.
</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;/var/www/limesurvey.?????.????/www/framework/zii/widgets/grid/CGridView.php(623): <strong>CGridView</strong>-&gt;<strong>renderDataCell</strong>(TbDataColumn, 2)				</div>

				<div class="code"><pre><span class="ln">618</span>                 $htmlOptions['class']=$class;
<span class="ln">619</span>         }
<span class="ln">620</span> 
<span class="ln">621</span>         echo CHtml::openTag('tr', $htmlOptions)."\n";
<span class="ln">622</span>         foreach($this-&gt;columns as $column)
<span class="error"><span class="ln error-ln">623</span>             $this-&gt;renderDataCell($column, $row);
</span><span class="ln">624</span>         echo "&lt;/tr&gt;\n";
<span class="ln">625</span>     }
<span class="ln">626</span> 
<span class="ln">627</span>     /**
<span class="ln">628</span>      * A seam for people extending CGridView to be able to hook onto the data cell rendering process.
</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;/var/www/limesurvey.?????.????/www/framework/zii/widgets/grid/CGridView.php(579): <strong>CGridView</strong>-&gt;<strong>renderTableRow</strong>(2)				</div>

				<div class="code"><pre><span class="ln">574</span>         echo "&lt;tbody&gt;\n";
<span class="ln">575</span> 
<span class="ln">576</span>         if($n&gt;0)
<span class="ln">577</span>         {
<span class="ln">578</span>             for($row=0;$row&lt;$n;++$row)
<span class="error"><span class="ln error-ln">579</span>                 $this-&gt;renderTableRow($row);
</span><span class="ln">580</span>         }
<span class="ln">581</span>         else
<span class="ln">582</span>         {
<span class="ln">583</span>             echo '&lt;tr&gt;&lt;td colspan="'.count($this-&gt;columns).'" class="empty"&gt;';
<span class="ln">584</span>             $this-&gt;renderEmptyText();
</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;/var/www/limesurvey.?????.????/www/framework/zii/widgets/grid/CGridView.php(489): <strong>CGridView</strong>-&gt;<strong>renderTableBody</strong>()				</div>

				<div class="code"><pre><span class="ln">484</span>         if($this-&gt;dataProvider-&gt;getItemCount()&gt;0 || $this-&gt;showTableOnEmpty)
<span class="ln">485</span>         {
<span class="ln">486</span>             echo "&lt;table class=\"{$this-&gt;itemsCssClass}\"&gt;\n";
<span class="ln">487</span>             $this-&gt;renderTableHeader();
<span class="ln">488</span>             ob_start();
<span class="error"><span class="ln error-ln">489</span>             $this-&gt;renderTableBody();
</span><span class="ln">490</span>             $body=ob_get_clean();
<span class="ln">491</span>             $this-&gt;renderTableFooter();
<span class="ln">492</span>             echo $body; // TFOOT must appear before TBODY according to the standard.
<span class="ln">493</span>             echo "&lt;/table&gt;";
<span class="ln">494</span>         }
</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;/var/www/limesurvey.?????.????/www/framework/zii/widgets/CBaseListView.php(181): <strong>CGridView</strong>-&gt;<strong>renderItems</strong>()				</div>

				<div class="code"><pre><span class="ln">176</span>     protected function renderSection($matches)
<span class="ln">177</span>     {
<span class="ln">178</span>         $method='render'.$matches[1];
<span class="ln">179</span>         if(method_exists($this,$method))
<span class="ln">180</span>         {
<span class="error"><span class="ln error-ln">181</span>             $this-&gt;$method();
</span><span class="ln">182</span>             $html=ob_get_contents();
<span class="ln">183</span>             ob_clean();
<span class="ln">184</span>             return $html;
<span class="ln">185</span>         }
<span class="ln">186</span>         else
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#9			</td>
			<td class="content">
				<div class="trace-file">
										&nbsp;unknown(0): <strong>CBaseListView</strong>-&gt;<strong>renderSection</strong>(array("{items}", "items"))				</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;/var/www/limesurvey.?????.????/www/framework/zii/widgets/CBaseListView.php(164): <strong>preg_replace_callback</strong>("/{(\w+)}/", array(TbGridView, "renderSection"), "{items}
&lt;div id='tokenListPager'&gt;&lt;div class="col-sm-4" id="massi...")				</div>

				<div class="code"><pre><span class="ln">159</span>      * The rendering results will replace the corresponding placeholders in {@link template}.
<span class="ln">160</span>      */
<span class="ln">161</span>     public function renderContent()
<span class="ln">162</span>     {
<span class="ln">163</span>         ob_start();
<span class="error"><span class="ln error-ln">164</span>         echo preg_replace_callback("/{(\w+)}/",array($this,'renderSection'),$this-&gt;template);
</span><span class="ln">165</span>         ob_end_flush();
<span class="ln">166</span>     }
<span class="ln">167</span> 
<span class="ln">168</span>     /**
<span class="ln">169</span>      * Renders a section.
</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;/var/www/limesurvey.?????.????/www/framework/zii/widgets/CBaseListView.php(149): <strong>CBaseListView</strong>-&gt;<strong>renderContent</strong>()				</div>

				<div class="code"><pre><span class="ln">144</span>     {
<span class="ln">145</span>         $this-&gt;registerClientScript();
<span class="ln">146</span> 
<span class="ln">147</span>         echo CHtml::openTag($this-&gt;tagName,$this-&gt;htmlOptions)."\n";
<span class="ln">148</span> 
<span class="error"><span class="ln error-ln">149</span>         $this-&gt;renderContent();
</span><span class="ln">150</span>         $this-&gt;renderKeys();
<span class="ln">151</span> 
<span class="ln">152</span>         echo CHtml::closeTag($this-&gt;tagName);
<span class="ln">153</span>     }
<span class="ln">154</span> 
</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;/var/www/limesurvey.?????.????/www/framework/web/CBaseController.php(182): <strong>CBaseListView</strong>-&gt;<strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">177</span>             return ob_get_clean();
<span class="ln">178</span>         }
<span class="ln">179</span>         else
<span class="ln">180</span>         {
<span class="ln">181</span>             $widget=$this-&gt;createWidget($className,$properties);
<span class="error"><span class="ln error-ln">182</span>             $widget-&gt;run();
</span><span class="ln">183</span>             return $widget;
<span class="ln">184</span>         }
<span class="ln">185</span>     }
<span class="ln">186</span> 
<span class="ln">187</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#13			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/application/views/admin/usergroup/usergroups_view.php(85): <strong>CBaseController</strong>-&gt;<strong>widget</strong>("bootstrap.widgets.TbGridView",
 array("dataProvider" =&gt; CActiveDataProvider, "id" =&gt; 
"usergroups-grid-mine", "emptyText" =&gt; "Aucun groupe 
d&amp;#039;utilisateurs n&amp;#039;a été trouvé.", "template" =&gt; 
"{items}
&lt;div id='tokenListPager'&gt;&lt;div class="col-sm-4" id="massi...", 
...))				</div>

				<div class="code"><pre><span class="ln">80</span> 
<span class="ln">81</span>                     ),
<span class="ln">82</span> 
<span class="ln">83</span>                     'htmlOptions'=&gt;array('style'=&gt;'cursor: pointer;', 'class'=&gt;'hoverAction'),
<span class="ln">84</span>                     'selectionChanged'=&gt;"function(id){window.location='" . Yii::app()-&gt;urlManager-&gt;createUrl('admin/usergroups/sa/view/ugid' ) . '/' . "' + $.fn.yiiGridView.getSelection(id.split(',', 1));}",
<span class="error"><span class="ln error-ln">85</span>                     'ajaxUpdate' =&gt; 'usergroups-grid-mine',
</span><span class="ln">86</span>                    ));
<span class="ln">87</span>             ?&gt;
<span class="ln">88</span>         &lt;/div&gt;
<span class="ln">89</span>     &lt;/div&gt;
<span class="ln">90</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;/var/www/limesurvey.?????.????/www/framework/web/CBaseController.php(126): <strong>require</strong>("/var/www/limesurvey.?????.????/www/application/views/admin/usergro...")				</div>

				<div class="code"><pre><span class="ln">121</span>             $data=$_data_;
<span class="ln">122</span>         if($_return_)
<span class="ln">123</span>         {
<span class="ln">124</span>             ob_start();
<span class="ln">125</span>             ob_implicit_flush(false);
<span class="error"><span class="ln error-ln">126</span>             require($_viewFile_);
</span><span class="ln">127</span>             return ob_get_clean();
<span class="ln">128</span>         }
<span class="ln">129</span>         else
<span class="ln">130</span>             require($_viewFile_);
<span class="ln">131</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;/var/www/limesurvey.?????.????/www/framework/web/CBaseController.php(95): <strong>CBaseController</strong>-&gt;<strong>renderInternal</strong>("/var/www/limesurvey.?????.????/www/application/views/admin/usergro...",
 array("ugid" =&gt; false, "imageurl" =&gt; 
"/themes/admin/Sea_Green/images/", "model" =&gt; UserGroup, 
"usergroupbar" =&gt; array("returnbutton" =&gt; array("url" =&gt; 
"admin/index", "text" =&gt; "Retour vers l’interface 
d’administration")), ...), true)				</div>

				<div class="code"><pre><span class="ln">090</span>     {
<span class="ln">091</span>         $widgetCount=count($this-&gt;_widgetStack);
<span class="ln">092</span>         if(($renderer=Yii::app()-&gt;getViewRenderer())!==null &amp;&amp; $renderer-&gt;fileExtension==='.'.CFileHelper::getExtension($viewFile))
<span class="ln">093</span>             $content=$renderer-&gt;renderFile($this,$viewFile,$data,$return);
<span class="ln">094</span>         else
<span class="error"><span class="ln error-ln">095</span>             $content=$this-&gt;renderInternal($viewFile,$data,$return);
</span><span class="ln">096</span>         if(count($this-&gt;_widgetStack)===$widgetCount)
<span class="ln">097</span>             return $content;
<span class="ln">098</span>         else
<span class="ln">099</span>         {
<span class="ln">100</span>             $widget=end($this-&gt;_widgetStack);
</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;/var/www/limesurvey.?????.????/www/framework/web/CController.php(872): <strong>CBaseController</strong>-&gt;<strong>renderFile</strong>("/var/www/limesurvey.?????.????/www/application/views/admin/usergro...",
 array("ugid" =&gt; false, "imageurl" =&gt; 
"/themes/admin/Sea_Green/images/", "model" =&gt; UserGroup, 
"usergroupbar" =&gt; array("returnbutton" =&gt; array("url" =&gt; 
"admin/index", "text" =&gt; "Retour vers l’interface 
d’administration")), ...), true)				</div>

				<div class="code"><pre><span class="ln">867</span>      */
<span class="ln">868</span>     public function renderPartial($view,$data=null,$return=false,$processOutput=false)
<span class="ln">869</span>     {
<span class="ln">870</span>         if(($viewFile=$this-&gt;getViewFile($view))!==false)
<span class="ln">871</span>         {
<span class="error"><span class="ln error-ln">872</span>             $output=$this-&gt;renderFile($viewFile,$data,true);
</span><span class="ln">873</span>             if($processOutput)
<span class="ln">874</span>                 $output=$this-&gt;processOutput($output);
<span class="ln">875</span>             if($return)
<span class="ln">876</span>                 return $output;
<span class="ln">877</span>             else
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#17			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/application/core/Survey_Common_Action.php(273): <strong>CController</strong>-&gt;<strong>renderPartial</strong>("/admin/usergroup/usergroups_view",
 array("ugid" =&gt; false, "imageurl" =&gt; 
"/themes/admin/Sea_Green/images/", "model" =&gt; UserGroup, 
"usergroupbar" =&gt; array("returnbutton" =&gt; array("url" =&gt; 
"admin/index", "text" =&gt; "Retour vers l’interface 
d’administration")), ...), true)				</div>

				<div class="code"><pre><span class="ln">268</span>                 if (is_numeric($sViewKey)) {
<span class="ln">269</span>                     $content .= Yii::app()-&gt;getController()-&gt;renderPartial($sViewPath.$viewUrl, $aData, true);
<span class="ln">270</span>                 } elseif (is_array($viewUrl)) {
<span class="ln">271</span>                     foreach ($viewUrl as $aSubData) {
<span class="ln">272</span>                         $aSubData = array_merge($aData, $aSubData);
<span class="error"><span class="ln error-ln">273</span>                         $content .= Yii::app()-&gt;getController()-&gt;renderPartial($sViewPath.$sViewKey, $aSubData, true);
</span><span class="ln">274</span>                     }
<span class="ln">275</span>                 }
<span class="ln">276</span>             } else {
<span class="ln">277</span>                 switch ($sViewKey) {
<span class="ln">278</span>                     //// We'll use some Bootstrap alerts, and call them inside each correct view.
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#18			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/application/core/Survey_Common_Action.php(346): <strong>Survey_Common_Action</strong>-&gt;<strong>renderCentralContents</strong>("usergroup",
 array("usergroups_view" =&gt; array(array())), array("ugid" =&gt; 
false, "imageurl" =&gt; "/themes/admin/Sea_Green/images/", "model" =&gt;
 UserGroup, "usergroupbar" =&gt; array("returnbutton" =&gt; array("url" 
=&gt; "admin/index", "text" =&gt; "Retour vers l’interface 
d’administration")), ...))				</div>

				<div class="code"><pre><span class="ln">341</span>             }
<span class="ln">342</span>         } else {
<span class="ln">343</span>             $renderFile = $basePath.'/'.$sRenderFile;
<span class="ln">344</span>         }
<span class="ln">345</span> 
<span class="error"><span class="ln error-ln">346</span>         $content = $this-&gt;renderCentralContents($sAction, $aViewUrls, $aData);
</span><span class="ln">347</span>         $out = $this-&gt;renderInternal($renderFile, ['content' =&gt; $content, 'aData' =&gt; $aData], true);
<span class="ln">348</span> 
<span class="ln">349</span>         App()-&gt;getClientScript()-&gt;render($out);
<span class="ln">350</span>         echo $out;
<span class="ln">351</span>     }
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#19			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/application/controllers/admin/usergroups.php(411): <strong>Survey_Common_Action</strong>-&gt;<strong>_renderWrappedTemplate</strong>("usergroup",
 array("usergroups_view" =&gt; array(array())), array("ugid" =&gt; 
false, "imageurl" =&gt; "/themes/admin/Sea_Green/images/", "model" =&gt;
 UserGroup, "usergroupbar" =&gt; array("returnbutton" =&gt; array("url" 
=&gt; "admin/index", "text" =&gt; "Retour vers l’interface 
d’administration")), ...), false)				</div>

				<div class="code"><pre><span class="ln">406</span>     {
<span class="ln">407</span>         App()-&gt;getClientScript()-&gt;registerPackage('jquery-tablesorter');
<span class="ln">408</span>         App()-&gt;getClientScript()-&gt;registerScriptFile(App()-&gt;getConfig('adminscripts').'users.js');
<span class="ln">409</span>         $aData['display']['menu_bars']['user_group'] = true;
<span class="ln">410</span> 
<span class="error"><span class="ln error-ln">411</span>         parent::_renderWrappedTemplate($sAction, $aViewUrls, $aData, $sRenderFile);
</span><span class="ln">412</span>     }
<span class="ln">413</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#20			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/application/controllers/admin/usergroups.php(343): <strong>Usergroups</strong>-&gt;<strong>_renderWrappedTemplate</strong>("usergroup",
 array("usergroups_view" =&gt; array(array())), array("ugid" =&gt; 
false, "imageurl" =&gt; "/themes/admin/Sea_Green/images/", "model" =&gt;
 UserGroup, "usergroupbar" =&gt; array("returnbutton" =&gt; array("url" 
=&gt; "admin/index", "text" =&gt; "Retour vers l’interface 
d’administration")), ...))				</div>

				<div class="code"><pre><span class="ln">338</span>         }
<span class="ln">339</span> 
<span class="ln">340</span>         if (!empty($header)) {
<span class="ln">341</span>             return array($aViewUrls, $aData);
<span class="ln">342</span>         } else {
<span class="error"><span class="ln error-ln">343</span>             $this-&gt;_renderWrappedTemplate('usergroup', $aViewUrls, $aData);
</span><span class="ln">344</span>         }
<span class="ln">345</span>     }
<span class="ln">346</span> 
<span class="ln">347</span>     /**
<span class="ln">348</span>      * @todo Doc
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#21			</td>
			<td class="content">
				<div class="trace-file">
										&nbsp;unknown(0): <strong>Usergroups</strong>-&gt;<strong>index</strong>(false, false)				</div>

							</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#22			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/web/actions/CAction.php(109): <strong>ReflectionMethod</strong>-&gt;<strong>invokeArgs</strong>(Usergroups, array(false, false))				</div>

				<div class="code"><pre><span class="ln">104</span>             elseif($param-&gt;isDefaultValueAvailable())
<span class="ln">105</span>                 $ps[]=$param-&gt;getDefaultValue();
<span class="ln">106</span>             else
<span class="ln">107</span>                 return false;
<span class="ln">108</span>         }
<span class="error"><span class="ln error-ln">109</span>         $method-&gt;invokeArgs($object,$ps);
</span><span class="ln">110</span>         return true;
<span class="ln">111</span>     }
<span class="ln">112</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#23			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/application/core/Survey_Common_Action.php(83): <strong>CAction</strong>-&gt;<strong>runWithParamsInternal</strong>(Usergroups, ReflectionMethod, array("sa" =&gt; "index"))				</div>

				<div class="code"><pre><span class="ln">78</span>             $oMethod = new ReflectionMethod($this, $sDefault);
<span class="ln">79</span>         }
<span class="ln">80</span> 
<span class="ln">81</span>         // We're all good to go, let's execute it
<span class="ln">82</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">83</span>         return parent::runWithParamsInternal($this, $oMethod, $params);
</span><span class="ln">84</span>     }
<span class="ln">85</span> 
<span class="ln">86</span>     /**
<span class="ln">87</span>      * Some functions have different parameters, which are just an alias of the
<span class="ln">88</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">
				#24			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/web/CController.php(308): <strong>Survey_Common_Action</strong>-&gt;<strong>runWithParams</strong>(array("sa" =&gt; "index"))				</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">
				#25			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/web/CController.php(286): <strong>CController</strong>-&gt;<strong>runAction</strong>(Usergroups)				</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">
				#26			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/web/CController.php(265): <strong>CController</strong>-&gt;<strong>runActionWithFilters</strong>(Usergroups, 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 app collapsed">
			<td class="number">
				#27			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/application/controllers/AdminController.php(158): <strong>CController</strong>-&gt;<strong>run</strong>("usergroups")				</div>

				<div class="code"><pre><span class="ln">153</span>                     $this-&gt;redirect(array('/admin/authentication/sa/login'));
<span class="ln">154</span>                 }
<span class="ln">155</span>             }
<span class="ln">156</span>         }
<span class="ln">157</span> 
<span class="error"><span class="ln error-ln">158</span>         return parent::run($action);
</span><span class="ln">159</span>     }
<span class="ln">160</span> 
<span class="ln">161</span>     /**
<span class="ln">162</span>      * Routes all the actions to their respective places
<span class="ln">163</span>      *
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#28			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/web/CWebApplication.php(282): <strong>AdminController</strong>-&gt;<strong>run</strong>("usergroups")				</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('yii','Unable to resolve the request "{route}".',
<span class="ln">287</span>                 array('{route}'=&gt;$route===''?$this-&gt;defaultController:$route)));
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#29			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/web/CWebApplication.php(141): <strong>CWebApplication</strong>-&gt;<strong>runController</strong>("admin/usergroups/sa/index")				</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">
				#30			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/framework/base/CApplication.php(185): <strong>CWebApplication</strong>-&gt;<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('onBeginRequest'))
<span class="ln">183</span>             $this-&gt;onBeginRequest(new CEvent($this));
<span class="ln">184</span>         register_shutdown_function(array($this,'end'),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('onEndRequest'))
<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">
				#31			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/limesurvey.?????.????/www/index.php(194): <strong>CApplication</strong>-&gt;<strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">189</span> require_once APPPATH . 'core/LSYii_Application' . EXT;
<span class="ln">190</span> 
<span class="ln">191</span> $config = require_once(APPPATH . 'config/internal' . EXT);
<span class="ln">192</span> 
<span class="ln">193</span> Yii::$enableIncludePath = false;
<span class="error"><span class="ln error-ln">194</span> Yii::createApplication('LSYii_Application', $config)-&gt;run();
</span><span class="ln">195</span> 
<span class="ln">196</span> /* End of file index.php */
<span class="ln">197</span> /* Location: ./index.php */
</pre></div>			</td>
		</tr>
				</tbody></table>
	</div>

	<div class="version">
		2020-01-30 14:00:15 Apache <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.21	</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>
ollehar

ollehar

2020-02-04 17:46

administrator   ~55717

Cannot reproduce with PHP 7.4. Will try with 7.0 also.
ollehar

ollehar

2020-02-04 18:00

administrator   ~55720

Can you show a screenshot of how it looks when debug = 0?
JMI

JMI

2020-02-04 18:41

reporter   ~55721

debug=>0 ok
debug=>1 ok
debug=>2 KO
JMI

JMI

2020-02-04 18:41

reporter  

debug=>2-KO.png (13,748 bytes)   
debug=>2-KO.png (13,748 bytes)   
debug=0-or-debug=1-OK.png (9,566 bytes)   
debug=0-or-debug=1-OK.png (9,566 bytes)   
ollehar

ollehar

2021-03-10 17:08

administrator   ~63047

You're using an outdated version of LimeSurvey. Please update to the latest version and check if the bug can still be reproduced. Thank you.

Issue History

Date Modified Username Field Change
2020-02-01 13:42 JMI New Issue
2020-02-01 13:42 JMI File Added: PHPnotice-erreur-acces-interface-creation-groupes.html
2020-02-04 17:46 ollehar Note Added: 55717
2020-02-04 18:00 ollehar Note Added: 55720
2020-02-04 18:00 ollehar Assigned To => ollehar
2020-02-04 18:00 ollehar Status new => feedback
2020-02-04 18:41 JMI Note Added: 55721
2020-02-04 18:41 JMI Status feedback => assigned
2020-02-04 18:41 JMI File Added: debug=>2-KO.png
2020-02-04 18:41 JMI File Added: debug=0-or-debug=1-OK.png
2021-03-10 17:08 ollehar Status assigned => feedback
2021-03-10 17:08 ollehar Note Added: 63047