Added additional features suggested by ogopogomu

This commit is contained in:
Raynaldo Rivera 2014-11-26 22:58:07 -07:00
parent d40db151db
commit ab8efdb2c1
5 changed files with 139 additions and 13 deletions

View File

@ -136,10 +136,19 @@ urlpatterns = patterns('',
# SRP URLS
url(r'^srp/$', 'srp.views.srp_management', name='auth_srp_management_view'),
url(r'^srp_all/$', 'srp.views.srp_management_all', name='auth_srp_management_all_view'),
url(r'^srp_fleet_view/(\w+)$', 'srp.views.srp_fleet_view', name='auth_srp_fleet_view'),
url(r'^srp_fleet_add_view/$', 'srp.views.srp_fleet_add_view', name='auth_srp_fleet_add_view'),
url(r'^srp_fleet_remove/(\w+)$', 'srp.views.srp_fleet_remove', name='auth_srp_flet_remove'),
url(r'^srp_fleet_mark_completed/(\w+)', 'srp.views.srp_fleet_mark_completed',
name='auth_srp_fleet_mark_completed'),
url(r'^srp_fleet_mark_uncompleted/(\w+)', 'srp.views.srp_fleet_mark_uncompleted',
name='auth_srp_fleet_mark_uncompleted'),
url(r'^srp_request/(\w+)', 'srp.views.srp_request_view', name='auth_srp_request_view'),
url(r'^srp_request_remove/(\w+)', 'srp.views.srp_request_remove',
name="auth_srp_request_remove"),
url(r'srp_request_approve/(\w+)', 'srp.views.srp_request_approve',
name='auth_srp_request_approve'),
url(r'srp_request_reject/(\w+)', 'srp.views.srp_request_reject', name='auth_srp_request_reject'),
)

View File

@ -8,6 +8,7 @@ class SrpFleetMain(models.Model):
fleet_doctrine = models.CharField(max_length=254, default="")
fleet_time = models.DateTimeField()
fleet_srp_code = models.CharField(max_length=254, default="", unique=True)
fleet_srp_status = models.CharField(max_length=254, default="")
fleet_commander = models.ForeignKey(EveCharacter)
def __str__(self):
@ -16,7 +17,9 @@ class SrpFleetMain(models.Model):
class SrpUserRequest(models.Model):
killboard_link = models.CharField(max_length=254, default="")
after_action_report_link = models.CharField(max_length=254, default="")
additional_info = models.CharField(max_length=254, default="")
srp_status = models.CharField(max_length=254, default="")
character = models.ForeignKey(EveCharacter)
srp_fleet_main = models.ForeignKey(SrpFleetMain)

View File

@ -22,6 +22,13 @@ def srp_util_test(user):
@login_required
@user_passes_test(srp_util_test)
def srp_management(request):
context = {"srpfleets": SrpFleetMain.objects.filter(fleet_srp_status="")}
return render_to_response('registered/srpmanagement.html', context, context_instance=RequestContext(request))
@login_required
@user_passes_test(srp_util_test)
def srp_management_all(request):
context = {"srpfleets": SrpFleetMain.objects.all()}
return render_to_response('registered/srpmanagement.html', context, context_instance=RequestContext(request))
@ -31,7 +38,8 @@ def srp_management(request):
def srp_fleet_view(request, fleet_id):
if SrpFleetMain.objects.filter(id=fleet_id):
fleet_main = SrpFleetMain.objects.get(id=fleet_id)
context = {"srpfleetrequests": SrpUserRequest.objects.filter(srp_fleet_main=fleet_main)}
context = {"fleet_id": fleet_id, "fleet_status": fleet_main.fleet_srp_status,
"srpfleetrequests": SrpUserRequest.objects.filter(srp_fleet_main=fleet_main)}
return render_to_response('registered/srpfleetdata.html', context, context_instance=RequestContext(request))
@ -82,6 +90,28 @@ def srp_fleet_remove(request, fleet_id):
return HttpResponseRedirect("/srp")
@login_required
@permission_required('auth.srp_management')
def srp_fleet_mark_completed(request, fleet_id):
if SrpFleetMain.objects.filter(id=fleet_id).exists():
srpfleetmain = SrpFleetMain.objects.get(id=fleet_id)
srpfleetmain.fleet_srp_status = "Completed"
srpfleetmain.save()
return HttpResponseRedirect("/srp_fleet_view/" + str(fleet_id))
@login_required
@permission_required('auth.srp_management')
def srp_fleet_mark_uncompleted(request, fleet_id):
if SrpFleetMain.objects.filter(id=fleet_id).exists():
srpfleetmain = SrpFleetMain.objects.get(id=fleet_id)
srpfleetmain.fleet_srp_status = ""
srpfleetmain.save()
return HttpResponseRedirect("/srp_fleet_view/" + str(fleet_id))
@login_required
@user_passes_test(srp_util_test)
def srp_request_view(request, fleet_srp):
@ -131,3 +161,37 @@ def srp_request_remove(request, srp_request_id):
return HttpResponseRedirect("/srp")
else:
return HttpResponseRedirect("/srp_fleet_view/" + str(stored_fleet_view))
@login_required
@permission_required('auth.srp_management')
def srp_request_approve(request, srp_request_id):
stored_fleet_view = None
if SrpUserRequest.objects.filter(id=srp_request_id).exists():
srpuserrequest = SrpUserRequest.objects.get(id=srp_request_id)
stored_fleet_view = srpuserrequest.srp_fleet_main.id
srpuserrequest.srp_status = "Approved"
srpuserrequest.save()
if stored_fleet_view is None:
return HttpResponseRedirect("/srp")
else:
return HttpResponseRedirect("/srp_fleet_view/" + str(stored_fleet_view))
@login_required
@permission_required('auth.srp_management')
def srp_request_reject(request, srp_request_id):
stored_fleet_view = None
if SrpUserRequest.objects.filter(id=srp_request_id).exists():
srpuserrequest = SrpUserRequest.objects.get(id=srp_request_id)
stored_fleet_view = srpuserrequest.srp_fleet_main.id
srpuserrequest.srp_status = "Rejected"
srpuserrequest.save()
if stored_fleet_view is None:
return HttpResponseRedirect("/srp")
else:
return HttpResponseRedirect("/srp_fleet_view/" + str(stored_fleet_view))

