From 581d39c436ca9c4b3b9a5b578b4bf21086da725c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?B=C3=A5rd=20Schjander=20Flugon?= <bflugon@gmail.com>
Date: Thu, 27 Jul 2017 13:44:30 +0200
Subject: [PATCH 1/3] Added option for showing origin in machinetracker

Added a checkbox for displaying which router the data originated from.
---
 python/nav/web/machinetracker/forms.py   |  3 +++
 python/nav/web/machinetracker/views.py   |  3 +++
 templates/machinetracker/ip_search.html  | 12 ++++++++++--
 templates/machinetracker/ip_tracker.html |  6 ++++++
 4 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/python/nav/web/machinetracker/forms.py b/python/nav/web/machinetracker/forms.py
index 3903d2eee7..0649cf56f4 100644
--- a/python/nav/web/machinetracker/forms.py
+++ b/python/nav/web/machinetracker/forms.py
@@ -61,6 +61,9 @@ class IpTrackerForm(MachineTrackerForm):
     netbios = forms.BooleanField(required=False, initial=False,
                                  help_text="Show netbios name (if any)")
 
+    origin = forms.BooleanField(required=False, initial=False,
+                                help_text="Show which router the data is retrieved from")
+
     def clean_ip_range(self):
         """Clean the ip_range field"""
         data = self.cleaned_data['ip_range']
diff --git a/python/nav/web/machinetracker/views.py b/python/nav/web/machinetracker/views.py
index c8e7db87ab..7144835195 100644
--- a/python/nav/web/machinetracker/views.py
+++ b/python/nav/web/machinetracker/views.py
@@ -208,11 +208,14 @@ def find_colspan(view, form):
     colspan = defaults[view]
     netbios = form.data.get('netbios', False)
     dns = form.data.get('dns', False)
+    origin = form.data.get('origin', False)
 
     if netbios:
         colspan += 1
     if dns:
         colspan += 1
+    if origin:
+        colspan += 1
     return colspan
 
 
diff --git a/templates/machinetracker/ip_search.html b/templates/machinetracker/ip_search.html
index d708ae9f1f..23bbd5bcdd 100644
--- a/templates/machinetracker/ip_search.html
+++ b/templates/machinetracker/ip_search.html
@@ -76,7 +76,7 @@
             <legend>Columns</legend>
             <div class="row machinetracker-filter">
 
-              <div class="small-6 column">
+              <div class="small-4 column">
                 <label for="{{ form.netbios.auto_id }}"
                        title="{{ form.netbios.help_text }}">
                   {{ form.netbios }}
@@ -84,13 +84,21 @@
                 </label>
               </div>
 
-              <div class="small-6 column">
+              <div class="small-4 column">
                 <label for="{{ form.dns.auto_id }}" title="{{ form.dns.help_text }}">
                   {{ form.dns }}
                   {{ form.dns.label }}
                 </label>
               </div>
 
+              <div class="small-4 column">
+                <label for="{{ form.origin.auto_id }}"
+                       title="{{ form.origin.help_text }}">
+                  {{ form.origin }}
+                  {{ form.origin.label }}
+                </label>
+              </div>
+
             </div>
 
           </fieldset>
diff --git a/templates/machinetracker/ip_tracker.html b/templates/machinetracker/ip_tracker.html
index dbe037d296..e898de945e 100644
--- a/templates/machinetracker/ip_tracker.html
+++ b/templates/machinetracker/ip_tracker.html
@@ -24,6 +24,9 @@
             <th>MAC</th>
             <th>Start time</th>
             <th>End time</th>
+            {% if form_data.origin %}
+            <th>Router</th>
+            {% endif %}
         </tr>
     </thead>
 
@@ -64,6 +67,9 @@
                     {{ row.end_time|date:"Y-m-d H:i:s" }}
                 {% endif %}
             </td>
+            {% if form_data.origin %}
+            <td>{{row.netbox}}</td>
+            {% endif %}
         </tr>
         {% endfor %}
     {% endfor %}

From 40af5f41f097e87c3713464ecf6f0fca0a0998cd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?B=C3=A5rd=20Schjander=20Flugon?= <bflugon@gmail.com>
Date: Fri, 28 Jul 2017 09:29:23 +0200
Subject: [PATCH 2/3] Changed which column to display

