Merge branch 'master' of ssh://ssh.github.com/OpenSlides/OpenSlides

Conflicts:
	openslides/locale/de/LC_MESSAGES/django.po

Signed-off-by: René Köcher <shirk@bitspin.org>
This commit is contained in:
René Köcher 2012-11-22 12:52:11 +01:00
commit ed33b47666
12 changed files with 36 additions and 42 deletions

View File

@ -98,13 +98,12 @@ II. Installation on GNU/Linux and MacOSX
OR
b) Clone development version from mercurial repository
http://hg.openslides.org. This requires Mercurial source control
management (hg):
b) Clone development version from OpenSlides' github repository
https://github.com/OpenSlides/OpenSlides.
This requires Git, see http://git-scm.com/.
Open command line (cmd) and run:
E.g. for Ubuntu run:
$ sudo apt-get install mercurial
$ hg clone http://hg.openslides.org OpenSlides
git clone git://github.com/OpenSlides/OpenSlides.git
3. Setup your virtual environment with virtualenv:

View File

@ -6,17 +6,11 @@ How to create a new portable Windows distribution of OpenSlides:
easy_install -Z django django-mptt reportlab pil
2.) Install OpenSlides by running in the top directory:
python setup.py install
NOTE: This step must be repeated whenever you make changes to OpenSlides.
3.) Run in the main directory of the OpenSlides checkout:
2.) Run in the main directory of the OpenSlides checkout:
python extras\win32-portable\prepare_portable.py
4.) The portable OpenSlides distribution is now ready as a zip archive
3.) The portable OpenSlides distribution is now ready as a zip archive
in the 'dist' directory

View File

@ -18,8 +18,6 @@ import zipfile
import distutils.ccompiler
import distutils.sysconfig
from contextlib import nested
import pkg_resources
sys.path.insert(0, os.getcwd())
@ -80,10 +78,7 @@ SITE_PACKAGES = {
"pil": {
# NOTE: PIL is a special case, see copy_pil
"copy": [],
},
"openslides": {
"copy" : ["openslides"],
},
}
}
PY_DLLS = [
@ -297,9 +292,13 @@ def main():
raise
os.makedirs(odir)
out_site_packages = os.path.join(odir, "site-packages")
collect_lib(libdir, odir)
collect_site_packages(sitedir, os.path.join(odir, "site-packages"))
collect_site_packages(sitedir, out_site_packages)
exclude = get_pkg_exclude("openslides")
copy_dir_exclude(exclude, ".", "openslides", out_site_packages)
if not compile_openslides_launcher():
sys.stdout.write("Using prebuild openslides.exe\n")

View File

@ -3,7 +3,7 @@
"pk": 1,
"model": "auth.group",
"fields": {
"name": "Beobachter",
"name": "Beobachter/in",
"permissions": [
[
"can_see_agenda",
@ -57,7 +57,7 @@
"pk": 2,
"model": "auth.group",
"fields": {
"name": "Delegierter",
"name": "Delegierte/r",
"permissions": [
[
"can_see_agenda",

View File

@ -2189,6 +2189,10 @@ msgstr "Teilnehmer/in ist kein Mitglied einer Gruppe."
msgid "The participant has not logged in yet."
msgstr "Teilnehmer/in hat sich noch nicht angemeldet."
#: participant/templates/projector/GroupSlide.html:11
msgid "participants"
msgstr "Teilnehmer/innen"
#: poll/models.py:95
msgid "Votes invalid"
msgstr "Ungültige Stimmen"

View File

@ -93,10 +93,12 @@
<a href="{% url user_edit user.id %}">
<img src="{% static 'images/icons/edit.png' %}" title="{% trans 'Edit participant' %}">
</a>
{% if user != request_user and not user.is_superuser %}
{% if user != request_user %}
<a href="{% url user_delete user.id %}">
<img src="{% static 'images/icons/delete.png' %}" title="{% trans 'Delete participant' %}">
</a>
{% endif %}
{% if user != request_user and not user.is_superuser %}
<a class="status_link deactivate" href="{% url user_status_deactivate user.id %}" title="{% trans 'Change status to inactive' %}"{% if not user.is_active %} style="display:none"{% endif %}>
<span></span>
</a>

View File

@ -14,7 +14,7 @@
{% endif %}
</li>
{% empty %}
<li>{% trans "None" %}</li>
<li><i>{% trans "None" %}</i></li>
{% endfor %}
</ul>
@ -33,7 +33,7 @@
{% endif %}
</li>
{% empty %}
<li>{% trans "None" %}</li>
<li><i>{% trans "None" %}</i></li>
{% endfor %}
</ul>
{% endif %}
@ -44,6 +44,6 @@
{% for assignment in assignments %}
<li><a href="{% model_url assignment 'view' %}">{{ assignment }}</a></li>
{% empty %}
<li>{% trans "None" %}</li>
<li><i>{% trans "None" %}</i></li>
{% endfor %}
</ul>

View File

@ -6,20 +6,19 @@
{% block title %}{{ block.super }} - {{ title }}{% endblock %}
{% block content %}
<h1>{{ group }}</h1>
<p>{{ group.description }}</p>
<h2>{% trans "Members" %}</h2>
<div class="item_fullscreen">{{ group }}
<span>
<p><i>{{ group.user_set.all.count }} {% trans "participants" %}:</i></p>
<p>
{% if group.user_set.all %}
{{ group.user_set.all|join:", " }}
{% endif %}
</p>
</span>
</div>
{% endblock %}
{% block scrollcontent %}
{% for member in group.user_set.all %}
<p>{{ member }}</p>
{% empty %}
<p>{% trans "No members available." %}</p>
{% endfor %}
{% endblock %}

View File

@ -208,8 +208,6 @@ class UserDeleteView(DeleteView):
def pre_redirect(self, request, *args, **kwargs):
if self.get_object() == self.request.user:
messages.error(request, _("You can not delete yourself."))
elif self.get_object().is_superuser:
messages.error(request, _("You can not delete the administrator."))
else:
super(DeleteView, self).pre_redirect(request, *args, **kwargs)

View File

@ -1 +0,0 @@
{{ welcometext|safe|linebreaks }}

View File

@ -316,7 +316,7 @@ input[type="submit"], input[type="button"] {
padding:4px 10px !important;
margin: 2px 0 2px 0;
}
#id_permissions {
#id_permissions, #id_users {
height: 310px;
}
.button {