Milestone 08-14

* Mahjong Ranking wurde stark vereinfacht um Fehler besser vorzubeugen.
* Online WYSIWYG Editor auf CKEditor umgeändert, damit online bearbeiten für unbedarfte besser funktioniert.
* Viele kleine Optimierungen am CSS für bessere Performance.
* CSS wird jetzt aus LESS Code generiert
* Für dise Arbeit wird jetzt grunt und node package management lokal verwendet.
This commit is contained in:
Christian Berg
2015-08-23 16:37:39 +02:00
parent 79eaeb34ad
commit 836eee983d
277 changed files with 14708 additions and 2429 deletions

View File

@@ -0,0 +1,30 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
import django.contrib.auth.models
class Migration(migrations.Migration):
dependencies = [
('auth', '0006_require_contenttypes_0002'),
('membership', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='ProxyGroup',
fields=[
],
options={
'verbose_name': 'Gruppe',
'proxy': True,
'verbose_name_plural': 'Gruppen',
},
bases=('auth.group',),
managers=[
('objects', django.contrib.auth.models.GroupManager()),
],
),
]

View File

@@ -0,0 +1,18 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
class Migration(migrations.Migration):
dependencies = [
('membership', '0002_proxygroup'),
]
operations = [
migrations.AlterModelOptions(
name='membership',
options={'ordering': ('username',), 'verbose_name': 'Mitgliedschaft', 'verbose_name_plural': 'Mitgliedschaften'},
),
]

View File

@@ -7,7 +7,6 @@ import hashlib
from django.utils import timezone
from django.conf import settings
from django.contrib import auth
from django.contrib.auth.models import AbstractUser
from django.core.urlresolvers import reverse
from django.db import models
@@ -140,30 +139,6 @@ class ActivationRequest(models.Model):
def username(self):
return self.user.username
'''
class MembershipManager(models.Manager):
def get(self, user=None, username=None, **kwargs):
"""
First try's to fetch the requested Membership Object from the Database,
if the requestetd Membership does not Exists (yet) try to fetch the
corresponding User, and create the Membership with the filled in
Userdata.
"""
try:
if username and not user:
user = auth.get_user_model().objects.get(username=username)
return super(MembershipManager, self).get(user=user)
except Membership.DoesNotExist:
membership = Membership(
user=user,
nickname=user.username,
first_name=user.first_name,
last_name=user.last_name,
email=user.email
)
membership.save()
return membership
'''
class Membership(AbstractUser):
# user = models.OneToOneField(settings.AUTH_USER_MODEL)
@@ -242,7 +217,7 @@ class Membership(AbstractUser):
)
class Meta(object):
ordering = ('last_name', 'first_name',)
ordering = ('username', )
swappable = 'AUTH_USER_MODEL'
verbose_name = _('Membership')
verbose_name_plural = _('Memberships')

View File

@@ -1,3 +1,4 @@
from datetime import date
from django import http
from django.conf import settings
from django.contrib import auth, messages
@@ -6,7 +7,7 @@ from django.http import Http404
from django.utils.translation import ugettext as _
from django.views import generic
from mahjong_ranking.models import KyuDanRanking, LadderRanking, LadderSeason
from mahjong_ranking.models import KyuDanRanking, SeasonRanking
from utils import mixins
from . import forms, models
@@ -95,11 +96,11 @@ class MembershipDetail(mixins.LoginRequiredMixin, generic.DetailView):
except KyuDanRanking.DoesNotExist:
context['kyu_dan_ranking'] = None
try:
context['ladder_ranking'] = LadderRanking.objects.get(
context['ladder_ranking'] = SeasonRanking.objects.get(
user=self.object,
season=LadderSeason.objects.current())
except LadderRanking.DoesNotExist:
context['ladder_ranking'] = LadderRanking(user=self.object)
season=date.today().year)
except SeasonRanking.DoesNotExist:
context['ladder_ranking'] = SeasonRanking(user=self.object)
return context