summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKen Raffenetti <raffenet@mcs.anl.gov>2006-08-29 16:33:36 +0000
committerKen Raffenetti <raffenet@mcs.anl.gov>2006-08-29 16:33:36 +0000
commit510c55e843ea0a1c049b39a9f57ff044190fcbd9 (patch)
tree5e82a8238779a088147ff61efc0db305be76a1f7 /src
parentdbc96682be8968aac8ca8f8727728d60609f732c (diff)
downloadbcfg2-510c55e843ea0a1c049b39a9f57ff044190fcbd9.tar.gz
bcfg2-510c55e843ea0a1c049b39a9f57ff044190fcbd9.tar.bz2
bcfg2-510c55e843ea0a1c049b39a9f57ff044190fcbd9.zip
Added all the django application code
includes database models, file templates, and web apps git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2135 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'src')
-rw-r--r--src/lib/Server/Hostbase/__init__.py0
-rw-r--r--src/lib/Server/Hostbase/__init__.pycbin0 -> 188 bytes
-rw-r--r--src/lib/Server/Hostbase/__init__.pyobin0 -> 153 bytes
-rw-r--r--src/lib/Server/Hostbase/hostbase/__init__.py0
-rw-r--r--src/lib/Server/Hostbase/hostbase/__init__.pycbin0 -> 197 bytes
-rw-r--r--src/lib/Server/Hostbase/hostbase/__init__.pyobin0 -> 149 bytes
-rw-r--r--src/lib/Server/Hostbase/hostbase/models.py143
-rw-r--r--src/lib/Server/Hostbase/hostbase/models.pycbin0 -> 6943 bytes
-rw-r--r--src/lib/Server/Hostbase/hostbase/models.pyobin0 -> 206 bytes
-rw-r--r--src/lib/Server/Hostbase/hostbase/views.py (renamed from src/lib/Server/Hostbase/views.py)55
-rw-r--r--src/lib/Server/Hostbase/hostbase/views.pycbin0 -> 19040 bytes
-rw-r--r--src/lib/Server/Hostbase/hostbase/views.pyobin0 -> 146 bytes
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/confirm.html189
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/dns.html133
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/dnsedit.html192
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/edit.html314
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/errors.html126
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/host.html173
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/new.html191
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/results.html141
-rw-r--r--src/lib/Server/Hostbase/hostbase/webtemplates/search.html183
-rwxr-xr-xsrc/lib/Server/Hostbase/manage.py11
-rw-r--r--src/lib/Server/Hostbase/manage.pyobin0 -> 748 bytes
-rw-r--r--src/lib/Server/Hostbase/settings.py74
-rw-r--r--src/lib/Server/Hostbase/settings.pycbin0 -> 2024 bytes
-rw-r--r--src/lib/Server/Hostbase/settings.pyobin0 -> 1785 bytes
-rw-r--r--src/lib/Server/Hostbase/settings.py~73
-rw-r--r--src/lib/Server/Hostbase/templates/dhcpd.tmpl395
-rw-r--r--src/lib/Server/Hostbase/templates/hosts.tmpl30
-rw-r--r--src/lib/Server/Hostbase/templates/hostsappend.tmpl19
-rw-r--r--src/lib/Server/Hostbase/templates/named.tmpl67
-rw-r--r--src/lib/Server/Hostbase/templates/reverseappend.tmpl12
-rw-r--r--src/lib/Server/Hostbase/templates/reversesoa.tmpl14
-rw-r--r--src/lib/Server/Hostbase/templates/zone.tmpl22
-rw-r--r--src/lib/Server/Hostbase/urls.py19
-rw-r--r--src/lib/Server/Hostbase/urls.pycbin0 -> 1400 bytes
-rw-r--r--src/lib/Server/Hostbase/urls.pyobin0 -> 250 bytes
-rw-r--r--src/lib/Server/Hostbase/urls.py~19
38 files changed, 2568 insertions, 27 deletions
diff --git a/src/lib/Server/Hostbase/__init__.py b/src/lib/Server/Hostbase/__init__.py
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/src/lib/Server/Hostbase/__init__.py
diff --git a/src/lib/Server/Hostbase/__init__.pyc b/src/lib/Server/Hostbase/__init__.pyc
new file mode 100644
index 000000000..eac0d6c5f
--- /dev/null
+++ b/src/lib/Server/Hostbase/__init__.pyc
Binary files differ
diff --git a/src/lib/Server/Hostbase/__init__.pyo b/src/lib/Server/Hostbase/__init__.pyo
new file mode 100644
index 000000000..04ba26f61
--- /dev/null
+++ b/src/lib/Server/Hostbase/__init__.pyo
Binary files differ
diff --git a/src/lib/Server/Hostbase/hostbase/__init__.py b/src/lib/Server/Hostbase/hostbase/__init__.py
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/__init__.py
diff --git a/src/lib/Server/Hostbase/hostbase/__init__.pyc b/src/lib/Server/Hostbase/hostbase/__init__.pyc
new file mode 100644
index 000000000..928d88eff
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/__init__.pyc
Binary files differ
diff --git a/src/lib/Server/Hostbase/hostbase/__init__.pyo b/src/lib/Server/Hostbase/hostbase/__init__.pyo
new file mode 100644
index 000000000..13344544e
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/__init__.pyo
Binary files differ
diff --git a/src/lib/Server/Hostbase/hostbase/models.py b/src/lib/Server/Hostbase/hostbase/models.py
new file mode 100644
index 000000000..6253a7b50
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/models.py
@@ -0,0 +1,143 @@
+from django.db import models
+
+# Create your models here.
+class Host(models.Model):
+ NETGROUP_CHOICES = (
+ ('none', 'none'),('cave', 'cave'),('ccst', 'ccst'),('mcs', 'mcs'),
+ ('mmlab', 'mmlab'),('sp', 'sp'),('red', 'red'),('virtual', 'virtual'),
+ ('win', 'win'),('xterm', 'xterm'),('lcrc', 'lcrc'),('anlext', 'anlext'),
+ ('teragrid', 'teragrid')
+ )
+ STATUS_CHOICES = (
+ ('active','active'),('dormant','dormant')
+ )
+ SUPPORT_CHOICES = (
+ ('green','green'),('yellow','yellow'),('red','red')
+ )
+ CLASS_CHOICES = (
+ ('scientific','scientific'),
+ ('operations','operations'),('guest','guest'),
+ ('confidential','confidential'),('public','public')
+ )
+ hostname = models.CharField(maxlength=64)
+ whatami = models.CharField(maxlength=16)
+ netgroup = models.CharField(maxlength=32, choices=NETGROUP_CHOICES)
+ security_class = models.CharField('class', maxlength=16)
+ support = models.CharField(maxlength=8, choices=SUPPORT_CHOICES)
+ csi = models.CharField(maxlength=32, blank=True)
+ printq = models.CharField(maxlength=32)
+ dhcp = models.BooleanField()
+ outbound_smtp = models.BooleanField()
+ primary_user = models.EmailField()
+ administrator = models.EmailField(blank=True)
+ location = models.CharField(maxlength=16)
+ comments = models.TextField(blank=True)
+ expiration_date = models.DateField(null=True, blank=True)
+ last = models.DateField(auto_now=True, auto_now_add=True)
+ status = models.CharField(maxlength=7, choices=STATUS_CHOICES)
+
+ class Admin:
+ list_display = ('hostname', 'last')
+ search_fields = ['hostname']
+
+ def __str__(self):
+ return self.hostname
+
+class Interface(models.Model):
+ TYPE_CHOICES = (
+ ('eth', 'ethernet'), ('wl', 'wireless'), ('myr', 'myr'),
+ ('mgmt', 'mgmt'), ('tape', 'tape'), ('fe', 'fe')
+ )
+ host = models.ForeignKey(Host, edit_inline=models.TABULAR, num_in_admin=2)
+ mac_addr = models.CharField(maxlength=32, core=True)
+ hdwr_type = models.CharField('type', maxlength=16, choices=TYPE_CHOICES,
+ radio_admin=True, blank=True)
+
+ def __str__(self):
+ return self.mac_addr
+
+ class Admin:
+ list_display = ('mac_addr', 'host')
+ search_fields = ['mac_addr']
+
+class IP(models.Model):
+ interface = models.ForeignKey(Interface,
+ edit_inline=models.TABULAR, num_in_admin=1)
+ ip_addr = models.IPAddressField(core=True)
+ num = models.IntegerField()
+
+ def __str__(self):
+ return self.ip_addr
+
+ class Admin:
+ pass
+
+ class Meta:
+ ordering = ('ip_addr', )
+
+class MX(models.Model):
+ priority = models.IntegerField()
+ mx = models.CharField(maxlength=64, core=True)
+
+ def __str__(self):
+ return (" ".join([str(self.priority), self.mx]))
+
+ class Admin:
+ pass
+
+class Name(models.Model):
+ DNS_CHOICES = (
+ ('global','global'),('internal','ANL internal'),
+ ('mcs-internal','MCS internal'),('private','private')
+ )
+ ip = models.ForeignKey(IP, edit_inline=models.TABULAR, num_in_admin=1)
+ name = models.CharField(maxlength=64, core=True)
+ dns_view = models.CharField(maxlength=16, choices=DNS_CHOICES)
+ only = models.BooleanField(blank=True)
+ mxs = models.ManyToManyField(MX)
+
+ def __str__(self):
+ return self.name
+
+ class Admin:
+ pass
+
+class CName(models.Model):
+ name = models.ForeignKey(Name, edit_inline=models.TABULAR, num_in_admin=1)
+ cname = models.CharField(maxlength=64, core=True)
+
+ def __str__(self):
+ return self.cname
+
+ class Admin:
+ pass
+
+class Nameserver(models.Model):
+ name = models.CharField(maxlength=64)
+
+ def __str__(self):
+ return self.name
+
+ class Admin:
+ pass
+
+class Zone(models.Model):
+ zone = models.CharField(maxlength=64)
+ serial = models.IntegerField()
+ admin = models.CharField(maxlength=64)
+ primary_master = models.CharField(maxlength=64)
+ expire = models.IntegerField()
+ retry = models.IntegerField()
+ refresh = models.IntegerField()
+ ttl = models.IntegerField()
+ nameservers = models.ManyToManyField(Nameserver)
+ mxs = models.ManyToManyField(MX)
+ addresses = models.ManyToManyField(IP, blank=True)
+ aux = models.TextField(blank=True)
+
+ def __str__(self):
+ return self.zone
+
+ class Admin:
+ pass
+
diff --git a/src/lib/Server/Hostbase/hostbase/models.pyc b/src/lib/Server/Hostbase/hostbase/models.pyc
new file mode 100644
index 000000000..f76cc7d76
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/models.pyc
Binary files differ
diff --git a/src/lib/Server/Hostbase/hostbase/models.pyo b/src/lib/Server/Hostbase/hostbase/models.pyo
new file mode 100644
index 000000000..02c6a5e3d
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/models.pyo
Binary files differ
diff --git a/src/lib/Server/Hostbase/views.py b/src/lib/Server/Hostbase/hostbase/views.py
index 8f79670e3..1077cbede 100644
--- a/src/lib/Server/Hostbase/views.py
+++ b/src/lib/Server/Hostbase/hostbase/views.py
@@ -1,5 +1,6 @@
+# Create your views here.
"""Views.py
-Contains all the views associated with the dbconvert app
+Contains all the views associated with the hostbase app
Also has does form validation
"""
__revision__ = 0.1
@@ -36,12 +37,12 @@ dispatch = {'mac_addr':'i.mac_addr LIKE \'%%%%%s%%%%\'',
## if not (request.POST['email_address'] and userregex.match(request.POST['email_address'])):
## validated = False
## if not validated:
-## t = Template(open('./dbconvert/templates/errors.html').read())
+## t = Template(open('./hostbase/webtemplates/errors.html').read())
## t.failures = validate(request, True)
## return HttpResponse(str(t))
-## return HttpResponseRedirect('/dbconvert/%s/' % host.id)
+## return HttpResponseRedirect('/hostbase/%s/' % host.id)
## else:
-## t = Template(open('./dbconvert/templates/netreg.html').read())
+## t = Template(open('./hostbase/webtemplates/netreg.html').read())
## t.TYPE_CHOICES = Interface.TYPE_CHOICES
## t.failures = False
## return HttpResponse(str(t))
@@ -53,13 +54,13 @@ def search(request):
"""
if request.GET.has_key('sub'):
querystring = """SELECT DISTINCT h.hostname, h.id, h.status
- FROM (((((dbconvert_host h
- INNER JOIN dbconvert_interface i ON h.id = i.host_id)
- INNER JOIN dbconvert_ip p ON i.id = p.interface_id)
- INNER JOIN dbconvert_name n ON p.id = n.ip_id)
- INNER JOIN dbconvert_name_mxs x ON n.id = x.name_id)
- INNER JOIN dbconvert_mx m ON m.id = x.mx_id)
- LEFT JOIN dbconvert_cname c ON n.id = c.name_id
+ FROM (((((hostbase_host h
+ INNER JOIN hostbase_interface i ON h.id = i.host_id)
+ INNER JOIN hostbase_ip p ON i.id = p.interface_id)
+ INNER JOIN hostbase_name n ON p.id = n.ip_id)
+ INNER JOIN hostbase_name_mxs x ON n.id = x.name_id)
+ INNER JOIN hostbase_mx m ON m.id = x.mx_id)
+ LEFT JOIN hostbase_cname c ON n.id = c.name_id
WHERE """
_and = False
@@ -79,7 +80,7 @@ def search(request):
if not _and:
cursor = connection.cursor()
cursor.execute("""SELECT hostname, id, status
- FROM dbconvert_host ORDER BY hostname""")
+ FROM hostbase_host ORDER BY hostname""")
results = cursor.fetchall()
else:
querystring += " ORDER BY h.hostname"
@@ -87,11 +88,11 @@ def search(request):
cursor.execute(querystring)
results = cursor.fetchall()
- temp = Template(open('./dbconvert/templates/results.html').read())
+ temp = Template(open('./hostbase/webtemplates/results.html').read())
temp.hosts = results
return HttpResponse(str(temp))
else:
- temp = Template(open('./dbconvert/templates/search.html').read())
+ temp = Template(open('./hostbase/webtemplates/search.html').read())
temp.TYPE_CHOICES = Interface.TYPE_CHOICES
temp.DNS_CHOICES = Name.DNS_CHOICES
temp.yesno = [(1, 'yes'), (0, 'no')]
@@ -99,13 +100,13 @@ def search(request):
def look(request, host_id):
"""Displays general host information"""
- temp = Template(open('./dbconvert/templates/host.html').read())
+ temp = Template(open('./hostbase/webtemplates/host.html').read())
hostdata = gethostdata(host_id)
temp = fill(temp, hostdata)
return HttpResponse(str(temp))
def dns(request, host_id):
- temp = Template(open('./dbconvert/templates/dns.html').read())
+ temp = Template(open('./hostbase/webtemplates/dns.html').read())
hostdata = gethostdata(host_id, True)
temp = fill(temp, hostdata, True)
return HttpResponse(str(temp))
@@ -244,14 +245,14 @@ def edit(request, host_id):
dns_view='global', only=False)
name.save()
host.save()
- return HttpResponseRedirect('/dbconvert/%s/' % host.id)
+ return HttpResponseRedirect('/hostbase/%s/' % host.id)
else:
- t = Template(open('./dbconvert/templates/errors.html').read())
+ t = Template(open('./hostbase/webtemplates/errors.html').read())
t.failures = validate(request, False, host_id)
return HttpResponse(str(t))
# examine the check boxes for any changes
else:
- t = Template(open('./dbconvert/templates/edit.html').read())
+ t = Template(open('./hostbase/webtemplates/edit.html').read())
hostdata = gethostdata(host_id)
t = fill(t, hostdata)
t.type_choices = Interface.TYPE_CHOICES
@@ -282,11 +283,11 @@ def confirm(request, item, item_id, host_id, name_id=None):
Name.objects.get(id=item_id).cname_set.all().delete()
Name.objects.get(id=item_id).delete()
if item == 'cname' or item == 'mx' or item == 'name':
- return HttpResponseRedirect('/dbconvert/%s/dns' % host_id)
+ return HttpResponseRedirect('/hostbase/%s/dns' % host_id)
else:
- return HttpResponseRedirect('/dbconvert/%s/edit' % host_id)
+ return HttpResponseRedirect('/hostbase/%s/edit' % host_id)
else:
- temp = Template(open('./dbconvert/templates/confirm.html').read())
+ temp = Template(open('./hostbase/webtemplates/confirm.html').read())
interface = None
ips = []
names = {}
@@ -372,9 +373,9 @@ def dnsedit(request, host_id):
if created:
mx.save()
name.mxs.add(mx)
- return HttpResponseRedirect('/dbconvert/%s/dns' % host_id)
+ return HttpResponseRedirect('/hostbase/%s/dns' % host_id)
else:
- temp = Template(open('./dbconvert/templates/dnsedit.html').read())
+ temp = Template(open('./hostbase/webtemplates/dnsedit.html').read())
hostdata = gethostdata(host_id, True)
temp = fill(temp, hostdata, True)
temp.request = request
@@ -429,7 +430,7 @@ def new(request):
host.status = 'active'
host.save()
else:
- temp = Template(open('./dbconvert/templates/errors.html').read())
+ temp = Template(open('./hostbase/webtemplates/errors.html').read())
temp.failures = validate(request, True)
return HttpResponse(str(temp))
if request.POST['mac_addr_new']:
@@ -550,9 +551,9 @@ def new(request):
mx = MX(name=name, priority=30, mx='mailgw.mcs.anl.gov')
mx.save()
host.save()
- return HttpResponseRedirect('/dbconvert/%s/' % host.id)
+ return HttpResponseRedirect('/hostbase/%s/' % host.id)
else:
- temp = Template(open('./dbconvert/templates/new.html').read())
+ temp = Template(open('./hostbase/webtemplates/new.html').read())
temp.TYPE_CHOICES = Interface.TYPE_CHOICES
temp.NETGROUP_CHOICES = Host.NETGROUP_CHOICES
temp.CLASS_CHOICES = Host.CLASS_CHOICES
diff --git a/src/lib/Server/Hostbase/hostbase/views.pyc b/src/lib/Server/Hostbase/hostbase/views.pyc
new file mode 100644
index 000000000..24619902c
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/views.pyc
Binary files differ
diff --git a/src/lib/Server/Hostbase/hostbase/views.pyo b/src/lib/Server/Hostbase/hostbase/views.pyo
new file mode 100644
index 000000000..04623e621
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/views.pyo
Binary files differ
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/confirm.html b/src/lib/Server/Hostbase/hostbase/webtemplates/confirm.html
new file mode 100644
index 000000000..96ed4ed4f
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/confirm.html
@@ -0,0 +1,189 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+<form name="input" action="confirm.html?sub=true" method="post">
+<h3>Are you sure?</h3>
+Are you sure you want to remove these items?
+
+#if $interface
+<ul>
+<li> interface: $interface.__str__ </li>
+#end if
+
+
+#if $ips
+<ul>
+#for $ip in $ips
+<li> ip: $ip.__str__ </li>
+<ul>
+#for $name in $names[$ip.id]
+<li> name: $name.__str__ </li>
+<ul>
+#for $cname in $cnames[$name.id]
+<li> cname: $cname.__str__ </li>
+#end for
+</ul>
+<ul>
+#for $mx in $mxs[$name.id]
+<li> mx: $mx.priority $mx.__str__ </li>
+#end for
+</ul>
+#end for
+</ul>
+#end for
+</ul>
+#end if
+
+#if $names and not $ips
+<ul>
+#for $name in $names
+<li> name: $name.__str__ </li>
+<ul>
+#for $cname in $cnames[$name.id]
+<li> cname: $cname.__str__ </li>
+#end for
+</ul>
+<ul>
+#for $mx in $mxs[$name.id]
+<li> mx: $mx.priority $mx.__str__ </li>
+#end for
+</ul>
+#end for
+</ul>
+#end if
+
+#if $cnames and not $names
+<ul>
+#for $cname in $cnames
+<li> cname: $cname.__str__ </li>
+#end for
+</ul>
+#end if
+
+#if $mxs and not $names
+<ul>
+#for $mx in $mxs
+<li> mx: $mx.priority $mx.__str__ </li>
+#end for
+</ul>
+#end if
+
+#if $interface
+</ul>
+#end if
+
+<input type="submit" value="confirm">
+<input type="reset" value="cancel" onclick="history.back()">
+</form>
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Adminstration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/dns.html b/src/lib/Server/Hostbase/hostbase/webtemplates/dns.html
new file mode 100644
index 000000000..a937fb833
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/dns.html
@@ -0,0 +1,133 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+<b>DNS Information for host "$host.hostname"</b>
+
+ #for $interface in $interfaces
+ #for $ip in $ips[$interface.id]
+ <ul><li> <b>ip_addr:</b> $ip.ip_addr</li>
+ #for $name in $names[$ip.id]
+ <ul> <li><b>name:</b> $name.name</li> <ul>
+ #for $cname in $cnames[$name.id]
+ <li> <b>cname:</b> $cname.cname</li>
+ #end for
+ #for $mx in $mxs[$name.id]
+ <li> <b>mx:</b> $mx.priority $mx.mx</li>
+ #end for
+ </ul></ul>
+ #end for
+ </ul>
+ #end for
+ #end for
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/dnsedit.html b/src/lib/Server/Hostbase/hostbase/webtemplates/dnsedit.html
new file mode 100644
index 000000000..9065153da
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/dnsedit.html
@@ -0,0 +1,192 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+
+#set $cont = 1
+
+#if $request.GET.has_key('sub')
+ok, submitted
+#end if
+
+
+#if $cont
+<form name="dns" action="?sub=true" method="post">
+<input type="hidden" name="host" value="$host.id">
+<b>Edit DNS information below for individual IP addresses.</b>
+<table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ #for $interface in $interfaces
+ <tr><td><br></td></tr>
+ <tr> <td> <b>interface type</b> </td>
+ <td> $interface.hdwr_type </td></tr>
+ <tr> <td> <b>mac_addr</b> </td>
+ <td> $interface.mac_addr </td></tr>
+ <tr><td><hr></td><td><hr></td></tr>
+ #for $ip in $ips[$interface.id]
+ <tr> <td> <b>ip_addr</b></td>
+ <td>$ip.ip_addr</td></tr>
+ #for $name in $names[$ip.id]
+ <tr> <td><b>name(dns)</b></td>
+ <td> <input name="name$name.id" type="text" value="$name.name">
+ <select name="dns_view$name.id">
+ #for $choice in $name.DNS_CHOICES
+ #if $name.dns_view == $choice[0]
+ <option value="$choice[0]">$choice[1]
+ #else
+ <option value="$choice[0]">$choice[1]
+ #end if
+ #end for
+ </select>
+ <a style="font-size:75%" href="/hostbase/$host.id/name/${name.id}/confirm">remove</a></td></tr>
+ #for $cname in $cnames[$name.id]
+ <tr> <td> <b>cname</b></td>
+ <td> <input name="cname$cname.id" type="text" value="$cname.cname">
+ <a style="font-size:75%" href="/hostbase/$host.id/cname/${cname.id}/confirm">remove</a></td></tr>
+ #end for
+ <tr> <td> <b>cname</b></td>
+ <td> <input name="${name.id}cname" type="text"></td></tr>
+ #for $mx in $mxs[$name.id]
+ <tr> <td> <b>mx</b></td>
+ <td> <input name="priority$mx.id" type="text" size="6" value="$mx.priority">
+ <input name="mx$mx.id" type="text" value="$mx.mx">
+ <a style="font-size:75%" href="/hostbase/$host.id/mx/${mx.id}/${name.id}/confirm">remove</a></td></tr>
+ #end for
+ <tr> <td> <b>mx</b></td>
+ <td> <input name="${name.id}priority" type="text" size="6">
+ <input name="${name.id}mx" type="text"></td></tr>
+ #end for
+ <tr> <td> <b>name</b></td>
+ <td> <input name="${ip.__str__}name" type="text">
+ <select name="${ip.__str__}dns_view">
+ #for $choice in $name.DNS_CHOICES
+ <option value="$choice[0]">$choice[1]
+ #end for
+ </select></td></tr>
+ <tr> <td> <b>cname</b></td>
+ <td> <input name="${ip.__str__}cname" type="text"></td></tr>
+ <tr> <td> <b>mx</b></td>
+ <td> <input name="${ip.__str__}priority" type="text" size="6">
+ <input name="${ip.__str__}mx" type="text"></td></tr>
+ <tr><td></td></tr>
+ <tr><td><hr></td><td><hr></td></tr>
+ #end for
+ #end for
+ </table>
+
+<p><input type="submit" value="Submit">
+</form>
+#end if
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/edit.html b/src/lib/Server/Hostbase/hostbase/webtemplates/edit.html
new file mode 100644
index 000000000..71ca621a1
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/edit.html
@@ -0,0 +1,314 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+<script language=JavaScript type=text/Javascript>
+function toggleAddr(interface_id){
+ if(document.getElementById){
+ var style = document.getElementById('ipaddr'+interface_id).style;
+ style.display = style.display? "":"block";
+ }
+}
+function toggleInter(){
+ if(document.getElementById){
+ var style = document.getElementById('interface').style;
+ style.display = style.display? "":"block";
+ }
+}
+</script>
+
+<style type=text/css>
+#for $interface in $interfaces
+div#ipaddr${interface.id}{
+ display: none;
+}
+<!--
+#for $ip in $ips[$interface.id]
+div#dns${ip.id}{
+ display: none;
+}
+#end for
+-->
+#end for
+div#interface{
+ display: none;
+}
+</style>
+
+#set $cont = 1
+
+#if $request.GET.has_key('sub')
+ok, submitted
+#end if
+
+#if $cont
+<form name="hostdata" action="?sub=true" method="post">
+<input type="hidden" name="host" value="$host.id">
+<table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ <tr> <td> <b>hostname</b></td>
+ <td> <input name="hostname" type="text" value="$host.hostname"></td></tr>
+ <tr> <td> <b>whatami</b></td>
+ <td> <input name="whatami" type="text" value="$host.whatami"></td></tr>
+ <tr> <td> <b>netgroup</b></td>
+ <td>
+ <select name="netgroup">
+ #for $choice in $host.NETGROUP_CHOICES
+ #if $host.netgroup == $choice[0]
+ <option value="$choice[0]" selected="selected">$choice[1]
+ #else
+ <option value="$choice[0]">$choice[1]
+ #end if
+ #end for
+ </select>
+ </td></tr>
+ <tr> <td> <b>class</b></td>
+ <td>
+ <select name="security_class">
+ #for $choice in $host.CLASS_CHOICES
+ #if $host.security_class == $choice[0]
+ <option value="$choice[0]" selected="selected">$choice[1]
+ #else
+ <option value="$choice[0]">$choice[1]
+ #end if
+ #end for
+ </select></td></tr>
+ <tr> <td> <b>support</b></td>
+ <td>
+ <select name="support">
+ #for $choice in $host.SUPPORT_CHOICES
+ #if $host.support == $choice[0]
+ <option value="$choice[0]" selected="selected">$choice[1]
+ #else
+ <option value="$choice[0]">$choice[1]
+ #end if
+ #end for
+ </select></td></tr>
+ <tr> <td> <b>csi</b></td>
+ <td> <input name="csi" type="text" value="$host.csi"></td></tr>
+ <tr> <td> <b>printq</b></td>
+ <td> <input name="printq" type="text" value="$host.printq"></td></tr>
+ <tr> <td> <b>dhcp</b></td>
+ <td>
+ #if $host.dhcp
+ <input type="checkbox" checked="checked" name="dhcp"></td></tr>
+ #else
+ <input type="checkbox" name="dhcp"></td></tr>
+ #end if
+ <tr> <td> <b>outbound_smtp</b></td>
+ <td>
+ #if $host.outbound_smtp
+ <input type="checkbox" checked="checked" name="outbound_smtp"></td></tr>
+ #else
+ <input type="checkbox" name="outbound_smtp"></td></tr>
+ #end if
+ <tr> <td> <b>primary_user</b></td>
+ <td> <input name="primary_user" type="text" size="32" value="$host.primary_user"></td></tr>
+ <tr> <td> <b>administrator</b></td>
+ <td> <input name="administrator" type="text" size="32" value="$host.administrator"></td></tr>
+ <tr> <td> <b>location</b></td>
+ <td> <input name="location" type="text" value="$host.location"></td></tr>
+ <tr> <td> <b>expiration_date</b></td>
+ <td> <input name="expiration_date" type="text" value="$host.expiration_date"> YYYY-MM-DD</td></tr>
+ #for $interface in $interfaces
+ <tr> <td><br><b>Interface</b>
+ </td><td><br>
+ #for $choice in $interface.TYPE_CHOICES
+ #if $interface.hdwr_type == $choice[0]
+ <input type="radio" name="hdwr_type$interface.id" value="$choice[0]" checked="checked">$choice[1]
+ #else
+ <input type="radio" name="hdwr_type$interface.id" value="$choice[0]">$choice[1]
+ #end if
+ #end for
+ </td></tr>
+ <tr> <td> <b>mac_addr</b></td>
+ <td> <input name="mac_addr$interface.id" type="text" value="$interface.mac_addr">
+ <a style="font-size:75%" href="/hostbase/$host.id/interface/${interface.id}/confirm">remove</a>
+ </td></tr>
+ #for $ip in $ips[$interface.id]
+ <tr> <td> <b>ip_addr</b>
+ </td>
+ <td> <input name="ip_addr${ip.id}" type="text" value="$ip.ip_addr">
+ <a style="font-size:75%" href="/hostbase/$host.id/ip/${ip.id}/confirm">remove
+ </a></td></tr>
+ #end for
+
+<!-- Section for adding a new IP address to an existing interface -->
+<!-- By default, section is hidden -->
+ </table>
+ <div id=ipaddr${interface.id}>
+ <table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ <tr> <td> <b>ip_addr</b></td>
+ <td> <input name="${interface.id}ip_addr" type="text"></td></tr>
+ </table>
+ </div>
+ <a style="font-size:75%" href=# onclick="toggleAddr($interface.id)">Add a New IP Address</a>
+ <table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ #end for
+<!-- End section for new IP address -->
+
+<!-- Section for add an entirely new interface to a host -->
+<!-- By default, section is hidden -->
+ </table>
+ <div id=interface>
+ <table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ <tr> <td><br><b>Interface</b></td><td><br>
+ #for $choice in $type_choices
+ <input type="radio" name="hdwr_type_new" value="$choice[0]">$choice[1]
+ #end for
+ </td></tr>
+ <tr> <td> <b>mac_addr</b></td>
+ <td> <input name="mac_addr_new" type="text"></td></tr>
+ <tr> <td> <b>ip_addr</b></td>
+ <td> <input name="ip_addr_new" type="text"></td></tr>
+</table>
+</div>
+<a style="font-size:75%" href=# onclick="toggleInter()">Add a New Interface</a>
+<!-- End new interface section -->
+
+
+<table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+<tr> <td> <b>comments</b></td>
+<td> <textarea rows="10" cols="50" name="comments">$host.comments</textarea></td></tr>
+</table>
+<a style="font-size:75%" href="/hostbase/$host.id/dns/edit">edit detailed DNS information for this host</a>
+<br>
+this host is
+<select name="status">
+#for $choice in $host.STATUS_CHOICES
+#if $host.status == $choice[0]
+<option value="$choice[0]" selected="selected">$choice[1]
+#else
+<option value="$choice[0]">$choice[1]
+#end if
+#end for
+</select><br>
+last update on $host.last<br>
+<p><input type="submit" value="Submit">
+</form>
+#end if
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/errors.html b/src/lib/Server/Hostbase/hostbase/webtemplates/errors.html
new file mode 100644
index 000000000..83f5cd014
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/errors.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","index.html","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+#if $failures
+There were errors in the following fields<br><br>
+#for $failure in $failures
+
+<font color="#FF0000">$failure</font><br>
+
+#end for
+#end if
+<br>
+Press the back button on your browser and edit those field(s)
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/host.html b/src/lib/Server/Hostbase/hostbase/webtemplates/host.html
new file mode 100644
index 000000000..a9ec9014b
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/host.html
@@ -0,0 +1,173 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+<table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ <tr> <td> <b>hostname</b></td>
+ <td> $host.hostname</td></tr>
+ <tr> <td> <b>whatami</b></td>
+ <td> $host.whatami</td></tr>
+ <tr> <td> <b>netgroup</b></td>
+ <td> $host.netgroup</td></tr>
+ <tr> <td> <b>class</b></td>
+ <td> $host.security_class</td></tr>
+ <tr> <td> <b>support</b></td>
+ <td> $host.support</td></tr>
+ <tr> <td> <b>csi</b></td>
+ <td> $host.csi</td></tr>
+ <tr> <td> <b>printq</b></td>
+ <td> $host.printq</td></tr>
+ <tr> <td> <b>dhcp</b></td>
+ #if $host.dhcp
+ <td> y </td></tr>
+ #else
+ <td> n </td></tr>
+ #end if
+ <tr> <td> <b>outbound_smtp</b></td>
+ #if $host.outbound_smtp
+ <td> y </td></tr>
+ #else
+ <td> n </td></tr>
+ #end if
+ <tr> <td> <b>primary_user</b></td>
+ <td> $host.primary_user</td></tr>
+ <tr> <td> <b>administrator</b></td>
+ <td> $host.administrator</td></tr>
+ <tr> <td> <b>location</b></td>
+ <td> $host.location</td></tr>
+ <tr> <td> <b>expiration_date</b></td>
+ <td> $host.expiration_date</td></tr>
+ #for $interface in $interfaces
+ <tr> <td><br><b>Interface</b></td>
+ #if $interface.hdwr_type != 'no'
+ <td><br>$interface.hdwr_type </td></tr>
+ #end if
+ <tr> <td> <b>mac_addr</b></td>
+ <td> $interface.mac_addr </b></td></tr>
+ #for $ip in $ips[$interface.id]
+ <tr> <td> <b>ip_addr</b></td>
+ <td> $ip.ip_addr</td></tr>
+ #end for
+ #end for
+ <tr> <td> <b>comments</b></td>
+ <td> $host.comments</td></tr>
+
+</table>
+<a style="font-size:75%" href="/hostbase/$host.id/dns/">see detailed DNS information for this host</a>
+<br><br>
+this host is $host.status<br>
+last update on $host.last<br>
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/new.html b/src/lib/Server/Hostbase/hostbase/webtemplates/new.html
new file mode 100644
index 000000000..bb00e57b0
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/new.html
@@ -0,0 +1,191 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+<b> Enter new host information </b>
+
+<form name="hostdata" action="?sub=true" method="post">
+<input type="hidden" name="host">
+<table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ <tr> <td> <b>hostname</b></td>
+ <td> <input name="hostname" type="text" ></td></tr>
+ <tr> <td> <b>whatami</b></td>
+ <td> </td></tr>
+ <tr> <td> <b>netgroup</b></td>
+ <td>
+ <select name="netgroup">
+ #for $choice in $NETGROUP_CHOICES
+ <option value="$choice[0]">$choice[1]
+ #end for
+ </select>
+ </td></tr>
+ <tr> <td> <b>class</b></td>
+ <td>
+ <select name="security_class">
+ #for $choice in $CLASS_CHOICES
+ <option value="$choice[0]">$choice[1]
+ #end for
+ </select></td></tr>
+ <tr> <td> <b>support</b></td>
+ <td>
+ <select name="support">
+ #for $choice in $SUPPORT_CHOICES
+ <option value="$choice[0]">$choice[1]
+ #end for
+ </select></td></tr>
+ <tr> <td> <b>csi</b></td>
+ <td> <input name="csi" type="text" ></td></tr>
+ <tr> <td> <b>printq</b></td>
+ <td> <input name="printq" type="text" ></td></tr>
+ <tr> <td> <b>dhcp</b></td>
+ <td>
+ <input type="checkbox" name="dhcp"></td></tr>
+ <tr> <td> <b>outbound_smtp</b></td>
+ <td>
+ <input type="checkbox" name="outbound_smtp"></td></tr>
+ <tr> <td> <b>primary_user</b></td>
+ <td> <input name="primary_user" type="text" size="32" ></td></tr>
+ <tr> <td> <b>administrator</b></td>
+ <td> <input name="administrator" type="text" size="32" ></td></tr>
+ <tr> <td> <b>location</b></td>
+ <td> <input name="location" type="text" ></td></tr>
+ <tr> <td> <b>expiration_date</b></td>
+ <td> <input name="expiration_date" type="text" size="10" >YYYY-MM-DD</td></tr>
+ <tr> <td><br><b>Interface</b></td><td><br>
+ #for $choice in $TYPE_CHOICES
+ <input type="radio" name="hdwr_type_new" value="$choice[0]" >$choice[1]
+ #end for
+ </td></tr>
+ <tr> <td> <b>mac_addr</b></td>
+ <td> <input name="mac_addr_new" type="text"></td></tr>
+ <tr> <td> <b>ip_addr</b></td>
+ <td> <input name="ip_addr_new" type="text"></td></tr>
+ <tr> <td><br><b>Interface</b></td><td><br>
+ #for $choice in $TYPE_CHOICES
+ <input type="radio" name="hdwr_type_new2" value="choice[0]" >$choice[1]
+ #end for
+ </td></tr>
+ <tr> <td> <b>mac_addr</b></td>
+ <td> <input name="mac_addr_new2" type="text"></td></tr>
+ <tr> <td> <b>ip_addr</b></td>
+ <td> <input name="ip_addr_new2" type="text"></td></tr>
+ <tr> <td> <b>comments</b></td>
+ <td> <textarea rows="10" cols="50" name="comments"></textarea></td></tr>
+</table>
+<br>
+<p><input type="submit" value="Submit">
+</form>
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/results.html b/src/lib/Server/Hostbase/hostbase/webtemplates/results.html
new file mode 100644
index 000000000..efae1143f
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/results.html
@@ -0,0 +1,141 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" --><img src="http://www-unix.mcs.anl.gov/hostbaseweb/images/mcs_logo_white_minus_logo_small.png" width="92" height="31"><br>
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+#if $hosts
+<table border="0" width="100%">
+ <colgroup>
+ <col width="200">
+ <col width="75">
+ <col width="50">
+ <col width="*">
+ <tr> <td><b>hostname</b></td>
+ <td> <b>status</b> </td>
+ </tr>
+ #for $host in $hosts
+ <tr> <td> $host[0]</td>
+ #if $host[2]
+ <td> active </td>
+ #else
+ <td> inactive </td>
+ #end if
+ <td> <a href="$host[1]">view</a> </td>
+ <td> <a href="$host[1]/edit.html">edit</a> </td>
+ </tr>
+ #end for
+</table>
+#else
+No hosts matched your query<br>
+Click the back button on your browser to edit your search
+#end if
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
+
diff --git a/src/lib/Server/Hostbase/hostbase/webtemplates/search.html b/src/lib/Server/Hostbase/hostbase/webtemplates/search.html
new file mode 100644
index 000000000..29a684b1a
--- /dev/null
+++ b/src/lib/Server/Hostbase/hostbase/webtemplates/search.html
@@ -0,0 +1,183 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><!-- InstanceBegin template="/Templates/publicFull.dwt" codeOutsideHTMLIsLocked="false" -->
+<head>
+<link href="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/stylesheets/argonne.css" rel="stylesheet" type="text/css">
+<link href="http://www.anl.gov/favicon.ico" rel="SHORTCUT ICON">
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/anlmain.js" type="text/JavaScript"></script>
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/stm31.js" type="text/JavaScript"></script>
+<!-- InstanceBeginEditable name="head" -->
+<!-- Insert page specific head elements in this region, including custom javascript -->
+<!-- TemplateBeginEditable name="head" -->
+<script language="JavaScript" src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/javascript/main.js" type="text/JavaScript"></script>
+<!-- TemplateEndEditable --><!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="title" -->
+<title></title>
+<!-- InstanceEndEditable -->
+<!-- InstanceBeginEditable name="metadata" -->
+<meta name="description" content="">
+<meta name="keywords" content="">
+<meta name="classification" content="">
+<meta name="author" content="Argonne National Laboratory">
+<meta name="expires" content="">
+<!-- InstanceEndEditable -->
+<!-- InstanceParam name="Contact URL" type="URL" value="../about/contacts.html" --><!-- InstanceParam name="Sitemap URL" type="URL" value="../Division/sitemap.html" --><!-- InstanceParam name="Search URL" type="URL" value="../About/search.html" --><!-- InstanceParam name="enableOptionalSponsorLogos" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarTabs" type="boolean" value="true" --><!-- InstanceParam name="enableNavBarSearch" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSitemapFooter" type="boolean" value="false" --><!-- InstanceParam name="enableOptionalSearchFooter" type="boolean" value="false" -->
+</head>
+<body>
+<table width="100%" border="0" cellpadding="0" cellspacing="3">
+ <tr>
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr class="headerBkgd" valign="middle">
+ <td width="10"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" height="10" width="10" border="0" alt=""></td>
+ <td width="300" align="left"><a href="http://www.anl.gov"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/argonne_header_logo.jpg" alt="Argonne National Laboratory" width="227" height="100" border="0"></a></td>
+ <td><span class="sectionTitle"><!-- InstanceBeginEditable name="divisionProgramIdentity" -->
+ <a href="http://www.mcs.anl.gov">Mathematics
+ and Computer Science </a><!-- InstanceEndEditable --></span></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
+
+ <tr> <!-- InstanceBeginRepeat name="localNavigation" --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="http://www.mcs.anl.gov">About
+ Us</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/research/">Research</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --> <a href="../research/index.html"></a><a href="http://www-fp.mcs.anl.gov/division/resources/">Facilities</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" --><a href="http://www-fp.mcs.anl.gov/division/people/">Staff</a><!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/software/">Software</a> <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/collaboration">Collaborations </a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
+ <td nowrap class="navGlobalBkgd"><span class="navGlobal"><!-- InstanceBeginEditable name="localNavigationItem" -->
+ <a href="http://www-fp.mcs.anl.gov/division/information/">Information</a>
+ <!-- InstanceEndEditable --></span></td>
+ <td width="3" nowrap><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="3" height="1" border="0" alt=""></td>
+ <!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat -->
+
+ <td class="navGlobalBkgd" width="50%"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/spacer.gif" width="1" height="30" border="0" alt=""></td>
+ </tr> </table>
+ <!-- #EndLibraryItem --></td>
+ </tr>
+ <tr>
+ <td class="greyBkgdLight"><span class="breadcrumbs"><a href="http://www.mcs.anl.gov/">MCS
+ Home</a> &gt; <!-- InstanceBeginEditable name="topLevelBreadcrumbs" -->
+ <script language="JavaScript">breadCrumbs("www-unix.mcs.anl.gov/new",">","","breadcrumbs","None","None","0");</script>
+ <!-- InstanceEndEditable --></span></td>
+</td>
+ </tr>
+ <tr valign="top">
+ <td nowrap><table width="100%" border="0" cellpadding="5" cellspacing="0">
+ <tr>
+ <td><!-- InstanceBeginEditable name="mainFeature" -->
+<h2>Welcome to the hostbase database!</h2>
+Find hosts using one or more of the searchable fields below.<br>
+#*...or go to <a href="hostinfo">this</a>
+ page to enter hostinfo-like queries<br><br>*#
+<form name="input" action="?sub=true" method="post">
+<table border="0" width="100%">
+ <colgroup>
+ <col width="150">
+ <col width="*">
+ <tr> <td> <b>hostname</b></td>
+ <td> <input name="hostname" type="text" ></td></tr>
+ <tr> <td> <b>whatami</b></td>
+ <td> <input name="whatami" type="text" ></td></tr>
+ <td> </td></tr>
+ <tr> <td> <b>netgroup</b></td>
+ <td> <input name="netgroup" type="text" ></td></tr>
+ <tr> <td> <b>class</b></td>
+ <td> <input name="security_class" type="text" ></td></tr>
+ <tr> <td> <b>support</b></td>
+ <td> <input name="support" type="text" ></td></tr>
+ <tr> <td> <b>csi</b></td>
+ <td> <input name="csi" type="text" ></td></tr>
+ <tr> <td> <b>printq</b></td>
+ <td> <input name="printq" type="text" ></td></tr>
+ <tr> <td> <b>dhcp</b></td>
+ <td>
+ #for $choice in $yesno
+ <input type="radio" name="dhcp" value="$choice[0]" >$choice[1]
+ #end for
+ </td></tr>
+ <tr> <td> <b>outbound_smtp</b></td>
+ <td>
+ #for $choice in $yesno
+ <input type="radio" name="outbound_smtp" value="$choice[0]" >$choice[1]
+ #end for
+ </td></tr>
+ <tr> <td> <b>primary_user</b></td>
+ <td> <input name="primary_user" type="text" size="32" ></td></tr>
+ <tr> <td> <b>administrator</b></td>
+ <td> <input name="administrator" type="text" size="32" ></td></tr>
+ <tr> <td> <b>location</b></td>
+ <td> <input name="location" type="text" ></td></tr>
+ <tr> <td> <b>expiration_date</b></td>
+ <td> <input name="expiration_date" type="text" size="10" >YYYY-MM-DD</td></tr>
+ <tr> <td><br><b>Interface</b></td><td><br>
+ #for $choice in $TYPE_CHOICES
+ <input type="radio" name="hdwr_type" value="$choice[0]" >$choice[1]
+ #end for
+ </td></tr>
+ <tr> <td> <b>mac_addr</b></td>
+ <td> <input name="mac_addr" type="text"></td></tr>
+ <tr> <td> <b>ip_addr</b></td>
+ <td> <input name="ip_addr" type="text"></td></tr>
+ <tr> <td> <b>name</b></td>
+ <td> <input name="name" type="text"></td></tr>
+ <tr> <td><b>dns_view</b></td><td>
+ #for $choice in $DNS_CHOICES
+ <input type="radio" name="dns_view" value="$choice[0]" >$choice[1]
+ #end for
+ </td></tr>
+ <tr> <td> <b>cname</b></td>
+ <td> <input name="cname" type="text"></td></tr>
+ <tr> <td> <b>mx</b></td>
+ <td> <input name="mx" type="text"></td></tr>
+</table>
+<p>
+<input type="submit" value="Search">
+</form>
+ <!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr valign="top">
+ <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="2" align="left"><hr size="1"></td>
+ </tr>
+ <tr valign="top">
+ <td colspan="2" align="center"><table border="0" cellspacing="0" cellpadding="5">
+ <tr>
+ <td><a href="http://www.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe.gif" alt="U.S. Department of Energy" width="153" height="35" border="0"></a></td>
+ <td><a href="http://www.uchicago.edu/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_uofc.gif" alt="The University of Chicago" width="125" height="34" border="0"></a></td>
+
+ <td><!-- InstanceBeginEditable name="sponsorLogos" --><!-- #BeginLibraryItem "/Library/logoOfficeOfScience.lbi" --><a href="http://www.sc.doe.gov/"><img src="http://www-unix.mcs.anl.gov/hostbaseweb/anl_templates/images/logos/footer_doe_science.gif" alt="Office of Science - Department of Energy" width="143" height="31" border="0"></a><!-- #EndLibraryItem --><!-- InstanceEndEditable --></td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"> <table cellspacing="0" cellpadding="2" border="0">
+ <tr>
+ <td class="footerText"><a href="http://www.anl.gov/notice.html">Privacy &amp; Security Notice</a>&nbsp;|&nbsp;<a href="http://www.anl.gov/Administration/contactus.html">Contact Us</a></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+</table>
+</body>
+<!-- InstanceEnd --></html>
diff --git a/src/lib/Server/Hostbase/manage.py b/src/lib/Server/Hostbase/manage.py
new file mode 100755
index 000000000..5e78ea979
--- /dev/null
+++ b/src/lib/Server/Hostbase/manage.py
@@ -0,0 +1,11 @@
+#!/usr/bin/env python
+from django.core.management import execute_manager
+try:
+ import settings # Assumed to be in the same directory.
+except ImportError:
+ import sys
+ sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__)
+ sys.exit(1)
+
+if __name__ == "__main__":
+ execute_manager(settings)
diff --git a/src/lib/Server/Hostbase/manage.pyo b/src/lib/Server/Hostbase/manage.pyo
new file mode 100644
index 000000000..676aa9e47
--- /dev/null
+++ b/src/lib/Server/Hostbase/manage.pyo
Binary files differ
diff --git a/src/lib/Server/Hostbase/settings.py b/src/lib/Server/Hostbase/settings.py
new file mode 100644
index 000000000..330c99f3b
--- /dev/null
+++ b/src/lib/Server/Hostbase/settings.py
@@ -0,0 +1,74 @@
+# Django settings for Hostbase project.
+
+DEBUG = True
+TEMPLATE_DEBUG = DEBUG
+
+ADMINS = (
+ # ('Your Name', 'your_email@domain.com'),
+)
+
+MANAGERS = ADMINS
+
+DATABASE_ENGINE = 'mysql' # 'postgresql', 'mysql', 'sqlite3' or 'ado_mssql'.
+DATABASE_NAME = 'hosttest' # Or path to database file if using sqlite3.
+DATABASE_USER = 'hosttest' # Not used with sqlite3.
+DATABASE_PASSWORD = 'marathon' # Not used with sqlite3.
+DATABASE_HOST = 'mysql.mcs.anl.gov' # Set to empty string for localhost. Not used with sqlite3.
+DATABASE_PORT = '3306' # Set to empty string for default. Not used with sqlite3.
+
+# Local time zone for this installation. All choices can be found here:
+# http://www.postgresql.org/docs/current/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE
+TIME_ZONE = 'America/Chicago'
+
+# Language code for this installation. All choices can be found here:
+# http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes
+# http://blogs.law.harvard.edu/tech/stories/storyReader$15
+LANGUAGE_CODE = 'en-us'
+
+SITE_ID = 1
+
+# Absolute path to the directory that holds media.
+# Example: "/home/media/media.lawrence.com/"
+MEDIA_ROOT = ''
+
+# URL that handles the media served from MEDIA_ROOT.
+# Example: "http://media.lawrence.com"
+MEDIA_URL = ''
+
+# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
+# trailing slash.
+# Examples: "http://foo.com/media/", "/media/".
+ADMIN_MEDIA_PREFIX = '/media/'
+
+# Make this unique, and don't share it with anybody.
+SECRET_KEY = '*%=fv=yh9zur&gvt4&*d#84o(cy^-*$ox-v1e9%32pzf2*qu#s'
+
+# List of callables that know how to import templates from various sources.
+TEMPLATE_LOADERS = (
+ 'django.template.loaders.filesystem.load_template_source',
+ 'django.template.loaders.app_directories.load_template_source',
+# 'django.template.loaders.eggs.load_template_source',
+)
+
+MIDDLEWARE_CLASSES = (
+ 'django.middleware.common.CommonMiddleware',
+ 'django.contrib.sessions.middleware.SessionMiddleware',
+ 'django.contrib.auth.middleware.AuthenticationMiddleware',
+ 'django.middleware.doc.XViewMiddleware',
+)
+
+ROOT_URLCONF = 'Hostbase.urls'
+
+TEMPLATE_DIRS = (
+ # Put strings here, like "/home/html/django_templates".
+ # Always use forward slashes, even on Windows.
+)
+
+INSTALLED_APPS = (
+ 'django.contrib.admin',
+ 'django.contrib.auth',
+ 'django.contrib.contenttypes',
+ 'django.contrib.sessions',
+ 'django.contrib.sites',
+ 'Hostbase.hostbase',
+)
diff --git a/src/lib/Server/Hostbase/settings.pyc b/src/lib/Server/Hostbase/settings.pyc
new file mode 100644
index 000000000..8d06f0eb5
--- /dev/null
+++ b/src/lib/Server/Hostbase/settings.pyc
Binary files differ
diff --git a/src/lib/Server/Hostbase/settings.pyo b/src/lib/Server/Hostbase/settings.pyo
new file mode 100644
index 000000000..ce65c7208
--- /dev/null
+++ b/src/lib/Server/Hostbase/settings.pyo
Binary files differ
diff --git a/src/lib/Server/Hostbase/settings.py~ b/src/lib/Server/Hostbase/settings.py~
new file mode 100644
index 000000000..9d588aefd
--- /dev/null
+++ b/src/lib/Server/Hostbase/settings.py~
@@ -0,0 +1,73 @@
+# Django settings for Hostbase project.
+
+DEBUG = True
+TEMPLATE_DEBUG = DEBUG
+
+ADMINS = (
+ # ('Your Name', 'your_email@domain.com'),
+)
+
+MANAGERS = ADMINS
+
+DATABASE_ENGINE = 'mysql' # 'postgresql', 'mysql', 'sqlite3' or 'ado_mssql'.
+DATABASE_NAME = 'hosttest' # Or path to database file if using sqlite3.
+DATABASE_USER = 'hosttest' # Not used with sqlite3.
+DATABASE_PASSWORD = 'marathon' # Not used with sqlite3.
+DATABASE_HOST = 'mysql.mcs.anl.gov' # Set to empty string for localhost. Not used with sqlite3.
+DATABASE_PORT = '3306' # Set to empty string for default. Not used with sqlite3.
+
+# Local time zone for this installation. All choices can be found here:
+# http://www.postgresql.org/docs/current/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE
+TIME_ZONE = 'America/Chicago'
+
+# Language code for this installation. All choices can be found here:
+# http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes
+# http://blogs.law.harvard.edu/tech/stories/storyReader$15
+LANGUAGE_CODE = 'en-us'
+
+SITE_ID = 1
+
+# Absolute path to the directory that holds media.
+# Example: "/home/media/media.lawrence.com/"
+MEDIA_ROOT = ''
+
+# URL that handles the media served from MEDIA_ROOT.
+# Example: "http://media.lawrence.com"
+MEDIA_URL = ''
+
+# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
+# trailing slash.
+# Examples: "http://foo.com/media/", "/media/".
+ADMIN_MEDIA_PREFIX = '/media/'
+
+# Make this unique, and don't share it with anybody.
+SECRET_KEY = '*%=fv=yh9zur&gvt4&*d#84o(cy^-*$ox-v1e9%32pzf2*qu#s'
+
+# List of callables that know how to import templates from various sources.
+TEMPLATE_LOADERS = (
+ 'django.template.loaders.filesystem.load_template_source',
+ 'django.template.loaders.app_directories.load_template_source',
+# 'django.template.loaders.eggs.load_template_source',
+)
+
+MIDDLEWARE_CLASSES = (
+ 'django.middleware.common.CommonMiddleware',
+ 'django.contrib.sessions.middleware.SessionMiddleware',
+ 'django.contrib.auth.middleware.AuthenticationMiddleware',
+ 'django.middleware.doc.XViewMiddleware',
+)
+
+ROOT_URLCONF = 'Hostbase.urls'
+
+TEMPLATE_DIRS = (
+ # Put strings here, like "/home/html/django_templates".
+ # Always use forward slashes, even on Windows.
+)
+
+INSTALLED_APPS = (
+ 'django.contrib.auth',
+ 'django.contrib.contenttypes',
+ 'django.contrib.sessions',
+ 'django.contrib.sites',
+ 'Hostbase.hostbase',
+)
diff --git a/src/lib/Server/Hostbase/templates/dhcpd.tmpl b/src/lib/Server/Hostbase/templates/dhcpd.tmpl
new file mode 100644
index 000000000..a7bfdb7e2
--- /dev/null
+++ b/src/lib/Server/Hostbase/templates/dhcpd.tmpl
@@ -0,0 +1,395 @@
+#
+# This file is automatically generated.
+# DO NOT EDIT IT BY HAND!
+# To update the contents of this file execute a 'make dhcp'
+# and then an 'install dhcp' in /mcs/adm/hostbase as root on
+# antares. This datafile is for use with the ISC dhcpd server.
+#
+# This file contains $numips IP addresses
+# Generated on: $timecreated
+#
+#
+#
+# dhcpd.conf
+#
+# Configuration file for ISC dhcpd
+#
+
+server-identifier thwap.mcs.anl.gov;
+
+# option definitions common to all supported networks...
+option domain-name "mcs.anl.gov";
+option domain-name-servers adc.mcs.anl.gov, antares-9.mcs.anl.gov, dns2.anl.gov;
+option option-140 code 140 = text;
+default-lease-time 28800;
+max-lease-time 28800;
+server-name "adc.mcs.anl.gov";
+next-server 140.221.8.10;
+filename "startrom.com";
+ddns-update-style none;
+authoritative;
+log-facility local7;
+option option-140 "140.221.9.24";
+
+subnet 10.140.222.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 10.140.222.255;
+ option routers 10.140.222.1;
+ option option-140 "140.221.9.24";
+ default-lease-time 3600;
+ max-lease-time 3600;
+}
+
+shared-network "SystemsNet" {
+
+ subnet 140.221.2.0 netmask 255.255.255.0 {
+ server-identifier 140.221.9.112;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.2.255;
+ option netbios-name-servers 10.140.221.10, 140.221.9.66;
+ option netbios-node-type 2;
+ option routers 140.221.2.1;
+ option option-140 "140.221.9.24";
+ default-lease-time 28800;
+ max-lease-time 28800;
+ deny unknown-clients;
+ }
+
+ subnet 140.221.127.0 netmask 255.255.255.0 {
+ pool {
+ range 140.221.127.10 140.221.127.199;
+ server-identifier 140.221.9.112;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.127.255;
+ option routers 140.221.127.1;
+ deny unknown-clients;
+ default-lease-time 3600;
+ max-lease-time 3600;
+ }
+ }
+
+ subnet 10.0.2.0 netmask 255.255.255.0 {
+ pool {
+ range 10.0.2.10 10.0.2.199;
+ allow unknown-clients;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 10.0.2.255;
+ option netbios-name-servers 10.0.2.1;
+ option routers 10.0.2.1;
+ option domain-name "guest.mcs.anl.gov";
+ option domain-name-servers 10.0.2.1;
+ server-identifier 10.0.2.1;
+ default-lease-time 60;
+ max-lease-time 60;
+ }
+ }
+
+} # End systems vlan
+
+shared-network "BorgNet" {
+subnet 140.221.8.0 netmask 255.255.252.0 {
+ option subnet-mask 255.255.252.0;
+ option broadcast-address 140.221.11.255;
+ option netbios-name-servers 10.140.221.10, 140.221.9.66;
+ option netbios-node-type 2;
+ option routers 140.221.11.253;
+ option option-140 "140.221.9.24";
+ deny unknown-clients;
+}
+
+subnet 140.221.5.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.5.255;
+ option routers 140.221.5.1;
+ option netbios-name-servers 10.140.221.10, 140.221.9.66;
+ option netbios-node-type 2;
+ option routers 140.221.5.1;
+ deny unknown-clients;
+}
+
+ subnet 140.221.123.0 netmask 255.255.255.0 {
+ range 140.221.123.10 140.221.123.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.123.255;
+ option routers 140.221.123.1;
+}
+} # End of borg vlan
+
+shared-network "WirelessNet" {
+ subnet 140.221.56.0 netmask 255.255.254.0 {
+ option subnet-mask 255.255.254.0;
+ # option broadcast-address 140.221.57.255;
+ option routers 140.221.57.253;
+}
+ subnet 140.221.120.0 netmask 255.255.255.0 {
+ range 140.221.120.10 140.221.120.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.120.255;
+ option routers 140.221.120.1;
+}
+} # end "WirelessNet"
+
+subnet 140.221.1.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.1.255;
+ option routers 140.221.1.1;
+}
+
+subnet 140.221.3.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.3.255;
+ option routers 140.221.3.1;
+}
+
+subnet 140.221.4.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.4.255;
+ option routers 140.221.4.1;
+}
+
+subnet 140.221.6.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.6.255;
+ option routers 140.221.6.1;
+}
+
+subnet 140.221.7.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.7.255;
+ option routers 140.221.7.1;
+}
+
+subnet 140.221.13.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option routers 140.221.13.253;
+}
+
+subnet 140.221.15.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.15.255;
+ option netbios-name-servers 10.140.221.10, 140.221.9.66;
+ option netbios-node-type 2;
+ option routers 140.221.10.253;
+}
+
+subnet 140.221.16.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.16.255;
+ option routers 140.221.16.253;
+}
+
+subnet 140.221.20.0 netmask 255.255.255.224 {
+ range 140.221.20.16 140.221.20.16;
+ range 140.221.20.17 140.221.20.17;
+ range 140.221.20.18 140.221.20.18;
+ range 140.221.20.19 140.221.20.19;
+ range 140.221.20.20 140.221.20.20;
+ range 140.221.20.21 140.221.20.21;
+ range 140.221.20.22 140.221.20.22;
+ range 140.221.20.23 140.221.20.23;
+ range 140.221.20.24 140.221.20.24;
+ range 140.221.20.25 140.221.20.25;
+ range 140.221.20.26 140.221.20.26;
+ range 140.221.20.27 140.221.20.27;
+ range 140.221.20.28 140.221.20.28;
+ option subnet-mask 255.255.255.224;
+ option broadcast-address 140.221.20.31;
+ option routers 140.221.20.1;
+}
+
+subnet 140.221.20.32 netmask 255.255.255.224 {
+ range 140.221.20.36 140.221.20.36;
+ range 140.221.20.37 140.221.20.37;
+ range 140.221.20.38 140.221.20.38;
+ range 140.221.20.39 140.221.20.39;
+ range 140.221.20.40 140.221.20.40;
+ option subnet-mask 255.255.255.224;
+ option broadcast-address 140.221.20.63;
+ option routers 140.221.20.33;
+}
+
+subnet 140.221.32.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.32.255;
+ option routers 140.221.32.253;
+}
+
+subnet 140.221.34.0 netmask 255.255.255.240 {
+ range 140.221.34.6 140.221.34.6;
+ range 140.221.34.12 140.221.34.12;
+ option subnet-mask 255.255.255.240;
+ option netbios-name-servers 10.140.221.10, 140.221.9.66;
+ option netbios-node-type 2;
+ option routers 140.221.34.13;
+}
+
+subnet 140.221.34.64 netmask 255.255.255.192 {
+ range 140.221.34.77 140.221.34.77;
+ range 140.221.34.91 140.221.34.91;
+ range 140.221.34.92 140.221.34.92;
+ range 140.221.34.93 140.221.34.93;
+ range 140.221.34.94 140.221.34.94;
+ range 140.221.34.95 140.221.34.95;
+ option subnet-mask 255.255.255.192;
+ option netbios-name-servers 10.140.221.10, 140.221.9.66;
+ option netbios-node-type 2;
+ option routers 140.221.34.65;
+ option option-140 "140.221.9.24";
+}
+
+subnet 140.221.35.32 netmask 255.255.255.224 {
+ option subnet-mask 255.255.255.224;
+ option broadcast-address 141.221.35.63;
+ option routers 140.221.35.33;
+}
+
+subnet 140.221.36.0 netmask 255.255.255.192 {
+ option subnet-mask 255.255.255.192;
+ option broadcast-address 141.221.36.63;
+ option routers 140.221.36.1;
+ }
+
+
+subnet 140.221.37.0 netmask 255.255.255.128 {
+ option subnet-mask 255.255.255.128;
+ option domain-name-servers ntnode01-37.mcs.anl.gov, antares-9.mcs.anl.gov, dns2.anl.gov;
+ option netbios-name-servers 140.221.37.41;
+ option routers 140.221.37.1;
+}
+
+subnet 140.221.47.144 netmask 255.255.255.252 {
+ option subnet-mask 255.255.255.252;
+ # option broadcast-address 140.221.32.255;
+ option routers 140.221.47.145;
+}
+
+subnet 140.221.48.96 netmask 255.255.255.240 {
+ option subnet-mask 255.255.255.240;
+ # option broadcast-address 140.221.32.255;
+ option routers 140.221.48.97;
+}
+
+subnet 140.221.58.128 netmask 255.255.255.128 {
+ option subnet-mask 255.255.255.240;
+ option broadcast-address 140.221.58.143;
+ option routers 140.221.58.129;
+}
+
+subnet 140.221.64.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ # option broadcast-address 140.221.64.255;
+ option routers 140.221.64.253;
+}
+
+subnet 140.221.70.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ # option broadcast-address 140.221.70.255;
+ option routers 140.221.70.253, 140.221.70.1;
+}
+
+#subnet 146.137.172.0 netmask 255.255.254.0 {
+# option subnet-mask 255.255.254.0;
+# # option broadcast-address 146.137.173.255;
+# option routers 146.137.172.125;
+#}
+
+ subnet 140.221.126.0 netmask 255.255.255.0 {
+ range 140.221.126.10 140.221.126.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.126.255;
+ option routers 140.221.126.1;
+}
+
+ subnet 140.221.125.0 netmask 255.255.255.0 {
+ range 140.221.125.10 140.221.125.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.125.255;
+ option routers 140.221.125.1;
+}
+
+ subnet 140.221.124.0 netmask 255.255.255.0 {
+ range 140.221.124.10 140.221.124.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.124.255;
+ option routers 140.221.124.1;
+}
+
+ subnet 140.221.122.0 netmask 255.255.255.0 {
+ range 140.221.122.10 140.221.122.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.122.255;
+ option routers 140.221.122.1;
+}
+
+ subnet 140.221.121.0 netmask 255.255.255.0 {
+ range 140.221.121.10 140.221.121.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.121.255;
+ option routers 140.221.121.1;
+}
+
+
+ subnet 140.221.119.0 netmask 255.255.255.0 {
+ range 140.221.119.10 140.221.119.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.119.255;
+ option routers 140.221.119.1;
+}
+
+ subnet 140.221.118.0 netmask 255.255.255.0 {
+ range 140.221.118.10 140.221.118.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.118.255;
+ option routers 140.221.118.1;
+}
+
+ subnet 140.221.117.0 netmask 255.255.255.0 {
+ range 140.221.117.10 140.221.117.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.117.255;
+ option routers 140.221.117.1;
+}
+
+ subnet 140.221.116.0 netmask 255.255.255.0 {
+ range 140.221.116.10 140.221.116.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.116.255;
+ option routers 140.221.116.1;
+}
+
+ subnet 140.221.115.0 netmask 255.255.255.0 {
+ range 140.221.115.10 140.221.115.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.115.255;
+ option routers 140.221.115.1;
+}
+
+ subnet 140.221.114.0 netmask 255.255.255.0 {
+ range 140.221.114.10 140.221.114.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.114.255;
+ option routers 140.221.114.1;
+}
+
+ subnet 140.221.113.0 netmask 255.255.255.0 {
+ range 140.221.113.10 140.221.113.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.113.255;
+ option routers 140.221.113.1;
+}
+
+ subnet 140.221.112.0 netmask 255.255.255.0 {
+ range 140.221.112.10 140.221.112.199;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 140.221.112.255;
+ option routers 140.221.112.1;
+}
+
+# Hosts which require special configuration options can be listed in
+# host statements. If no address is specified, the address will be
+# allocated dynamically (if possible), but the host-specific information
+# will still come from the host declaration.
+
+#for $host in $hosts
+host $host[0] {hardware ethernet $host[1];fixed-address $host[2];}
+#end for
diff --git a/src/lib/Server/Hostbase/templates/hosts.tmpl b/src/lib/Server/Hostbase/templates/hosts.tmpl
new file mode 100644
index 000000000..e06183ac6
--- /dev/null
+++ b/src/lib/Server/Hostbase/templates/hosts.tmpl
@@ -0,0 +1,30 @@
+##############################################################################
+# MCS hosts file
+#
+# This file is generated automatically - DO NOT EDIT IT.
+# To create this file, do 'make hosts' in "hostbase".
+#
+# Generated on: Wed Jan 4 20:34:34 CST 2006
+#
+
+127.0.0.1 localhost.mcs.anl.gov localhost
+
+# This file lists hosts in these domains:
+#for $domain in $domain_data
+# ${domain[0]}: ${domain[1]}
+#end for
+#
+# This file lists hosts on these networks:
+#
+# Network Hosts
+# ---------------------------------------------------------------------
+#for $octet in $two_octets_data
+# ${octet[0]} ${octet[1]}
+#end for
+#
+#for $octet in $three_octets_data
+# ${octet[0]} ${octet[1]}
+#end for
+#
+# Total host interfaces (ip addresses) in this file: $three_octets
+
diff --git a/src/lib/Server/Hostbase/templates/hostsappend.tmpl b/src/lib/Server/Hostbase/templates/hostsappend.tmpl
new file mode 100644
index 000000000..0ebd67aee
--- /dev/null
+++ b/src/lib/Server/Hostbase/templates/hostsappend.tmpl
@@ -0,0 +1,19 @@
+#raw##########################################################################
+#end raw
+# Hosts on subnet: ${subnet[0]}
+# total hosts: ${subnet[1]}
+#for $ip in $ips
+${ip[0]} ${ip[1]} #slurp
+#if $ip[4] and not $ip[3]:
+# $ip[5]
+#else
+#for $name in $ip[2]
+${name.split('.', 1)[0]} #slurp
+#end for
+#for $cname in $ip[3]
+${cname.split('.', 1)[0]} #slurp
+#end for
+# $ip[5]
+#end if
+#end for
+
diff --git a/src/lib/Server/Hostbase/templates/named.tmpl b/src/lib/Server/Hostbase/templates/named.tmpl
new file mode 100644
index 000000000..5b45e2158
--- /dev/null
+++ b/src/lib/Server/Hostbase/templates/named.tmpl
@@ -0,0 +1,67 @@
+// This is the primary configuration file for the BIND DNS server named.
+//
+// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
+// structure of BIND configuration files in Debian, *BEFORE* you customize
+// this configuration file.
+//
+
+include "/etc/bind/named.conf.options";
+
+// prime the server with knowledge of the root servers
+zone "." {
+ type hint;
+ file "/etc/bind/db.root";
+};
+
+// be authoritative for the localhost forward and reverse zones, and for
+// broadcast zones as per RFC 1912
+
+#for $zone in $zones
+zone "${zone[1]}" {
+ type master;
+ file "/etc/bind/${zone[1]}";
+};
+
+#end for
+zone "localhost" {
+ type master;
+ file "/etc/bind/db.local";
+};
+
+zone "127.in-addr.arpa" {
+ type master;
+ file "/etc/bind/db.127";
+};
+
+zone "0.in-addr.arpa" {
+ type master;
+ file "/etc/bind/db.0";
+};
+
+zone "255.in-addr.arpa" {
+ type master;
+ file "/etc/bind/db.255";
+};
+
+#for $reverse in $reverses
+zone "${reverse[0]}.in-addr.arpa" {
+ type master;
+ file "/etc/bind/${reverse[0]}.rev";
+};
+
+#end for
+
+// zone "com" { type delegation-only; };
+// zone "net" { type delegation-only; };
+
+// From the release notes:
+// Because many of our users are uncomfortable receiving undelegated answers
+// from root or top level domains, other than a few for whom that behaviour
+// has been trusted and expected for quite some length of time, we have now
+// introduced the "root-delegations-only" feature which applies delegation-only
+// logic to all top level domains, and to the root domain. An exception list
+// should be specified, including "MUSEUM" and "DE", and any other top level
+// domains from whom undelegated responses are expected and trusted.
+// root-delegation-only exclude { "DE"; "MUSEUM"; };
+
+include "/etc/bind/named.conf.local";
diff --git a/src/lib/Server/Hostbase/templates/reverseappend.tmpl b/src/lib/Server/Hostbase/templates/reverseappend.tmpl
new file mode 100644
index 000000000..e4f667d37
--- /dev/null
+++ b/src/lib/Server/Hostbase/templates/reverseappend.tmpl
@@ -0,0 +1,12 @@
+#if $fileorigin != None
+\$ORIGIN ${fileorigin}.in-addr.arpa.
+#end if
+\$ORIGIN ${inaddr}.in-addr.arpa.
+#for $host in $hosts
+#if $host[2] == 0
+${host[3][3]} PTR ${host[0]}.
+#else
+${host[3][3]} PTR ${host[4][0]}-${host[3][2]}.${host[4][1]}.
+#end if
+#end for
+
diff --git a/src/lib/Server/Hostbase/templates/reversesoa.tmpl b/src/lib/Server/Hostbase/templates/reversesoa.tmpl
new file mode 100644
index 000000000..f68035ae3
--- /dev/null
+++ b/src/lib/Server/Hostbase/templates/reversesoa.tmpl
@@ -0,0 +1,14 @@
+ \$ORIGIN .
+\$TTL $zone[8]
+${inaddr}.in-addr.arpa IN SOA $zone[4]. $zone[3] (
+ $zone[2] ; serial
+ $zone[7] ; refresh interval
+ $zone[6] ; retry interval
+ $zone[5] ; expire interval
+ $zone[8] ; min ttl
+ )
+
+ #for $ns in $nameservers
+ NS $ns[0]
+ #end for
+
diff --git a/src/lib/Server/Hostbase/templates/zone.tmpl b/src/lib/Server/Hostbase/templates/zone.tmpl
new file mode 100644
index 000000000..8d837e771
--- /dev/null
+++ b/src/lib/Server/Hostbase/templates/zone.tmpl
@@ -0,0 +1,22 @@
+\$ORIGIN .
+\$TTL $zone[8]
+${zone[1]} IN SOA $zone[4]. $zone[3] (
+ $zone[2] ; serial
+ $zone[7] ; refresh interval
+ $zone[6] ; retry interval
+ $zone[5] ; expire interval
+ $zone[8] ; min ttl
+ )
+
+ #for $ns in $nameservers
+ NS $ns[0]
+ #end for
+ #for $a in $addresses
+ A $a[0]
+ #end for
+ #for $mx in $mxs
+ MX $mx[0] $mx[1]
+ #end for
+
+\$ORIGIN ${zone[1]}.
+localhost A 127.0.0.1
diff --git a/src/lib/Server/Hostbase/urls.py b/src/lib/Server/Hostbase/urls.py
new file mode 100644
index 000000000..9df252dd9
--- /dev/null
+++ b/src/lib/Server/Hostbase/urls.py
@@ -0,0 +1,19 @@
+from django.conf.urls.defaults import *
+
+urlpatterns = patterns('Hostbase.hostbase.views',
+ # Example:
+ # (r'^djangobase/', include('djangobase.apps.foo.urls.foo')),
+
+ # Uncomment this for admin:
+ (r'^admin/', include('django.contrib.admin.urls')),
+ (r'^hostbase/$', 'search'),
+ (r'^hostbase/(?P<host_id>\d+)/$', 'look'),
+ (r'^hostbase/(?P<host_id>\d+)/edit', 'edit'),
+ (r'^hostbase/(?P<host_id>\d+)/(?P<item>\D+)/(?P<item_id>\d+)/confirm', 'confirm'),
+ (r'^hostbase/(?P<host_id>\d+)/(?P<item>\D+)/(?P<item_id>\d+)/(?P<name_id>\d+)/confirm', 'confirm'),
+ (r'^hostbase/(?P<host_id>\d+)/dns/edit', 'dnsedit'),
+ (r'^hostbase/(?P<host_id>\d+)/dns', 'dns'),
+ (r'^hostbase/new', 'new'),
+ (r'^hostbase/hostinfo', 'hostinfo'),
+ (r'^hostbase/zones', 'zones'),
+)
diff --git a/src/lib/Server/Hostbase/urls.pyc b/src/lib/Server/Hostbase/urls.pyc
new file mode 100644
index 000000000..1cef5fd61
--- /dev/null
+++ b/src/lib/Server/Hostbase/urls.pyc
Binary files differ
diff --git a/src/lib/Server/Hostbase/urls.pyo b/src/lib/Server/Hostbase/urls.pyo
new file mode 100644
index 000000000..0275910fc
--- /dev/null
+++ b/src/lib/Server/Hostbase/urls.pyo
Binary files differ
diff --git a/src/lib/Server/Hostbase/urls.py~ b/src/lib/Server/Hostbase/urls.py~
new file mode 100644
index 000000000..71eaec009
--- /dev/null
+++ b/src/lib/Server/Hostbase/urls.py~
@@ -0,0 +1,19 @@
+from django.conf.urls.defaults import *
+
+urlpatterns = patterns('Hostbase.hostbase.views',
+ # Example:
+ # (r'^djangobase/', include('djangobase.apps.foo.urls.foo')),
+
+ # Uncomment this for admin:
+# (r'^admin/', include('django.contrib.admin.urls')),
+ (r'^hostbase/$', 'search'),
+ (r'^hostbase/(?P<host_id>\d+)/$', 'look'),
+ (r'^hostbase/(?P<host_id>\d+)/edit', 'edit'),
+ (r'^hostbase/(?P<host_id>\d+)/(?P<item>\D+)/(?P<item_id>\d+)/confirm', 'confirm'),
+ (r'^hostbase/(?P<host_id>\d+)/(?P<item>\D+)/(?P<item_id>\d+)/(?P<name_id>\d+)/confirm', 'confirm'),
+ (r'^hostbase/(?P<host_id>\d+)/dns/edit', 'dnsedit'),
+ (r'^hostbase/(?P<host_id>\d+)/dns', 'dns'),
+ (r'^hostbase/new', 'new'),
+ (r'^hostbase/hostinfo', 'hostinfo'),
+ (r'^hostbase/zones', 'zones'),
+)