summaryrefslogtreecommitdiffstats
path: root/usr
diff options
context:
space:
mode:
authorErmal Luçi <eri@pfsense.org>2009-07-23 21:05:29 +0000
committerErmal Luçi <eri@pfsense.org>2009-07-23 21:05:29 +0000
commit0cea9a236535cb6f86ba376bf5365c8b60bf9449 (patch)
tree99a84f998e930b25ebd29da47f426f30cf4359e5 /usr
parent8c935892a7fcd5d58f27ca96f80f5870285ebf5a (diff)
downloadpfsense-0cea9a236535cb6f86ba376bf5365c8b60bf9449.zip
pfsense-0cea9a236535cb6f86ba376bf5365c8b60bf9449.tar.gz
Add the id tag to the row helper javascript created input objects. Make the controls of aliases clearly show that they can be even alias names with autocomplete.(Loop checking is not yet implemented).
Diffstat (limited to 'usr')
-rwxr-xr-xusr/local/www/firewall_aliases_edit.php40
-rwxr-xr-xusr/local/www/javascript/row_helper.js2
2 files changed, 39 insertions, 3 deletions
diff --git a/usr/local/www/firewall_aliases_edit.php b/usr/local/www/firewall_aliases_edit.php
index 90c0673..f2b956e 100755
--- a/usr/local/www/firewall_aliases_edit.php
+++ b/usr/local/www/firewall_aliases_edit.php
@@ -244,6 +244,8 @@ include("head.inc");
$jscriptstr = <<<EOD
<script type="text/javascript">
+
+var objAlias = new Array(4999);
function typesel_change() {
switch (document.iform.type.selectedIndex) {
case 0: /* host */
@@ -300,6 +302,13 @@ function typesel_change() {
}
}
+function add_alias_control() {
+ var name = "address" + (totalrows - 1);
+ obj = document.getElementById(name);
+ obj.setAttribute('class', 'formfldalias');
+ obj.setAttribute('autocomplete', 'off');
+ objAlias[totalrows - 1] = new AutoSuggestControl(obj, new StateSuggestions(addressarray));
+}
EOD;
$network_str = gettext("Network");
@@ -374,6 +383,10 @@ EOD;
<script type="text/javascript" src="/javascript/row_helper.js">
</script>
+<script type="text/javascript" src="/javascript/autosuggest.js">
+</script>
+<script type="text/javascript" src="/javascript/suggestions.js">
+</script>
<input type='hidden' name='address_type' value='textbox' />
<input type='hidden' name='address_subnet_type' value='select' />
@@ -480,7 +493,7 @@ EOD;
?>
<tr>
<td>
- <input name="address<?php echo $tracker; ?>" type="text" class="formfld unknown" id="address<?php echo $tracker; ?>" size="30" value="<?=htmlspecialchars($address);?>" />
+ <input autocomplete="off" name="address<?php echo $tracker; ?>" type="text" class="formfldalias" id="address<?php echo $tracker; ?>" size="30" value="<?=htmlspecialchars($address);?>" />
</td>
<td>
<select name="address_subnet<?php echo $tracker; ?>" class="formselect" id="address_subnet<?php echo $tracker; ?>">
@@ -508,7 +521,7 @@ EOD;
</tfoot>
</table>
- <a onclick="javascript:addRowTo('maintable'); typesel_change(); return false;" href="#">
+ <a onclick="javascript:addRowTo('maintable', 'formfldalias'); typesel_change(); add_alias_control(this); return false;" href="#">
<img border="0" src="/themes/<?= $g['theme']; ?>/images/icons/icon_plus.gif" alt="" title="add another entry" />
</a>
</td>
@@ -533,6 +546,29 @@ EOD;
loaded = <?php echo $counter; ?>;
typesel_change();
update_box_type();
+
+<?php
+ $isfirst = 0;
+ $aliases = "";
+ $addrisfirst = 0;
+ $aliasesaddr = "";
+ if(isset($config['aliases']['alias']) && is_array($config['aliases']['alias']))
+ foreach($config['aliases']['alias'] as $alias_name) {
+ if($addrisfirst == 1) $aliasesaddr .= ",";
+ $aliasesaddr .= "'" . $alias_name['name'] . "'";
+ $addrisfirst = 1;
+ }
+?>
+
+ var addressarray=new Array(<?php echo $aliasesaddr; ?>);
+ var customarray=new Array(<?php echo $aliases; ?>);
+
+<?php
+ for ($jv = 0; $jv < $counter; $jv++)
+ echo "objAlias[{$jv}] = new AutoSuggestControl(document.getElementById(\"address{$jv}\"), new StateSuggestions(addressarray));\n";
+?>
+
+
</script>
<?php include("fend.inc"); ?>
diff --git a/usr/local/www/javascript/row_helper.js b/usr/local/www/javascript/row_helper.js
index 15d23f1..8193043 100755
--- a/usr/local/www/javascript/row_helper.js
+++ b/usr/local/www/javascript/row_helper.js
@@ -25,7 +25,7 @@ var addRowTo = (function() {
for (i = 0; i < field_counter_js; i++) {
td = d.createElement("td");
if(rowtype[i] == 'textbox') {
- td.innerHTML="<INPUT type='hidden' value='" + totalrows +"' name='" + rowname[i] + "_row-" + totalrows + "'></input><input size='" + rowsize[i] + "' class='formfld unknown' name='" + rowname[i] + totalrows + "'></input> ";
+ td.innerHTML="<INPUT type='hidden' value='" + totalrows +"' name='" + rowname[i] + "_row-" + totalrows + "'></input><input size='" + rowsize[i] + "' class='formfld unknown' name='" + rowname[i] + totalrows + "' id='" + rowname[i] + totalrows + "'></input> ";
} else if(rowtype[i] == 'select') {
td.innerHTML="<INPUT type='hidden' value='" + totalrows +"' name='" + rowname[i] + "_row-" + totalrows + "'></input><select size='1' name='" + rowname[i] + totalrows + "'><option value=\"32\" selected>32</option><option value=\"31\" >31</option><option value=\"30\" >30</option><option value=\"29\" >29</option><option value=\"28\" >28</option><option value=\"27\" >27</option><option value=\"26\" >26</option><option value=\"25\" >25</option><option value=\"24\" >24</option><option value=\"23\" >23</option><option value=\"22\" >22</option><option value=\"21\" >21</option><option value=\"20\" >20</option><option value=\"19\" >19</option><option value=\"18\" >18</option><option value=\"17\" >17</option><option value=\"16\" >16</option><option value=\"15\" >15</option><option value=\"14\" >14</option><option value=\"13\" >13</option><option value=\"12\" >12</option><option value=\"11\" >11</option><option value=\"10\" >10</option><option value=\"9\" >9</option><option value=\"8\" >8</option><option value=\"7\" >7</option><option value=\"6\" >6</option><option value=\"5\" >5</option><option value=\"4\" >4</option><option value=\"3\" >3</option><option value=\"2\" >2</option><option value=\"1\" >1</option></select> ";
} else {
OpenPOWER on IntegriCloud