Added first draft of new website.

This commit is contained in:
Emanuel Schuetze 2012-07-17 09:55:19 +02:00
parent 0d70a91fba
commit d312778a09
33 changed files with 1990 additions and 0 deletions

10
extras/website/manage.py Normal file
View File

@ -0,0 +1,10 @@
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)

View File

Binary file not shown.

View File

@ -0,0 +1,73 @@
# English translations for OpenSlides website
# Copyright (C) 2012 by OpenSlides team, see AUTHORS
# This file is distributed under the same license as the OpenSlides package.
#
msgid ""
msgstr ""
"Project-Id-Version:OpenSlides Website\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-07-17 09:51+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Emanuel Schuetze <emanuel@intevation.de>\n"
"Language-Team: English \n"
"Language: en\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: settings.py:41
msgid "Deutsch"
msgstr "German"
#: settings.py:42
msgid "Englisch"
msgstr "English"
#: templates/about.html:5 templates/base.html:39
msgid "Über OpenSlides"
msgstr "About OpenSlides"
#: templates/about.html:6 templates/base_about.html:10
msgid "Was ist OpenSlides?"
msgstr "What is OpenSlides?"
#: templates/base.html:40
msgid "Download"
msgstr "Download"
#: templates/base.html:41
msgid "Support"
msgstr "Support"
#: templates/base.html:42 templates/development.html:5
#: templates/development.html.py:6
msgid "Entwicklung"
msgstr ""
#: templates/base.html:43
msgid "Demo"
msgstr "Demo"
#: templates/base.html:46 templates/contact.html:5 templates/contact.html.py:6
msgid "Kontakt"
msgstr "Contact"
#: templates/base_about.html:11 templates/features.html:5
#: templates/features.html.py:6
msgid "Funktionen"
msgstr "Features"
#: templates/base_about.html:12 templates/license.html:5
#: templates/license.html.py:6
msgid "Lizenz"
msgstr "License"
#: templates/base_about.html:13 templates/references.html:5
#: templates/references.html.py:6
msgid "Referenzen"
msgstr "References"
#: templates/base_about.html:14 templates/press.html:5
#: templates/press.html.py:6
msgid "Presse"
msgstr "Press"

View File

