Пример #1
0
def rap_spy(dane_raport, flota):
    agresor = dane_raport['agresor']
    obronca = dane_raport['obronca']
    agresor.userprofile.nowe_raporty += 1
    obronca.userprofile.nowe_raporty += 1
    tekst_agresor = render_to_string("ugame/reports_strings/spy_agresor.html",
                                     dane_raport)
    tekst_obronca = render_to_string("ugame/reports_strings/spy_obronca.html",
                                     dane_raport)

    koordy_z = '%s:%s:%s' % (flota.galaxy_start.galaxy,
                             flota.galaxy_start.system,
                             flota.galaxy_start.field)
    koordy_do = '%s:%s:%s' % (flota.galaxy_end.galaxy, flota.galaxy_end.system,
                              flota.galaxy_end.field)
    data = datetime.datetime.fromtimestamp(flota.time)

    Raporty.objects.create(typ='S',
                           user=agresor.user,
                           tytul="Szpiegowanie planety",
                           tekst=tekst_agresor,
                           koordy_z=koordy_z,
                           koordy_do=koordy_do,
                           data=data)

    Raporty.objects.create(
        typ='S',
        user=obronca.user,
        tytul="Ktoś szpiegował planete",
        tekst=tekst_obronca,
        koordy_z=koordy_z,
        koordy_do=koordy_do,
        data=data,
    )
Пример #2
0
def rap_atak(dane_raport, flota, wygrana):
    '''
    dane_raport = {"agresor":agresor,"obronca":obronca,"rundy":rundy,"surowce_zdobyte":surowce_zdobyte,
                                              "galaktyka":obronca_galaktyka,"obronca_obrona":obronca_obrona,
                                              "obronca_statki":obronca_statki,
                                              "agresor_statki":agresor_statki,"obronca_dane":obronca_dane,
                                              "agresor_dane":agresor_dane}
    '''
    agresor = dane_raport['agresor']
    agresor.userprofile.nowe_raporty += 1

    obronca = dane_raport['obronca']
    obronca.userprofile.nowe_raporty += 1

    if len(dane_raport['dane'].rundy) > 1 or wygrana != 'O':
        agresor_spy = dane_raport['agresor_dane'].spy_tech
        obronca_spy = dane_raport['obronca_dane'].spy_tech
        if agresor_spy < obronca_spy:
            dane_raport['bez_technologii'] = 1
        elif agresor_spy == obronca_spy:
            if randint(1, 5) == 3:
                dane_raport['bez_technologii'] = 1
        tekst_agresor = render_to_string("ugame/reports_strings/atak.html",
                                         dane_raport)
    else:
        tekst_agresor = render_to_string(
            "ugame/reports_strings/atak_przerwany.html")

    koordy_z = '%s:%s:%s' % (flota.galaxy_start.galaxy,
                             flota.galaxy_start.system,
                             flota.galaxy_start.field)
    koordy_do = '%s:%s:%s' % (flota.galaxy_end.galaxy, flota.galaxy_end.system,
                              flota.galaxy_end.field)
    data = datetime.datetime.fromtimestamp(flota.time)

    Raporty.objects.create(typ='A',
                           user=agresor.user,
                           tytul="Atak na planetę",
                           tekst=tekst_agresor,
                           koordy_z=koordy_z,
                           koordy_do=koordy_do,
                           data=data)

    dane_raport['bez_technologii'] = None
    tekst_obronca = render_to_string("ugame/reports_strings/atak.html",
                                     dane_raport)
    Raporty.objects.create(
        typ='A',
        user=obronca.user,
        tytul="Obrona planety",
        tekst=tekst_obronca,
        koordy_z=koordy_z,
        koordy_do=koordy_do,
        data=data,
    )
Пример #3
0
def rap_surowce(flota, GraObj):
    GraObj.userprofile.nowe_raporty += 1
    dane_raport = {"galaxy": flota.galaxy_start, "flota": flota}
    koordy_z = '%s:%s:%s' % (flota.galaxy_start.galaxy,
                             flota.galaxy_start.system,
                             flota.galaxy_start.field)
    koordy_do = '%s:%s:%s' % (flota.galaxy_end.galaxy, flota.galaxy_end.system,
                              flota.galaxy_end.field)
    data = datetime.datetime.fromtimestamp(flota.time)

    tekst = render_to_string("ugame/reports_strings/surowce.html", dane_raport)
    Raporty.objects.create(typ='T',
                           user=GraObj.user,
                           tytul="Surowce dotarły",
                           tekst=tekst,
                           koordy_z=koordy_z,
                           koordy_do=koordy_do,
                           data=data)
Пример #4
0
def kolonizacja_ok(flota, GraObj):
    GraObj.userprofile.nowe_raporty += 1
    dane_raport = {"galaxy": flota.galaxy_end, "flota": flota}
    tekst = render_to_string("ugame/reports_strings/kolonizacja_ok.html",
                             dane_raport)
    koordy_z = '%s:%s:%s' % (flota.galaxy_start.galaxy,
                             flota.galaxy_start.system,
                             flota.galaxy_start.field)
    koordy_do = '%s:%s:%s' % (flota.galaxy_end.galaxy, flota.galaxy_end.system,
                              flota.galaxy_end.field)
    data = datetime.datetime.fromtimestamp(flota.time)
    Raporty.objects.create(typ='K',
                           user=flota.fleet_owner,
                           tytul="Kolonizacja",
                           tekst=tekst,
                           koordy_z=koordy_z,
                           koordy_do=koordy_do,
                           data=data)
