From 4844944965a27deb1e0a9f4fb369ae6ef0f67eeb Mon Sep 17 00:00:00 2001
From: Chif Gergo <chifgeri97@gmail.com>
Date: Sat, 11 Nov 2017 15:44:44 +0100
Subject: [PATCH] Profile kulonszedve a stat-tol igy minden app tudja hasznalni

---
 src/account/__init__.py                |  0
 src/account/admin.py                   | 13 ++++++++++++
 src/account/apps.py                    |  5 +++++
 src/account/migrations/0001_initial.py | 28 ++++++++++++++++++++++++++
 src/account/migrations/__init__.py     |  0
 src/account/models.py                  | 21 +++++++++++++++++++
 src/account/serializers.py             |  8 ++++++++
 src/account/tests.py                   |  3 +++
 src/account/urls.py                    |  8 ++++++++
 src/account/views.py                   |  9 +++++++++
 src/kszkepzes/settings.py              |  3 ++-
 11 files changed, 97 insertions(+), 1 deletion(-)
 create mode 100644 src/account/__init__.py
 create mode 100644 src/account/admin.py
 create mode 100644 src/account/apps.py
 create mode 100644 src/account/migrations/0001_initial.py
 create mode 100644 src/account/migrations/__init__.py
 create mode 100644 src/account/models.py
 create mode 100644 src/account/serializers.py
 create mode 100644 src/account/tests.py
 create mode 100644 src/account/urls.py
 create mode 100644 src/account/views.py

diff --git a/src/account/__init__.py b/src/account/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/src/account/admin.py b/src/account/admin.py
new file mode 100644
index 0000000..ced8aeb
--- /dev/null
+++ b/src/account/admin.py
@@ -0,0 +1,13 @@
+from django.contrib import admin
+from .models import Profile
+
+
+@admin.register(Profile)
+class ProfileAdmin(admin.ModelAdmin):
+    list_display = ('user_username', 'join_date', 'pref_group')
+
+    def user_username(self, obj):
+        return obj.user.username
+
+    user_username.admin_order_field = 'user__username'
+# Register your models here.
diff --git a/src/account/apps.py b/src/account/apps.py
new file mode 100644
index 0000000..f7b1d19
--- /dev/null
+++ b/src/account/apps.py
@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class AccountConfig(AppConfig):
+    name = 'account'
diff --git a/src/account/migrations/0001_initial.py b/src/account/migrations/0001_initial.py
new file mode 100644
index 0000000..8c4b526
--- /dev/null
+++ b/src/account/migrations/0001_initial.py
@@ -0,0 +1,28 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.5 on 2017-11-11 14:13
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Profile',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('join_date', models.DateField()),
+                ('pref_group', models.CharField(choices=[('DT', 'DevTeam'), ('NET', 'NeTeam'), ('ST', 'SecurITeam'), ('SYS', 'SysAdmin'), ('N', 'None')], default='None', max_length=10)),
+                ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+    ]
diff --git a/src/account/migrations/__init__.py b/src/account/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/src/account/models.py b/src/account/models.py
new file mode 100644
index 0000000..fc5485c
--- /dev/null
+++ b/src/account/models.py
@@ -0,0 +1,21 @@
+from django.db import models
+from django.contrib.auth.models import User
+
+
+class Profile(models.Model):
+    join_date = models.DateField()
+    user = models.OneToOneField(User, on_delete=models.CASCADE)
+    TEAMS = (
+     ('DT', 'DevTeam'),
+     ('NET', 'NeTeam'),
+     ('ST', 'SecurITeam'),
+     ('SYS', 'SysAdmin'),
+     ('N', 'None'),
+    )
+    pref_group = models.CharField(max_length=10, choices=TEAMS, default='None')
+    # Homeworks=models.ForeignKey(Homework)
+
+    def __str__(self):
+        return self.user.username
+
+# Create your models here.
diff --git a/src/account/serializers.py b/src/account/serializers.py
new file mode 100644
index 0000000..62021e9
--- /dev/null
+++ b/src/account/serializers.py
@@ -0,0 +1,8 @@
+from rest_framework import serializers
+from . import models
+
+
+class ProfileSerializer(serializers.ModelSerializer):
+    class Meta:
+        model = models.Profile
+        fields = '__all__'
diff --git a/src/account/tests.py b/src/account/tests.py
new file mode 100644
index 0000000..7ce503c
--- /dev/null
+++ b/src/account/tests.py
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git a/src/account/urls.py b/src/account/urls.py
new file mode 100644
index 0000000..96decfd
--- /dev/null
+++ b/src/account/urls.py
@@ -0,0 +1,8 @@
+from rest_framework import routers
+from . import views
+
+router = routers.DefaultRouter(trailing_slash=False)
+
+router.register(r'profiles', views.ProfileViewSet)
+
+urlpatterns = router.urls
diff --git a/src/account/views.py b/src/account/views.py
new file mode 100644
index 0000000..50a0c05
--- /dev/null
+++ b/src/account/views.py
@@ -0,0 +1,9 @@
+from rest_framework import viewsets
+
+from . import models
+from . import serializers
+
+
+class ProfileViewSet(viewsets.ModelViewSet):
+    serializer_class = serializers.ProfileSerializer
+    queryset = models.Profile.objects.all()
diff --git a/src/kszkepzes/settings.py b/src/kszkepzes/settings.py
index 3669aa5..e2881b6 100644
--- a/src/kszkepzes/settings.py
+++ b/src/kszkepzes/settings.py
@@ -39,9 +39,10 @@ INSTALLED_APPS = [
     'django.contrib.staticfiles',
     'django_extensions',
     'rest_framework',
-    'stats',
     'social_django',
     'authsch',
+    'account',
+    'stats',
 ]
 
 MIDDLEWARE = [
-- 
GitLab