function sendSqlDump()
{
    $result = BADGER_VERSION_TAG . "\n";
    $result .= getDbDump();
    $now = new Date();
    header('Content-Type: text/sql');
    header('Content-Disposition: attachment; filename="BADGER-' . getBadgerDbVersion() . '-DatabaseBackup-' . $now->getDate() . '.sql"');
    header('Content-Length: ' . strlen($result));
    echo $result;
}
Example #2
0
function update()
{
    global $tpl, $us;
    $versionHistory = array(array('version' => '1.0 beta', 'function' => 'update1_0betaTo1_0beta2'), array('version' => '1.0 beta 2', 'function' => false));
    $widgets = new WidgetEngine($tpl);
    $widgets->addNavigationHead();
    $updateTitle = getUpdateTranslation('updateUpdate', 'pageTitle');
    echo $tpl->getHeader($updateTitle);
    $currentDbVersion = getBadgerDbVersion();
    for ($dbVersionIndex = 0; $dbVersionIndex < count($versionHistory); $dbVersionIndex++) {
        if ($versionHistory[$dbVersionIndex]['version'] == $currentDbVersion) {
            break;
        }
    }
    $numNeededSteps = count($versionHistory) - $dbVersionIndex - 1;
    $dbVersion = $currentDbVersion;
    $fileVersion = BADGER_VERSION;
    $betweenVersions = '';
    for ($i = $dbVersionIndex + 1; $i < count($versionHistory) - 1; $i++) {
        $currentVersion = $versionHistory[$i];
        eval('$betweenVersions .= "' . $tpl->getTemplate('update/betweenVersionsLine') . '";');
    }
    $betweenVersionsText = getUpdateTranslation('updateUpdate', 'betweenVersionsText');
    if ($betweenVersions !== '') {
        eval('$betweenVersionsBlock = "' . $tpl->getTemplate('update/betweenVersionsBlock') . '";');
    } else {
        $betweenVersionsBlock = '';
    }
    $updateLog = '';
    $preCurrentText = getUpdateTranslation('updateUpdate', 'preCurrentText');
    $postCurrentText = getUpdateTranslation('updateUpdate', 'postCurrentText');
    $postNextText = getUpdateTranslation('updateUpdate', 'postNextText');
    $logEntryHeader = getUpdateTranslation('updateUpdate', 'logEntryHeader');
    for ($currentVersionIndex = $dbVersionIndex; $currentVersionIndex < count($versionHistory) - 1; $currentVersionIndex++) {
        $currentVersion = $versionHistory[$currentVersionIndex]['version'];
        $nextVersion = $versionHistory[$currentVersionIndex + 1]['version'];
        eval('$updateLog .= "' . $tpl->getTemplate('update/updateStepHeader') . '";');
        $logEntry = $versionHistory[$currentVersionIndex]['function']();
        eval('$updateLog .= "' . $tpl->getTemplate('update/updateStepEntry') . '";');
    }
    $updateInformation = getUpdateTranslation('updateUpdate', 'updateInformation');
    $errorInformation = getUpdateTranslation('updateUpdate', 'errorInformation');
    $dbVersionText = getUpdateTranslation('updateProcedure', 'dbVersionText');
    $fileVersionText = getUpdateTranslation('updateProcedure', 'fileVersionText');
    $updateFinished = getUpdateTranslation('updateUpdate', 'updateFinished');
    $goToStartPagePreLink = getUpdateTranslation('updateUpdate', 'goToStartPagePreLink');
    $goToStartPageLinkText = getUpdateTranslation('updateUpdate', 'goToStartPageLinkText');
    $goToStartPagePostLink = getUpdateTranslation('updateUpdate', 'goToStartPagePostLink');
    $startPageURL = getAbsoluteStartPage();
    eval('echo "' . $tpl->getTemplate('update/update') . '";');
    eval('echo "' . $tpl->getTemplate('badgerFooter') . '";');
}
<?php

/*
* ____          _____   _____ ______ _____  
*|  _ \   /\   |  __ \ / ____|  ____|  __ \ 
*| |_) | /  \  | |  | | |  __| |__  | |__) |
*|  _ < / /\ \ | |  | | | |_ |  __| |  _  / 
*| |_) / ____ \| |__| | |__| | |____| | \ \ 
*|____/_/    \_\_____/ \_____|______|_|  \_\
* Open Source Financial Management
* Visit http://badger.berlios.org 
*
**/
require_once BADGER_ROOT . '/core/urlTools.php';
require_once BADGER_ROOT . '/core/update/common.php';
if (getBadgerDbVersion() !== BADGER_VERSION) {
    $urlParts = getCurrentURL();
    if (substr($urlParts['path'], -23) !== '/core/update/update.php') {
        $urlParts['path'] = BADGER_ROOT . '/core/update/update.php';
        unset($urlParts['query']);
        unset($urlParts['fragment']);
        $url = buildURL($urlParts);
        $logger->log('Update: Redirect to Update URL: ' . $url);
        header('Location: ' . $url);
        exit;
    }
}