View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 09687 | Bug reports | Survey editing | public | 2015-06-16 12:00 | 2015-06-29 11:11 |
| Reporter | LeDocteur | Assigned To | DenisChenu | ||
| Priority | normal | Severity | block | ||
| Status | closed | Resolution | fixed | ||
| Product Version | 2.06+ | ||||
| Fixed in Version | 2.06+ | ||||
| Summary | 09687: Crash when try to edit global parameter for a survey | ||||
| Description | When try to set global parameter for a survey, it crash and display Try to export and import survey same problem. See screenshot here : http://paste.opensuse.org/99361723 | ||||
| Steps To Reproduce | Log In Admin Panel > Choose a Survey > Edit Survey Preferences > Edit Main or Global parameter See screenshot here : http://paste.opensuse.org/45658320 | ||||
| Additional Information | PHP Info available here - http://carto.aduga.org/phpinfo.php | ||||
| Tags | No tags attached. | ||||
| Attached Files | CException.html (40,758 bytes)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>CException</title>
<style type="text/css">
/*<![CDATA[*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}
body{line-height:1;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:none;}
:focus{outline:0;}
ins{text-decoration:none;}
del{text-decoration:line-through;}
table{border-collapse:collapse;border-spacing:0;}
body {
font: normal 9pt "Verdana";
color: #000;
background: #fff;
}
h1 {
font: normal 18pt "Verdana";
color: #f00;
margin-bottom: .5em;
}
h2 {
font: normal 14pt "Verdana";
color: #800000;
margin-bottom: .5em;
}
h3 {
font: bold 11pt "Verdana";
}
pre {
font: normal 11pt Menlo, Consolas, "Lucida Console", Monospace;
}
pre span.error {
display: block;
background: #fce3e3;
}
pre span.ln {
color: #999;
padding-right: 0.5em;
border-right: 1px solid #ccc;
}
pre span.error-ln {
font-weight: bold;
}
.container {
margin: 1em 4em;
}
.version {
color: gray;
font-size: 8pt;
border-top: 1px solid #aaa;
padding-top: 1em;
margin-bottom: 1em;
}
.message {
color: #000;
padding: 1em;
font-size: 11pt;
background: #f3f3f3;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
margin-bottom: 1em;
line-height: 160%;
}
.source {
margin-bottom: 1em;
}
.code pre {
background-color: #ffe;
margin: 0.5em 0;
padding: 0.5em;
line-height: 125%;
border: 1px solid #eee;
}
.source .file {
margin-bottom: 1em;
font-weight: bold;
}
.traces {
margin: 2em 0;
}
.trace {
margin: 0.5em 0;
padding: 0.5em;
}
.trace.app {
border: 1px dashed #c00;
}
.trace .number {
text-align: right;
width: 2em;
padding: 0.5em;
}
.trace .content {
padding: 0.5em;
}
.trace .plus,
.trace .minus {
display:inline;
vertical-align:middle;
text-align:center;
border:1px solid #000;
color:#000;
font-size:10px;
line-height:10px;
margin:0;
padding:0 1px;
width:10px;
height:10px;
}
.trace.collapsed .minus,
.trace.expanded .plus,
.trace.collapsed pre {
display: none;
}
.trace-file {
cursor: pointer;
padding: 0.2em;
}
.trace-file:hover {
background: #f0ffff;
}
/*]]>*/
</style>
</head>
<body>
<div class="container">
<h1>CException</h1>
<p class="message">
"data" attribute cannot be blank </p>
<div class="source">
<p class="file">/srv/www/htdocs/limesurvey/application/extensions/bootstrap/widgets/TbSelect2.php(41)</p>
<div class="code"><pre><span class="ln">29</span> public $asDropDownList = true;
<span class="ln">30</span> /**
<span class="ln">31</span> * @var
<span class="ln">32</span> */
<span class="ln">33</span> public $options;
<span class="ln">34</span>
<span class="ln">35</span> /**
<span class="ln">36</span> * Initializes the widget.
<span class="ln">37</span> */
<span class="ln">38</span> public function init()
<span class="ln">39</span> {
<span class="ln">40</span> if(empty($this->data) && $this->asDropDownList === true)
<span class="error"><span class="ln error-ln">41</span> throw new CException(Yii::t('zii', '"data" attribute cannot be blank'));
</span><span class="ln">42</span> }
<span class="ln">43</span>
<span class="ln">44</span> /**
<span class="ln">45</span> * Runs the widget.
<span class="ln">46</span> */
<span class="ln">47</span> public function run()
<span class="ln">48</span> {
<span class="ln">49</span> list($name, $id) = $this->resolveNameID();
<span class="ln">50</span>
<span class="ln">51</span> if ($this->hasModel())
<span class="ln">52</span> {
<span class="ln">53</span> if($this->form)
</pre></div> </div>
<div class="traces">
<h2>Stack Trace</h2>
<table style="width:100%;">
<tbody><tr class="trace core collapsed">
<td class="number">
#0 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/framework/web/CBaseController.php(147): <strong>TbSelect2</strong>-><strong>init</strong>() </div>
<div class="code"><pre><span class="ln">142</span> * @return CWidget the fully initialized widget instance.
<span class="ln">143</span> */
<span class="ln">144</span> public function createWidget($className,$properties=array())
<span class="ln">145</span> {
<span class="ln">146</span> $widget=Yii::app()->getWidgetFactory()->createWidget($this,$className,$properties);
<span class="error"><span class="ln error-ln">147</span> $widget->init();
</span><span class="ln">148</span> return $widget;
<span class="ln">149</span> }
<span class="ln">150</span>
<span class="ln">151</span> /**
<span class="ln">152</span> * Creates a widget and executes it.
</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>
/srv/www/htdocs/limesurvey/framework/web/CBaseController.php(166): <strong>CBaseController</strong>-><strong>createWidget</strong>("ext.bootstrap.widgets.TbSelect2",
array("data" => array(), "name" => "additional_languages",
"value" => array(), "options" => array("minimumResultsForSearch"
=> 1000, "dropdownAutoWidth" => true, "width" => "resolve"),
...)) </div>
<div class="code"><pre><span class="ln">161</span> {
<span class="ln">162</span> if($captureOutput)
<span class="ln">163</span> {
<span class="ln">164</span> ob_start();
<span class="ln">165</span> ob_implicit_flush(false);
<span class="error"><span class="ln error-ln">166</span> $widget=$this->createWidget($className,$properties);
</span><span class="ln">167</span> $widget->run();
<span class="ln">168</span> return ob_get_clean();
<span class="ln">169</span> }
<span class="ln">170</span> else
<span class="ln">171</span> {
</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>
/srv/www/htdocs/limesurvey/application/extensions/SettingsWidget/SettingsWidget.php(397): <strong>CBaseController</strong>-><strong>widget</strong>("ext.bootstrap.widgets.TbSelect2",
array("data" => array(), "name" => "additional_languages",
"value" => array(), "options" => array("minimumResultsForSearch"
=> 1000, "dropdownAutoWidth" => true, "width" => "resolve"),
...), true) </div>
<div class="code"><pre><span class="ln">392</span> $properties['events']=isset($metaData['events']) ? $metaData['events'] : array();
<span class="ln">393</span> // allow to submit the form when this element changes
<span class="ln">394</span> if (isset($metaData['submitonchange']) && $metaData['submitonchange']) {
<span class="ln">395</span> $properties['events']['change']='js: function(e) { this.form.submit();}';
<span class="ln">396</span> }
<span class="error"><span class="ln error-ln">397</span> return App()->getController()->widget('ext.bootstrap.widgets.TbSelect2', $properties, true);
</span><span class="ln">398</span> }
<span class="ln">399</span>
<span class="ln">400</span> public function renderString($name, array $metaData, $form = null)
<span class="ln">401</span> {
<span class="ln">402</span> $value = isset($metaData['current']) ? $metaData['current'] : '';
</pre></div> </td>
</tr>
<tr class="trace app expanded">
<td class="number">
#3 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/application/extensions/SettingsWidget/SettingsWidget.php(152): <strong>SettingsWidget</strong>-><strong>renderSelect</strong>("additional_languages",
array("class" => array(), "htmlOptions" => array("multiple" =>
true), "type" => "select", "labelOptions" => array("class" =>
"default control-label col-sm-5"), ...), null) </div>
<div class="code"><pre><span class="ln">147</span> // The labels
<span class="ln">148</span> $content = $this->renderLabel($name, $metaData);
<span class="ln">149</span> // The control
<span class="ln">150</span> $content .= CHtml::openTag('div',$metaData['controlOptions']);
<span class="ln">151</span> // The input
<span class="error"><span class="ln error-ln">152</span> $content .= $this->$function($name, $metaData, $form);
</span><span class="ln">153</span> // The help
<span class="ln">154</span> $content .= $this->renderHelp($name, $metaData);
<span class="ln">155</span> $content .= CHtml::closeTag('div');
<span class="ln">156</span>
<span class="ln">157</span> $result=CHtml::tag($wrapper,array('class'=>"setting control-group setting-{$metaData['type']}", 'data-name' => $name),$content);
</pre></div> </td>
</tr>
<tr class="trace app expanded">
<td class="number">
#4 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/application/extensions/SettingsWidget/SettingsWidget.php(170): <strong>SettingsWidget</strong>-><strong>renderSetting</strong>("additional_languages",
array("type" => "select", "label" => "Autres langues ",
"htmlOptions" => array("multiple" => true), "options" =>
array(), ...), null, false, ...) </div>
<div class="code"><pre><span class="ln">165</span> protected function renderSettings()
<span class="ln">166</span> {
<span class="ln">167</span> echo CHtml::openTag('ul',array('class'=>"settings-list"));
<span class="ln">168</span> foreach($this->settings as $name => $metaData)
<span class="ln">169</span> {
<span class="error"><span class="ln error-ln">170</span> $this->renderSetting($name, $metaData, null, false,'li');
</span><span class="ln">171</span> }
<span class="ln">172</span> echo CHtml::closeTag('ul');
<span class="ln">173</span> }
<span class="ln">174</span>
<span class="ln">175</span>
</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>
/srv/www/htdocs/limesurvey/application/extensions/SettingsWidget/SettingsWidget.php(181): <strong>SettingsWidget</strong>-><strong>renderSettings</strong>() </div>
<div class="code"><pre><span class="ln">176</span>
<span class="ln">177</span> public function run() {
<span class="ln">178</span> parent::run();
<span class="ln">179</span>
<span class="ln">180</span> // Render settings
<span class="error"><span class="ln error-ln">181</span> $this->renderSettings();
</span><span class="ln">182</span> // Render buttons
<span class="ln">183</span> $this->renderButtons();
<span class="ln">184</span> // End form
<span class="ln">185</span> $this->endForm();
<span class="ln">186</span> }
</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>
/srv/www/htdocs/limesurvey/framework/web/CBaseController.php(173): <strong>SettingsWidget</strong>-><strong>run</strong>() </div>
<div class="code"><pre><span class="ln">168</span> return ob_get_clean();
<span class="ln">169</span> }
<span class="ln">170</span> else
<span class="ln">171</span> {
<span class="ln">172</span> $widget=$this->createWidget($className,$properties);
<span class="error"><span class="ln error-ln">173</span> $widget->run();
</span><span class="ln">174</span> return $widget;
<span class="ln">175</span> }
<span class="ln">176</span> }
<span class="ln">177</span>
<span class="ln">178</span> /**
</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>
/srv/www/htdocs/limesurvey/application/views/admin/survey/subview/tabGeneralEditSurvey_view.php(88): <strong>CBaseController</strong>-><strong>widget</strong>("ext.SettingsWidget.SettingsWidget",
array("id" => "general", "title" => "Général", "form" =>
false, "formHtmlOptions" => array("class" => "form-core"), ...))
</div>
<div class="code"><pre><span class="ln">83</span> 'size'=>50,
<span class="ln">84</span> ),
<span class="ln">85</span> 'current'=>$esrow['faxto'],
<span class="ln">86</span> ),
<span class="ln">87</span> ),
<span class="error"><span class="ln error-ln">88</span> ));
</span><span class="ln">89</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>
/srv/www/htdocs/limesurvey/framework/web/CBaseController.php(126): <strong>require</strong>("/srv/www/htdocs/limesurvey/application/views/admin/survey/subvie...") </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">
#9 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/framework/web/CBaseController.php(95): <strong>CBaseController</strong>-><strong>renderInternal</strong>("/srv/www/htdocs/limesurvey/application/views/admin/survey/subvie...",
array("esrow" => array("template" => "default", "language" =>
"fr", "sid" => "436221", "owner_id" => "2", ...), "action" =>
"editsurveysettings", "surveyid" => 436221, "pluginSettings" =>
null, ...), true) </div>
<div class="code"><pre><span class="ln">090</span> {
<span class="ln">091</span> $widgetCount=count($this->_widgetStack);
<span class="ln">092</span> if(($renderer=Yii::app()->getViewRenderer())!==null && $renderer->fileExtension==='.'.CFileHelper::getExtension($viewFile))
<span class="ln">093</span> $content=$renderer->renderFile($this,$viewFile,$data,$return);
<span class="ln">094</span> else
<span class="error"><span class="ln error-ln">095</span> $content=$this->renderInternal($viewFile,$data,$return);
</span><span class="ln">096</span> if(count($this->_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->_widgetStack);
</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>
/srv/www/htdocs/limesurvey/framework/web/CController.php(869): <strong>CBaseController</strong>-><strong>renderFile</strong>("/srv/www/htdocs/limesurvey/application/views/admin/survey/subvie...",
array("esrow" => array("template" => "default", "language" =>
"fr", "sid" => "436221", "owner_id" => "2", ...), "action" =>
"editsurveysettings", "surveyid" => 436221, "pluginSettings" =>
null, ...), true) </div>
<div class="code"><pre><span class="ln">864</span> */
<span class="ln">865</span> public function renderPartial($view,$data=null,$return=false,$processOutput=false)
<span class="ln">866</span> {
<span class="ln">867</span> if(($viewFile=$this->getViewFile($view))!==false)
<span class="ln">868</span> {
<span class="error"><span class="ln error-ln">869</span> $output=$this->renderFile($viewFile,$data,true);
</span><span class="ln">870</span> if($processOutput)
<span class="ln">871</span> $output=$this->processOutput($output);
<span class="ln">872</span> if($return)
<span class="ln">873</span> return $output;
<span class="ln">874</span> else
</pre></div> </td>
</tr>
<tr class="trace app collapsed">
<td class="number">
#11 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/application/views/admin/survey/editSurvey_view.php(7): <strong>CController</strong>-><strong>renderPartial</strong>("/admin/survey/subview/tabGeneralEditSurvey_view",
array("esrow" => array("template" => "default", "language" =>
"fr", "sid" => "436221", "owner_id" => "2", ...), "action" =>
"editsurveysettings", "surveyid" => 436221, "pluginSettings" =>
null, ...)) </div>
<div class="code"><pre><span class="ln">02</span> <?php
<span class="ln">03</span> $data['action'] = $action;
<span class="ln">04</span> $yii = Yii::app();
<span class="ln">05</span> $controller = $yii->getController();
<span class="ln">06</span> $controller->renderPartial('/admin/survey/subview/tab_view',$data);
<span class="error"><span class="ln error-ln">07</span> $controller->renderPartial('/admin/survey/subview/tabGeneralEditSurvey_view',$data);
</span><span class="ln">08</span> if (isset($pluginSettings))
<span class="ln">09</span> {
<span class="ln">10</span> $controller->renderPartial('/admin/survey/subview/tabPluginSettings_view',$data);
<span class="ln">11</span> }
<span class="ln">12</span> $controller->renderPartial('/admin/survey/subview/tabPresentation_view',$data);
</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>
/srv/www/htdocs/limesurvey/framework/web/CBaseController.php(126): <strong>require</strong>("/srv/www/htdocs/limesurvey/application/views/admin/survey/editSu...") </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">
#13 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/framework/web/CBaseController.php(95): <strong>CBaseController</strong>-><strong>renderInternal</strong>("/srv/www/htdocs/limesurvey/application/views/admin/survey/editSu...",
array("esrow" => array("template" => "default", "language" =>
"fr", "sid" => "436221", "owner_id" => "2", ...), "action" =>
"editsurveysettings", "surveyid" => 436221, "pluginSettings" =>
null, ...), true) </div>
<div class="code"><pre><span class="ln">090</span> {
<span class="ln">091</span> $widgetCount=count($this->_widgetStack);
<span class="ln">092</span> if(($renderer=Yii::app()->getViewRenderer())!==null && $renderer->fileExtension==='.'.CFileHelper::getExtension($viewFile))
<span class="ln">093</span> $content=$renderer->renderFile($this,$viewFile,$data,$return);
<span class="ln">094</span> else
<span class="error"><span class="ln error-ln">095</span> $content=$this->renderInternal($viewFile,$data,$return);
</span><span class="ln">096</span> if(count($this->_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->_widgetStack);
</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>
/srv/www/htdocs/limesurvey/framework/web/CController.php(869): <strong>CBaseController</strong>-><strong>renderFile</strong>("/srv/www/htdocs/limesurvey/application/views/admin/survey/editSu...",
array("esrow" => array("template" => "default", "language" =>
"fr", "sid" => "436221", "owner_id" => "2", ...), "action" =>
"editsurveysettings", "surveyid" => 436221, "pluginSettings" =>
null, ...), true) </div>
<div class="code"><pre><span class="ln">864</span> */
<span class="ln">865</span> public function renderPartial($view,$data=null,$return=false,$processOutput=false)
<span class="ln">866</span> {
<span class="ln">867</span> if(($viewFile=$this->getViewFile($view))!==false)
<span class="ln">868</span> {
<span class="error"><span class="ln error-ln">869</span> $output=$this->renderFile($viewFile,$data,true);
</span><span class="ln">870</span> if($processOutput)
<span class="ln">871</span> $output=$this->processOutput($output);
<span class="ln">872</span> if($return)
<span class="ln">873</span> return $output;
<span class="ln">874</span> else
</pre></div> </td>
</tr>
<tr class="trace app collapsed">
<td class="number">
#15 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/application/core/Survey_Common_Action.php(305): <strong>CController</strong>-><strong>renderPartial</strong>("/admin/survey/editSurvey_view",
array("esrow" => array("template" => "default", "language" =>
"fr", "sid" => "436221", "owner_id" => "2", ...), "action" =>
"editsurveysettings", "surveyid" => 436221, "pluginSettings" =>
null, ...)) </div>
<div class="code"><pre><span class="ln">300</span> {
<span class="ln">301</span> if (empty($sViewKey) || !in_array($sViewKey, array('message', 'output')))
<span class="ln">302</span> {
<span class="ln">303</span> if (is_numeric($sViewKey))
<span class="ln">304</span> {
<span class="error"><span class="ln error-ln">305</span> Yii::app()->getController()->renderPartial($sViewPath . $viewUrl, $aData);
</span><span class="ln">306</span> }
<span class="ln">307</span> elseif (is_array($viewUrl))
<span class="ln">308</span> {
<span class="ln">309</span> foreach ($viewUrl as $aSubData)
<span class="ln">310</span> {
</pre></div> </td>
</tr>
<tr class="trace app collapsed">
<td class="number">
#16 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/application/controllers/admin/surveyadmin.php(1704): <strong>Survey_Common_Action</strong>-><strong>_renderWrappedTemplate</strong>("survey",
"editSurvey_view", array("esrow" => array("template" =>
"default", "language" => "fr", "sid" => "436221", "owner_id" =>
"2", ...), "action" => "editsurveysettings", "surveyid" =>
436221, "pluginSettings" => null, ...)) </div>
<div class="code"><pre><span class="ln">1699</span> * @param array $aData Data to be passed on. Optional.
<span class="ln">1700</span> */
<span class="ln">1701</span> protected function _renderWrappedTemplate($sAction = 'survey', $aViewUrls = array(), $aData = array())
<span class="ln">1702</span> {
<span class="ln">1703</span> App()->getClientScript()->registerPackage('jquery-superfish');
<span class="error"><span class="ln error-ln">1704</span> parent::_renderWrappedTemplate($sAction, $aViewUrls, $aData);
</span><span class="ln">1705</span> }
<span class="ln">1706</span>
<span class="ln">1707</span> }
</pre></div> </td>
</tr>
<tr class="trace app collapsed">
<td class="number">
#17 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/application/controllers/admin/surveyadmin.php(182): <strong>SurveyAdmin</strong>-><strong>_renderWrappedTemplate</strong>("survey",
"editSurvey_view", array("esrow" => array("template" =>
"default", "language" => "fr", "sid" => "436221", "owner_id" =>
"2", ...), "action" => "editsurveysettings", "surveyid" =>
436221, "pluginSettings" => null, ...)) </div>
<div class="code"><pre><span class="ln">177</span> $aData['questions'] = $oResult;
<span class="ln">178</span> $aData['display']['menu_bars']['surveysummary'] = "editsurveysettings";
<span class="ln">179</span> $tempData = $aData;
<span class="ln">180</span> $aData['data'] = $tempData;
<span class="ln">181</span>
<span class="error"><span class="ln error-ln">182</span> $this->_renderWrappedTemplate('survey', 'editSurvey_view', $aData);
</span><span class="ln">183</span> }
<span class="ln">184</span>
<span class="ln">185</span> /**
<span class="ln">186</span> * Function responsible to import survey resources from a '.zip' file.
<span class="ln">187</span> *
</pre></div> </td>
</tr>
<tr class="trace core collapsed">
<td class="number">
#18 </td>
<td class="content">
<div class="trace-file">
unknown(0): <strong>SurveyAdmin</strong>-><strong>editsurveysettings</strong>("436221") </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>
/srv/www/htdocs/limesurvey/framework/web/actions/CAction.php(108): <strong>ReflectionMethod</strong>-><strong>invokeArgs</strong>(SurveyAdmin, array("436221")) </div>
<div class="code"><pre><span class="ln">103</span> elseif($param->isDefaultValueAvailable())
<span class="ln">104</span> $ps[]=$param->getDefaultValue();
<span class="ln">105</span> else
<span class="ln">106</span> return false;
<span class="ln">107</span> }
<span class="error"><span class="ln error-ln">108</span> $method->invokeArgs($object,$ps);
</span><span class="ln">109</span> return true;
<span class="ln">110</span> }
<span class="ln">111</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>
/srv/www/htdocs/limesurvey/application/core/Survey_Common_Action.php(99): <strong>CAction</strong>-><strong>runWithParamsInternal</strong>(SurveyAdmin,
ReflectionMethod, array("surveyid" => "436221", "sa" =>
"editsurveysettings", "iSurveyId" => "436221", "iSurveyID" =>
"436221")) </div>
<div class="code"><pre><span class="ln">094</span> $oMethod = new ReflectionMethod($this, $sDefault);
<span class="ln">095</span> }
<span class="ln">096</span>
<span class="ln">097</span> // We're all good to go, let's execute it
<span class="ln">098</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">099</span> return parent::runWithParamsInternal($this, $oMethod, $params);
</span><span class="ln">100</span> }
<span class="ln">101</span>
<span class="ln">102</span> /**
<span class="ln">103</span> * Some functions have different parameters, which are just an alias of the
<span class="ln">104</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">
#21 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/framework/web/CController.php(308): <strong>Survey_Common_Action</strong>-><strong>runWithParams</strong>(array("surveyid" => "436221", "sa" => "editsurveysettings")) </div>
<div class="code"><pre><span class="ln">303</span> {
<span class="ln">304</span> $priorAction=$this->_action;
<span class="ln">305</span> $this->_action=$action;
<span class="ln">306</span> if($this->beforeAction($action))
<span class="ln">307</span> {
<span class="error"><span class="ln error-ln">308</span> if($action->runWithParams($this->getActionParams())===false)
</span><span class="ln">309</span> $this->invalidActionParams($action);
<span class="ln">310</span> else
<span class="ln">311</span> $this->afterAction($action);
<span class="ln">312</span> }
<span class="ln">313</span> $this->_action=$priorAction;
</pre></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>
/srv/www/htdocs/limesurvey/framework/web/CController.php(286): <strong>CController</strong>-><strong>runAction</strong>(SurveyAdmin) </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->runAction($action);
</span><span class="ln">287</span> else
<span class="ln">288</span> {
<span class="ln">289</span> $priorAction=$this->_action;
<span class="ln">290</span> $this->_action=$action;
<span class="ln">291</span> CFilterChain::create($this,$action,$filters)->run();
</pre></div> </td>
</tr>
<tr class="trace core collapsed">
<td class="number">
#23 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/framework/web/CController.php(265): <strong>CController</strong>-><strong>runActionWithFilters</strong>(SurveyAdmin, array()) </div>
<div class="code"><pre><span class="ln">260</span> {
<span class="ln">261</span> if(($parent=$this->getModule())===null)
<span class="ln">262</span> $parent=Yii::app();
<span class="ln">263</span> if($parent->beforeControllerAction($this,$action))
<span class="ln">264</span> {
<span class="error"><span class="ln error-ln">265</span> $this->runActionWithFilters($action,$this->filters());
</span><span class="ln">266</span> $parent->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->missingAction($actionID);
</pre></div> </td>
</tr>
<tr class="trace app collapsed">
<td class="number">
#24 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/application/controllers/AdminController.php(164): <strong>CController</strong>-><strong>run</strong>("survey") </div>
<div class="code"><pre><span class="ln">159</span> $this->redirect(array('/admin/authentication/sa/login'));
<span class="ln">160</span> }
<span class="ln">161</span>
<span class="ln">162</span> }
<span class="ln">163</span>
<span class="error"><span class="ln error-ln">164</span> return parent::run($action);
</span><span class="ln">165</span> }
<span class="ln">166</span>
<span class="ln">167</span> /**
<span class="ln">168</span> * Routes all the actions to their respective places
<span class="ln">169</span> *
</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>
/srv/www/htdocs/limesurvey/framework/web/CWebApplication.php(282): <strong>AdminController</strong>-><strong>run</strong>("survey") </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->_controller;
<span class="ln">280</span> $this->_controller=$controller;
<span class="ln">281</span> $controller->init();
<span class="error"><span class="ln error-ln">282</span> $controller->run($actionID);
</span><span class="ln">283</span> $this->_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}'=>$route===''?$this->defaultController:$route)));
</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>
/srv/www/htdocs/limesurvey/framework/web/CWebApplication.php(141): <strong>CWebApplication</strong>-><strong>runController</strong>("admin/survey/sa/editsurveysettings") </div>
<div class="code"><pre><span class="ln">136</span> foreach(array_splice($this->catchAllRequest,1) as $name=>$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->getUrlManager()->parseUrl($this->getRequest());
<span class="error"><span class="ln error-ln">141</span> $this->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">
#27 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/framework/base/CApplication.php(180): <strong>CWebApplication</strong>-><strong>processRequest</strong>() </div>
<div class="code"><pre><span class="ln">175</span> public function run()
<span class="ln">176</span> {
<span class="ln">177</span> if($this->hasEventHandler('onBeginRequest'))
<span class="ln">178</span> $this->onBeginRequest(new CEvent($this));
<span class="ln">179</span> register_shutdown_function(array($this,'end'),0,false);
<span class="error"><span class="ln error-ln">180</span> $this->processRequest();
</span><span class="ln">181</span> if($this->hasEventHandler('onEndRequest'))
<span class="ln">182</span> $this->onEndRequest(new CEvent($this));
<span class="ln">183</span> }
<span class="ln">184</span>
<span class="ln">185</span> /**
</pre></div> </td>
</tr>
<tr class="trace app collapsed">
<td class="number">
#28 </td>
<td class="content">
<div class="trace-file">
<div class="plus">+</div>
<div class="minus">–</div>
/srv/www/htdocs/limesurvey/index.php(211): <strong>CApplication</strong>-><strong>run</strong>() </div>
<div class="code"><pre><span class="ln">206</span> die (sprintf('%s should be writable by the webserver (766 or 776).', $runtimePath));
<span class="ln">207</span> }
<span class="ln">208</span> }
<span class="ln">209</span>
<span class="ln">210</span> Yii::$enableIncludePath = false;
<span class="error"><span class="ln error-ln">211</span> Yii::createApplication('LSYii_Application', $config)->run();
</span><span class="ln">212</span>
<span class="ln">213</span> /* End of file index.php */
<span class="ln">214</span> /* Location: ./index.php */
</pre></div> </td>
</tr>
</tbody></table>
</div>
<div class="version">
2015-06-17 13:18:03 Apache/2.4.6 (Linux/SUSE) <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.15 </div>
</div>
<script type="text/javascript">
/*<![CDATA[*/
var traceReg = new RegExp("(^|\\s)trace-file(\\s|$)");
var collapsedReg = new RegExp("(^|\\s)collapsed(\\s|$)");
var e = document.getElementsByTagName("div");
for(var j=0,len=e.length;j<len;j++){
if(traceReg.test(e[j].className)){
e[j].onclick = function(){
var trace = this.parentNode.parentNode;
if(collapsedReg.test(trace.className))
trace.className = trace.className.replace("collapsed", "expanded");
else
trace.className = trace.className.replace("expanded", "collapsed");
}
}
}
/*]]>*/
</script>
</body></html> | ||||
| Bug heat | 8 | ||||
| Complete LimeSurvey version number (& build) | 150612 | ||||
| I will donate to the project if issue is resolved | No | ||||
| Browser | Firefox / Chrome / Opera | ||||
| Database type & version | MySQL 5.5.33 | ||||
| Server OS (if known) | openSUSE 13.1 LTS 64bits | ||||
| Webserver software & version (if known) | Apache 2.4.6 | ||||
| PHP Version | 5.4.20 | ||||
|
I'm getting the same error. |
|
|
Did you clear your browser cache after upgrading to the latest version? |
|
|
Yes and also try in private navigation with firefox and my 2 other test browser (chromium and opera) |
|
|
Activate debug mode in /application/config/config.php, reproduce the error and add the error output here, please. |
|
|
I put it in attachment as I don't know what to paste exactly. (CException.html) |
|
|
Fix committed to master branch: http://bugs.limesurvey.org/plugin.php?page=Source/view&id=15455 |
|
|
Fixed for 2.06, need to be reviewed for 3.0 |
|
|
Thanks for your work :) |
|
|
Thanks. Fixed me up as well. |
|
|
Thanks to you to report. And debug=2 is really a great idea. |
|
|
Version 2.06+ Build 150629 released. |
|
|
LimeSurvey: master 250733ba 2015-06-17 17:46 Details Diff |
Fixed issue 09687: Crash when try to edit global parameter for a survey Dev: If no extra language is set, remove the additional_languages setting Dev: Fixed issue : edit survey with disAllowed extra language remove extra language |
Affected Issues 09687 |
|
| mod - application/views/admin/survey/subview/tabGeneralEditSurvey_view.php | Diff File | ||
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2015-06-16 12:00 | LeDocteur | New Issue | |
| 2015-06-16 12:00 | LeDocteur | File Added: limesurvey_survey_798719.lss | |
| 2015-06-17 12:00 | gpennington | Note Added: 32394 | |
| 2015-06-17 14:41 | c_schmitz | Note Added: 32395 | |
| 2015-06-17 14:41 | c_schmitz | Assigned To | => c_schmitz |
| 2015-06-17 14:41 | c_schmitz | Status | new => feedback |
| 2015-06-17 14:49 | LeDocteur | Note Added: 32396 | |
| 2015-06-17 14:49 | LeDocteur | Status | feedback => assigned |
| 2015-06-17 14:54 | c_schmitz | Note Added: 32397 | |
| 2015-06-17 15:19 | LeDocteur | File Added: CException.html | |
| 2015-06-17 15:20 | LeDocteur | Note Added: 32398 | |
| 2015-06-17 15:20 | LeDocteur | Note Edited: 32398 | |
| 2015-06-17 15:38 | LeDocteur | Issue Monitored: LeDocteur | |
| 2015-06-17 15:39 | LeDocteur | Issue End Monitor: LeDocteur | |
| 2015-06-17 16:59 | c_schmitz | Assigned To | c_schmitz => DenisChenu |
| 2015-06-17 17:47 | DenisChenu | Changeset attached | => LimeSurvey master 250733ba |
| 2015-06-17 17:47 | DenisChenu | Note Added: 32399 | |
| 2015-06-17 17:47 | DenisChenu | Resolution | open => fixed |
| 2015-06-17 17:48 | DenisChenu | Fixed in Version | => 2.06+ |
| 2015-06-17 17:48 | DenisChenu | Note Added: 32400 | |
| 2015-06-17 18:21 | LeDocteur | Note Added: 32401 | |
| 2015-06-18 03:41 | gpennington | Note Added: 32406 | |
| 2015-06-18 08:20 | DenisChenu | Note Added: 32409 | |
| 2015-06-21 18:30 | DenisChenu | Status | assigned => resolved |
| 2015-06-29 11:11 | c_schmitz | Note Added: 32554 | |
| 2015-06-29 11:11 | c_schmitz | Status | resolved => closed |
| 2019-11-01 17:25 | c_schmitz | Category | Survey design => Survey editing |