From f2f4e9aa34453552d484edd7bb013650e4d7e312 Mon Sep 17 00:00:00 2001 From: Stephen Soltesz Date: Wed, 24 Jun 2009 19:04:14 +0000 Subject: [PATCH] make 'mac' field on an interface editable. --- planetlab/nodes/interface.js | 19 +++++++++++++++++++ planetlab/nodes/interface.php | 6 ++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/planetlab/nodes/interface.js b/planetlab/nodes/interface.js index e97487f..434333e 100644 --- a/planetlab/nodes/interface.js +++ b/planetlab/nodes/interface.js @@ -104,6 +104,25 @@ function networkHelper () { $('broadcast').value=derived[1]; } +function macChecker(id, optional) { + var error= macCheckerSilent($(id).value); + if (error) { + Form.Element.focus($(id)); + alert(error); + } +} + +function macCheckerSilent(macAdd) { + var RegExPattern = /^[0-9a-fA-F:]+$/; + + if (!(macAdd.match(RegExPattern)) || macAdd.length != 17) + { + return "Invalid MAC Address"; + } else { + return ""; + } +} + /* check one */ function subnetChecker (id, optional) { var error= subnetCheckerSilent([id,optional]); diff --git a/planetlab/nodes/interface.php b/planetlab/nodes/interface.php index 6f7e922..5a8af9b 100644 --- a/planetlab/nodes/interface.php +++ b/planetlab/nodes/interface.php @@ -111,9 +111,11 @@ $details->th_td("DNS 2",$interface['dns2'],"dns2",array('width'=>15, $details->space(); $details->th_td("BW limit (bps)",$interface['bwlimit'],"bwlimit",array('width'=>11)); $details->th_td("Hostname",$interface['hostname'],"hostname"); +$details->th_td("Mac address",$interface['mac'],"mac", array('onChange'=>'macChecker("mac", true)')); + # xxx should the user be allowed to change this ? -$mac=$interface['mac']; -if ($mac) $details->th_td("MAC address",$mac); +//$mac=$interface['mac']; +//if ($mac) $details->th_td("MAC address",$mac); // the buttons $update_button = $form->submit_html ("update-interface","Update", -- 2.43.0