Merge remote-tracking branch 'emanuel/newtemplate' into new_template
Conflicts: .travis.yml INSTALL.txt openslides/agenda/templates/agenda/base_agenda.html openslides/agenda/templates/agenda/edit.html openslides/agenda/templates/agenda/item_row.html openslides/agenda/templates/agenda/overview.html openslides/agenda/templates/agenda/widget.html openslides/assignment/templates/assignment/base_assignment.html openslides/assignment/templates/assignment/config.html openslides/assignment/templates/assignment/edit.html openslides/assignment/templates/assignment/overview.html openslides/assignment/templates/assignment/poll_view.html openslides/assignment/templates/assignment/view.html openslides/assignment/templates/assignment/widget.html openslides/config/templates/config/general.html openslides/motion/templates/motion/base_motion.html openslides/motion/templates/motion/config.html openslides/motion/templates/motion/edit.html openslides/motion/templates/motion/import.html openslides/motion/templates/motion/overview.html openslides/motion/templates/motion/poll_view.html openslides/motion/templates/motion/view.html openslides/motion/templates/motion/widget.html openslides/motion/views.py openslides/participant/templates/participant/base_participant.html openslides/participant/templates/participant/config.html openslides/participant/templates/participant/edit.html openslides/participant/templates/participant/group_edit.html openslides/participant/templates/participant/group_widget.html openslides/participant/templates/participant/import.html openslides/participant/templates/participant/login.html openslides/participant/templates/participant/overview.html openslides/participant/templates/participant/password_change.html openslides/participant/templates/participant/settings.html openslides/participant/templates/participant/user_widget.html openslides/projector/templates/projector/base_projector.html openslides/projector/templates/projector/control_countdown.html openslides/projector/templates/projector/control_overlay_message.html openslides/projector/templates/projector/custom_slide_widget.html openslides/projector/templates/projector/live_view_widget.html openslides/projector/templates/projector/new.html openslides/projector/templates/projector/overlay_widget.html openslides/templates/base.html openslides/utils/template.py openslides/utils/views.py requirements.txt
@ -3,7 +3,7 @@ python:
|
||||
- "2.6"
|
||||
- "2.7"
|
||||
install:
|
||||
- easy_install https://www.djangoproject.com/download/1.5c1/tarball/
|
||||
- easy_install https://www.djangoproject.com/download/1.5b2/tarball/
|
||||
- pip install -r requirements.txt --use-mirrors
|
||||
- python extras/scripts/create_local_settings.py
|
||||
script:
|
||||
|
@ -31,12 +31,8 @@ URL_SETS = {
|
||||
"/jsi18n/",
|
||||
"/static/styles/base.css",
|
||||
"/static/javascript/utils.js",
|
||||
"/static/javascript/jquery.js",
|
||||
"/static/images/bg-submenu.gif",
|
||||
"/static/images/bg-header.gif",
|
||||
"/static/images/logo.png",
|
||||
"/static/images/icons/dialog-information.png",
|
||||
"/static/images/icons/cross.png",
|
||||
"/static/javascript/jquery.min.js",
|
||||
"/static/img/logo.png",
|
||||
],
|
||||
"agenda": [
|
||||
"/agenda/",
|
||||
@ -44,25 +40,15 @@ URL_SETS = {
|
||||
"/static/styles/tabledrag.css",
|
||||
"/static/javascript/utils.js",
|
||||
"/static/styles/agenda.css",
|
||||
"/static/javascript/jquery.js",
|
||||
"/static/javascript/jquery.min.js",
|
||||
"/jsi18n/",
|
||||
"/static/images/bg-header.gif",
|
||||
"/static/images/bg-submenu.gif",
|
||||
"/static/images/logo.png",
|
||||
"/static/images/icons/application-pdf.png",
|
||||
"/static/images/icons/cross.png",
|
||||
],
|
||||
"application": [
|
||||
"/application/",
|
||||
"/static/styles/base.css",
|
||||
"/static/javascript/utils.js",
|
||||
"/static/javascript/jquery.js",
|
||||
"/static/javascript/jquery.min.js",
|
||||
"/jsi18n/",
|
||||
"/static/images/bg-header.gif",
|
||||
"/static/images/bg-submenu.gif",
|
||||
"/static/images/icons/cross.png",
|
||||
"/static/images/logo.png",
|
||||
"/static/images/icons/application-pdf.png",
|
||||
]
|
||||
}
|
||||
|
||||
|
@ -20,7 +20,7 @@ function hideClosedSlides(hide) {
|
||||
if (hide) {
|
||||
$('#hidelink').attr('title', 'show');
|
||||
$('#hidelink').removeClass('hide').addClass('show');
|
||||
$('.close_link.closed').parent().parent().each(function() {
|
||||
$('.close_link .icon-checked-new').parent().parent().parent().each(function() {
|
||||
hideLine($(this));
|
||||
});
|
||||
hidden = $('#menu-overview tr:hidden').size();
|
||||
@ -35,21 +35,26 @@ function hideClosedSlides(hide) {
|
||||
}
|
||||
|
||||
$(function() {
|
||||
$('.close_link a').click(function(event) {
|
||||
// change participant status (on/off)
|
||||
$('.close_link').click(function(event) {
|
||||
event.preventDefault();
|
||||
slide = $(this);
|
||||
var link = $(this);
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: slide.attr('href'),
|
||||
url: $(this).attr('href'),
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
if (data.closed) {
|
||||
newclass = 'closed';
|
||||
newclass = 'icon-checked-new';
|
||||
link.parent().parent().addClass('offline');
|
||||
link.addClass('btn-success');
|
||||
} else {
|
||||
newclass = 'open';
|
||||
newclass = 'icon-unchecked-new';
|
||||
link.parent().parent().removeClass('offline');
|
||||
link.removeClass('btn-success');
|
||||
}
|
||||
slide.parent().removeClass('closed open').addClass(newclass);
|
||||
slide.attr('href', data.link);
|
||||
link.children('i').removeClass('icon-checked-new icon-unchecked-new').addClass(newclass);
|
||||
link.attr('href', data.link);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -19,6 +19,7 @@
|
||||
background-image: url(../images/icons/close.png);
|
||||
}
|
||||
|
||||
table#menu-overview {
|
||||
white-space: nowrap;
|
||||
}
|
||||
tr.topline td {
|
||||
border-bottom: 1px solid #333333;
|
||||
background-color: #CDCDCD;
|
||||
}
|
@ -1,43 +0,0 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block submenu %}
|
||||
{% url 'item_overview' as url_itemoverview %}
|
||||
{% url 'item_new' as url_itemnew %}
|
||||
<h4 class="sectiontitle">{% trans "Agenda" %}</h4>
|
||||
<ul>
|
||||
<li class="{% if request.path == url_itemoverview %}selected{% endif %}"><a href="{% url 'item_overview' %}">{% trans "All items" %}</a></li>
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<li class="{% active request '/agenda/new/' %}"><a href="{% url 'item_new' %}">{% trans "New item" %}</a></li>
|
||||
{% endif %}
|
||||
<li><a href="{% url 'print_agenda' %}"><img src="{% static 'images/icons/pdf.png' %}"> {% trans 'Agenda as PDF' %}</a></li>
|
||||
</ul>
|
||||
|
||||
{# second submenu #}
|
||||
{% if item %}
|
||||
<br>
|
||||
<h3>{{ item.title }}</h3>
|
||||
<ul>
|
||||
{# view item #}
|
||||
{% url 'item_view' item.id as url_itemview %}
|
||||
<li class="{% if request.path == url_itemview %}selected{% endif %}"><a href="{% url 'item_view' item.id %}">{% trans 'View item' %}</a></li>
|
||||
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
{# edit item #}
|
||||
{% url 'item_edit' item.id as url_itemedit %}
|
||||
<li class="{% if request.path == url_itemedit %}selected{% endif %}"><a href="{% url 'item_edit' item.id %}"><img src="{% static 'images/icons/edit.png' %}"> {% trans 'Edit item' %}</a></li>
|
||||
{# delete item #}
|
||||
<li><a href="{% url 'item_delete' item.id %}"><img src="{% static 'images/icons/delete.png' %}"> {% trans 'Delete item' %}</a></li>
|
||||
{% endif %}
|
||||
|
||||
{# activate item #}
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<li><a href="{% url 'projector_activate_slide' item.sid %}"><img src="{% static 'images/icons/projector.png' %}"> {% trans 'Show item' %}</a></li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
@ -5,7 +5,9 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Agenda settings" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Agenda settings" %}</h1>
|
||||
<h1>{% trans "Configuration" %}: {% trans "Agenda" %}
|
||||
{% block config_submenu %}{{ block.super }}{% endblock %}
|
||||
</h1>
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
<p>
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "agenda/base_agenda.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
@ -12,24 +12,22 @@
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{% if item %}
|
||||
<h1>{% trans "Edit item" %}</h1>
|
||||
{% else %}
|
||||
<h1>{% trans "New item" %}</h1>
|
||||
{% endif %}
|
||||
<h1>
|
||||
{% if item %}
|
||||
{% trans "Edit item" %}
|
||||
{% else %}
|
||||
{% trans "New item" %}
|
||||
{% endif %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'item_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<button class="button" type="submit" name="apply">
|
||||
<span class="icon apply">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'item_overview' %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'item_overview' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
{% include "formbuttons_saveapply.html" %}
|
||||
<a href='{% url 'item_overview' %}' class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
|
@ -3,15 +3,14 @@
|
||||
{% load tags %}
|
||||
|
||||
<td>
|
||||
<span class="close_link{% if item.closed %} closed{% endif %}">
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<a href="{% if item.closed %}{% url 'item_open' item.id %}{% else %}{% url 'item_close' item.id %}{% endif %}" title="{% trans 'Mark item as done' %}">
|
||||
<span></span>
|
||||
</a>
|
||||
{% elif item.closed %}
|
||||
<img src="{% static 'images/icons/close.png' %}" title="{% trans 'Item closed' %}">
|
||||
{% endif %}
|
||||
</span>
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<a href="{% if item.closed %}{% url 'item_open' item.id %}{% else %}{% url 'item_close' item.id %}{% endif %}"
|
||||
class="close_link btn btn-mini {% if item.closed %}btn-success{% endif %}" title="{% trans 'Change status (open/closed)' %}">
|
||||
<i class="{% if item.closed %}icon-checked-new{% else %}icon-unchecked-new{% endif %}"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<i class="icon-"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
{% for p in item.get_ancestors %}
|
||||
@ -24,7 +23,7 @@
|
||||
{{ item.get_title_supplement|safe }}
|
||||
</td>
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<td>
|
||||
<td class="optional">
|
||||
{{ item.comment|first_line }}
|
||||
</td>
|
||||
{% endif %}
|
||||
@ -32,16 +31,20 @@
|
||||
<td>
|
||||
<span style="width: 1px; white-space: nowrap;">
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<a class="activate_link {% if item.active %}active{% endif %}" href="{% url 'projector_activate_slide' item.sid %}" title="{% trans 'Activate item' %}">
|
||||
<span></span>
|
||||
<a href="{% url 'projector_activate_slide' item.sid %}" class="activate_link btn {% if item.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if item.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<a href="{% model_url item 'edit' %}"><img src="{% static 'images/icons/edit.png' %}" title="{% trans 'Edit item' %}"></a>
|
||||
<a href="{% model_url item 'delete' %}"><img src="{% static 'images/icons/delete.png' %}" title="{% trans 'Delete item' %}"></a>
|
||||
<a href="{% model_url item 'edit' %}" title="{% trans 'Edit' %}" class="btn btn-mini">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% model_url item 'delete' %}" title="{% trans 'Delete' %}" class="btn btn-mini">
|
||||
<i class="icon-remove"></i>
|
||||
</a>
|
||||
{% if not item.is_leaf_node %}
|
||||
<a class="activate_link" href="{% url 'projector_activate_slide' item.sid 'summary' %}">
|
||||
<img src="{% static 'images/icons/summary.png' %}" title="{% trans 'Activate summary for this item' %}">
|
||||
<a href="{% url 'projector_activate_slide' item.sid 'summary' %}" class="activate_link btn btn-mini" title="{% trans 'Activate summary for this item' %}">
|
||||
<i class="icon-summary"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
@ -49,7 +52,7 @@
|
||||
</td>
|
||||
{% endif %}
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<td class="tabledrag-hide">
|
||||
<td class="tabledrag-hide" style="display: none;">
|
||||
{% with form=item.weight_form %}
|
||||
{{ form.weight }}
|
||||
{{ form.self }}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "agenda/base_agenda.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
@ -10,6 +10,9 @@
|
||||
{% block header %}
|
||||
<link type="text/css" rel="stylesheet" media="all" href="{% static 'styles/tabledrag.css' %}" />
|
||||
<link type="text/css" rel="stylesheet" media="all" href="{% static 'styles/agenda.css' %}" />
|
||||
{% endblock %}
|
||||
|
||||
{% block javascript %}
|
||||
<script type="text/javascript" src="{% static 'javascript/agenda.js' %}"></script>
|
||||
<script type="text/javascript" src="{% static 'javascript/jquery.cookie.js' %}"></script>
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
@ -37,63 +40,72 @@
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block content %}
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<div id="changed-order-message" style="display:none" class="notification warning">
|
||||
<em>{% trans "Do you want to save the changed order of agenda items?" %}<br>
|
||||
<input type="submit" value="{% trans 'Yes' %}">
|
||||
<input type="button" onclick="window.location.href='{% url 'item_overview' %}';" value="{% trans 'No' %}">
|
||||
</em>
|
||||
<div id="changed-order-message" style="display:none" class="alert alert-warning">
|
||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||
<p>{% trans "Do you want to save the changed order of agenda items?" %}</p>
|
||||
<p>
|
||||
<button class="btn" type="submit">{% trans 'Yes' %}</button>
|
||||
<a href="{% url 'item_overview' %}" class="btn">{% trans 'No' %}</a>
|
||||
</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<h1>{% trans "Agenda" %}</h1>
|
||||
<h1>{% trans "Agenda" %}
|
||||
<small class="pull-right">
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<a href="{% url 'item_new' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'New item' %}"><i class="icon-plus"></i> {% trans "New" %}</a>
|
||||
{% endif %}
|
||||
<a href="{% url 'print_agenda' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'Print agenda as PDF' %}"><i class="icon-print"></i> PDF</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<p>
|
||||
{% trans "Filter" %}:
|
||||
<input type="checkbox" id="hide_closed_items"> {% trans "Hide closed items" %}
|
||||
</p>
|
||||
{{ items|length }}
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" id="hide_closed_items"> {% trans "Hide closed items" %}
|
||||
</label>
|
||||
|
||||
<small><i>{{ items|length }}
|
||||
{% blocktrans count counter=items|length %}item{% plural %}items{% endblocktrans %}<span id="hiddencount"></span>
|
||||
<table id="menu-overview" class="agendatable">
|
||||
</i></small>
|
||||
<table id="menu-overview" class="table table-striped table-bordered">
|
||||
<tr>
|
||||
<th width="50">{% trans "Done" %}</th>
|
||||
<th width="10px"></th>
|
||||
<th>{% trans "Item" %}</th>
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<th width="200">{% trans "Comment" %}</th>
|
||||
<th width="200" class="optional">{% trans "Comment" %}</th>
|
||||
{% endif %}
|
||||
{% if perms.agenda.can_manage_agenda or perms.projector.can_manage_projector %}
|
||||
<th width="50">{% trans "Actions" %}</th>
|
||||
{% endif %}
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<th class="tabledrag-hide">{% trans "Weight" %}</th>
|
||||
<th class="tabledrag-hide" style="display: none;">{% trans "Weight" %}</th>
|
||||
{% endif %}
|
||||
</tr>
|
||||
<tr class="topline{% if active_sid == 'agenda' %} activeline{% endif %}">
|
||||
<td></td>
|
||||
<td>
|
||||
<strong>{% trans "Agenda" %}</strong>
|
||||
{% trans "Agenda" %}
|
||||
</td>
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<td></td>
|
||||
<td class="optional"></td>
|
||||
{% endif %}
|
||||
{% if perms.agenda.can_manage_agenda or perms.projector.can_manage_projector %}
|
||||
<td>
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<span>
|
||||
<a class="activate_link{% if active_sid == 'agenda' %} active{% endif %}" href="{% url 'projector_activate_slide' 'agenda' %}" title="{% trans 'Activate item' %}">
|
||||
<span></span>
|
||||
</a>
|
||||
</span>
|
||||
<a href="{% url 'projector_activate_slide' 'agenda' %}" class="activate_link btn {% if active_sid == 'agenda' %}btn-primary{% endif %} btn-mini" title="{% trans 'Activate agenda' %}">
|
||||
<i class="icon-facetime-video {% if active_sid == 'agenda' %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<span>
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% if items %}
|
||||
{% for item in items %}
|
||||
<tr class="itemline draggable{% cycle ' odd' '' %}{% if item.active %} activeline{% endif %}">
|
||||
<tr class="draggable{% if item.active %} activeline{% endif %}{% if item.closed %} offline{% endif %}">
|
||||
{% include "agenda/item_row.html" %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
@ -1,11 +1,35 @@
|
||||
{% extends "agenda/base_agenda.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
{% block title %}{{ block.super }} – {{ item.title }}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{{ item }}</h1>
|
||||
<h1>
|
||||
{{ item }}
|
||||
<small class="pull-right">
|
||||
<div class="btn-toolbar">
|
||||
<a href="{% url 'item_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
<div class="btn-group">
|
||||
<a data-toggle="dropdown" href="#" class="btn btn-mini dropdown-toggle">
|
||||
{% trans 'More actions' %}
|
||||
<span class="caret"></span>
|
||||
</a>
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<ul class="dropdown-menu pull-right">
|
||||
<li><a href="{% url 'item_edit' item.id %}"><i class="icon-edit"></i> {% trans 'Edit item' %}</a></li>
|
||||
<li><a href="{% url 'item_delete' item.id %}"><i class="icon-remove"></i> {% trans 'Delete item' %}</a></li>
|
||||
</ul>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<a href="{% url 'projector_activate_slide' item.sid %}" class="activate_link btn btn-mini {% if item.active %}btn-primary{% endif %}" rel="tooltip" data-original-title="{% trans 'Show item' %}">
|
||||
<i class="icon icon-facetime-video {% if item.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</small>
|
||||
</h1>
|
||||
<p>{{ item.text|safe|linebreaks }}</p>
|
||||
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
|
@ -4,9 +4,9 @@
|
||||
|
||||
<ul style="line-height: 180%">
|
||||
<li class="{% if agenda.active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_slide' agenda.key %}" class="activate_link {% if agenda.active %}active{% endif %}">
|
||||
<div></div>
|
||||
</a>
|
||||
<a href="{% url 'projector_activate_slide' agenda.key %}" class="activate_link btn {% if agenda.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show agenda' %}">
|
||||
<i class="icon-facetime-video {% if agenda.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' agenda.key %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
</a>
|
||||
@ -17,27 +17,22 @@
|
||||
<ul style="line-height: 180%">
|
||||
{% for item in items %}
|
||||
<li class="{% if item.active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_slide' item.sid %}" class="activate_link {% if item.active %}active{% endif %}">
|
||||
<div></div>
|
||||
<a href="{% url 'projector_activate_slide' item.sid %}" class="activate_link btn {% if item.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if item.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% model_url item 'edit' %}" title="{% trans 'Edit' %}" class="btn btn-mini right">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% model_url item 'delete' %}" title="{% trans 'Delete' %}" class="icon delete right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% model_url item 'edit' %}" title="{% trans 'Edit' %}" class="icon edit right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' item.sid %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
<a href="{% url 'projctor_preview_slide' item.sid %}" title="{% trans 'Preview' %}" class="btn btn-mini right">
|
||||
<i class="icon-search"></i>
|
||||
</a>
|
||||
{% if not item.is_leaf_node %}
|
||||
<a class="activate_link right" href="{% url 'projector_activate_slide' item.sid 'summary' %}">
|
||||
<img src="{% static 'images/icons/summary.png' %}"
|
||||
title="{% trans 'Activate summary for this item' %}"
|
||||
style="padding-right: 2px;">
|
||||
<a class="activate_link btn btn-mini {% if item.active %}btn-primary{% endif %} right" href="{% url 'projector_activate_slide' item.sid 'summary' %}" title="{% trans 'Activate summary for this item' %}">
|
||||
<i class="icon-summary {% if item.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% for p in item.get_ancestors %}
|
||||
<span class="indentation"> </span>
|
||||
<span class="indentation"></span>
|
||||
{% endfor %}
|
||||
<a href="{% model_url item 'view' %}">{{ item }}</a>
|
||||
{{ item.get_title_supplement|safe }}
|
||||
|
@ -210,6 +210,7 @@ def register_tab(request):
|
||||
selected = request.path.startswith('/agenda/')
|
||||
return Tab(
|
||||
title=_('Agenda'),
|
||||
app='agenda',
|
||||
url=reverse('item_overview'),
|
||||
permission=(request.user.has_perm('agenda.can_see_agenda') or
|
||||
request.user.has_perm('agenda.can_manage_agenda')),
|
||||
|
@ -1,76 +0,0 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block header %}
|
||||
<link type="text/css" rel="stylesheet" media="all" href="{% static 'styles/assignment.css' %}" />
|
||||
<script type="text/javascript" src="{% static 'javascript/assignment.js' %}"></script>
|
||||
{% endblock %}
|
||||
|
||||
{% block submenu %}
|
||||
{% url 'assignment_overview' as url_assignment_overview %}
|
||||
<h4 class="sectiontitle">{% trans "Elections" %}</h4>
|
||||
<ul>
|
||||
<li class="{% if request.path == url_assignment_overview %}selected{% endif %}"><a href="{% url 'assignment_overview' %}">{% trans "All elections" %}</a></li>
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<li class="{% active request '/assignment/new' %}"><a href="{% url 'assignment_new' %}">{% trans "New election" %}</a></li>
|
||||
{% endif %}
|
||||
<li><a href="{% url 'print_assignment' %}"><img src="{% static 'images/icons/pdf.png' %}"> {% trans 'All elections as PDF' %}</a></li>
|
||||
</ul>
|
||||
|
||||
{# second submenu #}
|
||||
{% if assignment %}
|
||||
<br>
|
||||
<h3>{{assignment}}</h3>
|
||||
<ul>
|
||||
{# view assignemnt #}
|
||||
{% url 'assignment_view' assignment.id as url_assignmentview %}
|
||||
<li class="{% if request.path == url_assignmentview %}selected{% endif %}">
|
||||
<a href="{% url 'assignment_view' assignment.id %}">{% trans 'View election' %}</a>
|
||||
</li>
|
||||
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
|
||||
{# edit assignemnt #}
|
||||
{% url 'assignment_edit' assignment.id as url_assignmentedit %}
|
||||
<li class="{% if request.path == url_assignmentedit %}selected{% endif %}">
|
||||
<a href="{% url 'assignment_edit' assignment.id %}"><img src="{% static 'images/icons/edit.png' %}"> {% trans 'Edit election' %}</a>
|
||||
</li>
|
||||
|
||||
{# delete assignment #}
|
||||
<li>
|
||||
<a href="{% url 'assignment_delete' assignment.id %}"><img src="{% static 'images/icons/delete.png' %}"> {% trans 'Delete election' %}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{# PDF #}
|
||||
<li>
|
||||
<a href="{% url 'print_assignment' assignment.id %}"><img src="{% static 'images/icons/pdf.png' %}"> {% trans 'Election as PDF' %}</a>
|
||||
</li>
|
||||
|
||||
{# activate #}
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<li>
|
||||
<a class="activate_link {% if item.active %}active{% endif %}" href="{% url 'projector_activate_slide' assignment.sid %}"><img src="{% static 'images/icons/projector.png' %}"> {% trans 'Show election' %}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{# agenda #}
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
<li>
|
||||
<a href="{% url 'assignment_create_agenda' assignment.id %}">{% trans 'New agenda item' %}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{# polls #}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
{% for poll in polls %}
|
||||
{% url 'assignment_poll_view' poll.id as url_assignmentpollview %}
|
||||
<li class="{% if request.path == url_assignmentpollview %}selected{% endif %}"><a href="{% url 'assignment_poll_view' poll.id %}"><img src="{% static 'images/icons/edit.png' %}"> {{ forloop.counter }}. {% trans "ballot" %}</a></li>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
{% endblock %}
|
@ -5,18 +5,19 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Election settings" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Election settings" %}</h1>
|
||||
<h1>
|
||||
{% trans "Configuration" %}
|
||||
<small>{% trans "Elections" %}</small>
|
||||
{% block config_submenu %}{{ block.super }}{% endblock %}
|
||||
</h1>
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'config_assignment' %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'config_assignment' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
</p>
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
{% include "formbuttons_save.html" %}
|
||||
<a href="{% url 'config_assignment' %}" class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "assignment/base_assignment.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
@ -11,27 +11,24 @@
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block content %}
|
||||
{% if assignment %}
|
||||
<h1>{% trans "Edit election" %}</h1>
|
||||
{% else %}
|
||||
<h1>{% trans "New election" %}</h1>
|
||||
{% endif %}
|
||||
<h1>
|
||||
{% if assignment %}
|
||||
{% trans "Edit election" %}
|
||||
{% else %}
|
||||
{% trans "New election" %}
|
||||
{% endif %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'assignment_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<button class="button" type="submit" name="apply">
|
||||
<span class="icon apply">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'assignment_overview' %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'assignment_overview' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
{% include "formbuttons_saveapply.html" %}
|
||||
<a href='{% url 'assignment_overview' %}' class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
|
@ -1,30 +1,41 @@
|
||||
{% extends "assignment/base_assignment.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block title %}{{ block.super }} – {% trans "Elections" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Elections" %}</h1>
|
||||
|
||||
<p><form action="{{request.url}}" name="filter" method="get">
|
||||
{% block content %}
|
||||
<h1>{% trans "Elections" %}
|
||||
<small class="pull-right">
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<a href="{% url 'assignment_new' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'New election' %}"><i class="icon-plus"></i> {% trans "New" %}</a>
|
||||
{% endif %}
|
||||
{% if perms.assignment.can_see_assignment %}
|
||||
<a href="{% url 'print_assignment' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'Print all elections as PDF' %}"><i class="icon-print"></i> PDF</a>
|
||||
{% endif %}
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<form action="{{request.url}}" name="filter" method="get">
|
||||
{% trans "Filter" %}:
|
||||
<select class="default-input" name="status" onchange="document.forms['filter'].submit()">
|
||||
<select class="span3" name="status" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Status" %}--</option>
|
||||
<option value="sea" {% if 'sea' in request.GET.status %}selected{% endif %}>{% trans "Searching for candidates" %}</option>
|
||||
<option value="vot" {% if 'vot' in request.GET.status %}selected{% endif %}>{% trans "Voting" %}</option>
|
||||
<option value="fin" {% if 'fin' in request.GET.status %}selected{% endif %}>{% trans "Finished" %}</option>
|
||||
</select>
|
||||
</form>
|
||||
</p>
|
||||
{{ assignments|length }}
|
||||
{% blocktrans count counter=assignments|length %}election{% plural %}elections{% endblocktrans %}
|
||||
<table>
|
||||
</form>
|
||||
|
||||
<small><i>{{ assignments|length }}
|
||||
{% blocktrans count counter=assignments|length %}election{% plural %}elections{% endblocktrans %}
|
||||
</i></small>
|
||||
<table class="table table-striped table-bordered">
|
||||
<tr>
|
||||
<th><a href="?sort=name{% if 'name' in request.GET.sort and 'reverse' not in request.GET %}&reverse{%endif%}">{% trans "Election" %}</a></th>
|
||||
<th>{% trans "Candidates" %}</th>
|
||||
<th><a href="?sort=status{% if 'status' in request.GET.sort and 'reverse' not in request.GET %}&reverse{%endif%}">{% trans "Status" %}</a></th>
|
||||
<th class="optional"><a href="?sort=status{% if 'status' in request.GET.sort and 'reverse' not in request.GET %}&reverse{%endif%}">{% trans "Status" %}</a></th>
|
||||
<th style="width: 1px;">{% trans "Actions" %}</th>
|
||||
</tr>
|
||||
{% for assignment in assignments %}
|
||||
@ -38,19 +49,25 @@
|
||||
{% endif %}
|
||||
| {% blocktrans with elected=assignment.elected|length %}elected: {{ elected }}{% endblocktrans %}
|
||||
</td>
|
||||
<td>{{ assignment.get_status_display }}</td>
|
||||
<td class="optional">{{ assignment.get_status_display }}</td>
|
||||
<td>
|
||||
<span style="width: 1px; white-space: nowrap;">
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<a class="activate_link {% if assignment.active %}active{% endif %}" href="{% url 'projector_activate_slide' assignment.sid %}" title="{% trans 'Activate election' %}">
|
||||
<span></span>
|
||||
<a href="{% url 'projector_activate_slide' assignment.sid %}" class="activate_link btn {% if assignment.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if assignment.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<a href="{% url 'assignment_edit' assignment.id %}"><img src="{% static 'images/icons/edit.png' %}" title="{% trans 'Edit election' %}"></a>
|
||||
<a href="{% url 'assignment_delete' assignment.id %}"><img src="{% static 'images/icons/delete.png' %}" title="{% trans 'Delete election' %}"></a>
|
||||
<a href="{% url 'assignment_edit' assignment.id %}" title="{% trans 'Edit' %}" class="btn btn-mini">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% url 'assignment_delete' assignment.id %}" title="{% trans 'Delete' %}" class="btn btn-mini">
|
||||
<i class="icon-remove"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
<a href="{% url 'print_assignment' assignment.id %}" title="{% trans 'Election as PDF' %}"><img src="{% static 'images/icons/pdf.png' %}"></a>
|
||||
<a href="{% url 'print_assignment' assignment.id %}" class="btn btn-mini" title="{% trans 'Print election as PDF' %}">
|
||||
<i class="icon-print"></i>
|
||||
</a>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -1,19 +1,34 @@
|
||||
{% extends 'assignment/base_assignment.html' %}
|
||||
{% extends 'base.html' %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
{% block title %}{{ block.super }} – {% trans "Election" %} "{{ assignment }}" – {{ ballotnumber }}. {% trans "ballot" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{{ assignment }} – {{ ballotnumber }}. {% trans "ballot" %}</h1>
|
||||
{% if assignment.polldescription %}
|
||||
<p><b>{% trans "Short description (for ballot paper)" %}:</b> {{ assignment.polldescription }}</p>
|
||||
<h1>
|
||||
{{ assignment }}
|
||||
<small>
|
||||
{{ ballotnumber }}. {% trans "ballot" %}
|
||||
</small>
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'assignment_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
<!-- activate projector -->
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<a href="{% url 'projector_activate_slide' assignment.sid %}" class="activate_link btn {% if assignment.active %}btn-primary{% endif %} btn-mini" rel="tooltip" data-original-title="{% trans 'Show motion' %}">
|
||||
<i class="icon-facetime-video {% if assignment.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
<i class="helptext">{% trans "Special values" %}: -1 = {% trans 'majority' %}; -2 = {% trans 'undocumented' %}</i>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<form action="" method="post" class="small-form">{% csrf_token %}
|
||||
{% if assignment.polldescription %}
|
||||
<p><b>{% trans "Short description (for ballot paper)" %}:</b> {{ assignment.polldescription }}</p>
|
||||
{% endif %}
|
||||
|
||||
<table style="width:auto">
|
||||
<i class="helptext">{% trans "Special values" %}: -1 = {% trans 'majority' %}; -2 = {% trans 'undocumented' %}</i>
|
||||
|
||||
<form action="" method="post" class="small-form">{% csrf_token %}
|
||||
<table class="table table-striped table-bordered" style="width: auto;">
|
||||
<tr>
|
||||
<th>{% trans "Candidates" %}</th>
|
||||
{% for value in poll.get_vote_values %}
|
||||
@ -31,7 +46,7 @@
|
||||
{% endfor %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
<tr class="total">
|
||||
<tr>
|
||||
<td>{% trans "Invalid votes" %}</td>
|
||||
{% for value in poll.get_vote_values %}
|
||||
{% if forloop.first %}
|
||||
@ -41,7 +56,7 @@
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</tr>
|
||||
<tr class="total">
|
||||
<tr class="total warning">
|
||||
<td>{% trans "Votes cast" %}</td>
|
||||
{% for value in poll.get_vote_values %}
|
||||
{% if forloop.first %}
|
||||
@ -54,26 +69,21 @@
|
||||
</table>
|
||||
|
||||
<p>
|
||||
<a href="{% url 'print_assignment_poll' poll.id %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'print_assignment_poll' poll.id %}'">
|
||||
<span class="icon pdf">{% trans 'Ballot paper as PDF' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'print_assignment_poll' poll.id %}" class="btn">
|
||||
<i class="icon-print"></i> {% trans 'Ballot paper as PDF' %}
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<button class="button" type="submit" name="apply">
|
||||
<span class="icon apply">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'assignment_view' poll.assignment.id %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'assignment_view' poll.assignment.id %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
</form>
|
||||
<!-- Control buttons -->
|
||||
<div class="control-group">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{% trans 'Save' %}
|
||||
</button>
|
||||
<button type="submit" name="apply" class="btn">
|
||||
{% trans 'Apply' %}
|
||||
</button>
|
||||
<a href="{% url 'assignment_view' poll.assignment.id %}" class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
@ -1,47 +1,52 @@
|
||||
{% extends "assignment/base_assignment.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block title %}{{ block.super }} – {% trans "Election" %} "{{ assignment }}"{% endblock %}
|
||||
|
||||
{% block header %}
|
||||
<link type="text/css" rel="stylesheet" media="all" href="{% static 'styles/assignment.css' %}" />
|
||||
{% endblock %}
|
||||
|
||||
{% block javascript %}
|
||||
<script type="text/javascript" src="{% static 'javascript/assignment.js' %}"></script>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div id="sidebar">
|
||||
<div class="box">
|
||||
<h4>{% trans "Status" %}:</h4>
|
||||
{% trans assignment.get_status_display %}
|
||||
<h4>{% trans "Number of available posts" %}:</h4>
|
||||
{{ assignment.posts }}
|
||||
</div>
|
||||
|
||||
<br><br>
|
||||
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<div class="box">
|
||||
<h4>{% trans "Change status" %}:</h4>
|
||||
<input type="radio" name="status" onclick="window.location.href='{% url 'assignment_set_status' assignment.id 'sea' %}';"
|
||||
{% if 'sea' in assignment.status %}checked{% endif %}>{% trans 'Searching for candidates' %}<br>
|
||||
<input type="radio" name="status" onclick="window.location.href='{% url 'assignment_set_status' assignment.id 'vot' %}';"
|
||||
{% if 'vot' in assignment.status %}checked{% endif %}>{% trans 'Voting' %}<br>
|
||||
<input type="radio" name="status" onclick="window.location.href='{% url 'assignment_set_status' assignment.id 'fin' %}';"
|
||||
{% if 'fin' in assignment.status %}checked{% endif %}>{% trans 'Finished' %}
|
||||
</div>
|
||||
<h1>
|
||||
{{ assignment }}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'assignment_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
<!-- activate projector -->
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<a href="{% url 'projector_activate_slide' assignment.sid %}" class="activate_link btn {% if assignment.active %}btn-primary{% endif %} btn-mini" rel="tooltip" data-original-title="{% trans 'Show motion' %}">
|
||||
<i class="icon-facetime-video {% if assignment.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div style="margin-right: 250px; min-width: 400px;">
|
||||
<h1>{{ assignment }}</h1>
|
||||
<p>{{ assignment.description|linebreaks }}</p>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span9">
|
||||
<!-- Description -->
|
||||
<h4>{% trans "Description" %}</h4>
|
||||
{% if assignment.description %}
|
||||
{{ assignment.description|linebreaks }}
|
||||
{% else %}
|
||||
–
|
||||
{% endif %}
|
||||
<br>
|
||||
<!-- Candidates -->
|
||||
{% if assignment.status != "fin" %}
|
||||
<h3>{% trans "Candidates" %}</h3>
|
||||
<h4>{% trans "Candidates" %}</h4>
|
||||
<ol>
|
||||
{% for person in assignment.get_participants %}
|
||||
<li>
|
||||
{{ person }}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
{% if assignment.status == "sea" or assignment.status == "vot" %}
|
||||
<a href="{% url 'assignment_delother' assignment.id person.person_id %}"><img src="{% static 'images/icons/delete.png' %}" title="{% trans 'Remove candidate' %}"></a>
|
||||
<a href="{% url 'assignment_delother' assignment.id person.person_id %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'Remove candidate' %}"><i class="icon-remove"></i></a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if person in assignment.elected %}
|
||||
@ -54,43 +59,37 @@
|
||||
{% endif %}
|
||||
</li>
|
||||
{% empty %}
|
||||
<li style="list-style: none outside none;"><i>{% trans "No candidates available." %}</i></li>
|
||||
<li style="list-style: none outside none; margin-left: -25px;"><i>{% trans "No candidates available." %}</i></li>
|
||||
{% endfor %}
|
||||
</ol>
|
||||
|
||||
{% if assignment.status == "sea" or perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
{% if perms.assignment.can_nominate_self or perms.assignment.can_nominate_other %}
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{% if perms.assignment.can_nominate_self %}
|
||||
<p>
|
||||
{% if user_is_candidate %}
|
||||
<a href="{% url 'assignment_delrun' assignment.id %}">
|
||||
<span class="button">
|
||||
<span class="icon removeuser">{% trans 'Withdraw self candidature' %}</span>
|
||||
</span>
|
||||
<a href='{% url 'assignment_delrun' assignment.id %}' class="btn btn-mini">
|
||||
<i class="icon-remove"></i> {% trans 'Withdraw self candidature' %}
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="{% url 'assignment_run' assignment.id %}">
|
||||
<span class="button">
|
||||
<span class="icon adduser">{% trans 'Self candidature' %}</span>
|
||||
</span>
|
||||
<a href='{% url 'assignment_run' assignment.id %}' class="btn btn-mini">
|
||||
<i class="icon-plus"></i> {% trans 'Self candidature' %}
|
||||
</a>
|
||||
{% endif %}
|
||||
</p>
|
||||
{% endif %}
|
||||
{% if perms.assignment.can_nominate_other %}
|
||||
{% for field in form %}
|
||||
<label>{{ field.label }}:</label>
|
||||
<nobr>{{ field }}
|
||||
{% if perms.participant.can_see_participant and perms.participant.can_manage_participant %}
|
||||
<a href="{% url 'user_new' %}" target="_blank"><img src="{% static 'images/icons/add-user.png' %}" title="{% trans 'Add new participant' %}"></a>
|
||||
{% endif %}
|
||||
</nobr>
|
||||
<label>{{ field.label }}:</label>
|
||||
<div class="input-append">
|
||||
{{ field }}
|
||||
<button class="btn btn-primary" type="submit">{% trans 'Apply' %}</button>
|
||||
{% if perms.participant.can_see_participant and perms.participant.can_manage_participant %}
|
||||
<a href="{% url 'user_new' %}" target="_blank" class="btn"><img src="{% static 'images/icons/add-user.png' %}" title="{% trans 'Add new participant' %}"></a>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
</p>
|
||||
{% endif %}
|
||||
</form>
|
||||
@ -111,120 +110,156 @@
|
||||
</ul>
|
||||
{% endif %}
|
||||
|
||||
|
||||
<!-- Results -->
|
||||
{% if assignment.status != "sea" or polls.exists %}
|
||||
<h3>{% trans "Election results" %}</h3>
|
||||
|
||||
<h4>{% trans "Election results" %}</h4>
|
||||
{% if polls.exists %}
|
||||
<table id="election_table" style="width: auto;">
|
||||
<tr>
|
||||
<th>{% trans "Candidates" %}</th>
|
||||
{% for poll in polls %}
|
||||
<th style="vertical-align: top; white-space:nowrap;">
|
||||
{{ poll.get_ballot }}. {% trans 'ballot' %}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<br>
|
||||
<a class="publish_link {% if poll.published %}published{% endif %}"
|
||||
href="{% url 'assignment_poll_publish_status' poll.id %}"
|
||||
title="{% trans 'Publish/unpublish results' %}">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'assignment_poll_view' poll.id %}"><img src="{% static 'images/icons/edit.png' %}" title="{% trans 'Edit' %}"></a>
|
||||
<a href="{% url 'assignment_poll_delete' poll.id %}"><img src="{% static 'images/icons/delete.png' %}" title="{% trans 'Delete' %}"></a>
|
||||
{% endif %}
|
||||
<table class="table table-striped table-bordered">
|
||||
<tr>
|
||||
<th></th>
|
||||
{% with ballotnumber=polls.count %}
|
||||
<th colspan="{{ ballotnumber|add:'1' }}" style="text-align: center;">
|
||||
{% trans "ballot" %}
|
||||
</th>
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<th>
|
||||
<a href="{% url 'assignment_gen_poll' assignment.id %}">
|
||||
<span class="button">
|
||||
<span class="icon statistics">{% trans 'New ballot' %}</span>
|
||||
</span>
|
||||
</a>
|
||||
</th>
|
||||
{% endif %}
|
||||
</tr>
|
||||
|
||||
{% for candidate, poll_list in vote_results.items %}
|
||||
<tr class="{% cycle 'odd' '' as rowcolors %}">
|
||||
<td class="candidate">
|
||||
{% if candidate in assignment.elected %}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<a class="election_link elected" href="{% url 'assignment_user_not_elected' assignment.id candidate.person_id %}"></a>
|
||||
{% else %}
|
||||
<a class="elected">
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Candidate is elected' %}">
|
||||
{% endwith %}
|
||||
</tr>
|
||||
<tr>
|
||||
<th>{% trans "Candidates" %}</th>
|
||||
{% for poll in polls %}
|
||||
<th style="white-space:nowrap;" class="span1">
|
||||
{{ poll.get_ballot }}. {% trans 'ballot' %}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<br>
|
||||
<a class="publish_link {% if poll.published %}published{% endif %}"
|
||||
href="{% url 'assignment_poll_publish_status' poll.id %}"
|
||||
title="{% trans 'Publish/unpublish results' %}">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'assignment_poll_view' poll.id %}" class="btn btn-mini" title="{% trans 'Edit' %}"><i class="icon-pencil"></i></a>
|
||||
<a href="{% url 'assignment_poll_delete' poll.id %}" class="btn btn-mini" title="{% trans 'Delete' %}"><i class="icon-remove"></i></a>
|
||||
{% endif %}
|
||||
</th>
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<th class="span1 nobr">
|
||||
<a href="{% url 'assignment_gen_poll' assignment.id %}" class="btn btn-mini">
|
||||
<i class="icon-plus"></i> {% trans 'New ballot' %}
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<a class="election_link" href="{% url 'assignment_user_elected' assignment.id candidate.person_id %}"></a>
|
||||
{% endif %}
|
||||
</th>
|
||||
{% endif %}
|
||||
{{ candidate }}
|
||||
</td>
|
||||
{% for vote in poll_list %}
|
||||
<td style="white-space:nowrap;">
|
||||
{% if 'Yes' in vote and 'No' in vote and 'Abstain' in vote %}
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}"> {{ vote.Yes }}<br>
|
||||
<img src="{% static 'images/icons/voting-no.png' %}" title="{% trans 'No' %}"> {{ vote.No }}<br>
|
||||
<img src="{% static 'images/icons/voting-abstention.png' %}" title="{% trans 'Abstention' %}"> {{ vote.Abstain }}<br>
|
||||
{% elif 'Votes' in vote %}
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}"> {{ vote.Votes }}
|
||||
{% elif vote == None %}
|
||||
{% trans 'was not a <br> candidate'%}
|
||||
</tr>
|
||||
{% for candidate, poll_list in vote_results.items %}
|
||||
<tr>
|
||||
<td>
|
||||
{% if candidate in assignment.elected %}
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<a class="election_link elected" href="{% url 'assignment_user_not_elected assignment.id' candidate.person_id %}"></a>
|
||||
{% else %}
|
||||
<a class="elected">
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Candidate is elected' %}">
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<a class="election_link" href="{% url 'assignment_user_elected' assignment.id candidate.person_id %}"></a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{{ candidate }}
|
||||
</td>
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<td></td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
<tr class="{% cycle rowcolors %}">
|
||||
<td>{% trans 'Invalid votes' %}</td>
|
||||
{% for poll in polls %}
|
||||
{% if poll.published or perms.assignment.can_manage_assignment %}
|
||||
{% for vote in poll_list %}
|
||||
<td style="white-space:nowrap;">
|
||||
{% if poll.has_votes %}
|
||||
<img src="{% static 'images/icons/voting-invalid.png' %}" title="{% trans 'Invalid' %}">
|
||||
{{ poll.print_votesinvalid }}
|
||||
{% if 'Yes' in vote and 'No' in vote and 'Abstain' in vote %}
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}"> {{ vote.Yes }}<br>
|
||||
<img src="{% static 'images/icons/voting-no.png' %}" title="{% trans 'No' %}"> {{ vote.No }}<br>
|
||||
<img src="{% static 'images/icons/voting-abstention.png' %}" title="{% trans 'Abstention' %}"> {{ vote.Abstain }}<br>
|
||||
{% elif 'Votes' in vote %}
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}"> {{ vote.Votes }}
|
||||
{% elif vote == None %}
|
||||
{% trans 'was not a <br> candidate'%}
|
||||
{% else %}
|
||||
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<td></td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<td></td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
<tr class="total">
|
||||
<td><strong>{% trans 'Votes cast' %}</strong></td>
|
||||
{% for poll in polls %}
|
||||
{% if poll.published or perms.assignment.can_manage_assignment %}
|
||||
<td style="white-space:nowrap;">
|
||||
{% if poll.has_votes %}
|
||||
<img src="{% static 'images/icons/voting-total.png' %}" title="{% trans 'Votes cast' %}">
|
||||
<strong>{{ poll.print_votescast }}</strong>
|
||||
{% endif %}
|
||||
</td>
|
||||
<tr>
|
||||
<td>{% trans 'Invalid votes' %}</td>
|
||||
{% for poll in polls %}
|
||||
{% if poll.published or perms.assignment.can_manage_assignment %}
|
||||
<td style="white-space:nowrap;">
|
||||
{% if poll.has_votes %}
|
||||
<img src="{% static 'images/icons/voting-invalid.png' %}" title="{% trans 'Invalid' %}">
|
||||
{{ poll.print_votesinvalid }}
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<td></td>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<td></td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
</table>
|
||||
</tr>
|
||||
<tr class="info total">
|
||||
<td><strong>{% trans 'Votes cast' %}</strong></td>
|
||||
{% for poll in polls %}
|
||||
{% if poll.published or perms.assignment.can_manage_assignment %}
|
||||
<td style="white-space:nowrap;">
|
||||
{% if poll.has_votes %}
|
||||
<img src="{% static 'images/icons/voting-total.png' %}" title="{% trans 'Votes cast' %}">
|
||||
<strong>{{ poll.print_votescast }}</strong>
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<td></td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
</table>
|
||||
{% else %}
|
||||
<i>{% trans "No results available." %}</i>
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<p><a href="{% url 'assignment_gen_poll' assignment.id %}">
|
||||
<span class="button">
|
||||
<span class="icon statistics">{% trans 'New ballot' %}</span>
|
||||
</span>
|
||||
</a></p>
|
||||
{% endif %}
|
||||
<i>{% trans "No ballots available." %}</i>
|
||||
{% if assignment.candidates and perms.assignment.can_manage_assignment and assignment.status == "vot" %}
|
||||
<p>
|
||||
<a href='{% url 'assignment_gen_poll' assignment.id %}' class="btn">
|
||||
<i class="icon-plus"></i> {% trans 'New ballot' %}
|
||||
</a>
|
||||
</p>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
</div> <!--/span-->
|
||||
|
||||
<div class="span3">
|
||||
<div class="well">
|
||||
<!-- Text -->
|
||||
<h5>{% trans "Status" %}:</h5>
|
||||
{% trans assignment.get_status_display %}
|
||||
<!-- Posts -->
|
||||
<h5>{% trans "Number of available posts" %}:</h5>
|
||||
{{ assignment.posts }}
|
||||
</div> <!--/well-->
|
||||
|
||||
{% if perms.assignment.can_manage_assignment %}
|
||||
<div class="well">
|
||||
<h4>{% trans "Change status" %}:</h4>
|
||||
<label class="radio">
|
||||
<input type="radio" name="status" onclick="window.location.href='{% url 'assignment_set_status' assignment.id 'sea' %}';"
|
||||
{% if 'sea' in assignment.status %}checked{% endif %}>{% trans 'Searching for candidates' %}
|
||||
</label>
|
||||
<label class="radio">
|
||||
<input type="radio" name="status" onclick="window.location.href='{% url 'assignment_set_status' assignment.id 'vot' %}';"
|
||||
{% if 'vot' in assignment.status %}checked{% endif %}>{% trans 'Voting' %}<br>
|
||||
</label>
|
||||
<label class="radio">
|
||||
<input type="radio" name="status" onclick="window.location.href='{% url 'assignment_set_status' assignment.id 'fin' %}';"
|
||||
{% if 'fin' in assignment.status %}checked{% endif %}>{% trans 'Finished' %}
|
||||
</label>
|
||||
</div> <!--/well-->
|
||||
{% endif %}
|
||||
</div> <!--/span-->
|
||||
</div> <!--/row-->
|
||||
{% endblock %}
|
||||
|
@ -5,17 +5,14 @@
|
||||
<ul style="line-height: 180%">
|
||||
{% for assignment in assignments %}
|
||||
<li class="{% if assignment.active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_slide' assignment.sid %}" class="activate_link {% if assignment.active %}active{% endif %}">
|
||||
<div></div>
|
||||
<a href="{% url 'projector_activate_slide' assignment.sid %}" class="activate_link btn {% if assignment.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if assignment.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% model_url assignment 'edit' %}" title="{% trans 'Edit' %}" class="btn btn-mini right">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% model_url assignment 'delete' %}" title="{% trans 'Delete' %}" class="icon delete right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% model_url assignment 'edit' %}" title="{% trans 'Edit' %}" class="icon edit right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' assignment.sid %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
<a href="{% url 'projctor_preview_slide' assignment.sid %}" title="{% trans 'Preview' %}" class="btn btn-mini right">
|
||||
<i class="icon-search"></i>
|
||||
</a>
|
||||
<a href="{% model_url assignment 'view' %}">{{ assignment }}</a>
|
||||
</li>
|
||||
|
@ -533,7 +533,7 @@ class AssignmentPollPDF(PDFView):
|
||||
pdf_document.build(story)
|
||||
|
||||
def append_to_pdf(self, story):
|
||||
imgpath = os.path.join(settings.SITE_ROOT, 'static/images/circle.png')
|
||||
imgpath = os.path.join(settings.SITE_ROOT, 'static/img/circle.png')
|
||||
circle = "<img src='%s' width='15' height='15'/> " % imgpath
|
||||
cell = []
|
||||
cell.append(Spacer(0, 0.8 * cm))
|
||||
@ -673,6 +673,7 @@ def register_tab(request):
|
||||
selected = request.path.startswith('/assignment/')
|
||||
return Tab(
|
||||
title=_('Elections'),
|
||||
app='assignment',
|
||||
url=reverse('assignment_overview'),
|
||||
permission=(
|
||||
request.user.has_perm('assignment.can_see_assignment') or
|
||||
|
@ -1,13 +1,15 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
|
||||
{% block submenu %}
|
||||
<h4 class="sectiontitle">{% trans "Configuration" %}</h4>
|
||||
<ul>
|
||||
{% for menu_link in menu_links %}
|
||||
<li{% if menu_link.2 %} class="selected"{% endif %}><a href="{{ menu_link.0 }}">{{ menu_link.1 }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% block config_submenu %}
|
||||
<small class="pull-right">
|
||||
<div class="btn-toolbar">
|
||||
<div class="btn-group">
|
||||
{% for menu_link in menu_links %}
|
||||
<a href="{{ menu_link.0 }}" class="btn btn-mini {% if menu_link.2 %}active{% endif %}">{{ menu_link.1 }}</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</small>
|
||||
{% endblock %}
|
||||
|
@ -5,19 +5,26 @@
|
||||
{% block title %}{{ block.super }} – {% trans "General settings" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "General settings" %}</h1>
|
||||
<h1>
|
||||
{% trans "Configuration" %}
|
||||
<small>{% trans "General" %}</small>
|
||||
{% block config_submenu %}{{ block.super }}{% endblock %}
|
||||
</h1>
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
<fieldset>
|
||||
<legend>{% trans "Event" %}</legend>
|
||||
{% for field in form %}
|
||||
{% if "id_event" in field.label_tag %}
|
||||
<p>
|
||||
{{ field.errors }}
|
||||
{{ field.required }}
|
||||
{{ field.label_tag }}
|
||||
{{ field }}
|
||||
{{ field.help_text }}
|
||||
</p>
|
||||
<div class="control-group{% if field.errors %} error{% endif%}">
|
||||
<label for="id_{{ field.name }}">{{ field.label }}{% if field.field.required %}<span class="required">*</span>{% endif %}:</label>
|
||||
{{ field }}
|
||||
{% if field.errors %}
|
||||
<span class="help-inline">{{ field.errors }}</span>
|
||||
{% endif %}
|
||||
{% if field.help_text %}
|
||||
<span class="help-inline">{{ field.help_text }}</span>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</fieldset>
|
||||
@ -26,13 +33,16 @@
|
||||
<legend>{% trans "Welcome Widget" %}</legend>
|
||||
{% for field in form %}
|
||||
{% if "id_welcome" in field.label_tag %}
|
||||
<p>
|
||||
{{ field.errors }}
|
||||
{{ field.required }}
|
||||
{{ field.label_tag }}
|
||||
{{ field }}
|
||||
{{ field.help_text }}
|
||||
</p>
|
||||
<div class="control-group{% if field.errors %} error{% endif%}">
|
||||
<label for="id_{{ field.name }}">{{ field.label }}{% if field.field.required %}<span class="required">*</span>{% endif %}:</label>
|
||||
{{ field }}
|
||||
{% if field.errors %}
|
||||
<span class="help-inline">{{ field.errors }}</span>
|
||||
{% endif %}
|
||||
{% if field.help_text %}
|
||||
<span class="help-inline">{{ field.help_text }}</span>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</fieldset>
|
||||
@ -41,25 +51,25 @@
|
||||
<legend>{% trans "System" %}</legend>
|
||||
{% for field in form %}
|
||||
{% if "id_system" in field.label_tag %}
|
||||
<p>
|
||||
{{ field.errors }}
|
||||
{{ field.required }}
|
||||
{{ field.label_tag }}
|
||||
{{ field }}
|
||||
{{ field.help_text }}
|
||||
</p>
|
||||
<div class="control-group{% if field.errors %} error{% endif%}">
|
||||
<label for="id_{{ field.name }}">{{ field.label }}{% if field.field.required %}<span class="required">*</span>{% endif %}:</label>
|
||||
{{ field }}
|
||||
{% if field.errors %}
|
||||
<span class="help-inline">{{ field.errors }}</span>
|
||||
{% endif %}
|
||||
{% if field.help_text %}
|
||||
<span class="help-inline">{{ field.help_text }}</span>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</fieldset>
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'config_general' %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'config_general' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
{% include "formbuttons_save.html" %}
|
||||
<a href='{% url 'config_general' %}' class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
@ -5,7 +5,9 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Version" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Version" %}</h1>
|
||||
<h1>{% trans "Version" %}
|
||||
{% block config_submenu %}{{ block.super }}{% endblock %}
|
||||
</h1>
|
||||
|
||||
{% for version in versions %}
|
||||
<p>{{ version.0 }} {% trans "Version" %}: {{ version.1 }}</p>
|
||||
|
@ -108,6 +108,7 @@ def register_tab(request):
|
||||
selected = request.path.startswith('/config/')
|
||||
return Tab(
|
||||
title=_('Configuration'),
|
||||
app='config',
|
||||
url=reverse('config_general'),
|
||||
permission=request.user.has_perm('config.can_manage_config'),
|
||||
selected=selected,
|
||||
|
@ -5,18 +5,19 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Motion settings" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Motion settings" %}</h1>
|
||||
<h1>
|
||||
{% trans "Configuration" %}
|
||||
<small>{% trans "Motions" %}</small>
|
||||
{% block config_submenu %}{{ block.super }}{% endblock %}
|
||||
</h1>
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'config_motion' %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'config_motion' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
</p>
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
{% include "formbuttons_save.html" %}
|
||||
<a href="{% url 'config_motion' %}" class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
@ -5,17 +5,14 @@
|
||||
<ul style="line-height: 180%">
|
||||
{% for motion in motions %}
|
||||
<li class="{% if motion.active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_slide' motion.sid %}" class="activate_link {% if motion.active %}active{% endif %}">
|
||||
<div></div>
|
||||
<a href="{% url 'projector_activate_slide' motion.sid %}" class="activate_link btn {% if motion.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if motion.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% model_url motion 'edit' %}" title="{% trans 'Edit' %}" class="btn btn-mini right">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% model_url motion 'delete' %}" title="{% trans 'Delete' %}" class="icon delete right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% model_url motion 'edit' %}" title="{% trans 'Edit' %}" class="icon edit right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' motion.sid %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
<a href="{% url 'projctor_preview_slide' motion.sid %}" title="{% trans 'Preview' %}" class="btn btn-mini right">
|
||||
<i class="icon-search"></i>
|
||||
</a>
|
||||
<a href="{% model_url motion 'view' %}">
|
||||
{{ motion.public_version.title }}
|
||||
|
@ -437,6 +437,7 @@ def register_tab(request):
|
||||
selected = request.path.startswith('/motion/')
|
||||
return Tab(
|
||||
title=_('Motions'),
|
||||
app='motion',
|
||||
url=reverse('motion_list'),
|
||||
permission=request.user.has_perm('motion.can_see_motion'),
|
||||
selected=selected,
|
||||
|
@ -6,22 +6,24 @@
|
||||
*/
|
||||
|
||||
$(function() {
|
||||
// change participant status (on/off)
|
||||
$('.status_link').click(function(event) {
|
||||
event.preventDefault();
|
||||
link = $(this);
|
||||
group = $(this).parent();
|
||||
var link = $(this);
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: link.attr('href'),
|
||||
url: $(this).attr('href'),
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
if (data.active) {
|
||||
group.children('.status_link.deactivate').show();
|
||||
group.children('.status_link.activate').hide();
|
||||
newclass = 'icon-on';
|
||||
link.addClass('btn-success');
|
||||
} else {
|
||||
group.children('.status_link.deactivate').hide();
|
||||
group.children('.status_link.activate').show();
|
||||
newclass = 'icon-off';
|
||||
link.removeClass('btn-success');
|
||||
}
|
||||
link.children('i').removeClass('icon-off icon-on').addClass(newclass);
|
||||
link.attr('href', data.link);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -1,77 +0,0 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block submenu %}
|
||||
{% url 'user_overview' as url_users %}
|
||||
{% url 'user_new' as url_usernew %}
|
||||
{% url 'user_group_overview' as url_usergroups %}
|
||||
{% url 'user_import' as url_userimport %}
|
||||
<h4 class="sectiontitle">{% trans "Participants" %}</h4>
|
||||
<ul>
|
||||
{% if perms.participant.can_see_participant %}
|
||||
<li class="{% if request.path == url_users %}selected{% endif %}"><a href="{% url 'user_overview' %}">{% trans "All participants" %}</a></li>
|
||||
{% endif %}
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<li class="{% active request url_usernew %}"><a href="{% url 'user_new' %}">{% trans "New participant" %}</a></li>
|
||||
<li class="{% if request.path == url_usergroups %}selected{% endif %}"><a href="{% url 'user_group_overview' %}">{% trans "All groups" %}</a></li>
|
||||
<li class="{% active request '/participant/group/new' %}"><a href="{% url 'user_group_new' %}">{% trans "New group" %}</a></li>
|
||||
<li class="{% if request.path == url_userimport %}selected{% endif %}"><a href="{% url 'user_import' %}"> {% trans 'Import participants' %}</a></li>
|
||||
{% endif %}
|
||||
{% if perms.participant.can_see_participant %}
|
||||
<li><a href="{% url 'user_print' %}"><img src="{% static 'images/icons/pdf.png' %}"> {% trans 'List of participants as PDF' %}</a></li>
|
||||
{% endif %}
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<li><a href="{% url 'print_passwords' %}"><img src="{% static 'images/icons/pdf.png' %}"> {% trans 'First time passwords as PDF' %}</a></li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
|
||||
{# second submenu #}
|
||||
{% if shown_user %}
|
||||
<br>
|
||||
<h3>{{ shown_user.clean_name }}</h3>
|
||||
<ul>
|
||||
{# view shown_user #}
|
||||
<li class="{% if request.path == 'foo' %}selected{% endif %}">
|
||||
<a href="{% model_url shown_user 'view' %}">{% trans 'View participant' %}</a>
|
||||
</li>
|
||||
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
|
||||
{# edit shown_user #}
|
||||
<li class="{% if request.path == 'foo' %}selected{% endif %}">
|
||||
<a href="{% model_url shown_user 'edit' %}"><img src="{% static 'images/icons/edit.png' %}"> {% trans 'Edit participant' %}</a>
|
||||
</li>
|
||||
|
||||
{# delete shown_user #}
|
||||
<li>
|
||||
<a href="{% model_url shown_user 'delete' %}"><img src="{% static 'images/icons/delete.png' %}"> {% trans 'Delete participant' %}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
{% elif group %}
|
||||
<br>
|
||||
<h3>{{ group.name }}</h3>
|
||||
<ul>
|
||||
{# view group #}
|
||||
<li class="{% if request.path == 'foo' %}selected{% endif %}">
|
||||
<a href="{% model_url group 'view' %}">{% trans 'View group' %}</a>
|
||||
</li>
|
||||
|
||||
{# edit group #}
|
||||
<li class="{% if request.path == 'foo' %}selected{% endif %}">
|
||||
<a href="{% model_url group 'edit' %}"><img src="{% static 'images/icons/edit.png' %}"> {% trans 'Edit group' %}</a>
|
||||
</li>
|
||||
|
||||
{# delete group #}
|
||||
{% if group.name|lower != 'anonymous' and group.name|lower != 'registered' %}
|
||||
<li>
|
||||
<a href="{% model_url group 'delete' %}"><img src="{% static 'images/icons/delete.png' %}"> {% trans 'Delete group' %}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
|
||||
{% endblock %}
|
@ -5,18 +5,19 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Participant settings" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Participant settings" %}</h1>
|
||||
<h1>
|
||||
{% trans "Configuration" %}
|
||||
<small>{% trans "Participants" %}</small>
|
||||
{% block config_submenu %}{{ block.super }}{% endblock %}
|
||||
</h1>
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'config_participant' %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'config_participant' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
</p>
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
{% include "formbuttons_save.html" %}
|
||||
<a href="{% url 'config_participant' %}" class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "participant/base_participant.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
@ -11,33 +11,30 @@
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block content %}
|
||||
{% if edit_user %}
|
||||
<h1>{% trans "Edit participant" %}</h1>
|
||||
{% else %}
|
||||
<h1>{% trans "New participant" %}</h1>
|
||||
{% endif %}
|
||||
<h1>
|
||||
{% if edit_user %}
|
||||
{% trans "Edit participant" %}
|
||||
{% else %}
|
||||
{% trans "New participant" %}
|
||||
{% endif %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'user_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
{% include "form.html" %}
|
||||
{% if edit_user %}
|
||||
<p>
|
||||
<a href="{% url 'user_reset_password' edit_user.id %}">{% trans 'Reset to First Password' %}</a>
|
||||
</p>
|
||||
{% endif %}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<button class="button" type="submit" name="apply">
|
||||
<span class="icon apply">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
<a href='{% url "user_overview" %}'>
|
||||
<button class="button" type="button" onclick="window.location='{% url 'user_overview' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
{% include "formbuttons_saveapply.html" %}
|
||||
<a href="{% url 'user_overview' %}" class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
</form>
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "participant/base_participant.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
@ -12,25 +12,23 @@
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>
|
||||
{% if group %}
|
||||
<h1>{% trans "Edit group" %}</h1>
|
||||
{% trans "Edit group" %}
|
||||
{% else %}
|
||||
<h1>{% trans "New group" %}</h1>
|
||||
{% trans "New group" %}
|
||||
{% endif %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'user_group_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<button class="button" type="submit" name="apply">
|
||||
<span class="icon apply">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
<a href='{% url "user_group_overview" %}'>
|
||||
<button class="button" type="button" onclick="window.location='{% url 'user_group_overview' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
{% include "formbuttons_saveapply.html" %}
|
||||
<a href="{% url 'user_group_overview' %}" class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "participant/base_participant.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
@ -7,8 +7,14 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Groups" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Groups" %}</h1>
|
||||
<table>
|
||||
<h1>{% trans "Groups" %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'user_group_new' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'New group' %}"><i class="icon-plus"></i> {% trans "New" %}</a>
|
||||
<a href="{% url 'user_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to participants overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<table class="table table-striped table-bordered">
|
||||
<tr>
|
||||
<th>{% trans "Group" %}</th>
|
||||
<th>{% trans "Actions" %}</th>
|
||||
|
@ -5,17 +5,14 @@
|
||||
{% for group in groups %}
|
||||
{% if group.name != 'Anonymous' and group.name != 'Registered' %}
|
||||
<li class="{% if group.active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_slide' group.sid %}" class="activate_link {% if group.active %}active{% endif %}">
|
||||
<div></div>
|
||||
<a href="{% url 'projector_activate_slide' group.sid %}" class="activate_link btn {% if group.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if group.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% model_url group 'edit' %}" title="{% trans 'Edit' %}" class="btn btn-mini right">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% model_url group 'delete' %}" title="{% trans 'Delete' %}" class="icon delete right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% model_url group 'edit' %}" title="{% trans 'Edit' %}" class="icon edit right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' group.sid %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
<a href="{% url 'projctor_preview_slide' group.sid %}" title="{% trans 'Preview' %}" class="btn btn-mini right">
|
||||
<i class="icon-search"></i>
|
||||
</a>
|
||||
<a href="{% model_url group 'view' %}">{{ group }}</a>
|
||||
</li>
|
||||
|
@ -1,11 +1,17 @@
|
||||
{% extends "participant/base_participant.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
{% block title %}{{ block.super }} – {% trans "Import participants" %} {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans 'Import participants' %}</h1>
|
||||
<h1>
|
||||
{% trans 'Import participants' %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'user_overview' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<p>{% trans 'Select a CSV file to import participants!' %}</p>
|
||||
|
||||
<p>{% trans 'Required comma separated values' %}:
|
||||
@ -18,15 +24,13 @@
|
||||
</p>
|
||||
|
||||
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<button class="btn btn-primary" type="submit">
|
||||
<span class="icon import">{% trans 'Import' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'user_overview' %}">
|
||||
<button class="button" type="button" onclick="window.location='{% url 'user_overview' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
<a href="{% url 'user_overview' %}" class="btn">
|
||||
{% trans 'Cancel' %}
|
||||
</a>
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
|
@ -1,25 +1,17 @@
|
||||
{% extends "participant/base_participant.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block mainmenu %}
|
||||
<ul>
|
||||
<li class="selected"><a href="{% url 'user_login' %}" title="">{% trans "Login" %}</a></li>
|
||||
</ul>
|
||||
{% block loginbutton %}
|
||||
{% endblock %}
|
||||
|
||||
{% block submenu %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Login" %}</h1>
|
||||
{% block body %}
|
||||
<div id="login-page" class="container">
|
||||
<h2><img src="/static/img/logo-login.png"></h2>
|
||||
|
||||
{% if form.errors %}
|
||||
<div class="notification error">
|
||||
<a class="close" href="#">
|
||||
<img alt="close" title="{% trans 'Close this notification' %}" src="{% static 'images/icons/cross.png' %}">
|
||||
</a>
|
||||
<div class="alert alert-error">
|
||||
{% for msg in form.non_field_errors %}
|
||||
<em>{{ msg }}</em>
|
||||
{% if not forloop.last %}<br />{% endif %}
|
||||
@ -29,48 +21,37 @@
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if first_time_message %}
|
||||
<div class="notification info">
|
||||
<a class="close" href="#">
|
||||
<img alt="close" title="{% trans 'Close this notification' %}" src="{% static 'images/icons/cross.png' %}">
|
||||
</a>
|
||||
<div class="alert alert-info">
|
||||
<em>{{ first_time_message|safe }}</em>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<script>
|
||||
$("div.notification").click(function () {
|
||||
$(this).hide("fast");
|
||||
});
|
||||
</script>
|
||||
<form method="post" action="{% url 'user_login' %}{% if next %}?next={{ next }}{% endif %}">
|
||||
<form method="post" action="{% url 'user_login' %}{% if next %}?next={{ next }}{% endif %}" class="well">
|
||||
{% csrf_token %}
|
||||
<table>
|
||||
<tr>
|
||||
<td>{{ form.username.label_tag }}</td>
|
||||
<td>{{ form.username }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ form.password.label_tag }}</td>
|
||||
<td>{{ form.password }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="input-prepend">
|
||||
<span class="add-on"><i class="icon-user"></i></span>
|
||||
<input type="text" maxlength="30" name="username" id="id_username" placeholder="{% trans 'Username' %}">
|
||||
</div>
|
||||
<div class="input-prepend">
|
||||
<span class="add-on"><i class="icon-lock"></i></span>
|
||||
<input type="password" maxlength="30" name="password" id="id_password" placeholder="{% trans 'Password' %}">
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Login' %}</span>
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{% trans 'Login' %}
|
||||
</button>
|
||||
{% if os_enable_anonymous_login %}
|
||||
<button class="button" id="anonymous_login">
|
||||
<span class="icon guest">{% trans 'Continue as guest' %}</span>
|
||||
</button>
|
||||
<a id="anonymous_login" class="btn" href="{% url 'dashboard' %}">
|
||||
{% trans 'Continue as guest' %}
|
||||
</a>
|
||||
{% endif %}
|
||||
<input type="hidden" name="next" value="{{ next }}" />
|
||||
</p>
|
||||
</form>
|
||||
{% if os_enable_anonymous_login %}
|
||||
<script>
|
||||
$("#anonymous_login").live('click', function () {
|
||||
window.location.href = "{% url 'item_overview' %}";
|
||||
return false;
|
||||
});
|
||||
</script>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "participant/base_participant.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
@ -7,103 +7,147 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Participants" %}{% endblock %}
|
||||
|
||||
{% block header %}
|
||||
{% if perms.agenda.can_manage_agenda %}
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<link type="text/css" rel="stylesheet" media="all" href="{% static 'styles/participant.css' %}" />
|
||||
<script type="text/javascript" src="{% static 'javascript/participant.js' %}"></script>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block javascript %}
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<script type="text/javascript" src="{% static 'javascript/participant.js' %}"></script>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Participants" %}</h1>
|
||||
<h1>{% trans "Participants" %}
|
||||
<small class="pull-right">
|
||||
<div class="btn-toolbar">
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<a href="{% url 'user_new' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'New participant' %}"><i class="icon-plus"></i> {% trans "New" %}</a>
|
||||
<a href="{% url 'user_group_overview' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'All user groups' %}"><i class="icon-group"></i> {% trans "User groups" %}</a>
|
||||
<a href="{% url 'user_import' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'Import participants' %}"><i class="icon-import"></i> {% trans 'Import' %}</a>
|
||||
{% endif %}
|
||||
{% if perms.participant.can_see_participant and perms.participant.can_manage_participant %}
|
||||
<div class="btn-group pull-right">
|
||||
{% if user.is_authenticated %}
|
||||
<a href="#" data-toggle="dropdown" class="btn btn-mini dropdown-toggle">
|
||||
<i class="icon-print"></i> PDF
|
||||
<span class="caret"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
{% url 'user_settings' as url_usersettings %}
|
||||
<li><a href="{% url 'user_print' %}"><i class="icon-list"></i> {% trans 'List of participants' %}</a></li>
|
||||
<li><a href="{% url 'print_passwords' %}"><i class="icon-th-large"></i> {% trans 'First time passwords' %}</a></li>
|
||||
</ul>
|
||||
{% else %}
|
||||
<a href="{% url 'user_login' %}" class="btn">{% trans "Login" %}</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% if perms.participant.can_see_participant %}
|
||||
<a href="{% url 'user_print' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'Print list of participants as PDF' %}"><i class="icon-print"></i> PDF</a>
|
||||
{% endif %}
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<a href="{% url 'print_passwords' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'Print first time passwords as PDF' %}"><i class="icon-print"></i> PDF</a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<p>
|
||||
<form action="" name="filter" method="get">
|
||||
{% trans "Filter" %}:
|
||||
<select class="default-input" name="gender" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Gender" %} --</option>
|
||||
<option value="male"{% if 'male' in sortfilter.gender %} selected{% endif %}>{% trans "Male" %}</option>
|
||||
<option value="female"{% if 'female' in sortfilter.gender %} selected{% endif %}>{% trans "Female" %}</option>
|
||||
<option value=""{% if '' in sortfilter.gender %} selected{% endif %}>{% trans "Not specified" %}</option>
|
||||
</select>
|
||||
<select class="default-input" name="structure_level" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Structure level" %} --</option>
|
||||
{% for level in structure_levels %}
|
||||
<option value="{{ level }}"{% if level in sortfilter.structure_level %} selected{% endif %}>
|
||||
{{ level }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<select class="default-input" name="type" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Type" %} --</option>
|
||||
<option value="delegate"{% if 'delegate' in sortfilter.type %} selected{% endif %}>{% trans "Delegate" %}</option>
|
||||
<option value="observer"{% if 'observer' in sortfilter.type %} selected{% endif %}>{% trans "Observer" %}</option>
|
||||
<option value="staff"{% if 'staff' in sortfilter.type %} selected{% endif %}>{% trans "Staff" %}</option>
|
||||
<option value="guest"{% if 'guest' in sortfilter.type %} selected{% endif %}>{% trans "Guest" %}</option>
|
||||
<option value=""{% if '' in sortfilter.type %} selected{% endif %}>{% trans "Not specified" %}</option>
|
||||
</select>
|
||||
<select class="default-input" name="committee" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Committee" %} --</option>
|
||||
{% for committee in committees %}
|
||||
<option value="{{ committee }}"{% if committee in sortfilter.committee %} selected{% endif %}>
|
||||
{{ committee }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<select class="default-input" name="status" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Status" %} --</option>
|
||||
<option value="1"{% if '1' in sortfilter.status %} selected{% endif %}>{% trans "Active" %}</option>
|
||||
<option value="0"{% if '0' in sortfilter.status %} selected{% endif %}>{% trans "Inactive" %}</option>
|
||||
</select>
|
||||
</form>
|
||||
</p>
|
||||
<form action="" name="filter" method="get">
|
||||
{% trans "Filter" %}:
|
||||
<div class="control-group">
|
||||
<select class="span2" name="gender" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Gender" %} --</option>
|
||||
<option value="male"{% if 'male' in sortfilter.gender %} selected{% endif %}>{% trans "Male" %}</option>
|
||||
<option value="female"{% if 'female' in sortfilter.gender %} selected{% endif %}>{% trans "Female" %}</option>
|
||||
<option value=""{% if '' in sortfilter.gender %} selected{% endif %}>{% trans "Not specified" %}</option>
|
||||
</select>
|
||||
<select class="span2" name="structure_level" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Structure level" %} --</option>
|
||||
{% for level in structure_levels %}
|
||||
<option value="{{ level }}"{% if level in sortfilter.structure_level %} selected{% endif %}>
|
||||
{{ level }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<select class="span2" name="type" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Type" %} --</option>
|
||||
<option value="delegate"{% if 'delegate' in sortfilter.type %} selected{% endif %}>{% trans "Delegate" %}</option>
|
||||
<option value="observer"{% if 'observer' in sortfilter.type %} selected{% endif %}>{% trans "Observer" %}</option>
|
||||
<option value="staff"{% if 'staff' in sortfilter.type %} selected{% endif %}>{% trans "Staff" %}</option>
|
||||
<option value="guest"{% if 'guest' in sortfilter.type %} selected{% endif %}>{% trans "Guest" %}</option>
|
||||
<option value=""{% if '' in sortfilter.type %} selected{% endif %}>{% trans "Not specified" %}</option>
|
||||
</select>
|
||||
<select class="span2" name="committee" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Committee" %} --</option>
|
||||
{% for committee in committees %}
|
||||
<option value="{{ committee }}"{% if committee in sortfilter.committee %} selected{% endif %}>
|
||||
{{ committee }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<select class="span2" name="status" onchange="document.forms['filter'].submit()">
|
||||
<option value="---">-- {% trans "Status" %} --</option>
|
||||
<option value="1"{% if '1' in sortfilter.status %} selected{% endif %}>{% trans "Active" %}</option>
|
||||
<option value="0"{% if '0' in sortfilter.status %} selected{% endif %}>{% trans "Inactive" %}</option>
|
||||
</select>
|
||||
</div>
|
||||
</form>
|
||||
<small><i>
|
||||
{% if users.count == allusers %}
|
||||
{{ users.count }}
|
||||
{% blocktrans count counter=users.count %}participant{% plural %}participants{% endblocktrans %}
|
||||
{% else %}
|
||||
{{ users.count }} {% trans "of" %} {{ allusers }} {% trans "Participants" %} (= {{ percent }} %)
|
||||
{% endif %}
|
||||
<table>
|
||||
</i></small>
|
||||
<table class="table table-striped table-bordered">
|
||||
<tr>
|
||||
<th><a href="?sort=first_name&reverse={% if 'first_name' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "First Name" %}</a></th>
|
||||
<th><a href="?sort=last_name&reverse={% if 'last_name' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Last Name" %}</a></th>
|
||||
<th><a href="?sort=structure_level&reverse={% if 'structure_level' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Structure level" %}</a></th>
|
||||
<th><a href="?sort=type&reverse={% if 'type' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Type" %}</a></th>
|
||||
<th><a href="?sort=committee&reverse={% if 'committee' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Committee" %}</a></th>
|
||||
<th class="optional"><a href="?sort=structure_level&reverse={% if 'structure_level' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Structure level" %}</a></th>
|
||||
<th class="optional"><a href="?sort=type&reverse={% if 'type' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Type" %}</a></th>
|
||||
<th class="optional"><a href="?sort=committee&reverse={% if 'committee' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Committee" %}</a></th>
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<th><a href="?sort=comment&reverse={% if 'comment' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Comment" %}</a></th>
|
||||
<th><a href="?sort=last_login&reverse={% if 'last_login' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Last Login" %}</a></th>
|
||||
<th>{% trans "Actions" %}</th>
|
||||
<th class="optional"><a href="?sort=comment&reverse={% if 'comment' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Comment" %}</a></th>
|
||||
<th class="optional"><a href="?sort=last_login&reverse={% if 'last_login' in sortfilter.sort and 'reverse' not in sortfilter %}1{% else %}---{%endif%}">{% trans "Last Login" %}</a></th>
|
||||
<th style="width: 1px;">{% trans "Actions" %}</th>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% for user in users %}
|
||||
<tr class="{% cycle '' 'odd' %}">
|
||||
<td><a href="{% model_url user 'view' %}">{{ user.first_name }}</a></td>
|
||||
<td><a href="{% model_url user 'view' %}">{{ user.last_name }}</a></td>
|
||||
<td>{{ user.structure_level }}</td>
|
||||
<td>{{ user.get_type_display }}</td>
|
||||
<td>{{ user.committee }}</td>
|
||||
<tr class="{% if user.active %}activeline{% endif %}">
|
||||
<td>{{ user.first_name }}</td>
|
||||
<td>{{ user.last_name }}</td>
|
||||
<td class="optional">{{ user.structure_level }}</td>
|
||||
<td class="optional">{{ user.get_type_display }}</td>
|
||||
<td class="optional">{{ user.committee }}</td>
|
||||
{% if perms.participant.can_manage_participant %}
|
||||
<td>{{ user.comment|first_line }}</td>
|
||||
<td>
|
||||
<td class="optional">{{ user.comment|first_line }}</td>
|
||||
<td class="optional">
|
||||
{% if user.last_login > user.date_joined %}
|
||||
{{ user.last_login }}
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<span style="width: 1px; white-space: nowrap;">
|
||||
<a href="{% url 'user_edit' user.id %}">
|
||||
<img src="{% static 'images/icons/edit.png' %}" title="{% trans 'Edit participant' %}">
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<a href="{% url 'projector_activate_slide' user.sid %}" class="activate_link btn {% if user.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if user.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
<a href="{% url 'user_edit' user.id %}" title="{% trans 'Edit' %}" class="btn btn-mini">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
{% if user != request_user %}
|
||||
<a href="{% url 'user_delete' user.id %}">
|
||||
<img src="{% static 'images/icons/delete.png' %}" title="{% trans 'Delete participant' %}">
|
||||
<a href="{% url 'user_delete' user.id %}" title="{% trans 'Delete' %}" class="btn btn-mini">
|
||||
<i class="icon-remove"></i>
|
||||
</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>
|
||||
<a class="status_link activate" href="{% url 'user_status_activate' user.id %}" title="{% trans 'Change status to active' %}"{% if user.is_active %} style="display:none"{% endif %}>
|
||||
<span></span>
|
||||
<a href="{% url 'user_status_toggle' user.id %}"
|
||||
class="status_link btn btn-mini {% if user.is_active %}btn-success{% endif %}"
|
||||
title="{% trans 'Change status (active/inactive)' %}">
|
||||
<i class="{% if user.is_active %}icon-on{% else %}icon-off{% endif %}"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
</span>
|
||||
|
@ -4,28 +4,11 @@
|
||||
|
||||
{% block title %}{{ block.super }} – {% trans "Password Settings" %}{% endblock %}
|
||||
|
||||
{% block submenu %}
|
||||
<h4 class="sectiontitle">{% trans "User Settings" %}</h4>
|
||||
<ul>
|
||||
<li><a href="{% url 'user_settings' %}">{% trans "Personal Settings" %}</a></li>
|
||||
<li class="selected"><a href="{% url 'password_change' %}">{% trans "Password Settings" %}</a></li>
|
||||
</ul>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Password Settings" %}</h1>
|
||||
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<a href=''>
|
||||
<button class="button" type="button">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
{% include "form.html" %}
|
||||
{% include "formbuttons_save.html" %}
|
||||
</form>
|
||||
<p></p>
|
||||
{% endblock %}
|
||||
|
@ -2,29 +2,13 @@
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
{% block title %}{{ block.super }} – {% trans "Personal Settings" %}{% endblock %}
|
||||
|
||||
{% block submenu %}
|
||||
<h4 class="sectiontitle">{% trans "User Settings" %}</h4>
|
||||
<ul>
|
||||
<li class="selected"><a href="{% url 'user_settings' %}">{% trans "Personal Settings" %}</a></li>
|
||||
<li><a href="{% url 'password_change' %}">{% trans "Password Settings" %}</a></li>
|
||||
</ul>
|
||||
{% endblock %}
|
||||
{% block title %}{{ block.super }} – {% trans "Edit profile" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans "Personal Settings" %}</h1>
|
||||
<h1>{% trans "Edit profile" %}</h1>
|
||||
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form_user.as_p }}
|
||||
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<a href=''>
|
||||
<button class="button" type="button">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
{% include "form.html" %}
|
||||
{% include "formbuttons_save.html" %}
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
@ -4,17 +4,14 @@
|
||||
<ul style="line-height: 180%">
|
||||
{% for user in users %}
|
||||
<li class="{% if user.active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_slide' user.sid %}" class="activate_link {% if user.active %}active{% endif %}">
|
||||
<div></div>
|
||||
<a href="{% url 'projector_activate_slide' user.sid %}" class="activate_link btn {% if user.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if user.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% model_url user 'edit' %}" title="{% trans 'Edit' %}" class="btn btn-mini right">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% model_url user 'delete' %}" title="{% trans 'Delete' %}" class="icon delete right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% model_url user 'edit' %}" title="{% trans 'Edit' %}" class="icon edit right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' user.sid %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
<a href="{% url 'projctor_preview_slide' user.sid %}" title="{% trans 'Preview' %}" class="btn btn-mini right">
|
||||
<i class="icon-search"></i>
|
||||
</a>
|
||||
<a href="{% model_url user 'view' %}">{{ user }}</a>
|
||||
</li>
|
||||
|
@ -499,7 +499,7 @@ def user_settings(request):
|
||||
form_user = UsersettingsForm(instance=request.user, initial={'language': language})
|
||||
|
||||
return {
|
||||
'form_user': form_user,
|
||||
'form': form_user,
|
||||
'edituser': request.user,
|
||||
}
|
||||
|
||||
@ -515,7 +515,7 @@ def user_settings_password(request):
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
messages.success(request, _('Password successfully changed.'))
|
||||
return redirect(reverse('user_settings'))
|
||||
return redirect(reverse('dashboard'))
|
||||
else:
|
||||
messages.error(request, _('Please check the form for errors.'))
|
||||
else:
|
||||
@ -533,6 +533,7 @@ def register_tab(request):
|
||||
selected = request.path.startswith('/participant/')
|
||||
return Tab(
|
||||
title=_('Participants'),
|
||||
app='participant',
|
||||
url=reverse('user_overview'),
|
||||
permission=(
|
||||
request.user.has_perm('participant.can_see_participant') or
|
||||
|
@ -5,26 +5,17 @@
|
||||
* :license: GNU GPL, see LICENSE for more details.
|
||||
*/
|
||||
|
||||
// function that writes the portlet list order to a cookie
|
||||
// function that writes the widget list order to a cookie
|
||||
function saveOrder() {
|
||||
$(".column").each(function(index, value){
|
||||
var colid = value.id;
|
||||
var cookieName = "cookie-" + colid;
|
||||
// Get the order for this column.
|
||||
var order = $('#' + colid).sortable("toArray");
|
||||
// For each portlet in the column
|
||||
for ( var i = 0, n = order.length; i < n; i++ ) {
|
||||
// Determine if it is 'opened' or 'closed'
|
||||
var v = $('#' + order[i] ).find('.portlet-content').is(':visible');
|
||||
// Modify the array we're saving to indicate what's open and
|
||||
// what's not.
|
||||
order[i] = order[i] + ":" + v;
|
||||
}
|
||||
$.cookie(cookieName, order, { path: "/", expiry: new Date(2012, 1, 1)});
|
||||
});
|
||||
}
|
||||
|
||||
// function that restores the portlet list order from a cookie
|
||||
// function that restores the widget list order from a cookie
|
||||
function restoreOrder() {
|
||||
$(".column").each(function(index, value) {
|
||||
var colid = value.id;
|
||||
@ -33,20 +24,10 @@ function restoreOrder() {
|
||||
if ( cookie == null ) { return; }
|
||||
var IDs = cookie.split(",");
|
||||
for (var i = 0, n = IDs.length; i < n; i++ ) {
|
||||
var toks = IDs[i].split(":");
|
||||
if ( toks.length != 2 ) {
|
||||
continue;
|
||||
}
|
||||
var portletID = toks[0];
|
||||
var visible = toks[1]
|
||||
var portlet = $(".column")
|
||||
.find('#' + portletID)
|
||||
var widgetID = IDs[i];
|
||||
var widget = $(".column")
|
||||
.find('#' + widgetID)
|
||||
.appendTo($('#' + colid));
|
||||
if (visible === 'false') {
|
||||
portlet.find(".ui-icon").toggleClass("ui-icon-minus");
|
||||
portlet.find(".ui-icon").toggleClass("ui-icon-plus");
|
||||
portlet.find(".portlet-content").hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -57,24 +38,8 @@ $(function() {
|
||||
stop: function() { saveOrder(); }
|
||||
});
|
||||
|
||||
$(".portlet")
|
||||
.addClass("ui-widget ui-widget-content")
|
||||
.addClass("ui-helper-clearfix ui-corner-all")
|
||||
.find(".portlet-header")
|
||||
.addClass("ui-widget-header ui-corner-all")
|
||||
.prepend('<span class="ui-icon ui-icon-minus"></span>')
|
||||
.end()
|
||||
.find(".portlet-content");
|
||||
|
||||
restoreOrder();
|
||||
|
||||
$(".portlet-header .ui-icon").click(function() {
|
||||
$(this).toggleClass("ui-icon-minus");
|
||||
$(this).toggleClass("ui-icon-plus");
|
||||
$(this).parents(".portlet:first").find(".portlet-content").toggle();
|
||||
saveOrder(); // This is important
|
||||
});
|
||||
|
||||
if ($.browser.msie) {
|
||||
if ($.browser.version >= 8.0 && $.browser.version < 9.0)
|
||||
{
|
||||
@ -85,27 +50,6 @@ $(function() {
|
||||
$( "#iframe" ).css('zoom', '0.25');
|
||||
}
|
||||
|
||||
// activate an element to show it on projector
|
||||
$('.activate_link').click(function(event) {
|
||||
event.preventDefault();
|
||||
var link = $(this);
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: $(this).attr('href'),
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
$('.activate_link').removeClass('active');
|
||||
$('li').removeClass('activeline');
|
||||
$('div').removeClass('activeline');
|
||||
link.addClass('active');
|
||||
link.parent().addClass('activeline');
|
||||
},
|
||||
error: function () {
|
||||
alert("Ajax Error");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('a.overlay').click(function(event) {
|
||||
event.preventDefault();
|
||||
var link = $(this);
|
||||
|
20
openslides/projector/static/javascript/jquery-ui.min.js
vendored
Executable file
@ -5,32 +5,68 @@
|
||||
* :license: GNU GPL, see LICENSE for more details.
|
||||
*/
|
||||
|
||||
/* Portlet */
|
||||
/** Widgets **/
|
||||
.column {
|
||||
width: 50%;
|
||||
float: left;
|
||||
padding-bottom: 100px;
|
||||
}
|
||||
.portlet {
|
||||
.widget {
|
||||
margin: 0 10px 10px 0;
|
||||
}
|
||||
.portlet-header {
|
||||
margin: 0.3em;
|
||||
padding-bottom: 4px;
|
||||
padding-left: 0.2em;
|
||||
.widget-header {
|
||||
height: 30px;
|
||||
background: #E9E9E9;
|
||||
background:-moz-linear-gradient(top, #FAFAFA 0%, #E9E9E9 100%); /* FF3.6+ */
|
||||
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#FAFAFA), color-stop(100%,#E9E9E9)); /* Chrome,Safari4+ */
|
||||
background:-webkit-linear-gradient(top, #FAFAFA 0%,#E9E9E9 100%); /* Chrome10+,Safari5.1+ */
|
||||
background:-o-linear-gradient(top, #FAFAFA 0%,#E9E9E9 100%); /* Opera11.10+ */
|
||||
background:-ms-linear-gradient(top, #FAFAFA 0%,#E9E9E9 100%); /* IE10+ */
|
||||
background:linear-gradient(top, #FAFAFA 0%,#E9E9E9 100%); /* W3C */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FAFAFA', endColorstr='#E9E9E9');
|
||||
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#FAFAFA', endColorstr='#E9E9E9')";
|
||||
border: 1px solid #D5D5D5;
|
||||
border-radius: 5px 5px 0 0;
|
||||
-moz-border-radius: 5px 5px 0 0;
|
||||
-webkit-border-radius: 5px 5px 0 0;
|
||||
|
||||
}
|
||||
.portlet-header .ui-icon {
|
||||
float: right;
|
||||
.widget-header h3 {
|
||||
padding-left: 7px;
|
||||
margin: 7px 0;
|
||||
display: inline-block;
|
||||
font-size: 14px;
|
||||
color: #555;
|
||||
line-height: 18px;
|
||||
}
|
||||
.portlet-content {
|
||||
padding: 0.4em;
|
||||
overflow: hidden;
|
||||
|
||||
.widget-header [class^="icon-"], .widget-header [class*=" icon-"] {
|
||||
display: inline-block;
|
||||
margin: -2px 0 0 13px;
|
||||
color: #555;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.portlet-content li{
|
||||
.widget-content {
|
||||
padding: 20px 15px 15px 13px;
|
||||
background: #FFF;
|
||||
border: 1px solid #D5D5D5;
|
||||
border-radius: 0 0 5px 5px;
|
||||
-moz-border-radius: 0 0 5px 5px;
|
||||
-webkit-border-radius: 0 0 5px 5px;
|
||||
}
|
||||
.widget-content li{
|
||||
padding: 4px 0;
|
||||
}
|
||||
.widget-content ul {
|
||||
list-style: none inside none;
|
||||
margin: 0;
|
||||
}
|
||||
.widget-content hr {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
.ui-sortable-placeholder {
|
||||
border: 1px dotted black;
|
||||
border: 2px dashed #555555;
|
||||
visibility: visible !important;
|
||||
height: 50px !important;
|
||||
}
|
||||
@ -42,7 +78,10 @@
|
||||
|
||||
#countdown_time {
|
||||
width: 40px;
|
||||
height: 16px;
|
||||
}
|
||||
#overlay_message_text {
|
||||
width: 90%;
|
||||
height: 12px;
|
||||
}
|
||||
|
||||
/* iframe */
|
||||
@ -53,7 +92,6 @@
|
||||
-moz-transform: scale(0.25);
|
||||
-webkit-transform: scale(0.25);
|
||||
-o-transform: scale(0.25);
|
||||
|
||||
width: 1024px;
|
||||
height: 768px;
|
||||
}
|
||||
@ -63,6 +101,7 @@
|
||||
height: 192px;/*230px;*/
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
border: 1px solid #D5D5D5;
|
||||
}
|
||||
|
||||
#iframeoverlay {
|
||||
@ -106,6 +145,3 @@ a.overlay div {
|
||||
a.overlay.active div {
|
||||
background-image: url(../images/icons/accept.png);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 157 B |
Before Width: | Height: | Size: 174 B |
Before Width: | Height: | Size: 125 B |
Before Width: | Height: | Size: 103 B |
Before Width: | Height: | Size: 114 B |
Before Width: | Height: | Size: 147 B |
Before Width: | Height: | Size: 113 B |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 4.3 KiB |
@ -1,286 +0,0 @@
|
||||
/*
|
||||
* jQuery UI CSS Framework 1.8.18
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Theming/API
|
||||
*/
|
||||
|
||||
/* Layout helpers
|
||||
----------------------------------*/
|
||||
.ui-helper-hidden { display: none; }
|
||||
.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
|
||||
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
|
||||
.ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; }
|
||||
.ui-helper-clearfix:after { clear: both; }
|
||||
.ui-helper-clearfix { zoom: 1; }
|
||||
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
|
||||
|
||||
|
||||
/* Interaction Cues
|
||||
----------------------------------*/
|
||||
.ui-state-disabled { cursor: default !important; }
|
||||
|
||||
|
||||
/* Icons
|
||||
----------------------------------*/
|
||||
|
||||
/* states and images */
|
||||
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
|
||||
|
||||
|
||||
/* Misc visuals
|
||||
----------------------------------*/
|
||||
|
||||
/* Overlays */
|
||||
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
|
||||
|
||||
|
||||
/*
|
||||
* jQuery UI CSS Framework 1.8.18
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Theming/API
|
||||
*
|
||||
* To view and modify this theme, visit http://jqueryui.com/themeroller/?tr=ffDefault=Helvetica,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=cb842e&bgTextureHeader=02_glass.png&bgImgOpacityHeader=25&borderColorHeader=d49768&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=f4f0ec&bgTextureContent=05_inset_soft.png&bgImgOpacityContent=100&borderColorContent=e0cfc2&fcContent=1e1b1d&iconColorContent=c47a23&bgColorDefault=ede4d4&bgTextureDefault=02_glass.png&bgImgOpacityDefault=70&borderColorDefault=cdc3b7&fcDefault=3f3731&iconColorDefault=f08000&bgColorHover=f5f0e5&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=f5ad66&fcHover=a46313&iconColorHover=f08000&bgColorActive=f4f0ec&bgTextureActive=04_highlight_hard.png&bgImgOpacityActive=100&borderColorActive=e0cfc2&fcActive=b85700&iconColorActive=f35f07&bgColorHighlight=f5f5b5&bgTextureHighlight=04_highlight_hard.png&bgImgOpacityHighlight=75&borderColorHighlight=d9bb73&fcHighlight=060200&iconColorHighlight=cb672b&bgColorError=fee4bd&bgTextureError=04_highlight_hard.png&bgImgOpacityError=65&borderColorError=f8893f&fcError=592003&iconColorError=ff7519&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=75&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=75&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
||||
*/
|
||||
|
||||
|
||||
/* Component containers
|
||||
----------------------------------*/
|
||||
.ui-widget { font-size: 1em; }
|
||||
.ui-widget .ui-widget { font-size: 1em; }
|
||||
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-size: 1em; }
|
||||
.ui-widget-content { border: 1px solid #e0cfc2; background: #f4f0ec url(images/ui-bg_inset-soft_100_f4f0ec_1x100.png) 50% bottom repeat-x; color: #1e1b1d; }
|
||||
.ui-widget-header { border: 1px solid #d49768; background: #cb842e url(images/ui-bg_glass_25_cb842e_1x400.png) 50% 50% repeat-x; color: #ffffff; font-weight: bold; }
|
||||
.ui-widget-header a { color: #ffffff; }
|
||||
|
||||
/* Interaction states
|
||||
----------------------------------*/
|
||||
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #cdc3b7; background: #ede4d4 url(images/ui-bg_glass_70_ede4d4_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #3f3731; }
|
||||
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #3f3731; text-decoration: none; }
|
||||
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #f5ad66; background: #f5f0e5 url(images/ui-bg_glass_100_f5f0e5_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #a46313; }
|
||||
.ui-state-hover a, .ui-state-hover a:hover { color: #a46313; text-decoration: none; }
|
||||
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #e0cfc2; background: #f4f0ec url(images/ui-bg_highlight-hard_100_f4f0ec_1x100.png) 50% 50% repeat-x; font-weight: normal; color: #b85700; }
|
||||
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #b85700; text-decoration: none; }
|
||||
.ui-widget :active { outline: none; }
|
||||
|
||||
/* Interaction Cues
|
||||
----------------------------------*/
|
||||
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #d9bb73; background: #f5f5b5 url(images/ui-bg_highlight-hard_75_f5f5b5_1x100.png) 50% top repeat-x; color: #060200; }
|
||||
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #060200; }
|
||||
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #f8893f; background: #fee4bd url(images/ui-bg_highlight-hard_65_fee4bd_1x100.png) 50% top repeat-x; color: #592003; }
|
||||
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #592003; }
|
||||
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #592003; }
|
||||
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
|
||||
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
|
||||
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
|
||||
|
||||
/* Icons
|
||||
----------------------------------*/
|
||||
|
||||
/* states and images */
|
||||
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_c47a23_256x240.png); }
|
||||
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_c47a23_256x240.png); }
|
||||
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); }
|
||||
.ui-state-default .ui-icon { background-image: url(images/ui-icons_f08000_256x240.png); }
|
||||
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_f08000_256x240.png); }
|
||||
.ui-state-active .ui-icon {background-image: url(images/ui-icons_f35f07_256x240.png); }
|
||||
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_cb672b_256x240.png); }
|
||||
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_ff7519_256x240.png); }
|
||||
|
||||
/* positioning */
|
||||
.ui-icon-carat-1-n { background-position: 0 0; }
|
||||
.ui-icon-carat-1-ne { background-position: -16px 0; }
|
||||
.ui-icon-carat-1-e { background-position: -32px 0; }
|
||||
.ui-icon-carat-1-se { background-position: -48px 0; }
|
||||
.ui-icon-carat-1-s { background-position: -64px 0; }
|
||||
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
||||
.ui-icon-carat-1-w { background-position: -96px 0; }
|
||||
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
||||
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
||||
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
||||
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
||||
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
||||
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
||||
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
||||
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
||||
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
||||
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
||||
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
||||
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
||||
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
||||
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
||||
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
||||
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
||||
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
||||
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
||||
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
||||
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
||||
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
||||
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
||||
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
||||
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
||||
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
||||
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
||||
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
||||
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
||||
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
||||
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
||||
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
||||
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
||||
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
||||
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
||||
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
||||
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
||||
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
||||
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
||||
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
||||
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
||||
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
||||
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
||||
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
||||
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
||||
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
||||
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
||||
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
||||
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
||||
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
||||
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
||||
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
||||
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
||||
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
||||
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
||||
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
||||
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
||||
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
||||
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
||||
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
||||
.ui-icon-extlink { background-position: -32px -80px; }
|
||||
.ui-icon-newwin { background-position: -48px -80px; }
|
||||
.ui-icon-refresh { background-position: -64px -80px; }
|
||||
.ui-icon-shuffle { background-position: -80px -80px; }
|
||||
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
||||
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
||||
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
||||
.ui-icon-folder-open { background-position: -16px -96px; }
|
||||
.ui-icon-document { background-position: -32px -96px; }
|
||||
.ui-icon-document-b { background-position: -48px -96px; }
|
||||
.ui-icon-note { background-position: -64px -96px; }
|
||||
.ui-icon-mail-closed { background-position: -80px -96px; }
|
||||
.ui-icon-mail-open { background-position: -96px -96px; }
|
||||
.ui-icon-suitcase { background-position: -112px -96px; }
|
||||
.ui-icon-comment { background-position: -128px -96px; }
|
||||
.ui-icon-person { background-position: -144px -96px; }
|
||||
.ui-icon-print { background-position: -160px -96px; }
|
||||
.ui-icon-trash { background-position: -176px -96px; }
|
||||
.ui-icon-locked { background-position: -192px -96px; }
|
||||
.ui-icon-unlocked { background-position: -208px -96px; }
|
||||
.ui-icon-bookmark { background-position: -224px -96px; }
|
||||
.ui-icon-tag { background-position: -240px -96px; }
|
||||
.ui-icon-home { background-position: 0 -112px; }
|
||||
.ui-icon-flag { background-position: -16px -112px; }
|
||||
.ui-icon-calendar { background-position: -32px -112px; }
|
||||
.ui-icon-cart { background-position: -48px -112px; }
|
||||
.ui-icon-pencil { background-position: -64px -112px; }
|
||||
.ui-icon-clock { background-position: -80px -112px; }
|
||||
.ui-icon-disk { background-position: -96px -112px; }
|
||||
.ui-icon-calculator { background-position: -112px -112px; }
|
||||
.ui-icon-zoomin { background-position: -128px -112px; }
|
||||
.ui-icon-zoomout { background-position: -144px -112px; }
|
||||
.ui-icon-search { background-position: -160px -112px; }
|
||||
.ui-icon-wrench { background-position: -176px -112px; }
|
||||
.ui-icon-gear { background-position: -192px -112px; }
|
||||
.ui-icon-heart { background-position: -208px -112px; }
|
||||
.ui-icon-star { background-position: -224px -112px; }
|
||||
.ui-icon-link { background-position: -240px -112px; }
|
||||
.ui-icon-cancel { background-position: 0 -128px; }
|
||||
.ui-icon-plus { background-position: -16px -128px; }
|
||||
.ui-icon-plusthick { background-position: -32px -128px; }
|
||||
.ui-icon-minus { background-position: -48px -128px; }
|
||||
.ui-icon-minusthick { background-position: -64px -128px; }
|
||||
.ui-icon-close { background-position: -80px -128px; }
|
||||
.ui-icon-closethick { background-position: -96px -128px; }
|
||||
.ui-icon-key { background-position: -112px -128px; }
|
||||
.ui-icon-lightbulb { background-position: -128px -128px; }
|
||||
.ui-icon-scissors { background-position: -144px -128px; }
|
||||
.ui-icon-clipboard { background-position: -160px -128px; }
|
||||
.ui-icon-copy { background-position: -176px -128px; }
|
||||
.ui-icon-contact { background-position: -192px -128px; }
|
||||
.ui-icon-image { background-position: -208px -128px; }
|
||||
.ui-icon-video { background-position: -224px -128px; }
|
||||
.ui-icon-script { background-position: -240px -128px; }
|
||||
.ui-icon-alert { background-position: 0 -144px; }
|
||||
.ui-icon-info { background-position: -16px -144px; }
|
||||
.ui-icon-notice { background-position: -32px -144px; }
|
||||
.ui-icon-help { background-position: -48px -144px; }
|
||||
.ui-icon-check { background-position: -64px -144px; }
|
||||
.ui-icon-bullet { background-position: -80px -144px; }
|
||||
.ui-icon-radio-off { background-position: -96px -144px; }
|
||||
.ui-icon-radio-on { background-position: -112px -144px; }
|
||||
.ui-icon-pin-w { background-position: -128px -144px; }
|
||||
.ui-icon-pin-s { background-position: -144px -144px; }
|
||||
.ui-icon-play { background-position: 0 -160px; }
|
||||
.ui-icon-pause { background-position: -16px -160px; }
|
||||
.ui-icon-seek-next { background-position: -32px -160px; }
|
||||
.ui-icon-seek-prev { background-position: -48px -160px; }
|
||||
.ui-icon-seek-end { background-position: -64px -160px; }
|
||||
.ui-icon-seek-start { background-position: -80px -160px; }
|
||||
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
||||
.ui-icon-seek-first { background-position: -80px -160px; }
|
||||
.ui-icon-stop { background-position: -96px -160px; }
|
||||
.ui-icon-eject { background-position: -112px -160px; }
|
||||
.ui-icon-volume-off { background-position: -128px -160px; }
|
||||
.ui-icon-volume-on { background-position: -144px -160px; }
|
||||
.ui-icon-power { background-position: 0 -176px; }
|
||||
.ui-icon-signal-diag { background-position: -16px -176px; }
|
||||
.ui-icon-signal { background-position: -32px -176px; }
|
||||
.ui-icon-battery-0 { background-position: -48px -176px; }
|
||||
.ui-icon-battery-1 { background-position: -64px -176px; }
|
||||
.ui-icon-battery-2 { background-position: -80px -176px; }
|
||||
.ui-icon-battery-3 { background-position: -96px -176px; }
|
||||
.ui-icon-circle-plus { background-position: 0 -192px; }
|
||||
.ui-icon-circle-minus { background-position: -16px -192px; }
|
||||
.ui-icon-circle-close { background-position: -32px -192px; }
|
||||
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
||||
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
||||
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
||||
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
||||
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
||||
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
||||
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
||||
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
||||
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
||||
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
||||
.ui-icon-circle-check { background-position: -208px -192px; }
|
||||
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
||||
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
||||
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
||||
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
||||
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
||||
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
||||
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
||||
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
||||
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
||||
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
||||
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
||||
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
||||
|
||||
|
||||
/* Misc visuals
|
||||
----------------------------------*/
|
||||
|
||||
/* Corner radius */
|
||||
.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; -khtml-border-top-left-radius: 6px; border-top-left-radius: 6px; }
|
||||
.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; -khtml-border-top-right-radius: 6px; border-top-right-radius: 6px; }
|
||||
.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; -khtml-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; }
|
||||
.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; -khtml-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; }
|
||||
|
||||
/* Overlays */
|
||||
.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_75_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
|
||||
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_75_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -khtml-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }
|
@ -8,9 +8,9 @@
|
||||
<head>
|
||||
<link type="text/css" rel="stylesheet" href="{% static 'styles/projector.css' %}">
|
||||
<link rel="shortcut icon" href="{% static 'images/favicon.png' %}" type="image/png" />
|
||||
<script type="text/javascript" src="{% static 'javascript/jquery.js' %}"></script>
|
||||
<script type="text/javascript" src="{% static 'javascript/jquery.min.js' %}"></script>
|
||||
<script type="text/javascript" src="{% static 'javascript/projector.js' %}"></script>
|
||||
<title>{% block title %} {% get_config 'event_name' %} {% endblock %}</title>
|
||||
<title>XX{% block title %} {% get_config 'event_name' %} {% endblock %}</title>
|
||||
{% block header %}
|
||||
{% endblock %}
|
||||
</head>
|
||||
|
@ -1,26 +0,0 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block title %}{{ block.super}} – {% trans 'Dashboard' %} {% endblock %}
|
||||
|
||||
{% block submenu %}
|
||||
{% url 'dashboard' as url_dashboard %}
|
||||
{% url 'projector_select_widgets' as url_select_widget %}
|
||||
<h4 class="sectiontitle">{% trans "Dashboard" %}</h4>
|
||||
<ul>
|
||||
<li{% if request.path == url_dashboard %} class="selected"{% endif %}>
|
||||
<a href="{% url 'dashboard' %}">{% trans 'Overview' %}</a>
|
||||
</li>
|
||||
<li{% if request.path == url_select_widget %} class="selected"{% endif %}>
|
||||
<a href="{{ url_select_widget }}">{% trans 'Select widgets' %}</a>
|
||||
</li>
|
||||
{% if perms.projector.can_see_projector %}
|
||||
<li>
|
||||
<a href="{% url 'projector_show' %}"><img src="{% static 'images/icons/projector.png' %}"> {% trans 'Projector view' %}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
{% endblock %}
|
@ -3,17 +3,22 @@
|
||||
{% load tags %}
|
||||
|
||||
<span class="projector_countdown_spinbox">
|
||||
<input class="projector_countdown_spinval" id="countdown_time" name="countdown_time" type="number" min="0" value="{{ countdown_time }}"> {% trans "s" context "seconds" %}
|
||||
<a id="countdown_set" class="countdown_control" href="{% url 'countdown_set_default' %}" title="{% trans 'Save as default' %}">
|
||||
<img src="{% static 'images/icons/document-save.png' %}" alt="{% url 'countdown_set_default' %}">
|
||||
</a>
|
||||
<a id="countdown_reset" class="countdown_control" href="{% url 'countdown_reset' %}" title="{% trans 'Reset countdown' %}">
|
||||
<img src="{% static 'images/icons/skip-backward.png' %}" alt="{% trans 'Reset countdown' %}">
|
||||
</a>
|
||||
<a id="countdown_play" class="countdown_control" href="{% url 'countdown_start' %}" title="{% trans 'Start countdown' %}"{% if countdown_state == 'active' %} style="display:none"{% endif %}>
|
||||
<img src="{% static 'images/icons/play.png' %}" alt="{% url 'countdown_start' %}">
|
||||
</a>
|
||||
<a id="countdown_stop" class="countdown_control" href="{% url 'countdown_stop' %}" title="{% trans 'Stop countdown' %}"{% if countdown_state == 'inactive' or countdown_state == 'paused' or countdown_state == 'expired' %} style="display:none"{% endif %}>
|
||||
<img src="{% static 'images/icons/pause.png' %}" alt="{% url 'countdown_stop' %}">
|
||||
</a>
|
||||
<div class="form-inline" style="display:inline-block;">
|
||||
<div class="input-append">
|
||||
<input class="projector_countdown_spinval" id="countdown_time" name="countdown_time" type="number" min="0" value="{{ countdown_time }}">
|
||||
<span class="add-on">{% trans "s" context "seconds" %}</span>
|
||||
</div>
|
||||
<a id="countdown_set" class="countdown_control btn btn-small" href="{% url 'countdown_set_default' %}" title="{% trans 'Save time as default' %}">
|
||||
<i class="icon-refresh"></i>
|
||||
</a>
|
||||
<a id="countdown_reset" class="countdown_control btn btn-small" href="{% url 'countdown_reset' %}" title="{% trans 'Reset countdown' %}">
|
||||
<i class="icon-fast-backward"></i>
|
||||
</a>
|
||||
<a id="countdown_play" class="countdown_control btn btn-small" href="{% url 'countdown_start' %}" title="{% trans 'Start countdown' %}"{% if countdown_state == 'active' %} style="display:none"{% endif %}>
|
||||
<i class="icon-play"></i>
|
||||
</a>
|
||||
<a id="countdown_stop" class="countdown_control btn btn-small" href="{% url 'countdown_stop' %}" title="{% trans 'Stop countdown' %}"{% if countdown_state == 'inactive' or countdown_state == 'paused' or countdown_state == 'expired' %} style="display:none"{% endif %}>
|
||||
<i class="icon-pause"></i>
|
||||
</a>
|
||||
</div>
|
||||
</span>
|
||||
|
@ -2,14 +2,14 @@
|
||||
{% load i18n %}
|
||||
{% load tags %}
|
||||
|
||||
<form id="overlay_message" action="{% url 'projector_overlay_message' %}" method="post" style="display:inline">{% csrf_token %}
|
||||
<input id="overlay_message_text" name='message_text' type='text' style='width: 40%' value="{% get_config 'projector_message' %}">
|
||||
<button type="submit" class="button" name='message'>
|
||||
<span class="icon ok">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
<button type="submit"
|
||||
class="button" style="padding:4px 0;" name='message-clean' title="{% trans 'Clean message' %}">
|
||||
<span class="icon clear"> </span>
|
||||
</button>
|
||||
<form id="overlay_message" action="{% url 'projector_overlay_message' %}" method="post" style="display:inline-block;">{% csrf_token %}
|
||||
<div class="input-append">
|
||||
<input id="overlay_message_text" name='message_text' type='text' value="{% get_config 'projector_message' %}">
|
||||
<button type="submit" class="btn btn-mini btn-primary" name="message" title="{% trans 'Apply' %}">
|
||||
<i class="icon-ok icon-white"></i>
|
||||
</button>
|
||||
<button type="submit" class="btn btn-mini" name='message-clean' title="{% trans 'Clean message' %}">
|
||||
<i class="icon-remove"></i>
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
@ -2,14 +2,13 @@
|
||||
{% load i18n %}
|
||||
{% load tags %}
|
||||
|
||||
|
||||
<ul style="line-height: 180%">
|
||||
<li class="{% if welcomepage_is_active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_welcomepage' %}" class="activate_link {% if welcomepage_is_active %}active{% endif %}">
|
||||
<div></div>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_welcomepage' %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
<a href="{% url 'projector_activate_welcomepage' %}" class="activate_link btn {% if welcomepage_is_active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if welcomepage_is_active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_welcomepage' %}" title="{% trans 'Preview' %}" class="btn btn-mini right">
|
||||
<i class="icon-search"></i>
|
||||
</a>
|
||||
{% trans 'Welcome Page' %}
|
||||
</li>
|
||||
@ -18,28 +17,26 @@
|
||||
<ul style="line-height: 180%">
|
||||
{% for slide in slides %}
|
||||
<li class="{% if slide.active %}activeline{% endif %}">
|
||||
<a href="{% url 'projector_activate_slide' slide.sid %}" class="activate_link {% if slide.active %}active{% endif %}">
|
||||
<div></div>
|
||||
</a>
|
||||
<a href="{% url 'customslide_delete' slide.id %}" title="{% trans 'Delete' %}" class="icon delete right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'customslide_edit' slide.id %}" title="{% trans 'Edit' %}" class="icon edit right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' slide.sid %}" title="{% trans 'Preview' %}" class="icon preview right">
|
||||
<span></span>
|
||||
</a>
|
||||
<a href="{% url 'projector_activate_slide' slide.sid %}" class="activate_link btn {% if slide.active %}btn-primary{% endif %} btn-mini" title="{% trans 'Show' %}">
|
||||
<i class="icon-facetime-video {% if slide.active %}icon-white{% endif %}"></i>
|
||||
</a>
|
||||
<a href="{% url 'customslide_edit' slide.id %}">{{ slide }}</a>
|
||||
<a href="{% url 'customslide_delete' slide.id %}" title="{% trans 'Delete' %}" class="btn btn-mini right">
|
||||
<i class="icon-remove"></i>
|
||||
</a>
|
||||
<a href="{% url 'customslide_edit' slide.id %}" title="{% trans 'Edit' %}" class="btn btn-mini right">
|
||||
<i class="icon-pencil"></i>
|
||||
</a>
|
||||
<a href="{% url 'projctor_preview_slide' slide.sid %}" title="{% trans 'Preview' %}" class="btn btn-mini right">
|
||||
<i class="icon-search"></i>
|
||||
</a>
|
||||
</li>
|
||||
{% empty %}
|
||||
<li>{% trans 'No items available.' %}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<a href='{% url "customslide_new" %}'>
|
||||
<button class="button" type="button" onclick="window.location='{% url 'customslide_new' %}'">
|
||||
<span class="icon add">{% trans 'New slide' %}</span>
|
||||
</button>
|
||||
<p style="line-height: 280%">
|
||||
<a href="{% url 'customslide_new' %}" class="btn btn-mini right">
|
||||
<i class="icon-plus"></i>{% trans 'New' %}
|
||||
</a>
|
||||
|
||||
|
||||
</p>
|
@ -1,27 +1,35 @@
|
||||
{% extends "projector/base_projector.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block header %}
|
||||
<link type="text/css" href="{% static 'styles/humanity/jquery-ui-1.8.18.custom.css' %}" rel="stylesheet" />
|
||||
<link type="text/css" rel="stylesheet" media="all" href="{% static 'styles/dashboard.css' %}" />
|
||||
<script type="text/javascript" src="{% static 'javascript/jquery-ui-1.8.18.custom.min.js' %}"></script>
|
||||
{% endblock %}
|
||||
{% block javascript %}
|
||||
<script type="text/javascript" src="{% static 'javascript/jquery-ui.min.js' %}"></script>
|
||||
<script type="text/javascript" src="{% static 'javascript/dashboard.js' %}"></script>
|
||||
<script type="text/javascript" src="{% static 'javascript/jquery.cookie.js' %}"></script>
|
||||
<script type="text/javascript" src="{% static 'javascript/jquery.form.js' %}"></script>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans 'Dashboard' %}</h1>
|
||||
<h1>{% trans 'Dashboard' %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'projector_select_widgets' %}" class="btn btn-mini" rel="tooltip" data-original-title="{% trans 'Manage widgets' %}"><i class="icon-th-large"></i> {% trans 'Widgets' %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<div class="column" id="col1">
|
||||
{% for name, widget in widgets.items %}
|
||||
{% if widget.default_column == 1 %}
|
||||
<div class="portlet" id="portlet_{{ widget.get_name }}">
|
||||
<div class="portlet-header">{% trans widget.get_title %}</div>
|
||||
<div class="portlet-content">
|
||||
<div class="widget" id="widget_{{ widget.get_name }}">
|
||||
<div class="widget-header">
|
||||
<i class="{% if widget %}icon-{{widget.name}}{% else %}icon-star{% endif %}"></i>
|
||||
<h3>{% trans widget.get_title %}</h3>
|
||||
</div>
|
||||
<div class="widget-content">
|
||||
{{ widget.html }}
|
||||
</div>
|
||||
</div>
|
||||
@ -32,9 +40,11 @@
|
||||
<div class="column" id="col2">
|
||||
{% for name, widget in widgets.items %}
|
||||
{% if widget.default_column == 2 %}
|
||||
<div class="portlet" id="portlet_{{ widget.get_name }}">
|
||||
<div class="portlet-header">{% trans widget.get_title %}</div>
|
||||
<div class="portlet-content">
|
||||
<div class="widget" id="widget_{{ widget.get_name }}">
|
||||
<div class="widget-header"><i class="{% if widget %}icon-{{widget.name}}{% else %}icon-star{% endif %}"></i>
|
||||
<h3>{% trans widget.get_title %}<h3>
|
||||
</div>
|
||||
<div class="widget-content">
|
||||
{{ widget.html }}
|
||||
</div>
|
||||
</div>
|
||||
|
@ -2,35 +2,34 @@
|
||||
{% load tags %}
|
||||
{% load staticfiles %}
|
||||
|
||||
|
||||
<!-- projector control buttons -->
|
||||
{% if perms.projector.can_manage_projector %}
|
||||
<div style="float: right;">
|
||||
<p>
|
||||
<a class="projector_edit" href="{% url 'projector_bigger' %}" title="{% trans 'Zoom in' %}">
|
||||
<img src="{% static 'images/icons/zoom-in.png' %}" />
|
||||
<a class="projector_edit btn btn-mini" href="{% url 'projector_bigger' %}" title="{% trans 'Zoom in' %}">
|
||||
<i class="icon-zoom-in"></i>
|
||||
</a><br>
|
||||
<a class="projector_edit" href="{% url 'projector_smaller' %}" title="{% trans 'Zoom out' %}">
|
||||
<img src="{% static 'images/icons/zoom-out.png' %}" />
|
||||
<a class="projector_edit btn btn-mini" href="{% url 'projector_smaller' %}" title="{% trans 'Zoom out' %}">
|
||||
<i class="icon-zoom-out"></i>
|
||||
</a>
|
||||
</p>
|
||||
<p>
|
||||
<a class="projector_edit" href="{% url 'projector_up' %}" title="{% trans 'Scroll text up' %}">
|
||||
<img src="{% static 'images/icons/go-up.png' %}" />
|
||||
<a class="projector_edit btn btn-mini" href="{% url 'projector_up' %}" title="{% trans 'Scroll text up' %}">
|
||||
<i class="icon-arrow-up"></i>
|
||||
</a><br>
|
||||
<a class="projector_edit" href="{% url 'projector_down' %}" title="{% trans 'Scroll text down' %}">
|
||||
<img src="{% static 'images/icons/go-down.png' %}" />
|
||||
<a class="projector_edit btn btn-mini" href="{% url 'projector_down' %}" title="{% trans 'Scroll text down' %}">
|
||||
<i class="icon-arrow-down"></i>
|
||||
</a>
|
||||
</p>
|
||||
<p>
|
||||
<a class="projector_edit" href="{% url 'projector_clean' %}" title="{% trans 'Reset projector view' %}">
|
||||
<img src="{% static 'images/icons/view-reset.png' %}" />
|
||||
<a class="projector_edit btn btn-mini" href="{% url 'projector_clean' %}" title="{% trans 'Reset projector view' %}">
|
||||
<i class="icon-resize-small"></i>
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<!-- projector view -->
|
||||
<!-- projector live view -->
|
||||
<a href="{% url 'projector_show' %}" target="_blank">
|
||||
<div id="iframewrapper">
|
||||
<iframe id="iframe" src="{% url 'projector_show' %}" frameborder="0"></iframe>
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "projector/base_projector.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load tags %}
|
||||
{% load i18n %}
|
||||
@ -6,19 +6,16 @@
|
||||
{% block title %}{{ block.super }} – {% trans "Custom slide" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans 'Custom slide' %}</h1>
|
||||
<h1>{% trans 'Custom slide' %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'dashboard' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
{{ form.as_p }}
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
</button>
|
||||
<button class="button" type="submit" name="apply">
|
||||
<span class="icon apply">{% trans 'Apply' %}</span>
|
||||
</button>
|
||||
<a href='{% url "dashboard" %}'>
|
||||
<button class="button" type="button" onclick="window.location='{% url 'dashboard' %}'">
|
||||
<span class="icon cancel">{% trans 'Cancel' %}</span>
|
||||
</button>
|
||||
</a>
|
||||
{% include "form.html" %}
|
||||
<p>
|
||||
{% include "formbuttons_saveapply.html" %}
|
||||
</p>
|
||||
<small>* {% trans "required" %}</small>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
@ -4,19 +4,21 @@
|
||||
<ul>
|
||||
{% for overlay in overlays %}
|
||||
<li>
|
||||
<a id="{{ overlay.def_name }}_inactive" href="{% url 'projector_overlay_activate' overlay.def_name %}" class="overlay"{% if overlay.active %} style="display:none"{% endif %}>
|
||||
<div></div>
|
||||
</a>
|
||||
<a id="{{ overlay.def_name }}_active" href="{% url 'projector_overlay_deactivate' overlay.def_name %}" class="overlay active"{% if not overlay.active %} style="display:none"{% endif %}>
|
||||
<div></div>
|
||||
<a id="{{ overlay.def_name }}"
|
||||
href="{% if overlay.active %}{% url 'projector_overlay_deactivate' overlay.def_name %}{% else %}{% url 'projector_overlay_activate' overlay.def_name %}{% endif %}"
|
||||
class="overlay btn btn-mini">
|
||||
<i class="{% if overlay.active %}icon-checked-new{% else %}icon-unchecked-new{% endif %}"></i>
|
||||
</a>
|
||||
|
||||
{{ overlay }}:
|
||||
|
||||
{# TODO: Call the html via overlay.html #}
|
||||
{% if overlay.def_name == "Countdown" %}
|
||||
<p>{{ overlay }}:<br>
|
||||
{% include 'projector/control_countdown.html' %}
|
||||
</p>
|
||||
{% endif %}
|
||||
{% if overlay.def_name == "Message" %}
|
||||
{{ overlay }}:<br>
|
||||
{% include 'projector/control_overlay_message.html' %}
|
||||
{% endif %}
|
||||
</li>
|
||||
|
@ -1,25 +1,31 @@
|
||||
{% extends "projector/base_projector.html" %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% load i18n %}
|
||||
|
||||
{% block title %}{{ block.super }} – {% trans 'Select widgets' %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>{% trans 'Select widgets' %}</h1>
|
||||
<h1>{% trans 'Select widgets' %}
|
||||
<small class="pull-right">
|
||||
<a href="{% url 'dashboard' %}" class="btn btn-mini"><i class="icon-chevron-left"></i> {% trans "Back to overview" %}</a>
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
<form action="" method="post">{% csrf_token %}
|
||||
<ul>
|
||||
<ul class="unstyled">
|
||||
{% for widget_name, widget in widgets.items %}
|
||||
<li>
|
||||
{{ widget.form.widget }} {{ widget }}
|
||||
<label class="checkbox">
|
||||
{{ widget.form.widget }} {{ widget }}
|
||||
</label>
|
||||
</li>
|
||||
{% empty %}
|
||||
<li>{% trans 'No widgets available' %}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<p>
|
||||
<button class="button" type="submit">
|
||||
<span class="icon ok">{% trans 'Save' %}</span>
|
||||
<button class="btn btn-primary" type="submit">
|
||||
{% trans 'Save' %}
|
||||
</button>
|
||||
</p>
|
||||
</form>
|
||||
|
@ -369,6 +369,7 @@ def register_tab(request):
|
||||
selected = request.path.startswith('/projector/')
|
||||
return Tab(
|
||||
title=_('Dashboard'),
|
||||
app='dashboard',
|
||||
url=reverse('dashboard'),
|
||||
permission=request.user.has_perm('projector.can_see_dashboard'),
|
||||
selected=selected,
|
||||
|
Before Width: | Height: | Size: 625 B |
Before Width: | Height: | Size: 85 B |
Before Width: | Height: | Size: 169 B |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 268 B After Width: | Height: | Size: 268 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
BIN
openslides/static/img/glyphicons-halflings-white.png
Normal file
After Width: | Height: | Size: 8.6 KiB |
BIN
openslides/static/img/glyphicons-halflings.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
openslides/static/img/glyphicons_043_group.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
openslides/static/img/glyphicons_043_group_white.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
openslides/static/img/glyphicons_044_keys.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
openslides/static/img/glyphicons_045_calendar.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
openslides/static/img/glyphicons_045_calendar_white.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
openslides/static/img/glyphicons_056_projector.png
Normal file
After Width: | Height: | Size: 452 B |
BIN
openslides/static/img/glyphicons_056_projector_small.png
Normal file
After Width: | Height: | Size: 341 B |
BIN
openslides/static/img/glyphicons_152_check.png
Normal file
After Width: | Height: | Size: 321 B |
BIN
openslides/static/img/glyphicons_153_unchecked.png
Normal file
After Width: | Height: | Size: 204 B |
BIN
openslides/static/img/glyphicons_154_more_windows.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
openslides/static/img/glyphicons_154_more_windows_white.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
openslides/static/img/glyphicons_358_file_import.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
openslides/static/img/logo-login.png
Normal file
After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 5.0 KiB |
BIN
openslides/static/img/logo.png
Normal file
After Width: | Height: | Size: 7.1 KiB |
Before Width: | Height: | Size: 976 B After Width: | Height: | Size: 976 B |
Before Width: | Height: | Size: 979 B After Width: | Height: | Size: 979 B |