diff --git a/pyconbalkan/cfp/migrations/0011_auto_20181018_1949.py b/pyconbalkan/cfp/migrations/0011_auto_20181018_1949.py new file mode 100644 index 00000000..d2a0e969 --- /dev/null +++ b/pyconbalkan/cfp/migrations/0011_auto_20181018_1949.py @@ -0,0 +1,18 @@ +# Generated by Django 2.0.5 on 2018-10-18 19:49 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cfp', '0010_cfp_active'), + ] + + operations = [ + migrations.AlterField( + model_name='cfp', + name='active', + field=models.BooleanField(default=False), + ), + ] diff --git a/pyconbalkan/core/static/css/components/faq-accordion.css b/pyconbalkan/core/static/css/components/faq-accordion.css new file mode 100644 index 00000000..e976040c --- /dev/null +++ b/pyconbalkan/core/static/css/components/faq-accordion.css @@ -0,0 +1,52 @@ +.accordion { + background-color: #eee; + color: #444; + cursor: pointer; + padding: 18px; + width: 100%; + border: none; + text-align: left; + outline: none; + font-size: 15px; + transition: 0.4s; +} + +.accordion:hover { + background-color: #ccc; +} + +.accordion:after { + content: "\25BA"; /* "play" icon */ + float: right; + color: #454444; + font-size: 18px; + line-height: 22px; + /* rotate "play" icon from > (right arrow) to down arrow */ + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); +} + +.active:after { + /* rotate "play" icon from > (right arrow) to ^ (up arrow) */ + -webkit-transform: rotate(-90deg); + -moz-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + -o-transform: rotate(-90deg); + transform: rotate(-90deg); + color: #F58723; +} + +.panel { + padding: 0 18px; + background-color: #32383A; + max-height: 0; + overflow: hidden; + transition: max-height 0.2s ease-out; +} + +p { + margin: 20px; +} \ No newline at end of file diff --git a/pyconbalkan/core/static/img/euro-python-society.png b/pyconbalkan/core/static/img/euro-python-society.png new file mode 100644 index 00000000..e948c7b4 Binary files /dev/null and b/pyconbalkan/core/static/img/euro-python-society.png differ diff --git a/pyconbalkan/core/static/js/accordion.js b/pyconbalkan/core/static/js/accordion.js new file mode 100644 index 00000000..a4c80ff9 --- /dev/null +++ b/pyconbalkan/core/static/js/accordion.js @@ -0,0 +1,14 @@ +var acc = document.getElementsByClassName("accordion"); +var i; + +for (i = 0; i < acc.length; i++) { + acc[i].addEventListener("click", function() { + this.classList.toggle("active"); + var panel = this.nextElementSibling; + if (panel.style.maxHeight){ + panel.style.maxHeight = null; + } else { + panel.style.maxHeight = panel.scrollHeight + "px"; + } + }); +} \ No newline at end of file diff --git a/pyconbalkan/core/templates/base.html b/pyconbalkan/core/templates/base.html index b751ad26..ec5880b2 100644 --- a/pyconbalkan/core/templates/base.html +++ b/pyconbalkan/core/templates/base.html @@ -43,6 +43,7 @@ + diff --git a/pyconbalkan/core/templates/includes/event_sidebar.html b/pyconbalkan/core/templates/includes/event_sidebar.html index 3943f1f4..0f65eb57 100644 --- a/pyconbalkan/core/templates/includes/event_sidebar.html +++ b/pyconbalkan/core/templates/includes/event_sidebar.html @@ -1,35 +1,39 @@ {% load static %} diff --git a/pyconbalkan/core/templates/includes/header.html b/pyconbalkan/core/templates/includes/header.html index 42d0fd18..6b0100f4 100644 --- a/pyconbalkan/core/templates/includes/header.html +++ b/pyconbalkan/core/templates/includes/header.html @@ -15,6 +15,7 @@
diff --git a/pyconbalkan/faq/__init__.py b/pyconbalkan/faq/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pyconbalkan/faq/admin.py b/pyconbalkan/faq/admin.py new file mode 100644 index 00000000..3081a880 --- /dev/null +++ b/pyconbalkan/faq/admin.py @@ -0,0 +1,12 @@ +from django.contrib import admin + +from .models import Faq + + +class FaqAdmin(admin.ModelAdmin): + class Meta: + model = Faq + + +admin.site.register(Faq, FaqAdmin) + diff --git a/pyconbalkan/faq/api_urls.py b/pyconbalkan/faq/api_urls.py new file mode 100644 index 00000000..c4e80fae --- /dev/null +++ b/pyconbalkan/faq/api_urls.py @@ -0,0 +1,6 @@ +from rest_framework import routers + +from pyconbalkan.faq.views import FaqViewSet + +router = routers.DefaultRouter() +router.register(r'faq', FaqViewSet) diff --git a/pyconbalkan/faq/apps.py b/pyconbalkan/faq/apps.py new file mode 100644 index 00000000..adcba729 --- /dev/null +++ b/pyconbalkan/faq/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class FaqConfig(AppConfig): + name = 'faq' diff --git a/pyconbalkan/faq/migrations/0001_initial.py b/pyconbalkan/faq/migrations/0001_initial.py new file mode 100644 index 00000000..e7ff0a73 --- /dev/null +++ b/pyconbalkan/faq/migrations/0001_initial.py @@ -0,0 +1,26 @@ +# Generated by Django 2.0.5 on 2018-10-19 20:12 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Faq', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('active', models.BooleanField(default=False)), + ('question', models.CharField(blank=True, max_length=100, null=True)), + ('answer', models.TextField(blank=True, null=True)), + ], + options={ + 'abstract': False, + }, + ), + ] diff --git a/pyconbalkan/faq/migrations/__init__.py b/pyconbalkan/faq/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pyconbalkan/faq/models.py b/pyconbalkan/faq/models.py new file mode 100644 index 00000000..edf37288 --- /dev/null +++ b/pyconbalkan/faq/models.py @@ -0,0 +1,11 @@ +from django.db import models + +from pyconbalkan.core.models import ActiveModel + + +class Faq(ActiveModel): + question = models.CharField(null=True, blank=True, max_length=100) + answer = models.TextField(null=True, blank=True) + + def __str__(self): + return self.question diff --git a/pyconbalkan/faq/serializers.py b/pyconbalkan/faq/serializers.py new file mode 100644 index 00000000..547b5685 --- /dev/null +++ b/pyconbalkan/faq/serializers.py @@ -0,0 +1,9 @@ +from rest_framework import serializers + +from pyconbalkan.faq.models import Faq + + +class FaqSerializer(serializers.ModelSerializer): + class Meta: + model = Faq + fields = '__all__' diff --git a/pyconbalkan/faq/templates/faq.html b/pyconbalkan/faq/templates/faq.html new file mode 100644 index 00000000..95cfdee6 --- /dev/null +++ b/pyconbalkan/faq/templates/faq.html @@ -0,0 +1,41 @@ +{% extends "base.html" %} + +{% load static %} + +{% block main_content %} + + {# Faq #} + + + {% if faq %} +{{ item.answer }}
+