aboutsummaryrefslogtreecommitdiffstats
path: root/config/systempatches/system_patches_edit.php
diff options
context:
space:
mode:
authorjim-p <jimp@pfsense.org>2012-05-07 12:16:34 -0400
committerjim-p <jimp@pfsense.org>2012-05-07 12:16:34 -0400
commit4ed462f54fbccaa5d35c43ddfcaed2a6ae256eb1 (patch)
treea16aa4aa03e34cb8bc0e1c542527a33e4b557b2f /config/systempatches/system_patches_edit.php
parentfab7a944a4c297f061d338a8626bff9a6e53a038 (diff)
downloadpfsense-packages-4ed462f54fbccaa5d35c43ddfcaed2a6ae256eb1.tar.gz
pfsense-packages-4ed462f54fbccaa5d35c43ddfcaed2a6ae256eb1.tar.bz2
pfsense-packages-4ed462f54fbccaa5d35c43ddfcaed2a6ae256eb1.zip
Add an option to specify a base directory for the patch
Diffstat (limited to 'config/systempatches/system_patches_edit.php')
-rw-r--r--config/systempatches/system_patches_edit.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/config/systempatches/system_patches_edit.php b/config/systempatches/system_patches_edit.php
index dd9e1ce7..bfa0af36 100644
--- a/config/systempatches/system_patches_edit.php
+++ b/config/systempatches/system_patches_edit.php
@@ -59,6 +59,7 @@ if (isset($id) && $a_patches[$id]) {
$pconfig['location'] = $a_patches[$id]['location'];
$pconfig['patch'] = $a_patches[$id]['patch'];
$pconfig['pathstrip'] = $a_patches[$id]['pathstrip'];
+ $pconfig['basedir'] = $a_patches[$id]['basedir'];
$pconfig['ignorewhitespace'] = isset($a_patches[$id]['ignorewhitespace']);
$pconfig['autoapply'] = isset($a_patches[$id]['autoapply']);
$pconfig['uniqid'] = $a_patches[$id]['uniqid'];
@@ -89,6 +90,9 @@ if ($_POST) {
if (!is_numeric($_POST['pathstrip'])) {
$input_errors[] = gettext("Path Strip Count must be numeric!");
}
+ if (!empty($_POST['basedir']) && (!file_exists($_POST['basedir']) || !is_dir($_POST['basedir']))) {
+ $input_errors[] = gettext("Base Directory must exist and be a directory!");
+ }
if (!$input_errors) {
$thispatch = array();
@@ -102,6 +106,7 @@ if ($_POST) {
$thispatch['pathstrip'] = 1;
else
$thispatch['pathstrip'] = $_POST['pathstrip'];
+ $thispatch['basedir'] = empty($_POST['basedir']) ? "/" : $_POST['basedir'];
$thispatch['ignorewhitespace'] = isset($_POST['ignorewhitespace']);
$thispatch['autoapply'] = isset($_POST['autoapply']);
if (empty($_POST['uniqid'])) {
@@ -173,6 +178,12 @@ include("fbegin.inc"); ?>
</td>
</tr>
<tr>
+ <td width="22%" valign="top" class="vncell"><?=gettext("Base Directory"); ?></td>
+ <td width="78%" class="vtable">
+ <input name="basedir" type="text" class="formfld unknown" id="basedir" size="40" value="<?=htmlspecialchars($pconfig['basedir']);?>">
+ <br> <span class="vexpl"><?=gettext("Enter the base directory for the patch, default is /. Patches from github are all based in /. Custom patches may need a full path here such as /usr/local/www/"); ?></span></td>
+</tr>
+<tr>
<td width="22%" valign="top" class="vncell"><?=gettext("Ignore Whitespace"); ?></td>
<td width="78%" class="vtable">
<input name="ignorewhitespace" type="checkbox" id="ignorewhitespace" value="yes" <?php if ($pconfig['ignorewhitespace']) echo "checked"; ?>>