@ -0,0 +1,162 @@
# Django settings for website project.
import os
DEBUG = True
TEMPLATE_DEBUG = DEBUG
ADMINS = (
# ('Your Name', 'your_email@example.com'),
)
MANAGERS = ADMINS
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': '', # Or path to database file if using sqlite3.
'USER': '', # Not used with sqlite3.
'PASSWORD': '', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
}
}
SITE_ROOT = os.path.realpath(os.path.dirname(__file__))
# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
# although not all choices may be available on all operating systems.
# On Unix systems, a value of None will cause Django to use the same
# timezone as the operating system.
# If running in a Windows environment this must be set to the same as your
# system time zone.
TIME_ZONE = 'Europe/Berlin'
# Language code for this installation. All choices can be found here:
# http://www.i18nguy.com/unicode/language-identifiers.html
LANGUAGE_CODE = 'de'
ugettext = lambda s: s
LANGUAGES = (
('de', ugettext('Deutsch')),
('en', ugettext('Englisch')),
)
SITE_ID = 1
# If you set this to False, Django will make some optimizations so as not
# to load the internationalization machinery.
USE_I18N = True
# If you set this to False, Django will not format dates, numbers and
# calendars according to the current locale.
USE_L10N = True
# If you set this to False, Django will not use timezone-aware datetimes.
USE_TZ = True
# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = ''
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash.
# Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
MEDIA_URL = ''
# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = ''
# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/static/'
# Additional locations of static files
STATICFILES_DIRS = (
os.path.join(SITE_ROOT, 'static'),
)
# List of finder classes that know how to find static files in
# various locations.
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# 'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
# Make this unique, and don't share it with anybody.
SECRET_KEY = 'qma#6e6=dgtdnk48&amp;+hl)p20o69azhm2gh@&amp;4job9dcek8pgcs'
# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
# 'django.template.loaders.eggs.Loader',
)
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
# Uncomment the next line for simple clickjacking protection:
# 'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
ROOT_URLCONF = 'website.urls'
# Python dotted path to the WSGI application used by Django's runserver.
WSGI_APPLICATION = 'website.wsgi.application'
TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
os.path.join(SITE_ROOT, 'templates'),
)
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
# 'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
)
# A sample logging configuration. The only tangible logging
# performed by this configuration is to send an email to
# the site admins on every HTTP 500 error when DEBUG=False.
# See http://docs.djangoproject.com/en/dev/topics/logging for
# more details on how to customize your logging configuration.
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse'
}
},
'handlers': {
'mail_admins': {
'level': 'ERROR',
'filters': ['require_debug_false'],
'class': 'django.utils.log.AdminEmailHandler'
}
},
'loggers': {
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': True,
},
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,121 @@
/**
* OpenSlides website style
*
* :copyright: 2012 by OpenSlides team, see AUTHORS.
* :license: GNU GPL, see LICENSE for more details.
*/
body {
padding-top: 85px;
}
.subhead {
margin-bottom: 9px;
padding-bottom: 0;
}
.subhead h1 {
font-size: 54px;
}
.jumbotron {
position: relative;
}
.jumbotron h1 {
font-weight: bold;
letter-spacing: -1px;
line-height: 1;
margin-bottom: 9px;
}
.jumbotron p {
font-weight: 300;
margin-bottom: 18px;
}
.jumbotron.btn-large {
border-radius: 6px 6px 6px 6px;
font-size: 20px;
font-weight: normal;
margin-right: 10px;
padding: 14px 24px;
}
.btn-large small {
font-size: 14px;
}
.subnav {
background-color: #EEEEEE;
background-image: -moz-linear-gradient(center top , #F5F5F5 0%, #EEEEEE 100%);
background-repeat: repeat-x;
border: 1px solid #E5E5E5;
border-radius: 4px 4px 4px 4px;
height: 36px;
width: 100%;
}
.subnav .nav {
margin-bottom: 0;
}
.subnav .nav > li > a {
border-left: 1px solid #F5F5F5;
border-radius: 0 0 0 0;
border-right: 1px solid #E5E5E5;
margin: 0;
padding-bottom: 11px;
padding-top: 11px;
}
.subnav .nav > .active > a, .subnav .nav > .active > a:hover {
background-color: #E9E9E9;
border-left: 0 none;
border-right-color: #DDDDDD;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.05) inset;
color: #777777;
padding-left: 13px;
}
.subnav .nav > .active > a .caret, .subnav .nav > .active > a:hover .caret {
border-top-color: #777777;
}
.subnav .nav > li:first-child > a, .subnav .nav > li:first-child > a:hover {
border-left: 0 none;
border-radius: 4px 0 0 4px;
padding-left: 12px;
}
.subnav .nav > li:last-child > a {
border-right: 0 none;
}
.subnav .dropdown-menu {
border-radius: 0 0 4px 4px;
}
.subnav-fixed {
border-color: #D5D5D5;
border-radius: 0 0 0 0;
border-width: 0 0 1px;
box-shadow: 0 1px 0 #FFFFFF inset, 0 1px 5px rgba(0, 0, 0, 0.1);
left: 0;
position: fixed;
right: 0;
top: 40px;
z-index: 1020;
}
.subnav-fixed .nav {
margin: 0 auto;
padding: 0 1px;
width: 938px;
}
.subnav .nav > li:first-child > a, .subnav .nav > li:first-child > a:hover {
border-radius: 0 0 0 0;
}
footer {
background: none repeat scroll 0 0 #252525;
border-top: 0 none;
margin-top: 19px;
padding: 19px 0;
}
footer h4 {
color: #999999;
}
footer p {
color: #999999;
}
footer a {
color: #FFFFFF;
}
footer a:hover {
color: #FFFFFF;
text-decoration: underline;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,76 @@
{% extends "base_about.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - {% trans "Über OpenSlides" %}{% endblock %}
{% block headline %}{% trans "Was ist OpenSlides?" %}{% endblock %}
{% block submenu_about %}active{% endblock %}
{% block lead %}
OpenSlides ist ein freies, webbasiertes Präsentationssystem zur Darstellung
und Steuerung von Tagesordnungen, Anträgen und Wahlen einer Veranstaltung.
{% endblock %}
{% block content %}
<div class="page-header">
<h1>Idee</h1>
</div>
<div class="row">
<div class="span4">
<h3>Ziele</h3>
<p>Mit OpenSlides können alle Inhalte einer Veranstaltung, wie Tagesordnung, Antragstexte,
Redelisten, Kandidatenlisten, Wahlergebnisse usw. zeitaktuell an die Leinwand projiziert
werden. Die Versammlungsleitung steuert und bearbeitet diese Inhalte interaktiv.
Außerdem verwaltet OpenSlides die anwesenden Teilnehmer, um so leicht Kandidaten für
anstehende Wahlen aufzustellen, vorgedruckte Wahlscheine zu generieren und ausgezählte
Wahl- und Abstimmungsergebnisse anzuzeigen.
</p>
</div>
<div class="span4">
<h3>Neuartig</h3>
<p>Neuartig ist vor allem die Funktion, das Plenum mit einzubeziehen: Jeder Teilnehmer auf
einer Veranstaltung hat die Möglichkeit, sich mit dem eigenen Laptop oder Smartphone per
WLAN bei OpenSlides anzumelden. Dabei kann der Teilnehmer z.B. einen Antrag einreichen,
Anträge anderer Teilnehmer unterstützen, bei anstehenden Wahlen kandidieren, Kandidaten
vorschlagen oder Abstimmungsergebnisse nachlesen.
</p>
<p>OpenSlides ist konzipiert für den Einsatz auf Veranstaltungen wie Delegierten- und
Mitgliederversammlungen, Parteitagen und Hauptversammlungen. Eine Teilnehmerbeschränkung
gibt es nicht.
</p>
</div>
<div class="span4">
<h3>Vorteile</h3>
<p>Der entscheidende Vorteil gegenüber herkömmlichen Office-Präsentations-Systemen,
wie MS PowerPoint oder OpenOffice Impress, ist die Bearbeitung der Folien über ein
Redaktionssystem. Der Präsentationsmodus auf dem Beamer muss nicht verlassen werden
und zeigt stets die aktuelle Folie an.
</p>
<p><a class="btn btn-primary" href="{% url features %}">Alle Funktionen &raquo;</a></p>
</div>
</div>
<div class="page-header">
<h1>Historie</h1>
</div>
<div class="row">
<div class="span6">
<p>Im Jahre 2005 wurde ein interner Prototyp von OpenSlides speziell für
den Einsatz auf den Bundesversammlungen des Bundesverbandes der
`Evangelischen StudentInnengemeinde (Bundes-ESG)
<http://www.bundes-esg.de>`_ durch Emanuel Schütze in PHP entwickelt.</p>
</div>
<div class="span6">
<p>Ende 2010 begannen Oskar Hahn und Emanuel Schütze mit einer kompletten
Neuentwicklung in Python/Django und bauten ein Freies Software Produkt
mit dem Namen "OpenSlides" auf. OpenSlides wurde im August 2011 unter
der GNU GPL v2+ veröffentlicht. Version 1.0 ist am 12. September 2011
erschienen. Der erste produktive Einsatz von OpenSlides fand Mitte
September auf der ESG-Bundesversammlung 2011 in Hannover statt.
</p>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,125 @@
{% load i18n %}
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="description" content="Agenda presentation system" />
<meta name="keywords" content="OpenSlides, agenda, application" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>{% block title %}OpenSlides{% endblock %}</title>
<link type="text/css" href="/static/css/bootstrap.css" rel="stylesheet" />
<link type="text/css" href="/static/css/style.css" rel="stylesheet" />
<link href="/static/img/favicon.ico" rel="shortcut icon" />
<script type="text/javascript" src="/static/js/jquery.js"></script>
<script type="text/javascript" src="/static/js/bootstrap.js"></script>
<!-- for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
{% block mainmenu %}
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="/" style="padding: 4px 20px;">
<img src="/static/img/openslides-logo.png" height="33px"> OpenSlides
</a>
<div class="nav-collapse">
<ul class="nav">
<li class="{% block mainmenu_about %}{% endblock %}"><a href="{% url about %}">{% trans "Über OpenSlides" %}</a></li>
<li class="{% block mainmenu_download %}{% endblock %}"><a href="{% url download %}">{% trans "Download" %}</a></li>
<li class="{% block mainmenu_support %}{% endblock %}"><a href="{% url support %}">{% trans "Support" %}</a></li>
<li class="{% block mainmenu_development %}{% endblock %}"><a href="{% url development %}">{% trans "Entwicklung" %}</a></li>
<li id="demo" class="{% block mainmenu_demo %}{% endblock %}"><a href="{% url demo %}">{% trans "Demo" %}</a></li>
</ul>
<ul class="nav pull-right">
<li class="{% block mainmenu_contact %}{% endblock %}"><a href="{% url contact %}">{% trans "Kontakt" %}</a></li>
<li class="divider-vertical"></li>
{% get_available_languages as languages %}
{% for lang_code, lang_name in languages %}
{% language lang_code %}
<li {% if LANGUAGE_CODE == lang_code %}class="active"{% endif %}><a href="{{lang_code}}"><i class="icon-flag icon-white"></i> {{ lang_name }}</a></li>
{% endlanguage %}
{% endfor %}
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
</div>
{% endblock %}
<div class="container">
{% block container %}
{% block header %}
<header id="overview" class="jumbotron subhead">
<h1>{% block headline %}{% endblock %}</h1>
<p class="lead">{% block lead %}{% endblock %}</p>
{% block submenu %}{% endblock %}
</header>
{% endblock %}
{% block content %}{% endblock %}
{% endblock %}
</div> <!-- /container -->
<footer>
<div class="container">
<div class="row">
<div class="span12">
<div class="row">
<div class="span3">
<h4>Produkt</h4>
<ul class="unstyled">
<li><a href="{% url about %}">Was ist OpenSlides?</a></li>
<li><a href="{% url features %}">Funktionen</a></li>
<li><a href="{% url license %}">Lizenz</a></li>
<li><a href="{% url references %}">Referenzen</a></li>
<li><a href="{% url press %}">Presse</a></li>
<li><a href="{% url download %}">Download</a></li>
<li><a href="{% url demo %}">Demo</a></li>
</ul>
</div>
<div class="span3">
<h4>Support & Dokumentation</h4>
<ul class="unstyled">
<li><a href="{% url support %}">Professioneller Support</a></li>
<li><a href="#">FAQ</a></li>
<li><a href="#">Handbuch</a></li>
<li><a href="http://dev.openslides.org/">Wiki</a></li>
</ul>
</div>
<div class="span3">
<h4>Entwicklung</h4>
<ul class="unstyled">
<li><a href="http://dev.openslides.org">Wiki</a></li>
<li><a href="http://dev.openslides.org/roadmap">Roadmap</a></li>
<li><a href="http://dev.openslides.org/report/3">Tickets</a></li>
<li><a href="http://dev.openslides.org/browser">Quellcode durchsuchen</a></li>
</ul>
</div>
<div class="span3">
<h4>More</h4>
<ul class="unstyled">
<li><a href="#">Spenden</a></li>
<li><a href="{% url contact %}">Kontakt</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
</footer>
</body>
</html>

View File

@ -0,0 +1,17 @@
{% extends "base.html" %}
{% load i18n %}
{% block mainmenu_about %}active{% endblock %}
{% block submenu %}
<div class="subnav subnav-fixed">
<ul class="nav nav-pills">
<li class="{% block submenu_about %}{% endblock %}"><a href="{% url about %}">{% trans "Was ist OpenSlides?" %}</a></li>
<li class="{% block submenu_features %}{% endblock %}"><a href="{% url features %}">{% trans "Funktionen" %}</a></li>
<li class="{% block submenu_license %}{% endblock %}"><a href="{% url license %}">{% trans "Lizenz" %}</a></li>
<li class="{% block submenu_references %}{% endblock %}"><a href="{% url references %}">{% trans "Referenzen" %}</a></li>
<li class="{% block submenu_press %}{% endblock %}"><a href="{% url press %}">{% trans "Presse" %}</a></li>
</ul>
</div>
{% endblock %}

View File

@ -0,0 +1,16 @@
{% extends "base.html" %}
{% load i18n %}
{% block mainmenu_support %}active{% endblock %}
{% block submenu %}
<div class="subnav subnav-fixed">
<ul class="nav nav-pills">
<li class="{% block submenu_support %}{% endblock %}"><a href="{% url support %}">Professioneller Support</a></li>
<li><a href="#">FAQ</a></li>
<li><a href="#">Handbuch</a></li>
<li><a href="http://dev.openslides.org/">Wiki</a></li>
</ul>
</div>
{% endblock %}

View File

@ -0,0 +1,74 @@
{% extends "base.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - {% trans "Kontakt" %}{% endblock %}
{% block headline %}{% trans "Kontakt" %}{% endblock %}
{% block mainmenu_contact %}active{% endblock %}
{% block lead %}
Kontaktmöglichkeiten zur OpenSlides Community
{% endblock %}
{% block content %}
<h3>Mailinglisten</h3>
<p>OpenSlides bietet öffentliche Mailinglisten zur Koordination der Entwicklung
sowie Diskussion von Tickets, Anwenderfragen und speziellen Anwendungsfällen.
Bei Problemen und Fragen zu OpenSlides schreiben Sie einfach an die
OpenSlides-Mailingliste in Ihrer Sprache.
Hinweis: Bitte abonnieren Sie eine Mailingliste bevor Sie an diese schreiben wollen!</p>
<blockquote>
<p><strong>users-de@openslides.org</strong><small>Deutschsprachige Mailingliste für Anwender und Entwickler</small></p>
<p><a class="btn btn-primary" href="http://mail.openslides.org/listinfo/users-de/ ">Abonnieren &raquo;</a>
<a class="btn" href="http://mail.openslides.org/pipermail/users-de/ ">Archiv &raquo;</a></p>
<br>
<p><strong>users-en@openslides.org</strong><small>Englischsprachige Mailingliste für Anwender und Entwickler</small></p>
<p><a class="btn btn-primary" href="http://mail.openslides.org/listinfo/users-en/">Abonnieren &raquo;</a>
<a class="btn" href="http://mail.openslides.org/pipermail/users-en/">Archiv &raquo;</a></p>
<br>
<p><strong>commit@openslides.org<small>HG-commit-Mailingliste von hg.openslides.org (moderiert), für Entwickler</small></strong></p>
<p><a class="btn btn-primary" href="http://mail.openslides.org/listinfo/commit/">Abonnieren &raquo;</a>
<a class="btn" href="http://mail.openslides.org/pipermail/commit/">Archiv &raquo;</a></p>
</blockquote>
<h3>Professionelle Unterstützung</h3>
<p>Sie haben Interesse an OpenSlides und denken über einen Einsatz auf Ihrer
Veranstaltung nach? Sie suchen dafür professionelle, technische Unterstützung
bei der Vorbereitung? Dann kontaktieren Sie uns! Wir beraten Sie gerne.</p>
<p>Ihr Ansprechpartner:<p>
<blockquote>
<p>Emanuel Schütze<br>
Intevation GmbH<br>
Neuer Graben 17<br>
D-49074 Osnabrück<br>
E-Mail: <a href="mailto:emanuel.schuetze@intevation.de">emanuel.schuetze@intevation.de</a><br>
Tel: ++49-541-335083-746</p>
</blockquote>
<h3>IRC</h3>
<p>Für den direkten Kontakt zwischen interessierten OpenSlides-Anwendern
und -Entwicklern nutzen Sie IRC (ein textbasierter Chat):</p>
<blockquote>
<p>Netzwerk: freenode<br>
Kanal: #openslides</p>
<p><a class="btn btn-primary" href="irc://irc.freenode.net/#openslides">IRC Chat starten &raquo;</a></p>
</blockquote>
<h3>Probleme berichten</h3>
<p>Bitte nutzen Sie unser <a href="http://dev.openslides.org/report/3">Ticketsystem</a>
um Problem mit OpenSlides zu berichten.</p>
{% endblock %}

View File

@ -0,0 +1,39 @@
{% extends "base.html" %}
{% block title %}{{ block.super }} - Demo{% endblock %}
{% block headline %}Demo{% endblock %}
{% block mainmenu_demo %}active{% endblock %}
{% block lead %}
Entdecken Sie die Funktionen von OpenSlides in dieser Online-Demo.
{% endblock %}
{% block content %}
<p>
<a class="btn btn-primary btn-large" href="http://demo.openslides.org/login">
OpenSlides Demo starten &raquo;
</a>
</p>
<p>Es sind drei Demo-Nutzer mit unterschiedlichen Rechten eingerichtet:</p>
<blockquote>
<p><strong>Tagesleitung</strong></p>
<p>Nutzername: demo<br>
Passwort: demo</p>
<br>
<p><strong>Delegierter</strong></p>
<p>Nutzername: delegierter<br>
Passwort: demo</p>
<br>
<p><strong>Gast:</strong></p>
<p>ohne Zugangsdaten</p>
</blockquote>
<p><span class="label label-warning">Achtung:</span> Die Demo wird täglich zurückgesetzt!</p>
{% endblock %}

View File

@ -0,0 +1,37 @@
{% extends "base.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - {% trans "Entwicklung" %}{% endblock %}
{% block headline %}{% trans "Entwicklung" %}{% endblock %}
{% block mainmenu_development %}active{% endblock %}
{% block content %}
<div class="row">
<div class="span3">
<h3>Wiki</h3>
<p>TODO</p>
<p><a class="btn" href="http://dev.openslides.org">Wiki &raquo;</a></p>
</div>
<div class="span3">
<h3>Roadmap</h3>
<p>TODO</p>
<p><a class="btn" href="http://dev.openslides.org/roadmap">Roadmap &raquo;</a></p>
</div>
<div class="span3">
<h3>Tickets</h3>
<p>TODO</p>
<p><a class="btn" href="http://dev.openslides.org/report/3">Tickets &raquo;</a></p>
</div>
<div class="span3">
<h3>Quellcode durchsuchen</h3>
<p>TODO</p>
<p><a class="btn" href="http://dev.openslides.org/browser">Quellcode durchsuchen &raquo;</a></p>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,63 @@
{% extends "base.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - Download{% endblock %}
{% block headline %}Download{% endblock %}
{% block mainmenu_download %}active{% endblock %}
{% block lead %}Aktuelle Version: OpenSlides 1.2-rc1 (veröffentlicht am 16.7.2012){% endblock %}
{% block content %}
<div class="row">
<div class="span6">
<h3>Für Windows</h3>
<p>
<a class="jumbotron btn btn-primary btn-large"
href="http://openslides.org/download/Beta/openslides-1.2-rc1-portable.zip">
Download OpenSlides<br>
<small>v1.2-rc1 | .zip | 10 MB</small></a>
</p>
<p>Portable Version mit openslides.exe</p>
<p><a href="#">Installationsanleitung</a></p>
</div>
<div class="span6">
<h3>Für Linux/MacOS</h3>
<p>
<a class="jumbotron btn btn-primary btn-large"
href="http://openslides.org/download/Beta/openslides-1.2-rc1-portable.tar.gz">
Download OpenSlides <br><small>v1.2-rc1 | .tar.gz | 1 MB</small></a>
</p>
<p><a href="#">Installationsanleitung</a></p>
</div>
</div>
<br>
<p>
<a class="btn btn-large"
href="http://openslides.org/download/">
Ältere Versionen und Prüfsummen &raquo;</a>
</p>
<br>
<h2>Quellcode</h2>
<p>Der aktuelle Entwicklungstand von OpenSlides kann im öffentlichen
Quellcode-Repository eingesehen werden.</p>
<p>Zum Auschecken des Quellcodes von OpenSlides nutzen Sie:</p>
<p><code>hg clone http://hg.openslides.org</code></p>
</div>
{% endblock %}
{% block sidebar %}
<div id="sidebar">
<h3>Sidebar</h3>
<p>TODO</p>
</div>
{% endblock %}

View File

@ -0,0 +1,208 @@
{% extends "base_about.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - {% trans "Funktionen" %}{% endblock %}
{% block headline %}{% trans "Funktionen" %}{% endblock %}
{% block submenu_features %}active{% endblock %}
{% block lead %}
Alle Funktionen von OpenSlides im Überblick.
{% endblock %}
{% block content %}
<div class="page-header">
<h1>Tagesordnung</h1>
</div>
<div class="row">
<div class="span4">
<h3>Verwalten & Steuern</h3>
<p>Mit OpenSlides können alle Inhalte einer Veranstaltung, wie Tagesordnung, Antragstexte,
Redelisten, Kandidatenlisten, Wahlergebnisse usw. zeitaktuell an die Leinwand projiziert
werden. Die Versammlungsleitung steuert und bearbeitet diese Inhalte interaktiv.
Außerdem verwaltet OpenSlides die anwesenden Teilnehmer, um so leicht Kandidaten für
anstehende Wahlen aufzustellen, vorgedruckte Wahlscheine zu generieren und ausgezählte
Wahl- und Abstimmungsergebnisse anzuzeigen.
</p>
</div>
<div class="span4">
<h3>Projizieren</h3>
<p>Neuartig ist vor allem die Funktion, das Plenum mit einzubeziehen: Jeder Teilnehmer auf
einer Veranstaltung hat die Möglichkeit, sich mit dem eigenen Laptop oder Smartphone per
WLAN bei OpenSlides anzumelden. Dabei kann der Teilnehmer z.B. einen Antrag einreichen,
Anträge anderer Teilnehmer unterstützen, bei anstehenden Wahlen kandidieren, Kandidaten
vorschlagen oder Abstimmungsergebnisse nachlesen.
</p>
<p>OpenSlides ist konzipiert für den Einsatz auf Veranstaltungen wie Delegierten- und
Mitgliederversammlungen, Parteitagen und Hauptversammlungen. Eine Teilnehmerbeschränkung
gibt es nicht.
</p>
</div>
<div class="span4">
<h3>PDF erzeugen</h3>
<p>Der entscheidende Vorteil gegenüber herkömmlichen Office-Präsentations-Systemen,
wie MS PowerPoint oder OpenOffice Impress, ist die Bearbeitung der Folien über ein
Redaktionssystem. Der Präsentationsmodus auf dem Beamer muss nicht verlassen werden
und zeigt stets die aktuelle Folie an.
</p>
<ul>
<li>Tagesordnung verwalten</li>
<li>Eintrag auswählen - zur Anzeige am Beamer</li>
<li>Eintrag bearbeiten - während der Anzeige am Beamer</li>
<li>Beamer-Ansicht mit automatischer Aktualisierung bei Änderung (der Beamer läuft im Browser mit Vollbildmodus, z.B. als 2. Monitor)</li>
<li>Einträge sortieren - per Drag&Drop in der Tagesordnung (Unterpunkte möglich)</li>
<li>Eintrag markieren - als erledigt und versteckt</li>
<li>Tagesordnung als PDF erzeugen</li>
<li>aktuelle Uhrzeit auf der Beameransicht</li>
</ul>
</div>
</div>
<div class="page-header">
<h1>Anträge</h1>
</div>
<div class="row">
<div class="span4">
<h3>Verwalten & Steuern</h3>
<p>
<ul>
<li>Anträge verwalten</li>
<li>Anträge von anderen Teilnehmern unterstützen lassen</li>
<li>Antragsstatus ändern</li>
<li>Abstimmungsergebnisse eingeben und darstellen - mehreren Abstimmungsvorgänge möglich (Abstimmungsmodus: Ja/Nein/Enthaltung sowie ungültige und abgegebene Stimmen)</li>
<li>Antrag als Tagesordnungseintrag anlegen und anzeigen</li>
<li>Versionshistorie eines Antrags anzeigen</li>
<li>Alle Änderungen eines Antrags (Text, Status, Unterstützer etc.) werden protokolliert</li>
<li>Antragsformular und Übersicht aller Anträge als PDF erzeugen</li>
</ul>
</p>
</div>
<div class="span4">
<h3>Projizieren</h3>
<p>TODO
</p>
</div>
<div class="span4">
<p><a class="thumbnail" href="#">
<img alt="" src="http://placehold.it/260x180">
</a></p>
</div>
</div>
<div class="page-header">
<h1>Wahlen</h1>
</div>
<div class="row">
<div class="span4">
<h3>Verwalten & Steuern</h3>
<p>
<ul>
<li>Wahlen verwalten</li>
<li>Kandidaten aus Teilnehmerliste für eine Wahl vorschlagen (bzw. als angemeldeter Teilnehmer selbst kandidieren)</li>
<li>Wahlschein als pdf generieren (mit Ankreuzfeldern)</li>
<li>Wahlergebenisse eingeben und darstellen - mehrere Wahlgänge und Stichwahlen werden unterstützt</li>
<li>Wahlmodus: nur Ja-Stimmen oder Ja/Nein/Enthaltungs-Stimmen (abhängig von der Anzahl der Kandiaten und Posten), ungültige und abgegebene Stimmen können immer eingegeben werden</li>
</ul>
</p>
</div>
<div class="span4">
<h3>Projizieren</h3>
<p>TODO
</p>
</div>
<div class="span4">
<p><a class="thumbnail" href="#">
<img alt="" src="http://placehold.it/260x180">
</a></p>
</div>
</div>
<div class="page-header">
<h1>Teilnehmer</h1>
</div>
<div class="row">
<div class="span4">
<h3>Verwalten & Steuern</h3>
<p>
<ul>
<li>Teilnehmer verwalten (vordefinierte Felder: Name, Vorname, Geschlecht, E-Mail, Gruppe, Typ, Amt)</li>
<li>importieren von Teilnehmerdaten (im CSV-Format)</li>
<li>Benutzergruppe frei konfigurierbar (voreingestellt sind: Beobachter, Delegierte, Tagesleitung, Teilnehmerverwaltung)</li>
</ul>
</p>
</div>
<div class="span4">
<h3>Projizieren</h3>
<p>TODO
</p>
</div>
<div class="span4">
<p><a class="thumbnail" href="#">
<img alt="" src="http://placehold.it/260x180">
</a></p>
</div>
</div>
<div class="page-header">
<h1>Allgemein</h1>
</div>
<div class="row">
<div class="span4">
<h3>TODO</h3>
<p>
<ul>
<li>Template für Beamer und Webinterface leicht per HTML und CSS anpassbar</li>
<li>Veranstaltungssepzifische Daten (Veranstaltungsname, Ort, Zeitraum, Antragseinleitungssatz, minimale Unterstützeranzahl, Sprache) konfigurierbar</li>
<li>OpenSlides ist Freie Software (GNU GPL v2+ Lizenz)</li>
<li>Plattformunabhängig (OpenSlides läuft überall dort, wo Pyhton läuft)</li>
<li>vollständige deutsche und englische Übersetzung vorhanden - weitere Sprachen willkommen!</li>
</ul>
</p>
</div>
<div class="span4">
<h3>TODO</h3>
<p>TODO
</p>
</div>
<div class="span4">
<p><a class="thumbnail" href="#">
<img alt="" src="http://placehold.it/260x180">
</a></p>
</div>
</div>
<div class="page-header">
<h1>Aublick <small>Weiterentwicklungsideen für OpenSlides</small></h1>
</div>
<div class="row">
<div class="span4">
<h3>TODO</h3>
<p>
<ul>
<li>schnelle und einfache Erstellung eines Ergebnisprotokolls (mit allen Tagesordnungseinträgen, Beschlüssen, Anträgen, Abstimmungen und Wahlergbnissen)</li>
<li>grafische Darstellung der Wahl- und Abstimmungsergebnisse in Diagrammen</li>
<li>Einbindung von Grafiken in Tagesordnungseinträge</li>
<li>... (mehr im <a href="http://dev.openslides.org/report/3">Trac-Ticketsystem</a>)</li>
</ul>
</p>
</div>
<div class="span4">
<h3>TODO</h3>
<p>TODO
</p>
</div>
<div class="span4">
<p><a class="thumbnail" href="#">
<img alt="" src="http://placehold.it/260x180">
</a></p>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,60 @@
{% extends "base.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - Home{% endblock %}
{% block header %}
<style type="text/css">
#headline { height: 350px;}
</style>
{% endblock %}
{% block mainmenu_home %}active{% endblock %}
{% block container %}
<div class="hero-unit">
<div class="thumbnail span5" style="float:right; margin: 5px;">
<img src="/static/img/agenda-overview_de.png" alt="">
</div>
<span>
<h1>OpenSlides</h1>
<br>
<p><strong>Mehr Transparanz. Mehr Offenheit. Mehr Effizienz.<br>
Die Lösung für Ihre Versammlung!</strong></p>
<br>
<p>OpenSlides ist ein freies, webbasiertes Präsentations- und Versammlungssystem zur
Darstellung und Steuerung von Tagesordnungen, Anträgen und Wahlen einer Veranstaltung.</p>
<p>
<br>
<a class="btn btn-primary btn-large" href="{% url about %}">
Lernen Sie mehr &raquo;
</a>
<a class="btn btn-large" href="{% url demo %}">
Demo
</a>
</p>
</span>
</div>
<div class="row">
<div class="span4">
<h2>Heading</h2>
<p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span4">
<h2>Heading</h2>
<p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span4">
<h2>Heading</h2>
<p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,26 @@
{% extends "base_about.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - {% trans "Lizenz" %}{% endblock %}
{% block headline %}{% trans "Lizenz" %}{% endblock %}
{% block submenu_license %}active{% endblock %}
{% block lead %}
OpenSlides ist Freie Open Source Software.
{% endblock %}
{% block content %}
<div class="row">
<div class="span9">
OpenSlides steht unter der <strong>GNU General Public
License (GNU GPL) Version 2+</strong> und darf ohne Restriktionen
(unter den Bedingungen der Lizenz) benutzt, verändert und (geändert)
weitergegeben werden. Eine Kopie der Lizenz liegt jedem
OpenSlides-Release bei und ist auch in der
<a href="http://dev.openslides.org/browser/LICENSE">LICENSE-Datei</a> im
Quellcode-Repository nachzulesen.
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,8 @@
{% extends "base_about.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - {% trans "Presse" %}{% endblock %}
{% block headline %}{% trans "Presse" %}{% endblock %}
{% block submenu_press %}active{% endblock %}

View File

@ -0,0 +1,29 @@
{% extends "base_about.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - {% trans "Referenzen" %}{% endblock %}
{% block headline %}{% trans "Referenzen" %}{% endblock %}
{% block submenu_references %}active{% endblock %}
{% block lead %}
Auf zahlreichen Veranstaltungen war OpenSlides bereits erfolgreich im Einsatz.
{% endblock %}
{% block content %}
<div class="row">
<div class="span9">
<p>Hier eine Auswahl. Ergänzungen bitte an
<a href="mailto:support@openslides.org">support@openslides.org</a> senden!</p>
<ul>
<li>Bundesversammlung der <a class="reference external" href="http://www.bundes-esg.de">Evangelischen StudentInnengemeinde in der
Bundesrepublik Deutschland (ESG)</a></li>
<li>Mitgliederversammlung der <a class="reference external" href="http://aej-online.de">Arbeitsgemeinschaft der Evangelischen Jugend in Deutschland e. V. (aej)</a></li>
<li>Parteitage der <a class="reference external" href="http://www.piratenpartei.de">Piratenpartei Deutschland</a> (Bundes- Landes-, Kreisparteitage)</li>
<li>Landesparteitag von <a class="reference external" href="http://hamburg.gruene.de/">BÜNDNIS 90/DIE GRÜNEN Landesverband Hamburg</a></li>
<li>...</li>
</ul>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,41 @@
{% extends "base_support.html" %}
{% load i18n %}
{% block title %}{{ block.super }} - Support{% endblock %}
{% block headline %}Support{% endblock %}
{% block submenu_support %}active{% endblock %}
{% block lead %}
Die Intevation GmbH bietet Ihnen professionellen Support beim Einsatz von OpenSlides auf Ihrer Veranstaltung an.
{% endblock %}
{% block content %}
<div class="page-header">
<h1>OpenSlides Professional Pakete</h1>
</div>
<div class="row">
<div class="span3">
<h3>Paket 1</h3>
<p>TODO</p>
<p><a class="btn" href="#">Details &raquo;</a></p>
</div>
<div class="span3">
<h3>Paket 2</h3>
<p>TODO</p>
<p><a class="btn" href="#">Details &raquo;</a></p>
</div>
<div class="span3">
<h3>Paket 3</h3>
<p>TODO</p>
<p><a class="btn" href="#">Details &raquo;</a></p>
</div>
<div class="span3">
<h3>Paket 4</h3>
<p>TODO</p>
<p><a class="btn" href="#">Details &raquo;</a></p>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,23 @@
from django.conf.urls import patterns, include, url
from django.conf.urls.i18n import i18n_patterns
from django.views.generic import TemplateView
#from views import TemplateView
# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
# admin.autodiscover()
urlpatterns = patterns('',
url(r'^$', TemplateView.as_view(template_name="home.html"), name='home',),
url(r'^index/$', TemplateView.as_view(template_name="index.html"), name='index',),
url(r'^about/$', TemplateView.as_view(template_name="about.html"), name='about',),
url(r'^about/features$', TemplateView.as_view(template_name="features.html"), name='features',),
url(r'^about/license$', TemplateView.as_view(template_name="license.html"), name='license',),
url(r'^about/references$', TemplateView.as_view(template_name="references.html"), name='references',),
url(r'^about/press$', TemplateView.as_view(template_name="press.html"), name='press',),
url(r'^download/$', TemplateView.as_view(template_name="download.html"), name='download',),
url(r'^support/$', TemplateView.as_view(template_name="support.html"), name='support',),
url(r'^development/$', TemplateView.as_view(template_name="development.html"), name='development',),
url(r'^contact/$', TemplateView.as_view(template_name="contact.html"), name='contact',),
url(r'^demo/$', TemplateView.as_view(template_name="demo.html"), name='demo',),
)

View File

@ -0,0 +1,7 @@
# Oskar
class TemplateView(_TemplateView):
def get_context_data(self, **kwargs):
context = super(TemplateView, self).get_context_data(**kwargs)
context[request] = self.request
return context

View File

@ -0,0 +1,9 @@
from django.views.generic import TemplateView
class TemplateView():
def get_context_data(self, **kwargs):
context = super(TemplateView, self).get_context_data(**kwargs)
print self.request
# template_manipulation.send(sender=self.__class__, request=self.request, context=context)
return context

View File

@ -0,0 +1,28 @@
"""
WSGI config for website project.
This module contains the WSGI application used by Django's development server
and any production WSGI deployments. It should expose a module-level variable
named ``application``. Django's ``runserver`` and ``runfcgi`` commands discover
this application via the ``WSGI_APPLICATION`` setting.
Usually you will have the standard Django WSGI application here, but it also
might make sense to replace the whole Django WSGI application with a custom one
that later delegates to the Django one. For example, you could introduce WSGI
middleware here, or combine a Django application with an application of another
framework.
"""
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
# This application object is used by any WSGI server configured to use this
# file. This includes Django's development server, if the WSGI_APPLICATION
# setting points here.
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
# Apply WSGI middleware here.
# from helloworld.wsgi import HelloWorldApplication
# application = HelloWorldApplication(application)