From 60108df287818a565e40263f159db5375e9e831d Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Tue, 22 Mar 2016 20:10:36 -0500 Subject: [PATCH 01/23] inital commit --- services/managers/srp_manager.py | 46 ++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 services/managers/srp_manager.py diff --git a/services/managers/srp_manager.py b/services/managers/srp_manager.py new file mode 100644 index 00000000..d7c30ff4 --- /dev/null +++ b/services/managers/srp_manager.py @@ -0,0 +1,46 @@ +from django.conf import settings + + +import json +import urllib2 +import logging + + +logger = logging.getLogger(__name__) + +class srpManager(): + @staticmethod + def get_kill_id (killboard_link): + str = (killboard_link) + set = '0123456789' + kill_id = ''.join([c for c in str if c in set]) + + @staticmethod + def get_kill_data (kill_id): + url = ("https://www.zkillboard.com/api/killID/%s" % kill_id) + request = urllib2.Request(url) + request.add_header('User-Agent',"%s Alliance Auth" % settings.DOMAIN) + request.add_header('Content-Type','application/json') + response = urllib2.urlopen(request) + result = json.load(response)[0] + if result: + ship_type = result['victim']['shipTypeID'] + logger.debug("Ship type for kill ID %s is determined to be %s" % (kill_id, ship_type)) + ship_value = result['zkb']['totalValue'] + logger.debug("total loss value for kill id %s is %s" %(kill_id, ship_value)) + else: + raise ValueError("Invalid Kill ID") + + @staticmethod + def get_ship_name (ship_type): + url = ("https://jetbalsa.com/api/json.php/invTypes/%s" % ship_type) + request = urllib2.Request(url) + request.add_header('User-Agent',"%s Alliance Auth" % settings.DOMAIN) + request.add_header('Content-Type','application/json') + response = urllib2.urlopen(request) + result = json.load(response) + if result: + ship_name = result['typeName'] + logger.debug("ship type %s determined to be %s" % (ship_type, ship_name)) + else: + logger.info("ship type %s is invalid please try again" % ship_type) From 1381b993f5522a10a3b90092eb598e8e3eaef365 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Tue, 22 Mar 2016 20:16:38 -0500 Subject: [PATCH 02/23] Update models.py --- srp/models.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/srp/models.py b/srp/models.py index 4400db6b..c1458698 100755 --- a/srp/models.py +++ b/srp/models.py @@ -24,6 +24,7 @@ class SrpUserRequest(models.Model): srp_total_amount = models.BigIntegerField(default=0) character = models.ForeignKey(EveCharacter) srp_fleet_main = models.ForeignKey(SrpFleetMain) + srp_ship_name = models.CharField(max_length=254, default="") def __str__(self): - return self.character.character_name + " - SrpUserRequest" \ No newline at end of file + return self.character.character_name + " - SrpUserRequest" From a419145f7c988194bcbd874e0d39a78d439dfec4 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Tue, 22 Mar 2016 20:36:36 -0500 Subject: [PATCH 03/23] Added Manager --- srp/views.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/srp/views.py b/srp/views.py index 930820f0..6a8d4226 100755 --- a/srp/views.py +++ b/srp/views.py @@ -15,6 +15,7 @@ from form import SrpFleetMainForm from form import SrpFleetUserRequestForm from form import SrpFleetUpdateCostForm from form import SrpFleetMainUpdateForm +from services.managers.srp_manager import srpManager import logging @@ -190,6 +191,10 @@ def srp_request_view(request, fleet_srp): srp_request.additional_info = form.cleaned_data['additional_info'] srp_request.character = character srp_request.srp_fleet_main = srp_fleet_main + srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) + srp_kill_data = srpManager.get_kill_data(srp_kill_link) + srp_ship_name = srpManager.get_ship_name(srp_kill_data) + srp_request.srp_ship_name = srp_ship_name srp_request.save() completed = True From 376bf6042146447dded6b5e331980d08553aef62 Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 00:16:43 -0400 Subject: [PATCH 04/23] Added the option to view shiptypes of killmails --- services/managers/srp_manager.py | 102 +++++++++++++++++-------------- srp/models.py | 4 +- srp/views.py | 3 + 3 files changed, 62 insertions(+), 47 deletions(-) diff --git a/services/managers/srp_manager.py b/services/managers/srp_manager.py index d7c30ff4..c0517268 100644 --- a/services/managers/srp_manager.py +++ b/services/managers/srp_manager.py @@ -1,46 +1,56 @@ -from django.conf import settings - - -import json -import urllib2 -import logging - - -logger = logging.getLogger(__name__) - -class srpManager(): - @staticmethod - def get_kill_id (killboard_link): - str = (killboard_link) - set = '0123456789' - kill_id = ''.join([c for c in str if c in set]) - - @staticmethod - def get_kill_data (kill_id): - url = ("https://www.zkillboard.com/api/killID/%s" % kill_id) - request = urllib2.Request(url) - request.add_header('User-Agent',"%s Alliance Auth" % settings.DOMAIN) - request.add_header('Content-Type','application/json') - response = urllib2.urlopen(request) - result = json.load(response)[0] - if result: - ship_type = result['victim']['shipTypeID'] - logger.debug("Ship type for kill ID %s is determined to be %s" % (kill_id, ship_type)) - ship_value = result['zkb']['totalValue'] - logger.debug("total loss value for kill id %s is %s" %(kill_id, ship_value)) - else: - raise ValueError("Invalid Kill ID") - - @staticmethod - def get_ship_name (ship_type): - url = ("https://jetbalsa.com/api/json.php/invTypes/%s" % ship_type) - request = urllib2.Request(url) - request.add_header('User-Agent',"%s Alliance Auth" % settings.DOMAIN) - request.add_header('Content-Type','application/json') - response = urllib2.urlopen(request) - result = json.load(response) - if result: - ship_name = result['typeName'] - logger.debug("ship type %s determined to be %s" % (ship_type, ship_name)) - else: - logger.info("ship type %s is invalid please try again" % ship_type) +from django.conf import settings + + +import json +import urllib2 +import logging + + +logger = logging.getLogger(__name__) + +class srpManager(): + @staticmethod + def get_kill_id (killboard_link): + str = (killboard_link) + set = '0123456789' + kill_id = ''.join([c for c in str if c in set]) + + @staticmethod + def get_kill_data (kill_id): + url = ("https://www.zkillboard.com/api/killID/%s" % kill_id) + request = urllib2.Request(url) + request.add_header('User-Agent',"%s Alliance Auth" % settings.DOMAIN) + request.add_header('Content-Type','application/json') + response = urllib2.urlopen(request) + result = json.load(response)[0] + if result: + ship_type = result['victim']['shipTypeID'] + logger.debug("Ship type for kill ID %s is determined to be %s" % (kill_id, ship_type)) + ship_value = result['zkb']['totalValue'] + logger.debug("total loss value for kill id %s is %s" %(kill_id, ship_value)) + else: + raise ValueError("Invalid Kill ID") + + @staticmethod + def get_ship_name (ship_type): + url = ("https://jetbalsa.com/api/json.php/invTypes/%s" % ship_type) + request = urllib2.Request(url) + request.add_header('User-Agent',"%s Alliance Auth" % settings.DOMAIN) + request.add_header('Content-Type','application/json') + response = urllib2.urlopen(request) + result = json.load(response) + if result: + ship_name = result['typeName'] + logger.debug("ship type %s determined to be %s" % (ship_type, ship_name)) + else: + logger.info("ship type %s is invalid please try again" % ship_type) + + + + + + + + + + diff --git a/srp/models.py b/srp/models.py index c1458698..0c3d75ec 100755 --- a/srp/models.py +++ b/srp/models.py @@ -24,7 +24,9 @@ class SrpUserRequest(models.Model): srp_total_amount = models.BigIntegerField(default=0) character = models.ForeignKey(EveCharacter) srp_fleet_main = models.ForeignKey(SrpFleetMain) - srp_ship_name = models.CharField(max_length=254, default="") + + srp_ship_name = models.CharField(max_length=254, default="") + def __str__(self): return self.character.character_name + " - SrpUserRequest" diff --git a/srp/views.py b/srp/views.py index 6a8d4226..2e98f91a 100755 --- a/srp/views.py +++ b/srp/views.py @@ -186,6 +186,7 @@ def srp_request_view(request, fleet_srp): character = EveManager.get_character_by_id(authinfo.main_char_id) srp_fleet_main = SrpFleetMain.objects.get(fleet_srp_code=fleet_srp) + srp_request = SrpUserRequest() srp_request.killboard_link = form.cleaned_data['killboard_link'] srp_request.additional_info = form.cleaned_data['additional_info'] @@ -200,6 +201,8 @@ def srp_request_view(request, fleet_srp): completed = True logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) + + srp_request.append() else: logger.debug("Returning blank SrpFleetUserRequestForm") form = SrpFleetUserRequestForm() From faf5c473d8fe97c43f95e3f0c42539fda2ed20f3 Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 01:40:46 -0400 Subject: [PATCH 05/23] Added Automatic Ship and ISK Fields --- services/managers/srp_manager.py | 3 +++ srp/models.py | 2 +- srp/views.py | 6 +++--- stock/templates/registered/srpfleetdata.html | 4 ++++ 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/services/managers/srp_manager.py b/services/managers/srp_manager.py index c0517268..874bd0da 100644 --- a/services/managers/srp_manager.py +++ b/services/managers/srp_manager.py @@ -14,6 +14,7 @@ class srpManager(): str = (killboard_link) set = '0123456789' kill_id = ''.join([c for c in str if c in set]) + return kill_id @staticmethod def get_kill_data (kill_id): @@ -28,6 +29,7 @@ class srpManager(): logger.debug("Ship type for kill ID %s is determined to be %s" % (kill_id, ship_type)) ship_value = result['zkb']['totalValue'] logger.debug("total loss value for kill id %s is %s" %(kill_id, ship_value)) + return (ship_type, ship_value) else: raise ValueError("Invalid Kill ID") @@ -42,6 +44,7 @@ class srpManager(): if result: ship_name = result['typeName'] logger.debug("ship type %s determined to be %s" % (ship_type, ship_name)) + return ship_name else: logger.info("ship type %s is invalid please try again" % ship_type) diff --git a/srp/models.py b/srp/models.py index 0c3d75ec..58e096e6 100755 --- a/srp/models.py +++ b/srp/models.py @@ -24,7 +24,7 @@ class SrpUserRequest(models.Model): srp_total_amount = models.BigIntegerField(default=0) character = models.ForeignKey(EveCharacter) srp_fleet_main = models.ForeignKey(SrpFleetMain) - + kb_total_loss = models.BigIntegerField(default=0) srp_ship_name = models.CharField(max_length=254, default="") diff --git a/srp/views.py b/srp/views.py index 2e98f91a..1f9d8684 100755 --- a/srp/views.py +++ b/srp/views.py @@ -193,16 +193,16 @@ def srp_request_view(request, fleet_srp): srp_request.character = character srp_request.srp_fleet_main = srp_fleet_main srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) - srp_kill_data = srpManager.get_kill_data(srp_kill_link) + (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) srp_ship_name = srpManager.get_ship_name(srp_kill_data) srp_request.srp_ship_name = srp_ship_name + kb_total_loss = ship_value + srp_request.kb_total_loss = kb_total_loss srp_request.save() completed = True logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) - - srp_request.append() else: logger.debug("Returning blank SrpFleetUserRequestForm") form = SrpFleetUserRequestForm() diff --git a/stock/templates/registered/srpfleetdata.html b/stock/templates/registered/srpfleetdata.html index 596bc457..395fce17 100755 --- a/stock/templates/registered/srpfleetdata.html +++ b/stock/templates/registered/srpfleetdata.html @@ -37,6 +37,8 @@ Pilot Name Killboard Link Additional Info + Ship Type + Killboard Loss Amt SRP ISK Cost Status {% if perms.auth.srp_management %} @@ -55,6 +57,8 @@ target="_blank">{{ srpfleetrequest.killboard_link }} {{ srpfleetrequest.additional_info }} + {{ srpfleetrequest.srp_ship_name }} + ISK: {{ srpfleetrequest.kb_total_loss | intcomma }} ISK: {{ srpfleetrequest.srp_total_amount | intcomma }} {% if srpfleetrequest.srp_status == "Approved" %} From 3c758749650c01bfc2a633d1fd7be04093db1b00 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 00:57:28 -0500 Subject: [PATCH 06/23] Update form.py --- srp/form.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srp/form.py b/srp/form.py index 7f9225e5..52463abe 100755 --- a/srp/form.py +++ b/srp/form.py @@ -8,7 +8,7 @@ class SrpFleetMainForm(forms.Form): class SrpFleetUserRequestForm(forms.Form): - killboard_link = forms.CharField(required=True, label="Killboard Link") + killboard_link = forms.CharField(required=True, label="ZKillboard Link") additional_info = forms.CharField(required=False, label="Additional Info") @@ -17,4 +17,4 @@ class SrpFleetUpdateCostForm(forms.Form): class SrpFleetMainUpdateForm(forms.Form): - fleet_aar_link = forms.CharField(required=True, label="After Action Report Link") \ No newline at end of file + fleet_aar_link = forms.CharField(required=True, label="After Action Report Link") From 0223836a903463046ca93f1bf0250531abde6b4e Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 02:18:46 -0400 Subject: [PATCH 07/23] Added Error handling to enforce using of zkillboard --- srp/views.py | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/srp/views.py b/srp/views.py index 1f9d8684..57818f34 100755 --- a/srp/views.py +++ b/srp/views.py @@ -192,16 +192,23 @@ def srp_request_view(request, fleet_srp): srp_request.additional_info = form.cleaned_data['additional_info'] srp_request.character = character srp_request.srp_fleet_main = srp_fleet_main - srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) - (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) - srp_ship_name = srpManager.get_ship_name(srp_kill_data) - srp_request.srp_ship_name = srp_ship_name - kb_total_loss = ship_value - srp_request.kb_total_loss = kb_total_loss - srp_request.save() - completed = True - logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) + try: + srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) + (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) + srp_ship_name = srpManager.get_ship_name(srp_kill_data) + srp_request.srp_ship_name = srp_ship_name + kb_total_loss = ship_value + srp_request.kb_total_loss = kb_total_loss + srp_request.save() + completed = True + logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) + except: + logger.info("Invalid Killmail Link") + return HttpResponseRedirect("/srp") + + + else: logger.debug("Returning blank SrpFleetUserRequestForm") From 183fd129cc8f9696b19bb87794cfd21b36b14b54 Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 02:26:13 -0400 Subject: [PATCH 08/23] Changed Format to only allow zkillboard links --- srp/views.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/srp/views.py b/srp/views.py index 57818f34..b870647e 100755 --- a/srp/views.py +++ b/srp/views.py @@ -196,16 +196,16 @@ def srp_request_view(request, fleet_srp): try: srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) - srp_ship_name = srpManager.get_ship_name(srp_kill_data) - srp_request.srp_ship_name = srp_ship_name - kb_total_loss = ship_value - srp_request.kb_total_loss = kb_total_loss - srp_request.save() - completed = True - logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) except: logger.info("Invalid Killmail Link") return HttpResponseRedirect("/srp") + srp_ship_name = srpManager.get_ship_name(srp_kill_data) + srp_request.srp_ship_name = srp_ship_name + kb_total_loss = ship_value + srp_request.kb_total_loss = kb_total_loss + srp_request.save() + completed = True + logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) From aee5e8ee093d625ff9b15bed58e8eca13c15819c Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 01:35:00 -0500 Subject: [PATCH 09/23] Update views.py --- srp/views.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/srp/views.py b/srp/views.py index b870647e..1118e559 100755 --- a/srp/views.py +++ b/srp/views.py @@ -207,9 +207,6 @@ def srp_request_view(request, fleet_srp): completed = True logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) - - - else: logger.debug("Returning blank SrpFleetUserRequestForm") form = SrpFleetUserRequestForm() From 04fcdbea1f89ae414a79ecf2214a09abdcfd9428 Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 03:53:48 -0400 Subject: [PATCH 10/23] Added Notifications to SRP --- srp/views.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srp/views.py b/srp/views.py index b870647e..fd545f52 100755 --- a/srp/views.py +++ b/srp/views.py @@ -16,6 +16,7 @@ from form import SrpFleetUserRequestForm from form import SrpFleetUpdateCostForm from form import SrpFleetMainUpdateForm from services.managers.srp_manager import srpManager +from notifications import notify import logging @@ -198,6 +199,7 @@ def srp_request_view(request, fleet_srp): (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) except: logger.info("Invalid Killmail Link") + notify(request.user, "SRP Killmail Link Failed Validation", message="Your SRP Request Killmail link %s is invalid. Make sure your using Zkillboard." % srp_request.killboard_link, level="danger") return HttpResponseRedirect("/srp") srp_ship_name = srpManager.get_ship_name(srp_kill_data) srp_request.srp_ship_name = srp_ship_name From 9560bbb1d012ef461da48dec55193e4c6bd4ae43 Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 03:56:17 -0400 Subject: [PATCH 11/23] Added Notifications to SRP --- srp/views.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/srp/views.py b/srp/views.py index 451661d4..fd545f52 100755 --- a/srp/views.py +++ b/srp/views.py @@ -209,6 +209,9 @@ def srp_request_view(request, fleet_srp): completed = True logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) + + + else: logger.debug("Returning blank SrpFleetUserRequestForm") form = SrpFleetUserRequestForm() From b2c409d88594b921fa47a9e15725d3916a709928 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 02:59:37 -0500 Subject: [PATCH 12/23] Update views.py --- srp/views.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/srp/views.py b/srp/views.py index fd545f52..451661d4 100755 --- a/srp/views.py +++ b/srp/views.py @@ -209,9 +209,6 @@ def srp_request_view(request, fleet_srp): completed = True logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (request.user, srp_fleet_main.fleet_name)) - - - else: logger.debug("Returning blank SrpFleetUserRequestForm") form = SrpFleetUserRequestForm() From 695ae8d7ef7689a6ed91101df4267a9cee5e32fc Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 03:02:19 -0500 Subject: [PATCH 13/23] Updated Debug Code --- srp/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srp/views.py b/srp/views.py index 451661d4..b2f19003 100755 --- a/srp/views.py +++ b/srp/views.py @@ -198,7 +198,7 @@ def srp_request_view(request, fleet_srp): srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) except: - logger.info("Invalid Killmail Link") + logger.info("%s Submitted Invalid Killmail Link %s" % (request.user, srp_request.killboard_link)) notify(request.user, "SRP Killmail Link Failed Validation", message="Your SRP Request Killmail link %s is invalid. Make sure your using Zkillboard." % srp_request.killboard_link, level="danger") return HttpResponseRedirect("/srp") srp_ship_name = srpManager.get_ship_name(srp_kill_data) From 1d09108dbf1c3a78f31ec5a81944b9a8e3c94450 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 13:50:28 -0500 Subject: [PATCH 14/23] Update views.py --- srp/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srp/views.py b/srp/views.py index b2f19003..e8c9d328 100755 --- a/srp/views.py +++ b/srp/views.py @@ -198,7 +198,7 @@ def srp_request_view(request, fleet_srp): srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) except: - logger.info("%s Submitted Invalid Killmail Link %s" % (request.user, srp_request.killboard_link)) + logger.debug("%s Submitted Invalid Killmail Link %s" % (request.user, srp_request.killboard_link)) notify(request.user, "SRP Killmail Link Failed Validation", message="Your SRP Request Killmail link %s is invalid. Make sure your using Zkillboard." % srp_request.killboard_link, level="danger") return HttpResponseRedirect("/srp") srp_ship_name = srpManager.get_ship_name(srp_kill_data) From b914d2f4bbfb11ea74ecb675bafd341ef2c3f4cc Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 17:05:38 -0400 Subject: [PATCH 15/23] Added Form Validation --- srp/form.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/srp/form.py b/srp/form.py index 52463abe..400fbfb2 100755 --- a/srp/form.py +++ b/srp/form.py @@ -1,6 +1,7 @@ from django import forms + class SrpFleetMainForm(forms.Form): fleet_name = forms.CharField(required=True, label="Fleet Name") fleet_time = forms.DateTimeField(required=True, label="Fleet Time") @@ -8,8 +9,19 @@ class SrpFleetMainForm(forms.Form): class SrpFleetUserRequestForm(forms.Form): - killboard_link = forms.CharField(required=True, label="ZKillboard Link") additional_info = forms.CharField(required=False, label="Additional Info") + killboard_link = forms.CharField( + label="Zkillboard Link", + max_length=255, + required=True + + ) + + def clean_killboard_link(self): + data = self.cleaned_data['killboard_link'] + if "zkillboard.com" not in data: + raise forms.ValidationError("Invalid Link. Please use Zkillboard.com") + return data class SrpFleetUpdateCostForm(forms.Form): @@ -17,4 +29,4 @@ class SrpFleetUpdateCostForm(forms.Form): class SrpFleetMainUpdateForm(forms.Form): - fleet_aar_link = forms.CharField(required=True, label="After Action Report Link") + fleet_aar_link = forms.CharField(required=True, label="After Action Report Link") \ No newline at end of file From f92e8a8ae56acb219bb84e39e39f8517d838c593 Mon Sep 17 00:00:00 2001 From: orbitroom Date: Wed, 23 Mar 2016 17:11:46 -0400 Subject: [PATCH 16/23] Corrected grammar in debug code. --- srp/views.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srp/views.py b/srp/views.py index e8c9d328..2c5c2773 100755 --- a/srp/views.py +++ b/srp/views.py @@ -198,8 +198,8 @@ def srp_request_view(request, fleet_srp): srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) except: - logger.debug("%s Submitted Invalid Killmail Link %s" % (request.user, srp_request.killboard_link)) - notify(request.user, "SRP Killmail Link Failed Validation", message="Your SRP Request Killmail link %s is invalid. Make sure your using Zkillboard." % srp_request.killboard_link, level="danger") + logger.debug("User %s Submitted Invalid Killmail Link %s or server could not be reached" % (request.user, srp_request.killboard_link)) + notify(request.user, "Your SRP request Killmail Link Failed Validation", message="Your SRP request Killmail link %s is invalid. Please make sure your using Zkillboard." % srp_request.killboard_link, level="danger") return HttpResponseRedirect("/srp") srp_ship_name = srpManager.get_ship_name(srp_kill_data) srp_request.srp_ship_name = srp_ship_name From c1b56e6faad4c50d58138cd4129e95b3194b891d Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 20:10:33 -0500 Subject: [PATCH 17/23] Update form.py --- srp/form.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srp/form.py b/srp/form.py index 400fbfb2..fcffe74a 100755 --- a/srp/form.py +++ b/srp/form.py @@ -11,7 +11,7 @@ class SrpFleetMainForm(forms.Form): class SrpFleetUserRequestForm(forms.Form): additional_info = forms.CharField(required=False, label="Additional Info") killboard_link = forms.CharField( - label="Zkillboard Link", + label="zKillboard Link", max_length=255, required=True @@ -20,7 +20,7 @@ class SrpFleetUserRequestForm(forms.Form): def clean_killboard_link(self): data = self.cleaned_data['killboard_link'] if "zkillboard.com" not in data: - raise forms.ValidationError("Invalid Link. Please use Zkillboard.com") + raise forms.ValidationError("Invalid Link. Please use zKillboard.com") return data @@ -29,4 +29,4 @@ class SrpFleetUpdateCostForm(forms.Form): class SrpFleetMainUpdateForm(forms.Form): - fleet_aar_link = forms.CharField(required=True, label="After Action Report Link") \ No newline at end of file + fleet_aar_link = forms.CharField(required=True, label="After Action Report Link") From ec395ae9af98f9e588c0507c6f1031deac8d2adb Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 20:11:31 -0500 Subject: [PATCH 18/23] Update views.py --- srp/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srp/views.py b/srp/views.py index 2c5c2773..65c61e02 100755 --- a/srp/views.py +++ b/srp/views.py @@ -199,7 +199,7 @@ def srp_request_view(request, fleet_srp): (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) except: logger.debug("User %s Submitted Invalid Killmail Link %s or server could not be reached" % (request.user, srp_request.killboard_link)) - notify(request.user, "Your SRP request Killmail Link Failed Validation", message="Your SRP request Killmail link %s is invalid. Please make sure your using Zkillboard." % srp_request.killboard_link, level="danger") + notify(request.user, "Your SRP request Killmail Link Failed Validation", message="Your SRP request Killmail link %s is invalid. Please make sure your using zKillboard." % srp_request.killboard_link, level="danger") return HttpResponseRedirect("/srp") srp_ship_name = srpManager.get_ship_name(srp_kill_data) srp_request.srp_ship_name = srp_ship_name From 5b2614174810e981abfc5a40fdb9d1e06d347c5e Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 20:18:58 -0500 Subject: [PATCH 19/23] Update srpfleetdata.html --- stock/templates/registered/srpfleetdata.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stock/templates/registered/srpfleetdata.html b/stock/templates/registered/srpfleetdata.html index 395fce17..a5268f1c 100755 --- a/stock/templates/registered/srpfleetdata.html +++ b/stock/templates/registered/srpfleetdata.html @@ -37,7 +37,7 @@ Pilot Name Killboard Link Additional Info - Ship Type + Ship Type Killboard Loss Amt SRP ISK Cost Status @@ -57,7 +57,7 @@ target="_blank">{{ srpfleetrequest.killboard_link }} {{ srpfleetrequest.additional_info }} - {{ srpfleetrequest.srp_ship_name }} + {{ srpfleetrequest.srp_ship_name }} ISK: {{ srpfleetrequest.kb_total_loss | intcomma }} ISK: {{ srpfleetrequest.srp_total_amount | intcomma }} From 12ede722b04c2779e92ee2ef9cbf2f7738a972d7 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 20:19:28 -0500 Subject: [PATCH 20/23] Update srpfleetdata.html --- stock/templates/registered/srpfleetdata.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stock/templates/registered/srpfleetdata.html b/stock/templates/registered/srpfleetdata.html index a5268f1c..3d1e7201 100755 --- a/stock/templates/registered/srpfleetdata.html +++ b/stock/templates/registered/srpfleetdata.html @@ -58,7 +58,7 @@ {{ srpfleetrequest.additional_info }} {{ srpfleetrequest.srp_ship_name }} - ISK: {{ srpfleetrequest.kb_total_loss | intcomma }} + ISK: {{ srpfleetrequest.kb_total_loss | intcomma }} ISK: {{ srpfleetrequest.srp_total_amount | intcomma }} {% if srpfleetrequest.srp_status == "Approved" %} From 9cf50bc5feea0b82bc58184cc4be25cb31bb2938 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 20:25:02 -0500 Subject: [PATCH 21/23] Update srp_manager.py --- services/managers/srp_manager.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/managers/srp_manager.py b/services/managers/srp_manager.py index 874bd0da..66622c14 100644 --- a/services/managers/srp_manager.py +++ b/services/managers/srp_manager.py @@ -46,7 +46,8 @@ class srpManager(): logger.debug("ship type %s determined to be %s" % (ship_type, ship_name)) return ship_name else: - logger.info("ship type %s is invalid please try again" % ship_type) + logger.info("ship type %s is invalid" % ship_type) + raise ValueError("Cannot get ship name") From 959df638fa3e93f5a6ee706acecffaf97258fcd3 Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 20:25:47 -0500 Subject: [PATCH 22/23] Update srp_manager.py --- services/managers/srp_manager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/managers/srp_manager.py b/services/managers/srp_manager.py index 66622c14..6bd2f8b9 100644 --- a/services/managers/srp_manager.py +++ b/services/managers/srp_manager.py @@ -46,7 +46,7 @@ class srpManager(): logger.debug("ship type %s determined to be %s" % (ship_type, ship_name)) return ship_name else: - logger.info("ship type %s is invalid" % ship_type) + logger.debug("ship type %s is invalid" % ship_type) raise ValueError("Cannot get ship name") From 8c34cebd2253f7a2f809e7eecf2a5a7b3024c06c Mon Sep 17 00:00:00 2001 From: Mr McClain Date: Wed, 23 Mar 2016 20:30:09 -0500 Subject: [PATCH 23/23] Update views.py --- srp/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srp/views.py b/srp/views.py index 65c61e02..43e42319 100755 --- a/srp/views.py +++ b/srp/views.py @@ -197,7 +197,7 @@ def srp_request_view(request, fleet_srp): try: srp_kill_link = srpManager.get_kill_id(srp_request.killboard_link) (srp_kill_data, ship_value) = srpManager.get_kill_data(srp_kill_link) - except: + except ValueError: logger.debug("User %s Submitted Invalid Killmail Link %s or server could not be reached" % (request.user, srp_request.killboard_link)) notify(request.user, "Your SRP request Killmail Link Failed Validation", message="Your SRP request Killmail link %s is invalid. Please make sure your using zKillboard." % srp_request.killboard_link, level="danger") return HttpResponseRedirect("/srp")