示例#1
0
$maps = PatchLocator::getMaps('R60_2005');
$patcher = new Patcher();
foreach ($_POST['setting'] as $mapName => $settingVal) {
    if ($settingVal == $mapName . '0' && !array_key_exists('overwriteOriginal', $_POST)) {
        continue;
    }
    $mod = new Modification($maps[$mapName], $maps[$mapName]->getSetting($settingVal));
    $patcher->addModification($mod);
}
$presetString = '';
$presetMap = _PRESET_MAPPING();
foreach ($presetMap as $preset) {
    if (!array_key_exists($preset, $_POST['setting'])) {
        $presetString = '';
        break;
    }
    $presetString .= str_replace($preset, '', $_POST['setting'][$preset]);
}
if ($patcher->getNumberOfModifications() == 0) {
    jsCallback('Keine Änderungen vorgenommen!');
    die;
}
$staticMaps = PatchLocator::getStaticMaps('R60_2005');
foreach ($staticMaps as $mapName => $map) {
    $mod = new Modification($map, $map->getSetting($mapName . '0'));
    $patcher->addModification($mod);
}
$filename = $patcher->createTunedFile($sourceFile, $originalFile);
$newFilename = str_replace(basename($filename), '', $filename) . 'R60_2005-' . $presetString . '-' . $requestId . '.Bad Checksums!!';
rename($filename, $newFilename);
downloadFile($newFilename, basename($newFilename), md5_file($newFilename));
示例#2
0
文件: index.php 项目: sebauer/web-tom
                        <div class="singleMap">
                            <label for="source">Datei zum Patchen (Basis 371568):<br /><span class="labelInfo">Wenn leergelassen, wird Originaldatei verwendet.</span></label><input type="file" name="source" />
                        </div>
                    </fieldset>
                    <fieldset>
                        <legend>Preset</legend>
                        <div class="singleMap">
                            <label for="presetvalue">Aktueller Preset-String:<br /><span class="labelInfo">Ändern des Strings ändert auch die aktuelle Zusammenstellung!</span></label>
                            <input type="text" name="presetvalue" id="presetvalue" onchange="applyPresetValue();" value="<?php 
echo str_pad('', count(PatchLocator::getMaps('R60_2005')), '0');
?>
" />
                        </div>
                    </fieldset>
                    <?php 
$mapGroups = PatchLocator::getMapsGrouped('R60_2005');
/* @var Map $map */
foreach ($mapGroups as $groupname => $maps) {
    ?>
                    <fieldset>
                    <?php 
    $groupname = htmlentities($groupname);
    if ($groupname != 'none') {
        ?>
                            <legend><?php 
        echo $groupname;
        ?>
</legend>
                           <?php 
    }
    ?>