Пример #5
0
def rap_powrot(flota, statki_powrot, GraObj):
    GraObj.userprofile.nowe_raporty += 1
    dane_raport = {
        "galaxy": flota.galaxy_start,
        "flota": flota,
        "statki_powrot": statki_powrot
    }
    koordy_z = '%s:%s:%s' % (flota.galaxy_start.galaxy,
                             flota.galaxy_start.system,
                             flota.galaxy_start.field)
    koordy_do = '%s:%s:%s' % (flota.galaxy_end.galaxy, flota.galaxy_end.system,
                              flota.galaxy_end.field)
    data = datetime.datetime.fromtimestamp(flota.time)

    tekst = render_to_string("ugame/reports_strings/powrot.html", dane_raport)
    Raporty.objects.create(typ='B',
                           user=GraObj.user,
                           tytul="Powrót z galaktyki",
                           tekst=tekst,
                           koordy_z=koordy_z,
                           koordy_do=koordy_do,
                           data=data)
Пример #6
0
def rap_przeslij(flota, statki_powrot, GraObj):
    GraObj.userprofile.nowe_raporty += 1
    dane_raport = {
        "galaxy": flota.galaxy_end,
        "flota": flota,
        "statki_powrot": statki_powrot
    }
    koordy_z = '%s:%s:%s' % (flota.galaxy_start.galaxy,
                             flota.galaxy_start.system,
                             flota.galaxy_start.field)
    koordy_do = '%s:%s:%s' % (flota.galaxy_end.galaxy, flota.galaxy_end.system,
                              flota.galaxy_end.field)
    data = datetime.datetime.fromtimestamp(flota.time)
    tekst = render_to_string("ugame/reports_strings/przeslij.html",
                             dane_raport)

    rap = Raporty.objects.create(typ='P',
                                 user=GraObj.user,
                                 tytul="Flota z misja prześlij dla planety " +
                                 koordy_do,
                                 tekst=tekst,
                                 koordy_z=koordy_z,
                                 koordy_do=koordy_do,
                                 data=data)
Пример #7
0
    def site_edit(self):
        current_planet = self.game.get_current_planet()

        if self.game.userprofile:
            if self.request.method == 'POST':

                form_change = ChangePassMail(self.request.POST)
                if form_change.is_valid():
                    pass1 = form_change.cleaned_data['password1']
                    pass2 = form_change.cleaned_data['password2']
                    email = form_change.cleaned_data['email']
                    if pass1 == pass2 and len(pass1) >= 5:
                        salt = sha1(str(random.random())).hexdigest()[:5]
                        activation_key = sha1(salt + pass1).hexdigest()
                        ZmianaHasla.objects.create(user=self.game.user,
                                                   haslo=pass1,
                                                   hash=activation_key)
                        message = render_to_string('mail/change.txt', {
                            'link':
                            '%s/change_pass/%s' % (URL, activation_key)
                        })
                        subject = 'Link z %s' % (URL, )
                        subject = ''.join(subject.splitlines())
                        send_mail(subject, message,
                                  settings.DEFAULT_FROM_EMAIL,
                                  [self.game.user.email])
                        message = "Żeby dokończyć zmianę hasła, odbierz pocztę z emaila i kliknij w link"
                        send_info_message(user=self.game.user, message=message)

                    if email:
                        salt = sha1(str(random.random())).hexdigest()[:5]
                        activation_key = sha1(salt + email).hexdigest()
                        ZmianaMaila.objects.create(user=self.game.user,
                                                   email=email,
                                                   hash=activation_key)
                        message = render_to_string('mail/change.txt', {
                            'link':
                            '%s/change_email/%s' % (URL, activation_key)
                        })
                        subject = 'Link z %s' % (URL, )
                        subject = ''.join(subject.splitlines())
                        send_mail(subject, message,
                                  settings.DEFAULT_FROM_EMAIL,
                                  [self.game.user.email])
                        message = "Żeby dokończyć zmianę emaila, odbierz pocztę ze starego emaila i kliknij w link"
                        send_info_message(user=self.game.user, message=message)
                form = UserprofileForm(self.request.POST,
                                       self.request.FILES,
                                       instance=self.game.userprofile)
                if form.is_valid():
                    obj = form.save(commit=False)
                    if not obj.avatar:
                        obj.avatar = self.game.userprofile.avatar
                    obj.save()  # tu tak ma byc
                    return HttpResponseRedirect(url(self.url))
            else:
                form = UserprofileForm(instance=self.game.userprofile)
                form_change = ChangePassMail()

            topnav = topnav_site(self.game)
            return {
                "topnav": topnav,
                "form": form,
                'form_change': form_change,
                "u": self.game.userprofile
            }
        return HttpResponseRedirect(url(self.all_urls.main.main))