View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 05217 | Bug reports | ComfortUpdate | public | 2011-05-31 21:41 | 2011-07-19 15:30 |
| Reporter | mot | Assigned To | c_schmitz | ||
| Priority | normal | Severity | minor | ||
| Status | closed | Resolution | fixed | ||
| Product Version | 1.91 | ||||
| Fixed in Version | 1.91+ | ||||
| Summary | 05217: Update function output logic | ||||
| Description | Functions within the updater need to assign their output to a variable. In 05211 I ran over this and think it's easier to let them output into the output buffer and provide the overall output to the admin. This has multiple benefits:
| ||||
| Tags | No tags attached. | ||||
| Attached Files | 5217.diff (25,697 bytes)
### Eclipse Workspace Patch 1.0
#P Limesurvey 1.x trunk stable
Index: admin/update/updater.php
===================================================================
--- admin/update/updater.php (revision 10155)
+++ admin/update/updater.php (working copy)
@@ -12,31 +12,30 @@
*
* $Id: updater.php 8987 2010-07-27 12:59:34Z c_schmitz $
*/
-$updaterversion=explode(' ','$Rev$'); // this is updated by subversion so don't change this string
-$updaterversion=$updaterversion[1];
+list(,$updaterversion)=explode(' ','$Rev$'); // this is updated by subversion so don't change this string
if (isset($_REQUEST['update'])) die();
-if ($action=='update'){
- if ($subaction=='step4')
- {
- $adminoutput=UpdateStep4();
- }
- elseif ($subaction=='step3')
- {
- $adminoutput=UpdateStep3();
- }
- elseif ($subaction=='step2')
- {
- $adminoutput=UpdateStep2();
- }
- else
- {
- $adminoutput=RunUpdaterUpdate();
- $adminoutput=UpdateStep1();
-}
+if ($action!=='update') return;
+
+ob_start();
+switch ($subaction)
+{
+ case 'step2':
+ case 'step3':
+ case 'step4':
+ $updatefunction = 'Update'.ucfirst($subaction);
+ break;
+ default:
+ $updatefunction = 'UpdateStep1';
+ RunUpdaterUpdate();
}
+$buffer = $updatefunction();
+if ($buffer) echo $buffer;
+$adminoutput = ob_get_clean();
+
+return;
function RunUpdaterUpdate()
{
@@ -86,12 +85,12 @@
if (!is_writable($tempdir))
{
- $output.= "<li class='errortitle'>".sprintf($clang->gT("Tempdir %s is not writable"),$tempdir)."<li>";
+ echo "<li class='errortitle'>".sprintf($clang->gT("Tempdir %s is not writable"),$tempdir)."<li>";
$error=true;
}
if (!is_writable($homedir.DIRECTORY_SEPARATOR.'update'.DIRECTORY_SEPARATOR.'updater.php'))
{
- $output.= "<li class='errortitle'>".sprintf($clang->gT("Updater file is not writable (%s). Please set according file permissions."),$homedir.DIRECTORY_SEPARATOR.'update'.DIRECTORY_SEPARATOR.'updater.php')."</li>";
+ echo "<li class='errortitle'>".sprintf($clang->gT("Updater file is not writable (%s). Please set according file permissions."),$homedir.DIRECTORY_SEPARATOR.'update'.DIRECTORY_SEPARATOR.'updater.php')."</li>";
$error=true;
}
@@ -168,33 +167,33 @@
setGlobalSetting('updatekey',sanitize_paranoid_string($_POST['updatekey']));
}
$error=false;
- $output='<div class="header ui-widget-header">'.$clang->gT('Welcome to the ComfortUpdate').'</div><div class="updater-background"><br />';
- $output.=$clang->gT('The LimeSurvey ComfortUpdate is an easy procedure to quickly update to the latest version of LimeSurvey.').'<br />';
- $output.=$clang->gT('The following steps will be done by this update:').'<br /><ul>';
- $output.='<li>'.$clang->gT('Your LimeSurvey installation is checked if the update can be run successfully.').'</li>';
- $output.='<li>'.$clang->gT('Your DB and any changed files will be backed up.').'</li>';
- $output.='<li>'.$clang->gT('New files will be downloaded and installed.').'</li>';
- $output.='<li>'.$clang->gT('If necessary the database will be updated.').'</li></ul>';
- $output.='<h3>'.$clang->gT('Checking basic requirements...').'</h3>';
+ echo '<div class="header ui-widget-header">'.$clang->gT('Welcome to the ComfortUpdate').'</div><div class="updater-background"><br />';
+ echo $clang->gT('The LimeSurvey ComfortUpdate is an easy procedure to quickly update to the latest version of LimeSurvey.').'<br />';
+ echo $clang->gT('The following steps will be done by this update:').'<br /><ul>';
+ echo '<li>'.$clang->gT('Your LimeSurvey installation is checked if the update can be run successfully.').'</li>';
+ echo '<li>'.$clang->gT('Your DB and any changed files will be backed up.').'</li>';
+ echo '<li>'.$clang->gT('New files will be downloaded and installed.').'</li>';
+ echo '<li>'.$clang->gT('If necessary the database will be updated.').'</li></ul>';
+ echo '<h3>'.$clang->gT('Checking basic requirements...').'</h3>';
if ($updatekey==''){
- $output.=$clang->gT('You need an update key to run the comfort update. During the beta test of this update feature the key "LIMESURVEYUPDATE" can be used.');
- $output.="<br /><form id='keyupdate' method='post' action='$scriptname?action=update&subaction=keyupdate'><label for='updatekey'>".$clang->gT('Please enter a valid update-key:').'</label>';
- $output.='<input id="updatekey" name="updatekey" type="text" value="LIMESURVEYUPDATE" /> <input type="submit" value="'.$clang->gT('Save update key').'" /></form>';
+ echo $clang->gT('You need an update key to run the comfort update. During the beta test of this update feature the key "LIMESURVEYUPDATE" can be used.');
+ echo "<br /><form id='keyupdate' method='post' action='$scriptname?action=update&subaction=keyupdate'><label for='updatekey'>".$clang->gT('Please enter a valid update-key:').'</label>';
+ echo '<input id="updatekey" name="updatekey" type="text" value="LIMESURVEYUPDATE" /> <input type="submit" value="'.$clang->gT('Save update key').'" /></form>';
}
else {
- $output.="<ul><li class='successtitle'>".$clang->gT('Update key: Valid')."</li>";
+ echo "<ul><li class='successtitle'>".$clang->gT('Update key: Valid')."</li>";
if (!is_writable($tempdir))
{
- $output.= "<li class='errortitle'>".sprintf($clang->gT("Tempdir %s is not writable"),$tempdir)."<li>";
+ echo "<li class='errortitle'>".sprintf($clang->gT("Tempdir %s is not writable"),$tempdir)."<li>";
$error=true;
}
if (!is_writable($rootdir.DIRECTORY_SEPARATOR.'version.php'))
{
- $output.= "<li class='errortitle'>".sprintf($clang->gT("Version file is not writable (%s). Please set according file permissions."),$rootdir.DIRECTORY_SEPARATOR.'version.php')."</li>";
+ echo "<li class='errortitle'>".sprintf($clang->gT("Version file is not writable (%s). Please set according file permissions."),$rootdir.DIRECTORY_SEPARATOR.'version.php')."</li>";
$error=true;
}
- $output.='</ul><h3>'.$clang->gT('Change log').'</h3>';
+ echo '</ul><h3>'.$clang->gT('Change log').'</h3>';
require_once($homedir."/classes/http/http.php");
$updatekey=getGlobalSetting('updatekey');
@@ -218,7 +217,7 @@
$full_body .= $body;
}
$changelog=json_decode($full_body,true);
- $output.='<textarea class="updater-changelog" readonly="readonly">'.htmlspecialchars($changelog['changelog']).'</textarea>';
+ echo '<textarea class="updater-changelog" readonly="readonly">'.htmlspecialchars($changelog['changelog']).'</textarea>';
}
else
{
@@ -229,19 +228,18 @@
if ($error)
{
- $output.='<br /><br />'.$clang->gT('When checking your installation we found one or more problems. Please check for any error messages above and fix these before you can proceed.');
- $output.="<p><button onclick=\"window.open('$scriptname?action=update&subaction=step1', '_top')\"";
- $output.=">".$clang->gT('Check again')."</button></p>";
+ echo '<br /><br />'.$clang->gT('When checking your installation we found one or more problems. Please check for any error messages above and fix these before you can proceed.');
+ echo "<p><button onclick=\"window.open('$scriptname?action=update&subaction=step1', '_top')\"";
+ echo ">".$clang->gT('Check again')."</button></p>";
}
else
{
- $output.='<br /><br />'.$clang->gT('Everything looks alright. Please proceed to the next step.');
- $output.="<p><button onclick=\"window.open('$scriptname?action=update&subaction=step2', '_top')\"";
- if ($updatekey==''){ $output.="disabled='disabled'"; }
- $output.=">".sprintf($clang->gT('Proceed to step %s'),'2')."</button></p>";
+ echo '<br /><br />'.$clang->gT('Everything looks alright. Please proceed to the next step.');
+ echo "<p><button onclick=\"window.open('$scriptname?action=update&subaction=step2', '_top')\"";
+ if ($updatekey==''){ echo "disabled='disabled'"; }
+ echo ">".sprintf($clang->gT('Proceed to step %s'),'2')."</button></p>";
}
- $output.='</div>';
- return $output;
+ echo '</div>';
}
@@ -254,7 +252,7 @@
require_once($homedir."/classes/http/http.php");
$updatekey=getGlobalSetting('updatekey');
- $output='<div class="header ui-widget-header">'.sprintf($clang->gT('ComfortUpdate step %s'),'2').'</div><div class="updater-background"><br />';
+ echo '<div class="header ui-widget-header">'.sprintf($clang->gT('ComfortUpdate step %s'),'2').'</div><div class="updater-background"><br />';
$http=new http_class;
/* Connection timeout */
@@ -285,15 +283,15 @@
if (isset($updateinfo['error']))
{
- $output.=$clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
+ echo $clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
if ($updateinfo['error']==1)
{
setGlobalSetting('updatekey','');
- $output.=$clang->gT('Your update key is invalid and was removed. ').'<br />';
+ echo $clang->gT('Your update key is invalid and was removed. ').'<br />';
}
else
- $output.=$clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
+ echo $clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
}
// okay, updateinfo now contains all necessary updateinformation
// Now check if the existing files have the mentioned checksum
@@ -302,7 +300,7 @@
$readonlyfiles=array();
if (!isset($updateinfo['files']))
{
- $output.="<div class='messagebox ui-corner-all'>
+ echo "<div class='messagebox ui-corner-all'>
<div class='warningheader'>".$clang->gT('Update server busy')."</div>
<p>".$clang->gT('The update server is currently busy. This usually happens when the update files for a new version are being prepared.')."<br /><br />
".$clang->gT('Please be patient and try again in about 10 minutes.')."</p></div>
@@ -349,63 +347,62 @@
}
}
- $output.='<h3>'.$clang->gT('Checking existing LimeSurvey files...').'</h3>';
+ echo '<h3>'.$clang->gT('Checking existing LimeSurvey files...').'</h3>';
if (count($readonlyfiles)>0)
{
- $output.='<span class="warningtitle">'.$clang->gT('Warning: The following files/directories need to be updated but their permissions are set to read-only.').'<br />';
- $output.=$clang->gT('You must set according write permissions on these filese before you can proceed. If you are unsure what to do please contact your system administrator for advice.').'<br />';
- $output.='</span><ul>';
+ echo '<span class="warningtitle">'.$clang->gT('Warning: The following files/directories need to be updated but their permissions are set to read-only.').'<br />';
+ echo $clang->gT('You must set according write permissions on these filese before you can proceed. If you are unsure what to do please contact your system administrator for advice.').'<br />';
+ echo '</span><ul>';
$readonlyfiles=array_unique($readonlyfiles);
sort($readonlyfiles);
foreach ($readonlyfiles as $readonlyfile)
{
- $output.='<li>'.htmlspecialchars($readonlyfile).'</li>';
+ echo '<li>'.htmlspecialchars($readonlyfile).'</li>';
}
- $output.='</ul>';
+ echo '</ul>';
}
if (count($existingfiles)>0)
{
- $output.=$clang->gT('The following files would be added by the update but already exist. This is very unusual and may be co-incidental.').'<br />';
- $output.=$clang->gT('We recommend that these files should be replaced by the update procedure.').'<br />';
- $output.='<ul>';
+ echo $clang->gT('The following files would be added by the update but already exist. This is very unusual and may be co-incidental.').'<br />';
+ echo $clang->gT('We recommend that these files should be replaced by the update procedure.').'<br />';
+ echo '<ul>';
sort($existingfiles);
foreach ($existingfiles as $existingfile)
{
- $output.='<li>'.htmlspecialchars($existingfile['file']).'</li>';
+ echo '<li>'.htmlspecialchars($existingfile['file']).'</li>';
}
- $output.='</ul>';
+ echo '</ul>';
}
if (count($modifiedfiles)>0)
{
- $output.=$clang->gT('The following files will be modified or deleted but were already modified by someone else.').'<br />';
- $output.=$clang->gT('We recommend that these files should be replaced by the update procedure.').'<br />';
- $output.='<ul>';
+ echo $clang->gT('The following files will be modified or deleted but were already modified by someone else.').'<br />';
+ echo $clang->gT('We recommend that these files should be replaced by the update procedure.').'<br />';
+ echo '<ul>';
sort($modifiedfiles);
foreach ($modifiedfiles as $modifiedfile)
{
- $output.='<li>'.htmlspecialchars($modifiedfile['file']).'</li>';
+ echo '<li>'.htmlspecialchars($modifiedfile['file']).'</li>';
}
- $output.='</ul>';
+ echo '</ul>';
}
if (count($readonlyfiles)>0)
{
- $output.='<br />'.$clang->gT('When checking your file permissions we found one or more problems. Please check for any error messages above and fix these before you can proceed.');
- $output.="<p><button onclick=\"window.open('$scriptname?action=update&subaction=step2', '_top')\"";
- $output.=">".$clang->gT('Check again')."</button></p>";
+ echo '<br />'.$clang->gT('When checking your file permissions we found one or more problems. Please check for any error messages above and fix these before you can proceed.');
+ echo "<p><button onclick=\"window.open('$scriptname?action=update&subaction=step2', '_top')\"";
+ echo ">".$clang->gT('Check again')."</button></p>";
}
else
{
- $output.=$clang->gT('Please check any problems above and then proceed to the next step.').'<br />';
- $output.="<p><button onclick=\"window.open('$scriptname?action=update&subaction=step3', '_top')\" ";
- $output.=">".sprintf($clang->gT('Proceed to step %s'),'3')."</button></p>";
+ echo $clang->gT('Please check any problems above and then proceed to the next step.').'<br />';
+ echo "<p><button onclick=\"window.open('$scriptname?action=update&subaction=step3', '_top')\" ";
+ echo ">".sprintf($clang->gT('Proceed to step %s'),'3')."</button></p>";
}
}
$_SESSION['updateinfo']=$updateinfo;
$_SESSION['updatesession']=$site_cookies;
- return $output;
}
@@ -413,19 +410,19 @@
{
global $clang, $scriptname, $homedir, $buildnumber, $updatebuild, $debug, $rootdir, $publicdir, $tempdir, $database_exists, $databasetype, $action, $demoModeOnly;
- $output='<div class="header ui-widget-header">'.sprintf($clang->gT('ComfortUpdate step %s'),'3').'</div><div class="updater-background">';
- $output.='<h3>'.$clang->gT('Creating DB & file backup').'</h3>';
+ echo '<div class="header ui-widget-header">'.sprintf($clang->gT('ComfortUpdate step %s'),'3').'</div><div class="updater-background">';
+ echo '<h3>'.$clang->gT('Creating DB & file backup').'</h3>';
if (!isset( $_SESSION['updateinfo']))
{
- $output.=$clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
+ echo $clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
if ($updateinfo['error']==1)
{
setGlobalSetting('updatekey','');
- $output.=$clang->gT('Your update key is invalid and was removed. ').'<br />';
+ echo $clang->gT('Your update key is invalid and was removed. ').'<br />';
}
else
- $output.=$clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
+ echo $clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
}
else
{
@@ -457,14 +454,14 @@
$v_list = $archive->add($filestozip, PCLZIP_OPT_REMOVE_PATH, $publicdir);
- $output.=$clang->gT('Creating file backup... ').'<br />';
+ echo $clang->gT('Creating file backup... ').'<br />';
if ($v_list == 0) {
die("Error : ".$archive->errorInfo(true));
}
else
{
- $output.="<span class='successtitle'>".$clang->gT('File backup created:').' '.htmlspecialchars($tempdir.DIRECTORY_SEPARATOR.'files-'.$basefilename.'.zip').'</span><br /><br />';
+ echo "<span class='successtitle'>".$clang->gT('File backup created:').' '.htmlspecialchars($tempdir.DIRECTORY_SEPARATOR.'files-'.$basefilename.'.zip').'</span><br /><br />';
}
@@ -472,23 +469,22 @@
if ($databasetype=='mysql' || $databasetype=='mysqli')
{
- $output.=$clang->gT('Creating database backup... ').'<br />';
+ echo $clang->gT('Creating database backup... ').'<br />';
$byteswritten=file_put_contents($tempdir.DIRECTORY_SEPARATOR.'db-'.$basefilename.'.sql',completedump());
if ($byteswritten>5000)
{
- $output.="<span class='successtitle'>".$clang->gT('DB backup created:')." ".htmlspecialchars($tempdir.DIRECTORY_SEPARATOR.'db-'.$basefilename.'.sql').'</span><br /><br />';
+ echo "<span class='successtitle'>".$clang->gT('DB backup created:')." ".htmlspecialchars($tempdir.DIRECTORY_SEPARATOR.'db-'.$basefilename.'.sql').'</span><br /><br />';
}
}
else
{
- $output.="<span class='warningtitle'>".$clang->gT('No DB backup created:').'<br />'.$clang->gT('Database backup functionality is currently not available for your database type. Before proceeding please backup your database using a backup tool!').'</span><br /><br />';
+ echo "<span class='warningtitle'>".$clang->gT('No DB backup created:').'<br />'.$clang->gT('Database backup functionality is currently not available for your database type. Before proceeding please backup your database using a backup tool!').'</span><br /><br />';
}
- $output.=$clang->gT('Please check any problems above and then proceed to the final step.');
- $output.="<p><button onclick=\"window.open('$scriptname?action=update&subaction=step4', '_top')\" ";
- $output.=">".sprintf($clang->gT('Proceed to step %s'),'4')."</button></p>";
- $output.='</div>';
- return $output;
+ echo $clang->gT('Please check any problems above and then proceed to the final step.');
+ echo "<p><button onclick=\"window.open('$scriptname?action=update&subaction=step4', '_top')\" ";
+ echo ">".sprintf($clang->gT('Proceed to step %s'),'4')."</button></p>";
+ echo '</div>';
}
@@ -496,18 +492,18 @@
{
global $clang, $scriptname, $homedir, $buildnumber, $updatebuild, $debug, $rootdir, $publicdir, $tempdir, $database_exists, $databasetype, $action, $demoModeOnly;
- $output='<div class="header ui-widget-header">'.sprintf($clang->gT('ComfortUpdate step %s'),'4').'</div><div class="updater-background"><br />';
+ echo '<div class="header ui-widget-header">'.sprintf($clang->gT('ComfortUpdate step %s'),'4').'</div><div class="updater-background"><br />';
if (!isset( $_SESSION['updateinfo']))
{
- $output.=$clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
+ echo $clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
if ($updateinfo['error']==1)
{
setGlobalSetting('updatekey','');
- $output.=$clang->gT('Your update key is invalid and was removed. ').'<br />';
+ echo $clang->gT('Your update key is invalid and was removed. ').'<br />';
}
else
- $output.=$clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
+ echo $clang->gT('On requesting the update information from limesurvey.org there has been an error:').'<br />';
}
else
{
@@ -569,7 +565,7 @@
else{
rmdirr($rootdir.$afile['file']);
}
- $output.=sprintf($clang->gT('File deleted: %s'),$afile['file']).'<br />';
+ echo sprintf($clang->gT('File deleted: %s'),$afile['file']).'<br />';
}
}
@@ -581,13 +577,13 @@
}
else
{
- $output.=$clang->gT('New files were successfully installed.').'<br />';
+ echo $clang->gT('New files were successfully installed.').'<br />';
unlink($tempdir.'/update.zip');
}
}
else
{
- $output.=$clang->gT('There was a problem downloading the update file. Please try to restart the update process.').'<br />';
+ echo $clang->gT('There was a problem downloading the update file. Please try to restart the update process.').'<br />';
$downloaderror=true;
}
// PclTraceDisplay();
@@ -607,16 +603,15 @@
fwrite($handle,$line);
}
fclose($handle);
- $output.=sprintf($clang->gT('Buildnumber was successfully updated to %s.'),$_SESSION['updateinfo']['toversion']).'<br />';
- $output.=$clang->gT('Please check any problems above - update was done.').'<br />';
+ echo sprintf($clang->gT('Buildnumber was successfully updated to %s.'),$_SESSION['updateinfo']['toversion']).'<br />';
+ echo $clang->gT('Please check any problems above - update was done.').'<br />';
}
- $output.="<p><button onclick=\"window.open('$scriptname?action=globalsettings&subaction=updatecheck', '_top')\" >".$clang->gT('Back to main menu')."</button></p>";
- $output.='</div>';
+ echo "<p><button onclick=\"window.open('$scriptname?action=globalsettings&subaction=updatecheck', '_top')\" >".$clang->gT('Back to main menu')."</button></p>";
+ echo '</div>';
setGlobalSetting('updatelastcheck','1980-01-01 00:00');
setGlobalSetting('updateavailable','0');
- return $output;
}
/**
@@ -644,7 +639,7 @@
echo "<br />".sprintf($clang->gT("Database has been successfully upgraded to version %s"),$dbversionnumber);
}
else {
- return ShowDBUpgradeNotice();
+ ShowDBUpgradeNotice();
}
}
}
@@ -652,18 +647,17 @@
function ShowDBUpgradeNotice() {
global $databasetype, $dbprefix, $databasename, $sitename, $rooturl,$clang;
$error=false;
- $output="<div class='header'>".$clang->gT('Database upgrade').'</div><p>';
- $output.=$clang->gT('Please verify the following information before continuing with the database upgrade:').'<ul>';
- $output.="<li><b>" .$clang->gT('Database type') . ":</b> " . $databasetype . "</li>";
- $output.="<li><b>" .$clang->gT('Database name') . ":</b> " . $databasename . "</li>";
- $output.="<li><b>" .$clang->gT('Table prefix') . ":</b> " . $dbprefix . "</li>";
- $output.="<li><b>" .$clang->gT('Site name') . ":</b> " . $sitename . "</li>";
- $output.="<li><b>" .$clang->gT('Root URL') . ":</b> " . $rooturl . "</li>";
- $output.='</ul>';
- $output.="<br />";
- $output.="<a href='{$rooturl}/admin/admin.php?continue=1'>" . $clang->gT('Click here to continue') . "</a>";
- $output.="<br />";
- return $output;
+ echo "<div class='header'>".$clang->gT('Database upgrade').'</div><p>';
+ echo $clang->gT('Please verify the following information before continuing with the database upgrade:').'<ul>';
+ echo "<li><b>" .$clang->gT('Database type') . ":</b> " . $databasetype . "</li>";
+ echo "<li><b>" .$clang->gT('Database name') . ":</b> " . $databasename . "</li>";
+ echo "<li><b>" .$clang->gT('Table prefix') . ":</b> " . $dbprefix . "</li>";
+ echo "<li><b>" .$clang->gT('Site name') . ":</b> " . $sitename . "</li>";
+ echo "<li><b>" .$clang->gT('Root URL') . ":</b> " . $rooturl . "</li>";
+ echo '</ul>';
+ echo "<br />";
+ echo "<a href='{$rooturl}/admin/admin.php?continue=1'>" . $clang->gT('Click here to continue') . "</a>";
+ echo "<br />";
}
?>
5217-01-output.diff (1,913 bytes)
### Eclipse Workspace Patch 1.0
#P Limesurvey 1.x trunk stable
Index: common.php
===================================================================
--- common.php (revision 10258)
+++ common.php (working copy)
@@ -273,16 +273,16 @@
include_once($homedir.'/update/updater.php');
if(isset($_GET['continue']) && $_GET['continue']==1)
{
- echo CheckForDBUpgrades();
+ CheckForDBUpgrades();
echo "<br /><a href='$homeurl'>".$clang->gT("Back to main menu")."</a></div>";
updatecheck();
}
else
{
- $dbupgradeoutput='<div class="messagebox">';
- $dbupgradeoutput.= CheckForDBUpgrades();
- $dbupgradeoutput.='</div>';
- echo getAdminHeader() . $dbupgradeoutput . getAdminFooter("http://docs.limesurvey.org", $clang->gT("LimeSurvey online manual"));
+ echo getAdminHeader(),
+ '<div class="messagebox">',CheckForDBUpgrades(),'</div>',
+ getAdminFooter("http://docs.limesurvey.org", $clang->gT("LimeSurvey online manual"))
+ ;
}
die;
}
Index: admin/install/index.php
===================================================================
--- admin/install/index.php (revision 10258)
+++ admin/install/index.php (working copy)
@@ -60,7 +60,9 @@
//DB EXISTS, CHECK FOR APPROPRIATE UPGRADES
$connect->database = $databasename;
$connect->Execute("USE DATABASE `$databasename`");
- $output=CheckForDBUpgrades();
+ ob_start();
+ CheckForDBUpgrades();
+ $output=ob_get_clean();
if ($output== '') {$adminoutput.='<br />LimeSurvey Database is up to date. No action needed';}
else {$adminoutput.=$output;}
$adminoutput.="<br />Please <a href='$homeurl/$scriptname'>log in.</a>";
5217-01-output-2.diff (2,181 bytes)
### Eclipse Workspace Patch 1.0
#P Limesurvey 1.x trunk stable
Index: common.php
===================================================================
--- common.php (revision 10258)
+++ common.php (working copy)
@@ -272,17 +272,19 @@
$clang = new limesurvey_lang($defaultlang);
include_once($homedir.'/update/updater.php');
if(isset($_GET['continue']) && $_GET['continue']==1)
- {
- echo CheckForDBUpgrades();
+ {
+ echo getAdminHeader();
+ CheckForDBUpgrades();
echo "<br /><a href='$homeurl'>".$clang->gT("Back to main menu")."</a></div>";
- updatecheck();
- }
+ updatecheck();
+ echo getAdminFooter("http://docs.limesurvey.org", $clang->gT("LimeSurvey online manual"));
+ }
else
{
- $dbupgradeoutput='<div class="messagebox">';
- $dbupgradeoutput.= CheckForDBUpgrades();
- $dbupgradeoutput.='</div>';
- echo getAdminHeader() . $dbupgradeoutput . getAdminFooter("http://docs.limesurvey.org", $clang->gT("LimeSurvey online manual"));
+ echo getAdminHeader(),
+ '<div class="messagebox">',CheckForDBUpgrades(),'</div>',
+ getAdminFooter("http://docs.limesurvey.org", $clang->gT("LimeSurvey online manual"))
+ ;
}
die;
}
Index: admin/install/index.php
===================================================================
--- admin/install/index.php (revision 10258)
+++ admin/install/index.php (working copy)
@@ -60,7 +60,9 @@
//DB EXISTS, CHECK FOR APPROPRIATE UPGRADES
$connect->database = $databasename;
$connect->Execute("USE DATABASE `$databasename`");
- $output=CheckForDBUpgrades();
+ ob_start();
+ CheckForDBUpgrades();
+ $output=ob_get_clean();
if ($output== '') {$adminoutput.='<br />LimeSurvey Database is up to date. No action needed';}
else {$adminoutput.=$output;}
$adminoutput.="<br />Please <a href='$homeurl/$scriptname'>log in.</a>";
| ||||
| Bug heat | 6 | ||||
| Complete LimeSurvey version number (& build) | 10132 | ||||
| I will donate to the project if issue is resolved | No | ||||
| Browser | |||||
| Database type & version | Mysql 5 Family | ||||
| Server OS (if known) | Linux (Fedora) | ||||
| Webserver software & version (if known) | Apache 2.2 | ||||
| PHP Version | 5.3.6 | ||||
|
Added in rev 10173 - Thank you for this patch, Tom! |
|
|
There is a problem with this. When doing a manual update from an earlier version the output is off (=content comes after footer). Please check. |
|
|
Everything should be back assigned to $adminoutput as before. What does "when doing a manual update from an earlier version" actually mean? Is the old version taking the new update code? |
|
|
See attached file. |
|
|
Okay, attached a fix for the db output appearing. It's one of the functions from the updater, that got called from two other files. Please review, I had problems to create the diff file as the SVN here is on strike. |
|
|
Added a second patch that adds the admin header / footer on the continue screen. Looks like it was missing, but this is untested. |
|
|
That looks great. We should get you direct SVN write access. Let me know your sf.net details. |
|
|
New version released |
|
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2011-05-31 21:41 | mot | New Issue | |
| 2011-05-31 21:41 | mot | Status | new => assigned |
| 2011-05-31 21:41 | mot | Assigned To | => c_schmitz |
| 2011-05-31 21:41 | mot | File Added: 5217.diff | |
| 2011-06-02 18:58 | c_schmitz | Note Added: 15258 | |
| 2011-06-02 18:58 | c_schmitz | Status | assigned => resolved |
| 2011-06-02 18:58 | c_schmitz | Fixed in Version | => 1.91+ |
| 2011-06-02 18:58 | c_schmitz | Resolution | open => fixed |
| 2011-06-04 23:43 | c_schmitz | Note Added: 15287 | |
| 2011-06-04 23:43 | c_schmitz | Status | resolved => feedback |
| 2011-06-04 23:43 | c_schmitz | Resolution | fixed => reopened |
| 2011-06-06 00:45 | mot | Note Added: 15323 | |
| 2011-06-06 00:45 | mot | Status | feedback => assigned |
| 2011-06-06 06:42 | c_schmitz | File Added: LimeSurvey_1307335298242.png | |
| 2011-06-06 06:42 | c_schmitz | Note Added: 15324 | |
| 2011-06-06 06:42 | c_schmitz | Status | assigned => feedback |
| 2011-06-13 01:54 | mot | File Added: 5217-01-output.diff | |
| 2011-06-13 01:55 | mot | Note Added: 15416 | |
| 2011-06-13 01:55 | mot | Status | feedback => assigned |
| 2011-06-13 01:58 | mot | File Added: Selection_003.png | |
| 2011-06-13 02:44 | mot | File Added: 5217-01-output-2.diff | |
| 2011-06-13 02:45 | mot | Note Added: 15417 | |
| 2011-06-15 11:17 | c_schmitz | Note Added: 15444 | |
| 2011-06-15 11:17 | c_schmitz | Status | assigned => resolved |
| 2011-06-15 11:17 | c_schmitz | Resolution | reopened => fixed |
| 2011-06-21 14:31 | c_schmitz | Note Added: 15537 | |
| 2011-06-21 14:31 | c_schmitz | Status | resolved => closed |
| 2011-07-19 15:30 | mot | Issue Monitored: mot | |
| 2021-08-02 21:01 | guest | Bug heat | 4 => 6 |