mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-13 14:30:17 +02:00
add evetools killboard as accepted source for srp requests
This commit is contained in:
parent
356df45583
commit
839232dc98
@ -13,7 +13,7 @@ class SrpFleetMainForm(forms.Form):
|
|||||||
class SrpFleetUserRequestForm(forms.Form):
|
class SrpFleetUserRequestForm(forms.Form):
|
||||||
additional_info = forms.CharField(required=False, max_length=25, label=_("Additional Info"))
|
additional_info = forms.CharField(required=False, max_length=25, label=_("Additional Info"))
|
||||||
killboard_link = forms.CharField(
|
killboard_link = forms.CharField(
|
||||||
label=_("zKillboard Link"),
|
label=_("Killboard Link (zkillboard.com or kb.evetools.org)"),
|
||||||
max_length=255,
|
max_length=255,
|
||||||
required=True
|
required=True
|
||||||
|
|
||||||
@ -21,13 +21,31 @@ class SrpFleetUserRequestForm(forms.Form):
|
|||||||
|
|
||||||
def clean_killboard_link(self):
|
def clean_killboard_link(self):
|
||||||
data = self.cleaned_data['killboard_link']
|
data = self.cleaned_data['killboard_link']
|
||||||
if "zkillboard.com" not in data:
|
|
||||||
raise forms.ValidationError(_("Invalid Link. Please use zKillboard.com"))
|
|
||||||
|
|
||||||
if not re.match(r"http[s]?://zkillboard\.com/kill/\d+\/", data):
|
# Check if it's a link from one of the accepted kill boards
|
||||||
|
if not any(
|
||||||
|
re.match(regex, data)
|
||||||
|
for regex in [
|
||||||
|
r"^http[s]?:\/\/zkillboard\.com\/",
|
||||||
|
r"^http[s]?:\/\/kb\.evetools\.org\/",
|
||||||
|
]
|
||||||
|
):
|
||||||
|
raise forms.ValidationError(
|
||||||
|
_("Invalid Link. Please use zkillboard.com or kb.evetools.org")
|
||||||
|
)
|
||||||
|
|
||||||
|
# Check if it's an actual kill mail
|
||||||
|
if not any(
|
||||||
|
re.match(regex, data)
|
||||||
|
for regex in [
|
||||||
|
r"^http[s]?:\/\/zkillboard\.com\/kill\/\d+\/",
|
||||||
|
r"^http[s]?:\/\/kb\.evetools\.org\/kill\/\d+",
|
||||||
|
]
|
||||||
|
):
|
||||||
raise forms.ValidationError(
|
raise forms.ValidationError(
|
||||||
_("Invalid Link. Please post a direct link to a killmail.")
|
_("Invalid Link. Please post a direct link to a killmail.")
|
||||||
)
|
)
|
||||||
|
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
|
@ -170,9 +170,13 @@ def srp_request_view(request, fleet_srp):
|
|||||||
logger.debug("Request type POST contains form valid: %s" % form.is_valid())
|
logger.debug("Request type POST contains form valid: %s" % form.is_valid())
|
||||||
|
|
||||||
if form.is_valid():
|
if form.is_valid():
|
||||||
if SrpUserRequest.objects.filter(killboard_link=form.cleaned_data['killboard_link']).exists():
|
request_killboard_link = form.cleaned_data['killboard_link']
|
||||||
|
killmail_id = SRPManager.get_kill_id(killboard_link=request_killboard_link)
|
||||||
|
|
||||||
|
# check if the killmail_id is already present
|
||||||
|
if SrpUserRequest.objects.filter(killboard_link__icontains="/kill/" + killmail_id).exists():
|
||||||
messages.error(request,
|
messages.error(request,
|
||||||
_("This Killboard link has already been posted."))
|
_("This kill mail has already been posted."))
|
||||||
return redirect("srp:management")
|
return redirect("srp:management")
|
||||||
|
|
||||||
character = request.user.profile.main_character
|
character = request.user.profile.main_character
|
||||||
@ -180,7 +184,7 @@ def srp_request_view(request, fleet_srp):
|
|||||||
post_time = timezone.now()
|
post_time = timezone.now()
|
||||||
|
|
||||||
srp_request = SrpUserRequest()
|
srp_request = SrpUserRequest()
|
||||||
srp_request.killboard_link = form.cleaned_data['killboard_link']
|
srp_request.killboard_link = request_killboard_link
|
||||||
srp_request.additional_info = form.cleaned_data['additional_info']
|
srp_request.additional_info = form.cleaned_data['additional_info']
|
||||||
srp_request.character = character
|
srp_request.character = character
|
||||||
srp_request.srp_fleet_main = srp_fleet_main
|
srp_request.srp_fleet_main = srp_fleet_main
|
||||||
|
Loading…
x
Reference in New Issue
Block a user