View Issue Details

This bug affects 1 person(s).
 256
IDProjectCategoryView StatusLast Update
06927Bug reportsSecuritypublic2012-11-27 06:11
ReporterpfpDave Assigned Tomdekker  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version2.00+ 
Fixed in Version2.00+ 
Summary06927: Undefined Index error when restricted users attempts to access 'Create/edit user groups'
Description

I've created a user with the following global permissions: Create Survey
The user also has the following permissions to one survey:
Responses(All)
Statistics
Survey Content(All)
Survey Settings(All)
Tokens(All)

When the user logs in, they see a Create/edit user groups button, when they click this and then select a user group from the drop down list, they get the error:

Undefined index: displayactions

C:\limesurvey\application\views\admin\usergroup\viewUserGroup_view.php(45)

33 <th><?php $clang->eT("Action");?></th>
34 <th><?php $clang->eT("Username");?></th>
35 <th><?php $clang->eT("Email");?></th>
36 </tr></thead>
37 <tbody>
38 <?php
39 foreach ($userloop as $currentuser)
40 {
41 ?>
42 <tr class='<?php echo $currentuser["rowclass"];?>'>
43 <td align='center'>
44 <?php
45 if($currentuser["displayactions"])
46 { ?>
47 <form method='post' action='<?php echo $this->createUrl("admin/usergroups/user/ugid/{$usergroupid}/action/remove"); ?>'>
48 <input type='image' src='<?php echo Yii::app()->getConfig('adminimageurl')?>/token_delete.png' alt='<?php $clang->eT("Delete this user from group");?>' onclick='return confirm("<?php $clang->eT("Are you sure you want to delete this entry?","js");?>")' />
49 <input name='uid' type='hidden' value='<?php echo $currentuser["userid"]; ?>' />
50 </form>
51 <?php
52 }
53 else
54 {
55 ?>
56  
57 <?php

Full exception attached.

TagsNo tags attached.
Attached Files
Undefined Error.htm (31,820 bytes)   
<!DOCTYPE html>
<html lang="en">
<head>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    <script type="text/javascript" src="/scripts/jquery/jquery.js"></script>
    <script type="text/javascript" src="/scripts/jquery/jquery-ui.js"></script>
    <script type="text/javascript" src="/scripts/jquery/jquery.ui.touch-punch.min.js"></script>
    <script type="text/javascript" src="/scripts/jquery/jquery.qtip.js"></script>
    <script type="text/javascript" src="/scripts/jquery/jquery.notify.js"></script>
    <script type="text/javascript" src="/scripts/admin/admin_core.js"></script>
        <title>Places for People Consultation Platform</title>
    <link rel="stylesheet" type="text/css" href="/styles/gringegreen/jquery-ui/jquery-ui.css" />
    <link rel="stylesheet" type="text/css" href="/styles/gringegreen/printablestyle.css" media="print" />
    <link rel="stylesheet" type="text/css" href="/styles/gringegreen/adminstyle.css" />
    <link rel="stylesheet" type="text/css" href="/styles/adminstyle.css" />
                <link rel="stylesheet" type="text/css" media="all" href="/styles/gringegreen/superfish.css" />
                    <link rel="shortcut icon" href="/styles/favicon.ico" type="image/x-icon" />
    <link rel="icon" href="/styles/favicon.ico" type="image/x-icon" />
    </head>
<body>
    <script type='text/javascript'>
        var userdateformat='dd.mm.yy';
        var userlanguage='en';
    </script>
    <div class='wrapper'>
        <div class='maintitle'>Places for People Consultation Platform</div>
<div class='menubar'>
    <div class='menubar-title ui-widget-header'>
        <div class='menubar-title-left'>
            <strong>Administration</strong>
                            --  Logged in as:<strong>
                    <a href="/index.php/admin/user/personalsettings">
                        159496 <img src='/styles/gringegreen/images/profile_edit.png' alt='Edit your personal preferences' /></a>
                </strong>
                        </div>
            </div>
    <div class='menubar-main'>
        <div class='menubar-left'>
            <a href="/index.php/admin/index">
                <img src='/styles/gringegreen/images/home.png' alt='Default administration page' width='32' height='32'/></a>

            <img src='/styles/gringegreen/images/blank.gif' alt='' width='11' />
            <img src='/styles/gringegreen/images/separator.gif' id='separator1' class='separator' alt='' />

            <a href="/index.php/admin/user/index">
                <img src='/styles/gringegreen/images/security.png' alt='Manage survey administrators' width='32' height='32'/></a>
            <a href="/index.php/admin/usergroups/index">
                <img src='/styles/gringegreen/images/usergroup.png' alt='Create/edit user groups' width='32' height='32'/></a>
                        <img src='/styles/gringegreen/images/separator.gif' class='separator' alt='' />
                    </div>
        <div class='menubar-right'>
            <label for='surveylist'>Surveys:</label>
            <select id='surveylist' name='surveylist' onchange="window.open(this.options[this.selectedIndex].value,'_top')">
                <option selected='selected' value=''>Please choose...</option>
<optgroup label='Active' class='activesurveyselect'>
<option  value='/index.php/admin/survey/view/surveyid/997138'>IM&T Away Day November 2012 Feedback</option>
</optgroup>            </select>
            <a href="/index.php/admin/survey/index">
                <img src='/styles/gringegreen/images/surveylist.png' alt='Detailed list of surveys' />
            </a>

            
                <a href="/index.php/admin/survey/newsurvey">
                    <img src='/styles/gringegreen/images/add.png' alt='Create, import, or copy a survey' /></a>
                

            <img id='separator2' src='/styles/gringegreen/images/separator.gif' class='separator' alt='' />
            <a href="/index.php/admin/authentication/logout" >
                <img src='/styles/gringegreen/images/logout.png' alt='Logout' /></a>

            <a href="http://docs.limesurvey.org" target="_blank">
                <img src='/styles/gringegreen/images/showhelp.png' alt='LimeSurvey online manual' /></a>
        </div>
    </div>
</div>
<p style='margin:0;font-size:1px;line-height:1px;height:1px;'>&nbsp;</p>
<!DOCTYPE html PUBLIC
	"-//W3C//DTD XHTML 1.0 Transitional//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>PHP notice</title>

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

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

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

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

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

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

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

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

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

.container {
	margin: 1em 4em;
}

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

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

.source {
	margin-bottom: 1em;
}

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

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

.traces {
	margin: 2em 0;
}

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

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

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

.trace .content {
	padding: 0.5em;
}

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

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

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

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

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

	<p class="message">
		Undefined index: displayactions	</p>

	<div class="source">
		<p class="file">C:\limesurvey\application\views\admin\usergroup\viewUserGroup_view.php(45)</p>
		<div class="code"><pre><span class="ln">33</span>             &lt;th&gt;&lt;?php $clang-&gt;eT(&quot;Action&quot;);?&gt;&lt;/th&gt;
<span class="ln">34</span>             &lt;th&gt;&lt;?php $clang-&gt;eT(&quot;Username&quot;);?&gt;&lt;/th&gt;
<span class="ln">35</span>             &lt;th&gt;&lt;?php $clang-&gt;eT(&quot;Email&quot;);?&gt;&lt;/th&gt;
<span class="ln">36</span>             &lt;/tr&gt;&lt;/thead&gt;
<span class="ln">37</span>         &lt;tbody&gt;
<span class="ln">38</span>         &lt;?php
<span class="ln">39</span>         foreach ($userloop as $currentuser)
<span class="ln">40</span>         {
<span class="ln">41</span>             ?&gt;
<span class="ln">42</span>             &lt;tr class=&#039;&lt;?php echo $currentuser[&quot;rowclass&quot;];?&gt;&#039;&gt;
<span class="ln">43</span>                 &lt;td align=&#039;center&#039;&gt;
<span class="ln">44</span>                 &lt;?php
<span class="error"><span class="ln error-ln">45</span>                 if($currentuser[&quot;displayactions&quot;])
</span><span class="ln">46</span>                 { ?&gt;
<span class="ln">47</span>                     &lt;form method=&#039;post&#039; action=&#039;&lt;?php echo $this-&gt;createUrl(&quot;admin/usergroups/user/ugid/{$usergroupid}/action/remove&quot;); ?&gt;&#039;&gt;
<span class="ln">48</span>                     &lt;input type=&#039;image&#039; src=&#039;&lt;?php echo Yii::app()-&gt;getConfig(&#039;adminimageurl&#039;)?&gt;/token_delete.png&#039; alt=&#039;&lt;?php $clang-&gt;eT(&quot;Delete this user from group&quot;);?&gt;&#039; onclick=&#039;return confirm(&quot;&lt;?php $clang-&gt;eT(&quot;Are you sure you want to delete this entry?&quot;,&quot;js&quot;);?&gt;&quot;)&#039; /&gt;
<span class="ln">49</span>                     &lt;input name=&#039;uid&#039; type=&#039;hidden&#039; value=&#039;&lt;?php echo $currentuser[&quot;userid&quot;]; ?&gt;&#039; /&gt;
<span class="ln">50</span>                     &lt;/form&gt;
<span class="ln">51</span>                     &lt;?php
<span class="ln">52</span>                 }
<span class="ln">53</span>                 else
<span class="ln">54</span>                 {
<span class="ln">55</span>                     ?&gt;
<span class="ln">56</span>                     &amp;nbsp;
<span class="ln">57</span>                 &lt;?php
</pre></div>	</div>

	<div class="traces">
		<h2>Stack Trace</h2>
				<table style="width:100%;">
						<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;C:\limesurvey\framework\web\CBaseController.php(127): <strong>require</strong>(&quot;C:\limesurvey\application\views\admin\usergroup\viewUserGroup_vi...&quot;)				</div>

				<div class="code"><pre><span class="ln">122</span>             $data=$_data_;
<span class="ln">123</span>         if($_return_)
<span class="ln">124</span>         {
<span class="ln">125</span>             ob_start();
<span class="ln">126</span>             ob_implicit_flush(false);
<span class="error"><span class="ln error-ln">127</span>             require($_viewFile_);
</span><span class="ln">128</span>             return ob_get_clean();
<span class="ln">129</span>         }
<span class="ln">130</span>         else
<span class="ln">131</span>             require($_viewFile_);
<span class="ln">132</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;C:\limesurvey\framework\web\CBaseController.php(96): <strong>CBaseController</strong>-><strong>renderInternal</strong>(&quot;C:\limesurvey\application\views/admin/usergroup/viewUserGroup_vi...&quot;, array(&quot;ugid&quot; =&gt; 1, &quot;imageurl&quot; =&gt; &quot;/styles/gringegreen/images/&quot;, &quot;usergroupid&quot; =&gt; &quot;1&quot;, &quot;groupfound&quot; =&gt; true, ...), true)				</div>

				<div class="code"><pre><span class="ln">091</span>     {
<span class="ln">092</span>         $widgetCount=count($this-&gt;_widgetStack);
<span class="ln">093</span>         if(($renderer=Yii::app()-&gt;getViewRenderer())!==null &amp;&amp; $renderer-&gt;fileExtension===&#039;.&#039;.CFileHelper::getExtension($viewFile))
<span class="ln">094</span>             $content=$renderer-&gt;renderFile($this,$viewFile,$data,$return);
<span class="ln">095</span>         else
<span class="error"><span class="ln error-ln">096</span>             $content=$this-&gt;renderInternal($viewFile,$data,$return);
</span><span class="ln">097</span>         if(count($this-&gt;_widgetStack)===$widgetCount)
<span class="ln">098</span>             return $content;
<span class="ln">099</span>         else
<span class="ln">100</span>         {
<span class="ln">101</span>             $widget=end($this-&gt;_widgetStack);
</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;C:\limesurvey\framework\web\CController.php(870): <strong>CBaseController</strong>-><strong>renderFile</strong>(&quot;C:\limesurvey\application\views/admin/usergroup/viewUserGroup_vi...&quot;, array(&quot;ugid&quot; =&gt; 1, &quot;imageurl&quot; =&gt; &quot;/styles/gringegreen/images/&quot;, &quot;usergroupid&quot; =&gt; &quot;1&quot;, &quot;groupfound&quot; =&gt; true, ...), true)				</div>

				<div class="code"><pre><span class="ln">865</span>      */
<span class="ln">866</span>     public function renderPartial($view,$data=null,$return=false,$processOutput=false)
<span class="ln">867</span>     {
<span class="ln">868</span>         if(($viewFile=$this-&gt;getViewFile($view))!==false)
<span class="ln">869</span>         {
<span class="error"><span class="ln error-ln">870</span>             $output=$this-&gt;renderFile($viewFile,$data,true);
</span><span class="ln">871</span>             if($processOutput)
<span class="ln">872</span>                 $output=$this-&gt;processOutput($output);
<span class="ln">873</span>             if($return)
<span class="ln">874</span>                 return $output;
<span class="ln">875</span>             else
</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;C:\limesurvey\framework\web\CController.php(783): <strong>CController</strong>-><strong>renderPartial</strong>(&quot;/admin/usergroup/viewUserGroup_view&quot;, array(&quot;ugid&quot; =&gt; 1, &quot;imageurl&quot; =&gt; &quot;/styles/gringegreen/images/&quot;, &quot;usergroupid&quot; =&gt; &quot;1&quot;, &quot;groupfound&quot; =&gt; true, ...), true)				</div>

				<div class="code"><pre><span class="ln">778</span>      */
<span class="ln">779</span>     public function render($view,$data=null,$return=false)
<span class="ln">780</span>     {
<span class="ln">781</span>         if($this-&gt;beforeRender($view))
<span class="ln">782</span>         {
<span class="error"><span class="ln error-ln">783</span>             $output=$this-&gt;renderPartial($view,$data,true);
</span><span class="ln">784</span>             if(($layoutFile=$this-&gt;getLayoutFile($this-&gt;layout))!==false)
<span class="ln">785</span>                 $output=$this-&gt;renderFile($layoutFile,array(&#039;content&#039;=&gt;$output),true);
<span class="ln">786</span> 
<span class="ln">787</span>             $this-&gt;afterRender($view,$output);
<span class="ln">788</span> 
</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>
										&nbsp;C:\limesurvey\application\core\Survey_Common_Action.php(268): <strong>CController</strong>-><strong>render</strong>(&quot;/admin/usergroup/viewUserGroup_view&quot;, array(&quot;ugid&quot; =&gt; 1, &quot;imageurl&quot; =&gt; &quot;/styles/gringegreen/images/&quot;, &quot;usergroupid&quot; =&gt; &quot;1&quot;, &quot;groupfound&quot; =&gt; true, ...))				</div>

				<div class="code"><pre><span class="ln">263</span>         {
<span class="ln">264</span>             if (empty($sViewKey) || !in_array($sViewKey, array(&#039;message&#039;, &#039;output&#039;)))
<span class="ln">265</span>             {
<span class="ln">266</span>                 if (is_numeric($sViewKey))
<span class="ln">267</span>                 {
<span class="error"><span class="ln error-ln">268</span>                     Yii::app()-&gt;getController()-&gt;render($sViewPath . $viewUrl, $aData);
</span><span class="ln">269</span>                 }
<span class="ln">270</span>                 elseif (is_array($viewUrl))
<span class="ln">271</span>                 {
<span class="ln">272</span>                     foreach ($viewUrl as $aSubData)
<span class="ln">273</span>                     {
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#5			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\limesurvey\application\controllers\admin\usergroups.php(427): <strong>Survey_Common_Action</strong>-><strong>_renderWrappedTemplate</strong>(&quot;usergroup&quot;, array(&quot;viewUserGroup_view&quot;), array(&quot;ugid&quot; =&gt; 1, &quot;imageurl&quot; =&gt; &quot;/styles/gringegreen/images/&quot;, &quot;usergroupid&quot; =&gt; &quot;1&quot;, &quot;groupfound&quot; =&gt; true, ...))				</div>

				<div class="code"><pre><span class="ln">422</span>         $this-&gt;getController()-&gt;_css_admin_includes(Yii::app()-&gt;getConfig(&#039;adminstyleurl&#039;).&quot;superfish.css&quot;);
<span class="ln">423</span>         $this-&gt;getController()-&gt;_js_admin_includes(Yii::app()-&gt;getConfig(&#039;adminscripts&#039;).&#039;users.js&#039;);
<span class="ln">424</span> 
<span class="ln">425</span>         $aData[&#039;display&#039;][&#039;menu_bars&#039;][&#039;user_group&#039;] = true;
<span class="ln">426</span> 
<span class="error"><span class="ln error-ln">427</span>         parent::_renderWrappedTemplate($sAction, $aViewUrls, $aData);
</span><span class="ln">428</span>     }
<span class="ln">429</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#6			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\limesurvey\application\controllers\admin\usergroups.php(347): <strong>Usergroups</strong>-><strong>_renderWrappedTemplate</strong>(&quot;usergroup&quot;, array(&quot;viewUserGroup_view&quot;), array(&quot;ugid&quot; =&gt; 1, &quot;imageurl&quot; =&gt; &quot;/styles/gringegreen/images/&quot;, &quot;usergroupid&quot; =&gt; &quot;1&quot;, &quot;groupfound&quot; =&gt; true, ...))				</div>

				<div class="code"><pre><span class="ln">342</span>         {
<span class="ln">343</span>             return array($aViewUrls, $aData);
<span class="ln">344</span>         }
<span class="ln">345</span>         else
<span class="ln">346</span>         {
<span class="error"><span class="ln error-ln">347</span>             $this-&gt;_renderWrappedTemplate(&#039;usergroup&#039;, $aViewUrls, $aData);
</span><span class="ln">348</span>         }
<span class="ln">349</span>     }
<span class="ln">350</span> 
<span class="ln">351</span>     function user($ugid, $action = &#039;add&#039;)
<span class="ln">352</span>     {
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#7			</td>
			<td class="content">
				<div class="trace-file">
										&nbsp;unknown(0): <strong>Usergroups</strong>-><strong>index</strong>(&quot;1&quot;, false)				</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;C:\limesurvey\framework\web\actions\CAction.php(107): <strong>ReflectionMethod</strong>-><strong>invokeArgs</strong>(Usergroups, array(&quot;1&quot;, false))				</div>

				<div class="code"><pre><span class="ln">102</span>             else if($param-&gt;isDefaultValueAvailable())
<span class="ln">103</span>                 $ps[]=$param-&gt;getDefaultValue();
<span class="ln">104</span>             else
<span class="ln">105</span>                 return false;
<span class="ln">106</span>         }
<span class="error"><span class="ln error-ln">107</span>         $method-&gt;invokeArgs($object,$ps);
</span><span class="ln">108</span>         return true;
<span class="ln">109</span>     }
<span class="ln">110</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#9			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\limesurvey\application\core\Survey_Common_Action.php(82): <strong>CAction</strong>-><strong>runWithParamsInternal</strong>(Usergroups, ReflectionMethod, array(&quot;ugid&quot; =&gt; &quot;1&quot;, &quot;sa&quot; =&gt; &quot;view&quot;, &quot;iUserGroupId&quot; =&gt; &quot;1&quot;))				</div>

				<div class="code"><pre><span class="ln">77</span>             $oMethod = new ReflectionMethod($this, $sDefault);
<span class="ln">78</span>         }
<span class="ln">79</span> 
<span class="ln">80</span>         // We&#039;re all good to go, let&#039;s execute it
<span class="ln">81</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">82</span>         return parent::runWithParamsInternal($this, $oMethod, $params);
</span><span class="ln">83</span>     }
<span class="ln">84</span> 
<span class="ln">85</span>     /**
<span class="ln">86</span>     * Some functions have different parameters, which are just an alias of the
<span class="ln">87</span>     * usual parameters we&#039;re getting in the url. This function just populates
</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:\limesurvey\framework\web\CController.php(309): <strong>Survey_Common_Action</strong>-><strong>runWithParams</strong>(array(&quot;ugid&quot; =&gt; &quot;1&quot;, &quot;sa&quot; =&gt; &quot;view&quot;))				</div>

				<div class="code"><pre><span class="ln">304</span>     {
<span class="ln">305</span>         $priorAction=$this-&gt;_action;
<span class="ln">306</span>         $this-&gt;_action=$action;
<span class="ln">307</span>         if($this-&gt;beforeAction($action))
<span class="ln">308</span>         {
<span class="error"><span class="ln error-ln">309</span>             if($action-&gt;runWithParams($this-&gt;getActionParams())===false)
</span><span class="ln">310</span>                 $this-&gt;invalidActionParams($action);
<span class="ln">311</span>             else
<span class="ln">312</span>                 $this-&gt;afterAction($action);
<span class="ln">313</span>         }
<span class="ln">314</span>         $this-&gt;_action=$priorAction;
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#11			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\limesurvey\framework\web\CController.php(287): <strong>CController</strong>-><strong>runAction</strong>(Usergroups)				</div>

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

				<div class="code"><pre><span class="ln">261</span>         {
<span class="ln">262</span>             if(($parent=$this-&gt;getModule())===null)
<span class="ln">263</span>                 $parent=Yii::app();
<span class="ln">264</span>             if($parent-&gt;beforeControllerAction($this,$action))
<span class="ln">265</span>             {
<span class="error"><span class="ln error-ln">266</span>                 $this-&gt;runActionWithFilters($action,$this-&gt;filters());
</span><span class="ln">267</span>                 $parent-&gt;afterControllerAction($this,$action);
<span class="ln">268</span>             }
<span class="ln">269</span>         }
<span class="ln">270</span>         else
<span class="ln">271</span>             $this-&gt;missingAction($actionID);
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#13			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\limesurvey\application\controllers\AdminController.php(159): <strong>CController</strong>-><strong>run</strong>(&quot;usergroups&quot;)				</div>

				<div class="code"><pre><span class="ln">154</span>                 Yii::app()-&gt;session[&#039;redirectopage&#039;] = Yii::app()-&gt;request-&gt;requestUri;
<span class="ln">155</span> 
<span class="ln">156</span>                 $this-&gt;redirect($this-&gt;createUrl(&#039;/admin/authentication/login&#039;));
<span class="ln">157</span>             }
<span class="ln">158</span> 
<span class="error"><span class="ln error-ln">159</span>             return parent::run($action);
</span><span class="ln">160</span>     }
<span class="ln">161</span> 
<span class="ln">162</span>     /**
<span class="ln">163</span>     * Routes all the actions to their respective places
<span class="ln">164</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:\limesurvey\framework\web\CWebApplication.php(276): <strong>AdminController</strong>-><strong>run</strong>(&quot;usergroups&quot;)				</div>

				<div class="code"><pre><span class="ln">271</span>         {
<span class="ln">272</span>             list($controller,$actionID)=$ca;
<span class="ln">273</span>             $oldController=$this-&gt;_controller;
<span class="ln">274</span>             $this-&gt;_controller=$controller;
<span class="ln">275</span>             $controller-&gt;init();
<span class="error"><span class="ln error-ln">276</span>             $controller-&gt;run($actionID);
</span><span class="ln">277</span>             $this-&gt;_controller=$oldController;
<span class="ln">278</span>         }
<span class="ln">279</span>         else
<span class="ln">280</span>             throw new CHttpException(404,Yii::t(&#039;yii&#039;,&#039;Unable to resolve the request &quot;{route}&quot;.&#039;,
<span class="ln">281</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">
				#15			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;C:\limesurvey\framework\web\CWebApplication.php(135): <strong>CWebApplication</strong>-><strong>runController</strong>(&quot;admin/usergroups/sa/view&quot;)				</div>

				<div class="code"><pre><span class="ln">130</span>             foreach(array_splice($this-&gt;catchAllRequest,1) as $name=&gt;$value)
<span class="ln">131</span>                 $_GET[$name]=$value;
<span class="ln">132</span>         }
<span class="ln">133</span>         else
<span class="ln">134</span>             $route=$this-&gt;getUrlManager()-&gt;parseUrl($this-&gt;getRequest());
<span class="error"><span class="ln error-ln">135</span>         $this-&gt;runController($route);
</span><span class="ln">136</span>     }
<span class="ln">137</span> 
<span class="ln">138</span>     /**
<span class="ln">139</span>      * Registers the core application components.
<span class="ln">140</span>      * This method overrides the parent implementation by registering additional core components.
</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:\limesurvey\framework\base\CApplication.php(162): <strong>CWebApplication</strong>-><strong>processRequest</strong>()				</div>

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

				<div class="code"><pre><span class="ln">173</span>  *
<span class="ln">174</span>  */
<span class="ln">175</span> require_once BASEPATH . &#039;yii&#039; . EXT;
<span class="ln">176</span> require_once APPPATH . &#039;core/LSYii_Application&#039; . EXT;
<span class="ln">177</span> 
<span class="error"><span class="ln error-ln">178</span> Yii::createApplication(&#039;LSYii_Application&#039;, APPPATH . &#039;config/config&#039; . EXT)-&gt;run();
</span><span class="ln">179</span> 
<span class="ln">180</span> /* End of file index.php */
<span class="ln">181</span> /* Location: ./index.php */
</pre></div>			</td>
		</tr>
				</table>
	</div>

	<div class="version">
		2012-11-22 10:20:29 Microsoft-IIS/7.5 <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.10	</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>
Undefined Error.htm (31,820 bytes)   
Issue ID-06927 Update.htm (46,187 bytes)   
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=(0048)http://pfpconsulttest/index.php/admin/user/index -->
<HTML lang=en xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>PHP notice</TITLE>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<STYLE type=text/css>HTML {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
BODY {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DIV {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SPAN {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
APPLET {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
OBJECT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
IFRAME {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H1 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H2 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H3 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H4 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H5 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H6 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
P {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
BLOCKQUOTE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
PRE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
A {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
ABBR {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
ACRONYM {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
ADDRESS {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
BIG {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
CITE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
CODE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DEL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DFN {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
EM {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
FONT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
IMG {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
INS {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
KBD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
Q {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
S {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SAMP {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SMALL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
STRIKE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
STRONG {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SUB {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SUP {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
VAR {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
B {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
U {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
I {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
CENTER {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
OL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
UL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
LI {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
FIELDSET {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
FORM {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
LABEL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
LEGEND {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TABLE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
CAPTION {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TBODY {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TFOOT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
THEAD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TR {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TH {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; FONT-SIZE: 100%; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
BODY {
	LINE-HEIGHT: 1
}
OL {
	LIST-STYLE-TYPE: none; LIST-STYLE-IMAGE: none
}
UL {
	LIST-STYLE-TYPE: none; LIST-STYLE-IMAGE: none
}
BLOCKQUOTE {
	QUOTES: none
}
Q {
	QUOTES: none
}
BLOCKQUOTE:before {
	CONTENT: none
}
BLOCKQUOTE:after {
	CONTENT: none
}
Q:before {
	CONTENT: none
}
Q:after {
	CONTENT: none
}
:focus {
	OUTLINE-STYLE: none; OUTLINE-COLOR: invert; OUTLINE-WIDTH: 0px
}
INS {
	TEXT-DECORATION: none
}
DEL {
	TEXT-DECORATION: line-through
}
TABLE {
	BORDER-SPACING: 0; BORDER-COLLAPSE: collapse
}
BODY {
	FONT: 9pt "Verdana"; BACKGROUND: #fff; COLOR: #000
}
H1 {
	FONT: 18pt "Verdana"; MARGIN-BOTTOM: 0.5em; COLOR: #f00
}
H2 {
	FONT: 14pt "Verdana"; MARGIN-BOTTOM: 0.5em; COLOR: #800000
}
H3 {
	FONT: bold 11pt "Verdana"
}
PRE {
	FONT: 11pt Menlo, Consolas, "Lucida Console", Monospace
}
PRE SPAN.error {
	DISPLAY: block; BACKGROUND: #fce3e3
}
PRE SPAN.ln {
	PADDING-RIGHT: 0.5em; COLOR: #999; BORDER-RIGHT: #ccc 1px solid
}
PRE SPAN.error-ln {
	FONT-WEIGHT: bold
}
.container {
	MARGIN: 1em 4em
}
.version {
	MARGIN-BOTTOM: 1em; COLOR: gray; FONT-SIZE: 8pt; BORDER-TOP: #aaa 1px solid; PADDING-TOP: 1em
}
.message {
	PADDING-BOTTOM: 1em; LINE-HEIGHT: 160%; PADDING-LEFT: 1em; PADDING-RIGHT: 1em; MARGIN-BOTTOM: 1em; BACKGROUND: #f3f3f3; COLOR: #000; FONT-SIZE: 11pt; PADDING-TOP: 1em; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px
}
.source {
	MARGIN-BOTTOM: 1em
}
.code PRE {
	BORDER-BOTTOM: #eee 1px solid; BORDER-LEFT: #eee 1px solid; PADDING-BOTTOM: 0.5em; LINE-HEIGHT: 125%; BACKGROUND-COLOR: #ffe; MARGIN: 0.5em 0px; PADDING-LEFT: 0.5em; PADDING-RIGHT: 0.5em; BORDER-TOP: #eee 1px solid; BORDER-RIGHT: #eee 1px solid; PADDING-TOP: 0.5em
}
.source .file {
	MARGIN-BOTTOM: 1em; FONT-WEIGHT: bold
}
.traces {
	MARGIN: 2em 0px
}
.trace {
	PADDING-BOTTOM: 0.5em; MARGIN: 0.5em 0px; PADDING-LEFT: 0.5em; PADDING-RIGHT: 0.5em; PADDING-TOP: 0.5em
}
.app.trace {
	BORDER-BOTTOM: #c00 1px dashed; BORDER-LEFT: #c00 1px dashed; BORDER-TOP: #c00 1px dashed; BORDER-RIGHT: #c00 1px dashed
}
.trace .number {
	TEXT-ALIGN: right; PADDING-BOTTOM: 0.5em; PADDING-LEFT: 0.5em; WIDTH: 2em; PADDING-RIGHT: 0.5em; PADDING-TOP: 0.5em
}
.trace .content {
	PADDING-BOTTOM: 0.5em; PADDING-LEFT: 0.5em; PADDING-RIGHT: 0.5em; PADDING-TOP: 0.5em
}
.trace .plus {
	BORDER-BOTTOM: #000 1px solid; TEXT-ALIGN: center; BORDER-LEFT: #000 1px solid; PADDING-BOTTOM: 0px; LINE-HEIGHT: 10px; MARGIN: 0px; PADDING-LEFT: 1px; WIDTH: 10px; PADDING-RIGHT: 1px; DISPLAY: inline; HEIGHT: 10px; COLOR: #000; FONT-SIZE: 10px; VERTICAL-ALIGN: middle; BORDER-TOP: #000 1px solid; BORDER-RIGHT: #000 1px solid; PADDING-TOP: 0px
}
.trace .minus {
	BORDER-BOTTOM: #000 1px solid; TEXT-ALIGN: center; BORDER-LEFT: #000 1px solid; PADDING-BOTTOM: 0px; LINE-HEIGHT: 10px; MARGIN: 0px; PADDING-LEFT: 1px; WIDTH: 10px; PADDING-RIGHT: 1px; DISPLAY: inline; HEIGHT: 10px; COLOR: #000; FONT-SIZE: 10px; VERTICAL-ALIGN: middle; BORDER-TOP: #000 1px solid; BORDER-RIGHT: #000 1px solid; PADDING-TOP: 0px
}
.collapsed.trace .minus {
	DISPLAY: none
}
.expanded.trace .plus {
	DISPLAY: none
}
.collapsed.trace PRE {
	DISPLAY: none
}
.trace-file {
	PADDING-BOTTOM: 0.2em; PADDING-LEFT: 0.2em; PADDING-RIGHT: 0.2em; CURSOR: pointer; PADDING-TOP: 0.2em
}
.trace-file:hover {
	BACKGROUND: #f0ffff
}
</STYLE>

<META name=GENERATOR content="MSHTML 8.00.7601.17940"></HEAD>
<BODY>
<DIV class=container>
<H1>PHP notice</H1>
<P class=message>Undefined index: password </P>
<DIV class=source>
<P class=file>C:\limesurvey_test\application\helpers\common_helper.php(1374)</P>
<DIV class=code><PRE><SPAN class=ln>1362</SPAN>     $userlist[0] = "Reserved for logged in user";
<SPAN class=ln>1363</SPAN>     //while ($srow = $uresult-&gt;readAll())
<SPAN class=ln>1364</SPAN>     foreach ($uresult as $srow)
<SPAN class=ln>1365</SPAN>     {
<SPAN class=ln>1366</SPAN>         if ($outputformat != 'onlyuidarray')
<SPAN class=ln>1367</SPAN>         {
<SPAN class=ln>1368</SPAN>             if ($srow['uid'] != Yii::app()-&gt;session['loginID'])
<SPAN class=ln>1369</SPAN>             {
<SPAN class=ln>1370</SPAN>                 $userlist[] = array("user"=&gt;$srow['users_name'], "uid"=&gt;$srow['uid'], "email"=&gt;$srow['email'], "password"=&gt;$srow['password'], "full_name"=&gt;$srow['full_name'], "parent_id"=&gt;$srow['parent_id'], "create_survey"=&gt;$srow['create_survey'], "participant_panel"=&gt;$srow['participant_panel'], "configurator"=&gt;$srow['configurator'], "create_user"=&gt;$srow['create_user'], "delete_user"=&gt;$srow['delete_user'], "superadmin"=&gt;$srow['superadmin'], "manage_template"=&gt;$srow['manage_template'], "manage_label"=&gt;$srow['manage_label']);           //added by Dennis modified by Moses
<SPAN class=ln>1371</SPAN>             }
<SPAN class=ln>1372</SPAN>             else
<SPAN class=ln>1373</SPAN>             {
<SPAN class=error><SPAN class="ln error-ln">1374</SPAN>                 $userlist[0] = array("user"=&gt;$srow['users_name'], "uid"=&gt;$srow['uid'], "email"=&gt;$srow['email'], "password"=&gt;$srow['password'], "full_name"=&gt;$srow['full_name'], "parent_id"=&gt;$srow['parent_id'], "create_survey"=&gt;$srow['create_survey'],"participant_panel"=&gt;$srow['participant_panel'], "configurator"=&gt;$srow['configurator'], "create_user"=&gt;$srow['create_user'], "delete_user"=&gt;$srow['delete_user'], "superadmin"=&gt;$srow['superadmin'], "manage_template"=&gt;$srow['manage_template'], "manage_label"=&gt;$srow['manage_label']);
</SPAN><SPAN class=ln>1375</SPAN>             }
<SPAN class=ln>1376</SPAN>         }
<SPAN class=ln>1377</SPAN>         else
<SPAN class=ln>1378</SPAN>         {
<SPAN class=ln>1379</SPAN>             if ($srow['uid'] != Yii::app()-&gt;session['loginID'])
<SPAN class=ln>1380</SPAN>             {
<SPAN class=ln>1381</SPAN>                 $userlist[] = $srow['uid'];
<SPAN class=ln>1382</SPAN>             }
<SPAN class=ln>1383</SPAN>             else
<SPAN class=ln>1384</SPAN>             {
<SPAN class=ln>1385</SPAN>                 $userlist[0] = $srow['uid'];
<SPAN class=ln>1386</SPAN>             }
</PRE></DIV></DIV>
<DIV class=traces>
<H2>Stack Trace</H2>
<TABLE style="WIDTH: 100%">
  <TBODY>
  <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:\limesurvey_test\application\controllers\admin\useraction.php(43): 
      <STRONG>getUserList</STRONG>() </DIV>
      <DIV class=code><PRE><SPAN class=ln>38</SPAN>     public function index()
<SPAN class=ln>39</SPAN>     {
<SPAN class=ln>40</SPAN>         $this-&gt;getController()-&gt;_js_admin_includes(Yii::app()-&gt;getConfig('generalscripts') . 'jquery/jquery.tablesorter.min.js');
<SPAN class=ln>41</SPAN>         $this-&gt;getController()-&gt;_js_admin_includes(Yii::app()-&gt;getConfig('adminscripts').'users.js');
<SPAN class=ln>42</SPAN> 
<SPAN class=error><SPAN class="ln error-ln">43</SPAN>         $userlist = getUserList();
</SPAN><SPAN class=ln>44</SPAN>         $usrhimself = $userlist[0];
<SPAN class=ln>45</SPAN>         unset($userlist[0]);
<SPAN class=ln>46</SPAN> 
<SPAN class=ln>47</SPAN>         if (Yii::app()-&gt;session['USER_RIGHT_SUPERADMIN'] == 1) {
<SPAN class=ln>48</SPAN>             $noofsurveys = Survey::model()-&gt;countByAttributes(array("owner_id" =&gt; $usrhimself['uid']));
</PRE></DIV></TD></TR>
  <TR class="trace core collapsed">
    <TD class=number>#1 </TD>
    <TD class=content>
      <DIV class=trace-file>&nbsp;unknown(0): 
      <STRONG>UserAction</STRONG>-&gt;<STRONG>index</STRONG>() </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;C:\limesurvey_test\framework\web\actions\CAction.php(107): 
      <STRONG>ReflectionMethod</STRONG>-&gt;<STRONG>invokeArgs</STRONG>(UserAction, 
      array()) </DIV>
      <DIV class=code><PRE><SPAN class=ln>102</SPAN>             else if($param-&gt;isDefaultValueAvailable())
<SPAN class=ln>103</SPAN>                 $ps[]=$param-&gt;getDefaultValue();
<SPAN class=ln>104</SPAN>             else
<SPAN class=ln>105</SPAN>                 return false;
<SPAN class=ln>106</SPAN>         }
<SPAN class=error><SPAN class="ln error-ln">107</SPAN>         $method-&gt;invokeArgs($object,$ps);
</SPAN><SPAN class=ln>108</SPAN>         return true;
<SPAN class=ln>109</SPAN>     }
<SPAN class=ln>110</SPAN> }
</PRE></DIV></TD></TR>
  <TR class="trace app expanded">
    <TD class=number>#3 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV 
      class=minus>–</DIV>&nbsp;C:\limesurvey_test\application\core\Survey_Common_Action.php(82): 
      <STRONG>CAction</STRONG>-&gt;<STRONG>runWithParamsInternal</STRONG>(UserAction, 
      ReflectionMethod, array("sa" =&gt; "index")) </DIV>
      <DIV class=code><PRE><SPAN class=ln>77</SPAN>             $oMethod = new ReflectionMethod($this, $sDefault);
<SPAN class=ln>78</SPAN>         }
<SPAN class=ln>79</SPAN> 
<SPAN class=ln>80</SPAN>         // We're all good to go, let's execute it
<SPAN class=ln>81</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">82</SPAN>         return parent::runWithParamsInternal($this, $oMethod, $params);
</SPAN><SPAN class=ln>83</SPAN>     }
<SPAN class=ln>84</SPAN> 
<SPAN class=ln>85</SPAN>     /**
<SPAN class=ln>86</SPAN>     * Some functions have different parameters, which are just an alias of the
<SPAN class=ln>87</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>#4 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV 
      class=minus>–</DIV>&nbsp;C:\limesurvey_test\framework\web\CController.php(309): 
      <STRONG>Survey_Common_Action</STRONG>-&gt;<STRONG>runWithParams</STRONG>(array("sa" 
      =&gt; "index")) </DIV>
      <DIV class=code><PRE><SPAN class=ln>304</SPAN>     {
<SPAN class=ln>305</SPAN>         $priorAction=$this-&gt;_action;
<SPAN class=ln>306</SPAN>         $this-&gt;_action=$action;
<SPAN class=ln>307</SPAN>         if($this-&gt;beforeAction($action))
<SPAN class=ln>308</SPAN>         {
<SPAN class=error><SPAN class="ln error-ln">309</SPAN>             if($action-&gt;runWithParams($this-&gt;getActionParams())===false)
</SPAN><SPAN class=ln>310</SPAN>                 $this-&gt;invalidActionParams($action);
<SPAN class=ln>311</SPAN>             else
<SPAN class=ln>312</SPAN>                 $this-&gt;afterAction($action);
<SPAN class=ln>313</SPAN>         }
<SPAN class=ln>314</SPAN>         $this-&gt;_action=$priorAction;
</PRE></DIV></TD></TR>
  <TR class="trace core collapsed">
    <TD class=number>#5 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV 
      class=minus>–</DIV>&nbsp;C:\limesurvey_test\framework\web\CController.php(287): 
      <STRONG>CController</STRONG>-&gt;<STRONG>runAction</STRONG>(UserAction) 
      </DIV>
      <DIV class=code><PRE><SPAN class=ln>282</SPAN>      * @see runAction
<SPAN class=ln>283</SPAN>      */
<SPAN class=ln>284</SPAN>     public function runActionWithFilters($action,$filters)
<SPAN class=ln>285</SPAN>     {
<SPAN class=ln>286</SPAN>         if(empty($filters))
<SPAN class=error><SPAN class="ln error-ln">287</SPAN>             $this-&gt;runAction($action);
</SPAN><SPAN class=ln>288</SPAN>         else
<SPAN class=ln>289</SPAN>         {
<SPAN class=ln>290</SPAN>             $priorAction=$this-&gt;_action;
<SPAN class=ln>291</SPAN>             $this-&gt;_action=$action;
<SPAN class=ln>292</SPAN>             CFilterChain::create($this,$action,$filters)-&gt;run();
</PRE></DIV></TD></TR>
  <TR class="trace core collapsed">
    <TD class=number>#6 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV 
      class=minus>–</DIV>&nbsp;C:\limesurvey_test\framework\web\CController.php(266): 
      <STRONG>CController</STRONG>-&gt;<STRONG>runActionWithFilters</STRONG>(UserAction, 
      array()) </DIV>
      <DIV class=code><PRE><SPAN class=ln>261</SPAN>         {
<SPAN class=ln>262</SPAN>             if(($parent=$this-&gt;getModule())===null)
<SPAN class=ln>263</SPAN>                 $parent=Yii::app();
<SPAN class=ln>264</SPAN>             if($parent-&gt;beforeControllerAction($this,$action))
<SPAN class=ln>265</SPAN>             {
<SPAN class=error><SPAN class="ln error-ln">266</SPAN>                 $this-&gt;runActionWithFilters($action,$this-&gt;filters());
</SPAN><SPAN class=ln>267</SPAN>                 $parent-&gt;afterControllerAction($this,$action);
<SPAN class=ln>268</SPAN>             }
<SPAN class=ln>269</SPAN>         }
<SPAN class=ln>270</SPAN>         else
<SPAN class=ln>271</SPAN>             $this-&gt;missingAction($actionID);
</PRE></DIV></TD></TR>
  <TR class="trace app expanded">
    <TD class=number>#7 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV 
      class=minus>–</DIV>&nbsp;C:\limesurvey_test\application\controllers\AdminController.php(159): 
      <STRONG>CController</STRONG>-&gt;<STRONG>run</STRONG>("user") </DIV>
      <DIV class=code><PRE><SPAN class=ln>154</SPAN>                 Yii::app()-&gt;session['redirectopage'] = Yii::app()-&gt;request-&gt;requestUri;
<SPAN class=ln>155</SPAN> 
<SPAN class=ln>156</SPAN>                 $this-&gt;redirect($this-&gt;createUrl('/admin/authentication/login'));
<SPAN class=ln>157</SPAN>             }
<SPAN class=ln>158</SPAN> 
<SPAN class=error><SPAN class="ln error-ln">159</SPAN>             return parent::run($action);
</SPAN><SPAN class=ln>160</SPAN>     }
<SPAN class=ln>161</SPAN> 
<SPAN class=ln>162</SPAN>     /**
<SPAN class=ln>163</SPAN>     * Routes all the actions to their respective places
<SPAN class=ln>164</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;C:\limesurvey_test\framework\web\CWebApplication.php(276): 
      <STRONG>AdminController</STRONG>-&gt;<STRONG>run</STRONG>("user") </DIV>
      <DIV class=code><PRE><SPAN class=ln>271</SPAN>         {
<SPAN class=ln>272</SPAN>             list($controller,$actionID)=$ca;
<SPAN class=ln>273</SPAN>             $oldController=$this-&gt;_controller;
<SPAN class=ln>274</SPAN>             $this-&gt;_controller=$controller;
<SPAN class=ln>275</SPAN>             $controller-&gt;init();
<SPAN class=error><SPAN class="ln error-ln">276</SPAN>             $controller-&gt;run($actionID);
</SPAN><SPAN class=ln>277</SPAN>             $this-&gt;_controller=$oldController;
<SPAN class=ln>278</SPAN>         }
<SPAN class=ln>279</SPAN>         else
<SPAN class=ln>280</SPAN>             throw new CHttpException(404,Yii::t('yii','Unable to resolve the request "{route}".',
<SPAN class=ln>281</SPAN>                 array('{route}'=&gt;$route===''?$this-&gt;defaultController:$route)));
</PRE></DIV></TD></TR>
  <TR class="trace core collapsed">
    <TD class=number>#9 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV 
      class=minus>–</DIV>&nbsp;C:\limesurvey_test\framework\web\CWebApplication.php(135): 
      <STRONG>CWebApplication</STRONG>-&gt;<STRONG>runController</STRONG>("admin/user/sa/index") 
      </DIV>
      <DIV class=code><PRE><SPAN class=ln>130</SPAN>             foreach(array_splice($this-&gt;catchAllRequest,1) as $name=&gt;$value)
<SPAN class=ln>131</SPAN>                 $_GET[$name]=$value;
<SPAN class=ln>132</SPAN>         }
<SPAN class=ln>133</SPAN>         else
<SPAN class=ln>134</SPAN>             $route=$this-&gt;getUrlManager()-&gt;parseUrl($this-&gt;getRequest());
<SPAN class=error><SPAN class="ln error-ln">135</SPAN>         $this-&gt;runController($route);
</SPAN><SPAN class=ln>136</SPAN>     }
<SPAN class=ln>137</SPAN> 
<SPAN class=ln>138</SPAN>     /**
<SPAN class=ln>139</SPAN>      * Registers the core application components.
<SPAN class=ln>140</SPAN>      * This method overrides the parent implementation by registering additional core components.
</PRE></DIV></TD></TR>
  <TR class="trace core collapsed">
    <TD class=number>#10 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV 
      class=minus>–</DIV>&nbsp;C:\limesurvey_test\framework\base\CApplication.php(162): 
      <STRONG>CWebApplication</STRONG>-&gt;<STRONG>processRequest</STRONG>() 
      </DIV>
      <DIV class=code><PRE><SPAN class=ln>157</SPAN>      */
<SPAN class=ln>158</SPAN>     public function run()
<SPAN class=ln>159</SPAN>     {
<SPAN class=ln>160</SPAN>         if($this-&gt;hasEventHandler('onBeginRequest'))
<SPAN class=ln>161</SPAN>             $this-&gt;onBeginRequest(new CEvent($this));
<SPAN class=error><SPAN class="ln error-ln">162</SPAN>         $this-&gt;processRequest();
</SPAN><SPAN class=ln>163</SPAN>         if($this-&gt;hasEventHandler('onEndRequest'))
<SPAN class=ln>164</SPAN>             $this-&gt;onEndRequest(new CEvent($this));
<SPAN class=ln>165</SPAN>     }
<SPAN class=ln>166</SPAN> 
<SPAN class=ln>167</SPAN>     /**
</PRE></DIV></TD></TR>
  <TR class="trace app collapsed">
    <TD class=number>#11 </TD>
    <TD class=content>
      <DIV class=trace-file>
      <DIV class=plus>+</DIV>
      <DIV class=minus>–</DIV>&nbsp;C:\limesurvey_test\index.php(178): 
      <STRONG>CApplication</STRONG>-&gt;<STRONG>run</STRONG>() </DIV>
      <DIV class=code><PRE><SPAN class=ln>173</SPAN>  *
<SPAN class=ln>174</SPAN>  */
<SPAN class=ln>175</SPAN> require_once BASEPATH . 'yii' . EXT;
<SPAN class=ln>176</SPAN> require_once APPPATH . 'core/LSYii_Application' . EXT;
<SPAN class=ln>177</SPAN> 
<SPAN class=error><SPAN class="ln error-ln">178</SPAN> Yii::createApplication('LSYii_Application', APPPATH . 'config/config' . EXT)-&gt;run();
</SPAN><SPAN class=ln>179</SPAN> 
<SPAN class=ln>180</SPAN> /* End of file index.php */
<SPAN class=ln>181</SPAN> /* Location: ./index.php */
</PRE></DIV></TD></TR></TBODY></TABLE></DIV>
<DIV class=version>2012-11-26 10:41:28 Microsoft-IIS/7.5 <A 
href="http://www.yiiframework.com/">Yii Framework</A>/1.1.10 </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>

<SCRIPT type=text/javascript>
/*<![CDATA[*/
if(typeof(console)=='object')
{
	console.group("Application Log");
	console.log("[10:41:28.827][trace][system.db.CDbConnection] Opening DB connection");
	console.log("[10:41:28.832][trace][system.db.CDbCommand] Querying SQL: \t\tSELECT k.column_name field_name\n\t\t\tFROM [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE] k\n\t\t    LEFT JOIN [INFORMATION_SCHEMA].[TABLE_CONSTRAINTS] c\n\t\t      ON k.table_name = c.table_name\n\t\t     AND k.constraint_name = c.constraint_name\n\t\t   WHERE c.constraint_type =\'PRIMARY KEY\'\n\t\t   \t    AND k.table_name = :table\n\t\t\t\tAND k.table_schema = :schema. Bound with :table=\'settings_global\', :schema=\'dbo\'");
	console.log("[10:41:28.836][trace][system.db.CDbCommand] Querying SQL: \t\tSELECT\n\t\t     KCU1.CONSTRAINT_NAME AS \'FK_CONSTRAINT_NAME\'\n\t\t   , KCU1.TABLE_NAME AS \'FK_TABLE_NAME\'\n\t\t   , KCU1.COLUMN_NAME AS \'FK_COLUMN_NAME\'\n\t\t   , KCU1.ORDINAL_POSITION AS \'FK_ORDINAL_POSITION\'\n\t\t   , KCU2.CONSTRAINT_NAME AS \'UQ_CONSTRAINT_NAME\'\n\t\t   , KCU2.TABLE_NAME AS \'UQ_TABLE_NAME\'\n\t\t   , KCU2.COLUMN_NAME AS \'UQ_COLUMN_NAME\'\n\t\t   , KCU2.ORDINAL_POSITION AS \'UQ_ORDINAL_POSITION\'\n\t\tFROM [INFORMATION_SCHEMA].[REFERENTIAL_CONSTRAINTS] RC\n\t\tJOIN [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE] KCU1\n\t\tON KCU1.CONSTRAINT_CATALOG = RC.CONSTRAINT_CATALOG\n\t\t   AND KCU1.CONSTRAINT_SCHEMA = RC.CONSTRAINT_SCHEMA\n\t\t   AND KCU1.CONSTRAINT_NAME = RC.CONSTRAINT_NAME\n\t\tJOIN [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE] KCU2\n\t\tON KCU2.CONSTRAINT_CATALOG =\n\t\tRC.UNIQUE_CONSTRAINT_CATALOG\n\t\t   AND KCU2.CONSTRAINT_SCHEMA =\n\t\tRC.UNIQUE_CONSTRAINT_SCHEMA\n\t\t   AND KCU2.CONSTRAINT_NAME =\n\t\tRC.UNIQUE_CONSTRAINT_NAME\n\t\t   AND KCU2.ORDINAL_POSITION = KCU1.ORDINAL_POSITION\n\t\tWHERE KCU1.TABLE_NAME = :table. Bound with :table=\'settings_global\'");
	console.log("[10:41:28.837][trace][system.db.CDbCommand] Querying SQL: SELECT *, columnproperty(object_id(table_schema+\'.\'+table_name), column_name, \'IsIdentity\') as IsIdentity FROM [INFORMATION_SCHEMA].[COLUMNS] WHERE TABLE_NAME=\'settings_global\' AND TABLE_SCHEMA=\'dbo\'");
	console.log("[10:41:28.838][trace][system.db.ar.CActiveRecord] Settings_global.findAll()");
	console.log("[10:41:28.841][trace][system.db.CDbCommand] Querying SQL: SELECT * FROM [dbo].[settings_global] [t]");
	console.log("[10:41:28.882][trace][system.db.ar.CActiveRecord] Settings_global.findByPk()");
	console.log("[10:41:28.882][trace][system.db.CDbCommand] Querying SQL: SELECT TOP 1 * FROM [dbo].[settings_global] [t] WHERE [t].[stg_name]=\'updatelastcheck\'");
	console.log("[10:41:28.885][trace][system.db.CDbCommand] Querying SQL: \t\tSELECT k.column_name field_name\n\t\t\tFROM [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE] k\n\t\t    LEFT JOIN [INFORMATION_SCHEMA].[TABLE_CONSTRAINTS] c\n\t\t      ON k.table_name = c.table_name\n\t\t     AND k.constraint_name = c.constraint_name\n\t\t   WHERE c.constraint_type =\'PRIMARY KEY\'\n\t\t   \t    AND k.table_name = :table\n\t\t\t\tAND k.table_schema = :schema. Bound with :table=\'surveys\', :schema=\'dbo\'");
	console.log("[10:41:28.889][trace][system.db.CDbCommand] Querying SQL: \t\tSELECT\n\t\t     KCU1.CONSTRAINT_NAME AS \'FK_CONSTRAINT_NAME\'\n\t\t   , KCU1.TABLE_NAME AS \'FK_TABLE_NAME\'\n\t\t   , KCU1.COLUMN_NAME AS \'FK_COLUMN_NAME\'\n\t\t   , KCU1.ORDINAL_POSITION AS \'FK_ORDINAL_POSITION\'\n\t\t   , KCU2.CONSTRAINT_NAME AS \'UQ_CONSTRAINT_NAME\'\n\t\t   , KCU2.TABLE_NAME AS \'UQ_TABLE_NAME\'\n\t\t   , KCU2.COLUMN_NAME AS \'UQ_COLUMN_NAME\'\n\t\t   , KCU2.ORDINAL_POSITION AS \'UQ_ORDINAL_POSITION\'\n\t\tFROM [INFORMATION_SCHEMA].[REFERENTIAL_CONSTRAINTS] RC\n\t\tJOIN [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE] KCU1\n\t\tON KCU1.CONSTRAINT_CATALOG = RC.CONSTRAINT_CATALOG\n\t\t   AND KCU1.CONSTRAINT_SCHEMA = RC.CONSTRAINT_SCHEMA\n\t\t   AND KCU1.CONSTRAINT_NAME = RC.CONSTRAINT_NAME\n\t\tJOIN [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE] KCU2\n\t\tON KCU2.CONSTRAINT_CATALOG =\n\t\tRC.UNIQUE_CONSTRAINT_CATALOG\n\t\t   AND KCU2.CONSTRAINT_SCHEMA =\n\t\tRC.UNIQUE_CONSTRAINT_SCHEMA\n\t\t   AND KCU2.CONSTRAINT_NAME =\n\t\tRC.UNIQUE_CONSTRAINT_NAME\n\t\t   AND KCU2.ORDINAL_POSITION = KCU1.ORDINAL_POSITION\n\t\tWHERE KCU1.TABLE_NAME = :table. Bound with :table=\'surveys\'");
	console.log("[10:41:28.890][trace][system.db.CDbCommand] Querying SQL: SELECT *, columnproperty(object_id(table_schema+\'.\'+table_name), column_name, \'IsIdentity\') as IsIdentity FROM [INFORMATION_SCHEMA].[COLUMNS] WHERE TABLE_NAME=\'surveys\' AND TABLE_SCHEMA=\'dbo\'");
	console.log("[10:41:28.898][trace][system.db.ar.CActiveRecord] Settings_global.findByPk()");
	console.log("[10:41:28.898][trace][system.db.CDbCommand] Querying SQL: SELECT TOP 1 * FROM [dbo].[settings_global] [t] WHERE [t].[stg_name]=\'DBVersion\'");
	console.log("[10:41:28.903][trace][system.db.CDbCommand] Querying SQL:  SELECT users_name,uid,email,full_name,parent_id,create_survey,participant_panel,configurator,create_user,delete_user,superadmin,manage_template,manage_label,CAST(password as varchar) from users where uid in (\r\n                SELECT uid from user_in_groups where ugid in (\r\n                    SELECT ugid from user_in_groups where uid=4\r\n                    )\r\n                )\r\n            UNION\r\n            SELECT users_name,uid,email,full_name,parent_id,create_survey,participant_panel,configurator,create_user,delete_user,superadmin,manage_template,manage_label,CAST(password as varchar) from users v where v.parent_id=4");
	console.groupEnd();
}
/*]]>*/
</SCRIPT>
</BODY></HTML>
Issue ID-06927 Update.htm (46,187 bytes)   
Bug heat256
Complete LimeSurvey version number (& build)121115
I will donate to the project if issue is resolvedNo
BrowserIE8
Database type & versionSQL Express 2012
Server OS (if known)Server 2008
Webserver software & version (if known)IIS 7
PHP Version5.4.8

Relationships

related to 06926 closedc_schmitz CDbException when attempting to access 'Manage Survey Administrators' as a restricted user 

Users monitoring this issue

There are no users monitoring this issue.

Activities

mdekker

mdekker

2012-11-22 16:27

reporter   ~22431

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

mdekker

mdekker

2012-11-22 16:27

reporter   ~22433

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

pfpDave

pfpDave

2012-11-22 16:44

reporter   ~22434

This looks good to me, many thanks. A quick couple of cheeky questions:

  • Is the Mail to all members meant to be visible to a restricted user?
  • Is there a way for a user to change their password themself?

Cheers

mdekker

mdekker

2012-11-26 09:22

reporter   ~22507

What mail are you referring to? The mail from this bugreport is for all people involved in this report. So you and me.

A user can change his own password: http://docs.limesurvey.org/First+login+-+Your+user+preferences&structure=English+Instructions+for+LimeSurvey

If there is a problem with that, please open a new bugreport.

pfpDave

pfpDave

2012-11-26 11:28

reporter   ~22518

Sorry ... I was meaning on the view group screen in Limesurvey 'Create/edit usergroups' ... there is a 'mail to all members' button ... is it intended that this is restricted to an admin user or is it meant to be available for everyone?

Thanks for the password link ... I've now tested in version Version 2.00+ Build 121121 and this works fine.

mdekker

mdekker

2012-11-26 11:31

reporter   ~22520

For the email: I really don't know. Please start a topic about this on the forum to see what other users think about it and open a bugreport / feature request where you link to the relevant forum topic.

The change password for a user is a bit hidden at the moment, we could consider adding that fucntionality to the user preferences page where it feels more logical.

pfpDave

pfpDave

2012-11-26 11:39

reporter   ~22521

Thanks for the feedback.

Unfortunately the fix isn't quite there ... once I add a user to a group I now get the error below

To re-create this issue:

  1. create a user with create survey permissions only
  2. create a group
  3. add user to group
  4. log in as user
  5. click on 'Manage Survey Administrators'

--- error: ---

Undefined index: password

C:\limesurvey_test\application\helpers\common_helper.php(1374)

1362 $userlist[0] = "Reserved for logged in user";
1363 //while ($srow = $uresult->readAll())
1364 foreach ($uresult as $srow)
1365 {
1366 if ($outputformat != 'onlyuidarray')
1367 {
1368 if ($srow['uid'] != Yii::app()->session['loginID'])
1369 {
1370 $userlist[] = array("user"=>$srow['users_name'], "uid"=>$srow['uid'], "email"=>$srow['email'], "password"=>$srow['password'], "full_name"=>$srow['full_name'], "parent_id"=>$srow['parent_id'], "create_survey"=>$srow['create_survey'], "participant_panel"=>$srow['participant_panel'], "configurator"=>$srow['configurator'], "create_user"=>$srow['create_user'], "delete_user"=>$srow['delete_user'], "superadmin"=>$srow['superadmin'], "manage_template"=>$srow['manage_template'], "manage_label"=>$srow['manage_label']); //added by Dennis modified by Moses
1371 }
1372 else
1373 {
1374 $userlist[0] = array("user"=>$srow['users_name'], "uid"=>$srow['uid'], "email"=>$srow['email'], "password"=>$srow['password'], "full_name"=>$srow['full_name'], "parent_id"=>$srow['parent_id'], "create_survey"=>$srow['create_survey'],"participant_panel"=>$srow['participant_panel'], "configurator"=>$srow['configurator'], "create_user"=>$srow['create_user'], "delete_user"=>$srow['delete_user'], "superadmin"=>$srow['superadmin'], "manage_template"=>$srow['manage_template'], "manage_label"=>$srow['manage_label']);
1375 }
1376 }
1377 else
1378 {
1379 if ($srow['uid'] != Yii::app()->session['loginID'])
1380 {
1381 $userlist[] = $srow['uid'];
1382 }
1383 else
1384 {
1385 $userlist[0] = $srow['uid'];
1386 }

pfpDave

pfpDave

2012-11-26 11:40

reporter   ~22522

Full error attached

mdekker

mdekker

2012-11-26 11:43

reporter   ~22523

ms sql right?

pfpDave

pfpDave

2012-11-26 11:44

reporter   ~22524

Yes, that's right - SQL Express 2012

mdekker

mdekker

2012-11-26 11:46

reporter   ~22525

you feel comfortable editing a file? have no sql so can not test, but i guess

https://github.com/LimeSurvey/LimeSurvey/commit/55e648c506c12cd83900f0db43ef34c7b87c6608#application/helpers/common_helper.php

introduced that problem. could you see if changing the line i commented there fixes your problem? I have no sql to test myself

pfpDave

pfpDave

2012-11-26 11:48

reporter   ~22526

I'll take a look and get back to you ASAP

pfpDave

pfpDave

2012-11-26 11:52

reporter   ~22527

That did the trick, many thanks ... fix was to change line 1323 of common_helper to:

$sSelectFields = 'users_name,uid,email,full_name,parent_id,create_survey,participant_panel,configurator,create_user,delete_user,superadmin,manage_template,manage_label,CAST(password as varchar) as password';

mdekker

mdekker

2012-11-26 11:54

reporter   ~22530

Thanks for the confirmation, will commit right away so it can go into next release

pfpDave

pfpDave

2012-11-26 11:55

reporter   ~22531

Sorry to confuse ... I've reopened 6926 ... may need to re-close that ticket too.

Dave

mdekker

mdekker

2012-11-26 11:59

reporter   ~22534

Both issues now resolved. Thanks for the report and solution!

c_schmitz

c_schmitz

2012-11-27 06:11

administrator   ~22569

New 2.00+ build released.

Related Changesets

LimeSurvey: master 4b145850

2012-11-22 16:25

mdekker


Details Diff
Fixed 06927: Undefined Index error when restricted users attempts to access 'Create/edit user groups' Affected Issues
06927
mod - application/controllers/admin/usergroups.php Diff File
mod - application/views/admin/usergroup/viewUserGroup_view.php Diff File

LimeSurvey: 2.1 a8c27760

2012-11-22 16:26

mdekker


Details Diff
Fixed 06927: Undefined Index error when restricted users attempts to access 'Create/edit user groups' Affected Issues
06927
mod - application/controllers/admin/usergroups.php Diff File
mod - application/views/admin/usergroup/viewUserGroup_view.php Diff File

LimeSurvey: master 969ca860

2012-11-26 11:57

mdekker


Details Diff
Fixed 06926: CDbException when attempting to access 'Manage Survey Administrators' as a restricted user
dev: needed 'as password' for the cast
Affected Issues
06926, 06927
mod - application/helpers/common_helper.php Diff File

LimeSurvey: 2.1 6f988c09

2012-11-26 11:58

mdekker


Details Diff
Fixed 06926: CDbException when attempting to access 'Manage Survey Administrators' as a restricted user
dev: needed 'as password' for the cast
Affected Issues
06926, 06927
mod - application/helpers/common_helper.php Diff File

Issue History

Date Modified Username Field Change
2012-11-22 11:21 pfpDave New Issue
2012-11-22 11:21 pfpDave File Added: Undefined Error.htm
2012-11-22 16:00 mdekker Assigned To => mdekker
2012-11-22 16:00 mdekker Status new => assigned
2012-11-22 16:27 mdekker Changeset attached => LimeSurvey master 4b145850
2012-11-22 16:27 mdekker Note Added: 22431
2012-11-22 16:27 mdekker Resolution open => fixed
2012-11-22 16:27 mdekker Changeset attached => LimeSurvey 2.1 a8c27760
2012-11-22 16:27 mdekker Note Added: 22433
2012-11-22 16:27 mdekker Status assigned => resolved
2012-11-22 16:44 pfpDave Note Added: 22434
2012-11-26 09:22 mdekker Note Added: 22507
2012-11-26 11:28 pfpDave Note Added: 22518
2012-11-26 11:31 mdekker Note Added: 22520
2012-11-26 11:39 pfpDave Note Added: 22521
2012-11-26 11:40 pfpDave File Added: Issue ID-06927 Update.htm
2012-11-26 11:40 pfpDave Note Added: 22522
2012-11-26 11:40 pfpDave Status resolved => feedback
2012-11-26 11:40 pfpDave Resolution fixed => reopened
2012-11-26 11:43 mdekker Note Added: 22523
2012-11-26 11:43 mdekker Relationship added related to 06926
2012-11-26 11:44 pfpDave Note Added: 22524
2012-11-26 11:44 pfpDave Status feedback => assigned
2012-11-26 11:46 mdekker Note Added: 22525
2012-11-26 11:48 pfpDave Note Added: 22526
2012-11-26 11:52 pfpDave Note Added: 22527
2012-11-26 11:54 mdekker Note Added: 22530
2012-11-26 11:55 pfpDave Note Added: 22531
2012-11-26 11:59 mdekker Note Added: 22534
2012-11-26 11:59 mdekker Status assigned => resolved
2012-11-26 11:59 mdekker Fixed in Version => 2.00+
2012-11-26 11:59 mdekker Resolution reopened => fixed
2012-11-26 12:00 mdekker Changeset attached => LimeSurvey master 969ca860
2012-11-26 12:00 mdekker Changeset attached => LimeSurvey 2.1 6f988c09
2012-11-27 06:11 c_schmitz Note Added: 22569
2012-11-27 06:11 c_schmitz Status resolved => closed