Changed from sisplaying row.netbox to row.sysname, because the latter will still be available even if the netbox is deleted.
---
 templates/machinetracker/ip_tracker.html | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/templates/machinetracker/ip_tracker.html b/templates/machinetracker/ip_tracker.html
index e898de945e..a96307119b 100644
--- a/templates/machinetracker/ip_tracker.html
+++ b/templates/machinetracker/ip_tracker.html
@@ -68,7 +68,7 @@
                 {% endif %}
             </td>
             {% if form_data.origin %}
-            <td>{{row.netbox}}</td>
+            <td>{{row.sysname}}</td>
             {% endif %}
         </tr>
         {% endfor %}

From d50304312687614d000eb942f57f8b8da3d74619 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?B=C3=A5rd=20Schjander=20Flugon?= <bflugon@gmail.com>
Date: Mon, 7 Aug 2017 13:26:28 +0200
Subject: [PATCH 3/3] Changed the different wording to be the same

---
 python/nav/web/machinetracker/forms.py   | 2 +-
 python/nav/web/machinetracker/views.py   | 4 ++--
 templates/machinetracker/ip_search.html  | 8 ++++----
 templates/machinetracker/ip_tracker.html | 6 +++---
 4 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/python/nav/web/machinetracker/forms.py b/python/nav/web/machinetracker/forms.py
index 0649cf56f4..3cf0539468 100644
--- a/python/nav/web/machinetracker/forms.py
+++ b/python/nav/web/machinetracker/forms.py
@@ -61,7 +61,7 @@ class IpTrackerForm(MachineTrackerForm):
     netbios = forms.BooleanField(required=False, initial=False,
                                  help_text="Show netbios name (if any)")
 
-    origin = forms.BooleanField(required=False, initial=False,
+    source = forms.BooleanField(required=False, initial=False,
                                 help_text="Show which router the data is retrieved from")
 
     def clean_ip_range(self):
diff --git a/python/nav/web/machinetracker/views.py b/python/nav/web/machinetracker/views.py
index 7144835195..226e491f0b 100644
--- a/python/nav/web/machinetracker/views.py
+++ b/python/nav/web/machinetracker/views.py
@@ -208,13 +208,13 @@ def find_colspan(view, form):
     colspan = defaults[view]
     netbios = form.data.get('netbios', False)
     dns = form.data.get('dns', False)
-    origin = form.data.get('origin', False)
+    source = form.data.get('source', False)
 
     if netbios:
         colspan += 1
     if dns:
         colspan += 1
-    if origin:
+    if source:
         colspan += 1
     return colspan
 
diff --git a/templates/machinetracker/ip_search.html b/templates/machinetracker/ip_search.html
index 23bbd5bcdd..0467b6923f 100644
--- a/templates/machinetracker/ip_search.html
+++ b/templates/machinetracker/ip_search.html
@@ -92,10 +92,10 @@
               </div>
 
               <div class="small-4 column">
-                <label for="{{ form.origin.auto_id }}"
-                       title="{{ form.origin.help_text }}">
-                  {{ form.origin }}
-                  {{ form.origin.label }}
+                <label for="{{ form.source.auto_id }}"
+                       title="{{ form.source.help_text }}">
+                  {{ form.source }}
+                  {{ form.source.label }}
                 </label>
               </div>
 
diff --git a/templates/machinetracker/ip_tracker.html b/templates/machinetracker/ip_tracker.html
index a96307119b..3c98f8ff3c 100644
--- a/templates/machinetracker/ip_tracker.html
+++ b/templates/machinetracker/ip_tracker.html
@@ -24,8 +24,8 @@
             <th>MAC</th>
             <th>Start time</th>
             <th>End time</th>
-            {% if form_data.origin %}
-            <th>Router</th>
+            {% if form_data.source %}
+            <th>Source</th>
             {% endif %}
         </tr>
     </thead>
@@ -67,7 +67,7 @@
                     {{ row.end_time|date:"Y-m-d H:i:s" }}
                 {% endif %}
             </td>
-            {% if form_data.origin %}
+            {% if form_data.source %}
             <td>{{row.sysname}}</td>
             {% endif %}
         </tr>