views.py 671 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
from django.views.generic.base import View
from django.http import HttpResponse
from django.core import signing
from django.shortcuts import get_object_or_404
from vm.models import Instance
from datetime import datetime


class BootUrl(View):
    def get(self, request, token):
        try:
            id = signing.loads(token, salt='activate')
        except:
            return HttpResponse("Invalid token.")
        inst = get_object_or_404(Instance, id=id)
        if inst.active_since:
            return HttpResponse("Already booted?")
        else:
            inst.active_since = datetime.now()
            inst.save()
            return HttpResponse("KTHXBYE")