diff options
-rw-r--r-- | config/shellcmd/shellcmd.tmp | 111 | ||||
-rw-r--r-- | config/shellcmd/shellcmd.xml | 2 | ||||
-rw-r--r-- | config/shellcmd/shellcmd_edit.tmp | 16 | ||||
-rwxr-xr-x | pkg_config.7.xml | 2 |
4 files changed, 41 insertions, 90 deletions
diff --git a/config/shellcmd/shellcmd.tmp b/config/shellcmd/shellcmd.tmp index 5bb387da..fd386910 100644 --- a/config/shellcmd/shellcmd.tmp +++ b/config/shellcmd/shellcmd.tmp @@ -34,7 +34,6 @@ $a_earlyshellcmd = &$config['system']['earlyshellcmd']; $a_shellcmd = &$config['system']['shellcmd']; //$a_afterfilterchangeshellcmd = &$config['system']['afterfilterchangeshellcmd']; - include("head.inc"); ?> @@ -101,90 +100,40 @@ include("head.inc"); <?php - $i = 0; - if (count($a_earlyshellcmd) > 0) { - //if (isset($a_earlyshellcmd[0]["command"])) { - foreach ($a_earlyshellcmd as $ent) { - if (strlen($ent['command']) > 0) { - echo " <tr>\n"; - echo " <td class=\"listr\" ondblclick=\"document.location='shellcmd_edit.php?id=".$i."';\">\n"; - echo " ".$ent['command']." \n"; - echo " </td>\n"; - echo " <td class=\"listbg\" ondblclick=\"document.location='shellcmd_edit.php?id=".$i."';\">\n"; - echo " earlyshellcmd \n"; - echo " </td>\n"; - echo " <td valign=\"middle\" nowrap class=\"list\">\n"; - echo " <table border=\"0\" cellspacing=\"0\" cellpadding=\"1\">\n"; - echo " <tr>\n"; - echo " <td valign=\"middle\"><a href=\"shellcmd_edit.php?t=earlyshellcmd&id=".$i."\"><img src=\"/themes/".$g['theme']."/images/icons/icon_e.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; - echo " <td><a href=\"shellcmd_edit.php?t=earlyshellcmd&type=cmd&act=del&id=".$i."\" onclick=\"return confirm('Do you really want to delete this?')\"><img src=\"/themes/".$g['theme']."/images/icons/icon_x.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; - echo " </tr>\n"; - echo " </table>\n"; - echo " </td>\n"; - echo " </tr>"; - } + $categories = array("earlyshellcmd","shellcmd"); + //$categories = array("earlyshellcmd","shellcmd","afterfilterchangeshellcmd"); + + foreach ($categories as $category) { + $i = 0; + // dynamically create the category config name + $category_config = "a_".$category; + if (count($$category_config) > 0) { + foreach ($$category_config as $ent) { + // previous versions of shellcmd stored the command in an additional <command>-xmltag, this unnests this for backwards compatibility + if (is_array($ent)) { $ent = $ent['command']; } + + echo " <tr>\n"; + echo " <td class=\"listr\" ondblclick=\"document.location='shellcmd_edit.php?t=".$category."&id=".$i."';\">\n"; + echo " ".$ent."\n"; + echo " </td>\n"; + echo " <td class=\"listbg\" ondblclick=\"document.location='shellcmd_edit.php?t=".$category."&id=".$i."';\">\n"; + echo " ".$category."\n"; + echo " </td>\n"; + echo " <td valign=\"middle\" nowrap class=\"list\">\n"; + echo " <table border=\"0\" cellspacing=\"0\" cellpadding=\"1\">\n"; + echo " <tr>\n"; + echo " <td valign=\"middle\"><a href=\"shellcmd_edit.php?t=".$category."&id=".$i."\"><img src=\"/themes/".$g['theme']."/images/icons/icon_e.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; + echo " <td><a href=\"shellcmd_edit.php?t=".$category."&type=cmd&act=del&id=".$i."\" onclick=\"return confirm('Do you really want to delete this?')\"><img src=\"/themes/".$g['theme']."/images/icons/icon_x.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; + echo " </tr>\n"; + echo " </table>\n"; + echo " </td>\n"; + echo " </tr>"; $i++; } - //} - } + } + } - - $i = 0; - if (count($a_shellcmd) > 0) { - //if (isset($a_shellcmd[0]["command"])) { - foreach ($a_shellcmd as $ent) { - if (strlen($ent['command']) > 0) { - echo " <tr>\n"; - echo " <td class=\"listr\" ondblclick=\"document.location='shellcmd_edit.php?id=".$i."';\">\n"; - echo " ".$ent['command']." \n"; - echo " </td>\n"; - echo " <td class=\"listbg\" ondblclick=\"document.location='shellcmd_edit.php?id=".$i."';\">\n"; - echo " shellcmd \n"; - echo " </td>\n"; - echo " <td valign=\"middle\" nowrap class=\"list\">\n"; - echo " <table border=\"0\" cellspacing=\"0\" cellpadding=\"1\">\n"; - echo " <tr>\n"; - echo " <td valign=\"middle\"><a href=\"shellcmd_edit.php?t=shellcmd&id=".$i."\"><img src=\"/themes/".$g['theme']."/images/icons/icon_e.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; - echo " <td><a href=\"shellcmd_edit.php?t=shellcmd&type=cmd&act=del&id=".$i."\" onclick=\"return confirm('Do you really want to delete this?')\"><img src=\"/themes/".$g['theme']."/images/icons/icon_x.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; - echo " </tr>\n"; - echo " </table>\n"; - echo " </td>\n"; - echo " </tr>"; - } - $i++; - } - //} - } - - /* - $i = 0; - if (count($a_afterfilterchangeshellcmd) > 0) { - //if (isset($a_afterfilterchangeshellcmd[0]["command"])) { - foreach ($a_afterfilterchangeshellcmd as $ent) { - if (strlen($ent['command']) > 0) { - echo " <tr>\n"; - echo " <td class=\"listr\" ondblclick=\"document.location='shellcmd_edit.php?id=".$i."';\">\n"; - echo " ".$ent['command']." \n"; - echo " </td>\n"; - echo " <td class=\"listr\" ondblclick=\"document.location='shellcmd_edit.php?id=".$i."';\">\n"; - echo " afterfilterchangeshellcmd \n"; - echo " </td>\n"; - echo " <td valign=\"middle\" nowrap class=\"list\">\n"; - echo " <table border=\"0\" cellspacing=\"0\" cellpadding=\"1\">\n"; - echo " <tr>\n"; - echo " <td valign=\"middle\"><a href=\"shellcmd_edit.php?t=afterfilterchangeshellcmd&id=".$i."\"><img src=\"/themes/".$g['theme']."/images/icons/icon_e.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; - echo " <td><a href=\"shellcmd_edit.php?t=afterfilterchangeshellcmd&type=cmd&act=del&id=".$i."\" onclick=\"return confirm('Do you really want to delete this?')\"><img src=\"/themes/".$g['theme']."/images/icons/icon_x.gif\" width=\"17\" height=\"17\" border=\"0\"></a></td>\n"; - echo " </tr>\n"; - echo " </table>\n"; - echo " </td>\n"; - echo " </tr>"; - } - $i++; - } - //} - } - */ ?> <tr> diff --git a/config/shellcmd/shellcmd.xml b/config/shellcmd/shellcmd.xml index 0f9469a6..5860b68c 100644 --- a/config/shellcmd/shellcmd.xml +++ b/config/shellcmd/shellcmd.xml @@ -41,7 +41,7 @@ <requirements>Describe your package requirements here</requirements> <faq>Currently there are no FAQ items provided.</faq> <name>Shellcmd Settings</name> - <version>0.3</version> + <version>0.4</version> <title>Settings</title> <include_file>/usr/local/pkg/shellcmd.inc</include_file> <menu> diff --git a/config/shellcmd/shellcmd_edit.tmp b/config/shellcmd/shellcmd_edit.tmp index e8a5f5e7..8c49048f 100644 --- a/config/shellcmd/shellcmd_edit.tmp +++ b/config/shellcmd/shellcmd_edit.tmp @@ -84,24 +84,27 @@ if (strlen($id) > 0) { case "earlyshellcmd": $a_earlyshellcmd = &$config['system']['earlyshellcmd']; if ($a_earlyshellcmd[$id]) { - $pconfig['command'] = $a_earlyshellcmd[$id]['command']; + $pconfig['command'] = $a_earlyshellcmd[$id]; } break; case "shellcmd": $a_shellcmd = &$config['system']['shellcmd']; if ($a_shellcmd[$id]) { - $pconfig['command'] = $a_shellcmd[$id]['command']; + $pconfig['command'] = $a_shellcmd[$id]; } break; case "afterfilterchangeshellcmd": //$a_afterfilterchangeshellcmd = &$config['system']['afterfilterchangeshellcmd']; //if ($a_afterfilterchangeshellcmd[$id]) { - // $pconfig['command'] = $a_afterfilterchangeshellcmd[$id]['command']; + // $pconfig['command'] = $a_afterfilterchangeshellcmd[$id]; //} break; default: break; - } + } + + // previous version of shellcmd wrapped all commands in a <command>-xmltag, unnesting this for backwards compatibility + if (is_array($pconfig['command'])) $pconfig['command'] = $pconfig['command']['command']; } @@ -111,8 +114,8 @@ if ($_POST) { if (!$input_errors) { if (strlen($_POST['command']) > 0) { - $ent = array(); - $ent['command'] = $_POST['command']; + + $ent = $_POST['command']; if (strlen($id)>0) { //update @@ -188,7 +191,6 @@ function show_advanced_config() { <p class="pgtitle">Shellcmd: Edit</p> <?php if ($input_errors) print_input_errors($input_errors); ?> - <div id="mainlevel"> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr><td class="tabnavtbl"> diff --git a/pkg_config.7.xml b/pkg_config.7.xml index 48782c7c..2efd5a8c 100755 --- a/pkg_config.7.xml +++ b/pkg_config.7.xml @@ -176,7 +176,7 @@ <pkginfolink></pkginfolink> <config_file>http://www.pfsense.com/packages/config/shellcmd/shellcmd.xml</config_file> <depends_on_package_base_url>http://files.pfsense.org/packages/7/All/</depends_on_package_base_url> - <version>0.3</version> + <version>0.4</version> <status>Beta</status> <required_version>1.2</required_version> <maintainer>markjcrane@gmail.com</maintainer> |