Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/HtmlPages/static/frames.js
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/HtmlPages/static/frames.js	(revision 11070)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/HtmlPages/static/frames.js	(revision 11073)
@@ -69,6 +69,11 @@
 
 function loadNode(ip) {
-	$("#directory").load("/~webdemo/django/WebDash/newIP/192.168.1."+ip+"/");
-	//$("#directory").load("/WebDash/127.0.0."+ip+"/");
+	//$("#directory").load("/~webdemo/django/WebDash/newIP/192.168.1."+ip+"/");
+	$("#directory").load("/WebDash/127.0.0."+ip+"/");
+	nodeBooter = window.open("/connect/","Run Nodebooter", "status=1,height=300,width=400");
+}
+
+function reloadNode(link){
+	$("#workspace").load(link);
 }
 
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/settingsWeb.py
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/settingsWeb.py	(revision 11070)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/settingsWeb.py	(revision 11073)
@@ -53,5 +53,5 @@
 # Base URL for website to reference anchors
 # Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
-MEDIA_URL = 'http://cornet.wireless.vt.edu/~webdemo/django/'
+MEDIA_URL = 'http://cornet.wireless.vt.edu/~webdemo/django'
 URL_PREFIX = '~webdemo/django/'
 
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/settings.py
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/settings.py	(revision 11070)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/settings.py	(revision 11073)
@@ -54,5 +54,5 @@
 # trailing slash.
 # Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
