mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2026-02-07 23:56:23 +01:00
Logging everywhere.
Corrected corp model updating logic to handle owning corp. Corrected typecasting during api access mask comparison. Removed error protection during user TS3 group updating to propogate errors. Relevent issues: Sorry for the spam.
This commit is contained in:
@@ -13,6 +13,9 @@ from eveonline.managers import EveManager
|
||||
from form import TimerForm
|
||||
from models import Timer
|
||||
|
||||
import logging
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
def timer_util_test(user):
|
||||
return check_if_user_has_permission(user, 'member') or check_if_user_has_permission(user, 'blue_member')
|
||||
@@ -22,13 +25,14 @@ def timer_util_test(user):
|
||||
@user_passes_test(timer_util_test)
|
||||
@permission_required('auth.timer_view')
|
||||
def timer_view(request):
|
||||
logger.debug("timer_view called by user %s" % request.user)
|
||||
timer_list = Timer.objects.all()
|
||||
closest_timer = None
|
||||
if timer_list:
|
||||
closest_timer = \
|
||||
sorted(list(Timer.objects.all()), key=lambda d: abs(datetime.datetime.now() - d.eve_time.replace(tzinfo=None)))[
|
||||
0]
|
||||
|
||||
logger.debug("Determined closest timer is %s" % closest_timer)
|
||||
render_items = {'timers': Timer.objects.all(),
|
||||
'closest_timer': closest_timer}
|
||||
|
||||
@@ -38,20 +42,21 @@ def timer_view(request):
|
||||
@login_required
|
||||
@permission_required('auth.timer_management')
|
||||
def add_timer_view(request):
|
||||
logger.debug("add_timer_view called by user %s" % request.user)
|
||||
if request.method == 'POST':
|
||||
form = TimerForm(request.POST)
|
||||
|
||||
logger.debug("Request type POST contains form valid: %s" % form.is_valid())
|
||||
if form.is_valid():
|
||||
# Get character
|
||||
auth_info = AuthServicesInfoManager.get_auth_service_info(request.user)
|
||||
character = EveManager.get_character_by_id(auth_info.main_char_id)
|
||||
corporation = EveManager.get_corporation_info_by_id(character.corporation_id)
|
||||
|
||||
logger.debug("Determined timer add request on behalf of character %s corporation %s" % (character, corporation))
|
||||
# calculate future time
|
||||
future_time = datetime.timedelta(days=form.cleaned_data['days_left'], hours=form.cleaned_data['hours_left'], minutes=form.cleaned_data['minutes_left'])
|
||||
current_time = datetime.datetime.utcnow()
|
||||
eve_time = current_time + future_time
|
||||
|
||||
logger.debug("Determined timer eve time is %s - current time %s, adding %s" % (eve_time, current_time, future_time))
|
||||
# handle valid form
|
||||
timer = Timer()
|
||||
timer.details = form.cleaned_data['details']
|
||||
@@ -65,8 +70,10 @@ def add_timer_view(request):
|
||||
timer.eve_corp = corporation
|
||||
timer.user = request.user
|
||||
timer.save()
|
||||
logger.info("Created new timer in %s at %s by user %s" % (timer.system, timer.eve_time, request.user))
|
||||
return HttpResponseRedirect("/timers/")
|
||||
else:
|
||||
logger.debug("Returning new TimerForm")
|
||||
form = TimerForm()
|
||||
|
||||
render_items = {'form': form}
|
||||
@@ -77,7 +84,11 @@ def add_timer_view(request):
|
||||
@login_required
|
||||
@permission_required('auth.timer_management')
|
||||
def remove_timer(request, timer_id):
|
||||
logger.debug("remove_timer called by user %s for timer id %s" % (request.user, timer_id))
|
||||
if Timer.objects.filter(id=timer_id).exists():
|
||||
timer = Timer.objects.get(id=timer_id)
|
||||
timer.delete()
|
||||
logger.debug("Deleting timer id %s by user %s" % (timer_id, request.user))
|
||||
else:
|
||||
logger.error("Unable to delete timer id %s for user %s - timer matching id not found." % (timer_id, request.user))
|
||||
return HttpResponseRedirect("/timers/")
|
||||
|
||||
Reference in New Issue
Block a user