View File

@ -11,12 +11,26 @@
<div class="col-lg-12">
<div class="row">
<h1 class="page-header text-center">SRP Fleet Data
<div class="text-right">
{% if perms.auth.srp_management %}
{% if fleet_status == "Completed" %}
<a href="/srp_fleet_mark_uncompleted/{{ fleet_id }}">
<button type="button" class="btn btn-warning">Mark Incomplete</button>
</a>
{% else %}
<a href="/srp_fleet_mark_completed/{{ fleet_id }}">
<button type="button" class="btn btn-success">Mark Completed</button>
</a>
{% endif %}
{% endif %}
</div>
</h1>
<table class="table table-bordered">
<tr>
<th class="text-center">Pilot Name</th>
<th class="text-center">Killboard Link</th>
<th class="text-center">Additional Info</th>
<th class="text-center">Status</th>
{% if perms.auth.srp_management %}
<th class="text-center">Actions</th>
{% endif %}
@ -33,12 +47,35 @@
target="_blank">{{ srpfleetrequest.killboard_link }}</a>
</td>
<td class="text-center">{{ srpfleetrequest.additional_info }}</td>
<td class="text-center">
{% if srpfleetrequest.srp_status == "Approved" %}
<div class="label label-success">
Approved
</div>
{% elif srpfleetrequest.srp_status == "Rejected" %}
<div class="label label-danger">
Rejected
</div>
{% else %}
<div class="label label-warning">
Pending
</div>
{% endif %}
</td>
{% if perms.auth.srp_management %}
<td class="text-center">
<td class="text-center">
<a href="/srp_request_approve/{{ srpfleetrequest.id }}">
<button type="button" class="btn btn-success"><span
class="glyphicon glyphicon-ok"></span></button>
</a>
<a href="/srp_request_reject/{{ srpfleetrequest.id }}">
<button type="button" class="btn btn-warning"><span
class="glyphicon glyphicon-remove"></span></button>
</a>
<a href="/srp_request_remove/{{ srpfleetrequest.id }}">
<button type="button" class="btn btn-danger"><span
class="glyphicon glyphicon-remove"></span></button>
class="glyphicon glyphicon-trash"></span></button>
</a>
</td>
{% endif %}

View File

@ -13,8 +13,11 @@
<h1 class="page-header text-center">SRP Management
<div class="text-right">
{% if perms.auth.srp_management %}
<a href="{% url 'auth_srp_management_all_view' %}">
<button type="button" class="btn btn-primary">View All</button>
</a>
<a href="{% url 'auth_srp_fleet_add_view' %}">
<button type="button" class="btn btn-success">Add SRP Fleet</button>
<button type="button" class="btn btn-success">Add SRP Fleet</button>
</a>
{% endif %}
</div>
@ -25,9 +28,8 @@
<th class="text-center">Fleet Time</th>
<th class="text-center">Fleet Doctrine</th>
<th class="text-center">Fleet Commander</th>
{% if perms.auth.srp_management %}
<th class="text-center">Fleet SRP Code</th>
{% endif %}
<th class="text-center">Fleet SRP Code</th>
<th class="text-center">SRP Status</th>
<th class="text-center">Actions</th>
</tr>
{% for srpfleet in srpfleets %}
@ -44,13 +46,24 @@
{{ srpfleet.fleet_commander.character_name }}
</div>
</td>
{% if perms.auth.timer_management %}
<th class="text-center">
<div class="label label-danger">
{{ srpfleet.fleet_srp_code }}
<th class="text-center">
<div class="label label-warning">
<a href="/srp_request/{{ srpfleet.fleet_srp_code }}"
target="_blank">{{ srpfleet.fleet_srp_code }}</a>
</div>
</th>
<td class="text-center">
{% if srpfleet.fleet_srp_status == "" %}
<div class="label label-warning">
Pending
</div>
</th>
{% endif %}
{% else %}
<div class="label label-success">
Completed
</div>
{% endif %}
</td>
<td class="text-center">
<a href="/srp_fleet_view/{{ srpfleet.id }}">
<button type="button" class="btn btn-primary"><span