-MEDIA_URL = 'http://localhost:8000/'
+MEDIA_URL = 'http://localhost:8000'
 
 # Absolute path to the directory static files should be collected to.
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/static/frames.js
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/static/frames.js	(revision 11069)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/static/frames.js	(revision 11073)
@@ -1,2 +1,5 @@
+
+//Loads pages into frames
+
 $(function setBackgroundColor(){
   $('ul.navigation li').click(function(){
@@ -66,6 +69,12 @@
 
 function loadNode(ip) {
-	$("#directory").load("/~webdemo/django/WebDash/newIP/192.168.1."+ip+"/");
-	//$("#directory").load("/WebDash/127.0.0."+ip+"/");
+	//$("#directory").load("/~webdemo/django/WebDash/newIP/192.168.1."+ip+"/");
+	$("#directory").load("/WebDash/127.0.0."+ip+"/");
+	nodeBooter = window.open("/connect/","Run Nodebooter", "status=1,height=300,width=300");
+	nodeBooter.moveTo(100,100);
+}
+
+function reloadNode(link){
+	$("#workspace").load(link);
 }
 
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/runningNodebooter.html
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/runningNodebooter.html	(revision 11073)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/runningNodebooter.html	(revision 11073)
@@ -0,0 +1,10 @@
+<p>The naming service is: 
+{% if runningNodebooter %}
+	<span style="color: green;">on</span>
+{% endif %}
+{% if not runningNodebooter %}
+	<span style="color: red;">off</span>
+{% endif %}
+</p>
+<a href='{{MEDIA_URL}}/startNodeBooter/{{ip}}/{{port}}/{{user}}/{{password}}'>Start Nodebooter</a>
+<a href='{{MEDIA_URL}}/stopNodeBooter/{{ip}}/{{port}}/{{user}}/{{password}}'>Stop Nodebooter</a>
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/runNodeBooter.html
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/runNodeBooter.html	(revision 11071)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/runNodeBooter.html	(revision 11073)
@@ -1,3 +1,4 @@
-<p>Check Running Nodebooter</p>
+<p>Run Nodebooter</p>
+<!--
 <p>user:  {{user}}</p>
 <p>password:  {{password}}</p>
@@ -8,11 +9,7 @@
 <p>Stdout:  {{stdout.readlines}}</p>
 <p>Stderr:  {{stderr}}</p>
-<p>processes: {{processes}}</p>
+-->
 <p>runningNodebooter: {{runningNodebooter}}</p>
 
-{% if not runningNodebooter %}
-	<a href='http://cornet.wireless.vt.edu/~webdemo/django/startNodeBooter/{{ip}}/{{port}}/{{user}}/{{password}}'>Start Nodebooter</a>
-{% endif %}
-{% if runningNodebooter %}
-	<a href='http://cornet.wireless.vt.edu/~webdemo/django/stopNodeBooter/{{ip}}/{{port}}/{{user}}/{{password}}'>Stop Nodebooter</a>
-{% endif %}
+<a href='{{MEDIA_URL}}/startNodeBooter/{{ip}}/{{port}}/{{user}}/{{password}}'>Start Nodebooter</a>
+<a href='{{MEDIA_URL}}/stopNodeBooter/{{ip}}/{{port}}/{{user}}/{{password}}'>Stop Nodebooter</a>
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/connect.html
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/connect.html	(revision 11071)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/templates/DomainMan/connect.html	(revision 11073)
@@ -1,5 +1,5 @@
 <html>
 <body>
-<form action="/connect_to_node/" method="post">{% csrf_token %}
+<form action="{{MEDIA_URL}}/connect_to_node/" method="post">{% csrf_token %}
 	<p>floor: <input type="text" name="floor"/></p>
 	<p>number: <input type="text" name="number"/></p>
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/DomainMan/views.py
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/DomainMan/views.py	(revision 11071)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/DomainMan/views.py	(revision 11073)
@@ -1,5 +1,5 @@
 
 from django.shortcuts import render_to_response
-from django.http import HttpResponse
+from django.http import HttpResponse, Http404
 from django.template import RequestContext
 from paramiko import SSHClient, AutoAddPolicy
@@ -24,5 +24,8 @@
     client = SSHClient()
     client.set_missing_host_key_policy(AutoAddPolicy())
-    client.connect(ip, int(port), user, password)
+    try:
+        client.connect(ip, int(port), user, password)
+    except:
+        raise Http404(u'Incorrect username and password combination')
     return client
 
@@ -53,6 +56,18 @@
 def startNodebooter(request, ip, port, user, password):
     client = connect(ip, port, user, password)
-    stdin, stdout, stderr = client.exec_command('cd /sdr; nodeBooter -D -d dev/nodes/default_GPP_node/DeviceManager.dcd.xml')
-    return render_to_response('DomainMan/console.html', locals(), context_instance=RequestContext(request))
+    #stdin, stdout, stderr = client.exec_command('cd /sdr; nodeBooter -D -d dev/nodes/default_GPP_node/DeviceManager.dcd.xml')
+    client.exec_command('cd /sdr; nodeBooter -D -d dev/nodes/default_GPP_node/DeviceManager.dcd.xml')
+    runningNodebooter = nodeBooter_running(client)
+    return render_to_response('DomainMan/runningNodebooter.html', locals(), context_instance=RequestContext(request))
+
+"""Start nodebooter with premade client from client list
+"""
+#def startNodebooter(request, floor, number):
+#    clientID = str(postFloor).__add__("-").__add__(str(postNum))
+#    client = SSHClientList.getClient(clientID)
+#    #stdin, stdout, stderr = client.exec_command('cd /sdr; nodeBooter -D -d dev/nodes/default_GPP_node/DeviceManager.dcd.xml')
+#    client.exec_command('cd /sdr; nodeBooter -D -d dev/nodes/default_GPP_node/DeviceManager.dcd.xml')
+#    runningNodebooter = nodeBooter_running(client)
+#    return render_to_response('DomainMan/runningNodebooter.html', locals(), context_instance=RequestContext(request))
 
 '''
@@ -66,5 +81,6 @@
     client = connect(ip, port, user, password)
     stdin, stdout, stderr = client.exec_command('killall nodeBooter')
-    return render_to_response('DomainMan/console.html', locals(), context_instance=RequestContext(request))
+    runningNodebooter = nodeBooter_running(client)
+    return render_to_response('DomainMan/runningNodebooter.html', locals(), context_instance=RequestContext(request))
 
 '''
@@ -96,14 +112,15 @@
         
         thisNode = Node(postFloor, postNum)
-        #ip = thisNode.ip
-        ip = "128.173.221.40"
+        ip = thisNode.ip
         port = thisNode.port
-        
+        #thisNode.save()
+        #thisNode.setClient(user, password)
+        #node = Node.objects.get(floor=4, num=1)
         client = connect(ip, port, user, password)
-        stdin, stdout, stderr = client.exec_command('ls')
+        #stdin, stdout, stderr = client.exec_command('ls')
         runningNodebooter = nodeBooter_running(client)
     else:
         message = 'Missing ssh connection parameters'
-    return render_to_response('DomainMan/runNodeBooter.html', locals(), context_instance=RequestContext(request))
+    return render_to_response('DomainMan/runningNodebooter.html', locals(), context_instance=RequestContext(request))
 
 """Returns connection form
Index: /ossiedev/branches/jsnyder/trunk/tools/cornetApps/DomainMan/models.py
===================================================================
--- /ossiedev/branches/jsnyder/trunk/tools/cornetApps/DomainMan/models.py	(revision 11071)
+++ /ossiedev/branches/jsnyder/trunk/tools/cornetApps/DomainMan/models.py	(revision 11073)
@@ -1,3 +1,5 @@
 from django.db import models
+from os import environ
+from paramiko import SSHClient, AutoAddPolicy
 """Models for the DomainMan application
 -Node makes it easy to extract the ip and port fields
@@ -27,13 +29,22 @@
         return unicode("node_id: ".__add__(self.floor).__add__("-").__add__(self.num))
     
+    def setClient(self, user, password):
+        c = SSHClient()
+        c.set_missing_host_key_policy(AutoAddPolicy())
+        self.client = c.connect(self.ip, self.port, user, password)
+    
     """Calculates the internal ip address of the node based on the ICTAS floor and number
     
     @param floor: The floor of ICTAS where the node is located
     @param num:  The number of the node on the particular floor
-    @return: The port number used in the CORNET server to access the node; exception if params are not in the range
+    @return: The ip address used in the CORNET server to access the node; 
+            Through an external network, returns address to cornet server;
+            exception if params are not in the range
     """
     def getIP(self, floor, num):
         if floor > 0 and floor < 5:
             if num > 0 and num < 13:
+                if environ['DJANGO_SETTINGS_MODULE'] == 'cornetApps.settings':
+                    return "128.173.221.40"
                 ip_num=floor*12-2+num
                 return "192.168.1.".__add__(str(ip_num))
@@ -52,5 +63,7 @@
         if floor > 0 and floor < 5:
             if num > 0 and num < 13:
-                port_num=(floor-1)*12+num
+                if environ['DJANGO_SETTINGS_MODULE'] == 'cornetApps.settingsWeb':
+                    return 22
+                port_num = (floor - 1) * 12 + num
                 return 7000+port_num
             else:
@@ -59,13 +72,13 @@
             raise Exception("Floor input must be greater than 0 and less than 5")
         
-class SSHClientList():
-    clientList = {};
-    
-    def addClient(self, id, client):
-        clientList = {id: client};
-    
-    def getClient(self, id):
-        if clientList.__contains__(id):
-            return clientList.get(id)
-        else:
-            raise Exception("no".__add__(id).__add__("found"))
+"""Connects to a server through a given ip, port and associated username and password 
+Returns the SSHClient connected to the server
+"""
+def connect(ip, port, user, password):
+    client = SSHClient()
+    client.set_missing_host_key_policy(AutoAddPolicy())
+    try:
+        client.connect(ip, int(port), user, password)
+    except:
+        raise Http404(u'Incorrect login information')
+    return client
