Skip to content

Commit

Permalink
moved arp tracker to templatetag
Browse files Browse the repository at this point in the history
  • Loading branch information
jsayles committed Mar 24, 2020
1 parent 00262e9 commit 842134b
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 9 deletions.
3 changes: 1 addition & 2 deletions arpwatch/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@
path('device/<int:year>/<int:month>/<day>/', views.device_logs_by_day, name='device_logs'),
path('user/', views.logins_today, name='user'),
path('user/<int:year>/<int:month>/<int:day>/', views.logins_by_day, name='user_logs'),

path('track/<username>/', views.tracker, name='tracker'),
path('track/<username>', views.tracker, name='tracker'),
]


Expand Down
10 changes: 3 additions & 7 deletions arpwatch/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,16 +95,12 @@ def logins_by_day(request, year, month, day):
return render(request, 'arpwatch/user_logins.html', context)


@login_required
def tracker(request, username):
if request.user.username != username:
return Http404()

user = get_object_or_404(User, username=username)
logtime = localtime(now())
ip = network.get_addr(request)
# if ip:
# ip_log = UserRemoteAddr.objects.create(logintime=logtime, user=user, ip_address=ip)
prefix = settings.ARP_IP_PFX
if ip and ip.startwith(settings.ARP_IP_PFX):
arp.register_user_ip(user, ip)
print("register_user_ip: Address for %s = %s @ %s" % (user, ip, logtime))
return HttpResponse()

Expand Down
4 changes: 4 additions & 0 deletions member/templates/member/core/home.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{% extends 'member/base.html' %}
{% load settings_value %}
{% load arp_tracker %}
{% load static %}

{% block style %}
Expand Down Expand Up @@ -82,6 +83,9 @@ <h3 style="text-align:center;">{{ title }}</h3>

</div>

<!-- Arp Network Tracker -->
{% arp_tracker user %}

{% endblock %}
</div>
</div>
Expand Down
2 changes: 2 additions & 0 deletions nadine/settings/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -227,10 +227,12 @@
ARP_IMPORT_LOG = ARP_ROOT + 'import.log'
ARP_IMPORT_LOCK = ARP_ROOT + 'importing.lock'
ARP_IP_PFX = '172.16.5.'

# Arp SNMP Settings
#ARPWATCH_SNMP_SERVER = '192.168.1.1'
#ARPWATCH_SNMP_COMMUNITY = 'yourcommunitystring'
#ARPWATCH_NETWORK_PREFIX = '192.168.'
ARP_TRACKING_URL = ""

# JSignature Settings
JSIGNATURE_WIDTH = 500
Expand Down
19 changes: 19 additions & 0 deletions nadine/templatetags/arp_tracker.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from django import template
from django.conf import settings
from django.utils.html import mark_safe, format_html

register = template.Library()

# settings value
@register.simple_tag
def arp_tracker(user):
print("hello world")
url = getattr(settings, 'ARP_TRACKING_URL', "")
if user and url:
if not url.endswith('/'):
url += '/'
url += user.username
return format_html("<img src='{}'>",
mark_safe(url),
)
return ""

0 comments on commit 842134b

Please sign in to comment.