Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • konstantin/akplanning
  • matedealer/akplanning
  • kif/akplanning
  • mirco/akplanning
  • lordofthevoid/akplanning
  • voidptr/akplanning
  • xayomer/akplanning-fork
  • mollux/akplanning
  • neumantm/akplanning
  • mmarx/akplanning
  • nerf/akplanning
  • felix_bonn/akplanning
  • sebastian.uschmann/akplanning
13 results
Show changes
Showing
with 1040 additions and 10960 deletions
#!/usr/bin/env bash
# Setup AKPlanning
# execute as Utils/check.sh
# execute as Utils/setup.sh
# abort on error, print executed commands
set -ex
# remove old virtualenv
rm -rf env/
rm -rf venv/
# Setup Python Environment
# Requires: Virtualenv, appropriate Python installation
virtualenv env -p python3.7
source env/bin/activate
virtualenv venv -p python3.11
source venv/bin/activate
pip install --upgrade setuptools pip wheel
pip install -r requirements.txt
# set environment variable when we want to update in production
if [ "$1" = "--prod" ]; then
export DJANGO_SETTINGS_MODULE=AKPlanning.settings_production
fi
if [ "$1" = "--ci" ]; then
export DJANGO_SETTINGS_MODULE=AKPlanning.settings_ci
fi
# Setup database
python manage.py migrate
# Prepare static files and translations
python manage.py collectstatic --noinput
python manage.py compilemessages -l de_DE
# Create superuser
# Credentials are entered interactively on CLI
python manage.py createsuperuser
# Generate documentation (but not for CI use)
if [ -n "$1" = "--ci" ]; then
cd docs
make html
cd ..
fi
deactivate
#!/usr/bin/env bash
# Test the AKPlanning setup
# execute as Utils/test.sh
# activate virtualenv when necessary
if [ -z ${VIRTUAL_ENV+x} ]; then
source venv/bin/activate
fi
# enable really all warnings, some of them are silenced by default
for arg in "$@"; do
if [[ "$arg" == "--all" ]]; then
export PYTHONWARNINGS=all
fi
done
# in case of checking production setup
for arg in "$@"; do
if [[ "$arg" == "--prod" ]]; then
export DJANGO_SETTINGS_MODULE=AKPlanning.settings_production
./manage.py test --deploy
fi
done
# run tests
./manage.py test
#!/usr/bin/env bash
# Update AKPlanning
# execute as Utils/check.sh
# execute as Utils/update.sh
# abort on error, print executed commands
set -ex
# activate virtualenv if necessary
if [ -z ${VIRTUAL_ENV+x} ]; then
source env/bin/activate
source venv/bin/activate
fi
# set environment variable when we want to update in production
......@@ -15,13 +15,22 @@ if [ "$1" = "--prod" ]; then
export DJANGO_SETTINGS_MODULE=AKPlanning.settings_production
fi
# before potentially breaking anything, create a data backup
mkdir -p backups/
python manage.py dumpdata --indent=2 > "backups/$(date +"%Y%m%d%H%M")_datadump.json" --traceback
git pull
pip install --upgrade setuptools pip wheel
pip install --upgrade -r requirements.txt
if [ "$1" = "--prod" ]; then
./manage.py collectstatic --noinput
fi
./manage.py migrate
./manage.py collectstatic --noinput
./manage.py compilemessages -l de_DE
# Update documentation
cd docs
make html
cd ..
touch AKPlanning/wsgi.py
<VirtualHost *:80>
ServerName $SUBDOMAIN
ServerAdmin $MAILADDRESS
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /static /srv/AKPlanning/static
<Directory /srv/AKPlanning/static>
Require all granted
</Directory>
ProxyPassMatch ^/static/ !
ProxyPass / uwsgi://127.0.0.1:3035/
RewriteEngine on
RewriteCond %{SERVER_NAME} =$SUBDOMAIN
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName $SUBDOMAIN
ServerAdmin $MAILADDRESS
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /static /srv/AKPlanning/static
<Directory /srv/AKPlanning/static>
Require all granted
</Directory>
ProxyPassMatch ^/static/ !
ProxyPass / uwsgi://127.0.0.1:3035/
ProxyPassReverse / uwsgi://127.0.0.1:3035/
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile $PATHTOfullchain.pem
SSLCertificateKeyFile $PATHTOprivkey.pem
</VirtualHost>
</IfModule>
_build/
code/
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = .
BUILDDIR = _build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
Code
=====
.. toctree::
code/AKDashboard
code/AKModel
code/AKOnline
code/AKPlan
code/AKScheduling
code/AKSubmission
# Configuration file for the Sphinx documentation builder.
#
# For the full list of built-in configuration values, see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
import os
import sys
from recommonmark.parser import CommonMarkParser
import django
# -- Project information -----------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
project = 'AK Planning'
copyright = '2025, N. Geisler, B. Hättasch & more'
author = 'N. Geisler, B. Hättasch & more'
# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
extensions = [
'sphinxcontrib.apidoc', # runs sphinx-apidoc automatically as part of sphinx-build
'sphinx.ext.autodoc', # the autodoc extensions uses files generated by apidoc
"sphinx.ext.autosummary",
"sphinxcontrib_django",
'sphinx.ext.viewcode', # enable viewing autodoc'd code
]
templates_path = ['_templates']
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# -- Django specific settings ------------------------------------------------
# Add source directory to sys.path
sys.path.insert(0, os.path.abspath(".."))
# Configure the path to the Django settings module
django_settings = "AKPlanning.settings"
os.environ['DJANGO_SETTINGS_MODULE'] = django_settings
django.setup()
# Include the database table names of Django models
django_show_db_tables = True # Boolean, default: False
# Add abstract database tables names (only takes effect if django_show_db_tables is True)
django_show_db_tables_abstract = True # Boolean, default: False
# Auto-generate API documentation.
os.environ['SPHINX_APIDOC_OPTIONS'] = "members,show-inheritance"
# -- Input ----
source_parsers = {
'.md': CommonMarkParser,
}
source_suffix = ['.rst', '.md']
# -- Extension Conf ----
autodoc_member_order = 'bysource'
autodoc_inherit_docstrings = False
apidoc_module_dir = '../'
apidoc_output_dir = 'code'
apidoc_excluded_paths = ['*/migrations',
'AKPlanning/',
'manage.py',
'docs',
'locale',
'Utils',
'*/urls.py',
]
apidoc_separate_modules = True
apidoc_toc_file = False
apidoc_module_first = True
apidoc_extra_args = ['-f']
apidoc_project = project
# -- Options for HTML output -------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
html_static_path = ['_static']
html_theme = 'sphinx_rtd_theme'
.. AK Planning documentation master file, created by
sphinx-quickstart on Wed Jun 21 09:54:11 2023.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Start
=======================================
.. toctree::
:maxdepth: 2
:caption: Contents:
usage/usage
code
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
@ECHO OFF
pushd %~dp0
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set SOURCEDIR=.
set BUILDDIR=_build
%SPHINXBUILD% >NUL 2>NUL
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.https://www.sphinx-doc.org/
exit /b 1
)
if "%1" == "" goto help
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
goto end
:help
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
:end
popd
Usage
=====
.. toctree::
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 16:30+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: templates/base.html:43
msgid ""
"Are you sure you want to change the language now? This will clear the form!"
msgstr "Wirklich jetzt die Sprache ändern? Das wird das Formular zurücksetzen!"
#: templates/base.html:108
msgid "Go to backend"
msgstr "Zum Backend"
#: templates/base.html:109
msgid "Docs"
msgstr "Doku"
#: templates/base.html:115
msgid "Impress"
msgstr "Impressum"
#: templates/base.html:118
msgid "This software is open source"
msgstr "Diese Software ist Open Source"
#~ msgid "URL to the room or server"
#~ msgstr "URL zum Raum/Server"
#~ msgid "Room"
#~ msgstr "Raum"
#~ msgid "Virtual Room"
#~ msgstr "Virtueller Raum"
#~ msgid "Virtual Rooms"
#~ msgstr "Virtuelle Räume"
#~ msgid "Scheduling for"
#~ msgstr "Scheduling für"
#~ msgid "Day (Horizontal)"
#~ msgstr "Tag (horizontal)"
#~ msgid "Day (Vertical)"
#~ msgstr "Tag (vertikal)"
#~ msgid "Event (Horizontal)"
#~ msgstr "Event (horizontal)"
#~ msgid "Event (Vertical)"
#~ msgstr "Event (vertikal)"
#~ msgid "Event Status"
#~ msgstr "Event-Status"
#~ msgid "Unscheduled AK Slots"
#~ msgstr "Noch nicht geschedulte AK-Slots"
#~ msgid "Count"
#~ msgstr "Anzahl"
[MAIN]
ignore=urls.py, migrations, AKPlanning
load-plugins=
pylint_django,
pylint_django.checkers.migrations
django-settings-module=AKPlanning.settings
disable=
C0114, # missing-module-docstring
[FORMAT]
# Maximum number of characters on a single line.
max-line-length=120
indent-string=' '
[SIMILARITIES]
# Minimum lines number of a similarity.
min-similarity-lines=6
# Ignore comments when computing similarities.
ignore-comments=yes
# Ignore docstrings when computing similarities.
ignore-docstrings=yes
# Ignore imports when computing similarities.
ignore-imports=yes
# Signatures are removed from the similarity computation
ignore-signatures=yes
[BASIC]
# Regular expression matching correct module names
module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+)|((tags_)*AK[A-Z][a-z0-9_]+))$
# Good variable names which should always be accepted, separated by a comma
good-names=i,j,k,a,e,ak,tz,_,pk
# Allow single-letter variables and enforce lowercase variables with underscores otherwise
variable-rgx=[a-z_][a-z0-9_]{0,30}$
[TYPECHECK]
# Tells whether missing members accessed in mixin class should be ignored. A
# mixin class is detected if its name ends with "mixin" (case insensitive).
ignore-mixin-members=yes
# List of classes names for which member attributes should not be checked
# (useful for classes with attributes dynamically set).
ignored-classes=SQLObject,WSGIRequest
# List of members which are set dynamically and missed by pylint inference
# system, and so shouldn't trigger E0201 when accessed.
generated-members=objects,DoesNotExist,id,pk,_meta,base_fields,context
# List of method names used to declare (i.e. assign) instance attributes
defining-attr-methods=__init__,__new__,setUp
[DESIGN]
max-parents=15
max-args=8
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
}
Django==2.2.6
django-bootstrap4==1.0.1
django-fontawesome==1.0
Django==5.1.6
django-betterforms==2.0.0
django-bootstrap-datepicker-plus==5.0.5
django-bootstrap5==25.1
django-compressor==4.5.1
django-debug-toolbar==5.0.1
django-fontawesome-6==1.0.0.0 # Provides an icon field for models and forms as well as handy shortcuts to render icons
django-libsass==0.9
django-registration-redux==2.13
django-simple-history==3.8.0
django-split-settings==1.3.2
django-tex==1.1.10
django-timezone-field==7.1
django_csp==3.8
djangorestframework==3.15.2
fontawesomefree==6.6.0 # Makes static files (css, fonts) available locally
mysqlclient==2.2.7 # for production deployment
tzdata==2025.1
# Documentation
Sphinx==8.2.3
sphinx-rtd-theme==3.0.2
sphinxcontrib-apidoc==0.5.0
sphinxcontrib-django==2.5.0
recommonmark==0.7.1
django-docs==0.3.3
[pycodestyle]
max-line-length = 120
exclude = migrations,static
max-complexity = 11
#branding h1, #branding h1 a:link, #branding h1 a:visited {
color: #fff;
}
#header {
background: #7a1324;
color: #fff;
}
#header a:link, #header a:visited {
color: #fff;
}
#header a:hover {
color: #fff;
}
div.breadcrumbs {
background: #a4585d;
color: #c4dce8;
}
div.breadcrumbs a.active {
color: #c4dce8;
!important;
font-weight: 300;
}
div.breadcrumbs a:focus, div.breadcrumbs a:hover {
color: #c4dce8;
!important;
font-weight: 300;
}
.select2-container--admin-autocomplete .select2-results__option--highlighted[aria-selected] {
background-color: #292D32;
}
.paginator a:link, .paginator a:visited {
background: #292D32;
}
.button, input[type=submit], input[type=button], .submit-row input, a.button {
background: #a4585d;
}
.button:hover, input[type=submit]:hover, input[type=button]:hover {
background: #878787;
}
.module h2, .module caption, .inline-group h2 {
background: #a4585d;
}
#user-tools a:focus, #user-tools a:hover {
border: 0;
color: #ddd;
}
.selector-chosen h2 {
background: #a4585d !important;
}
.calendar td.selected a {
background: #a4585d !important;
}
.calendar td a:focus, .timelist a:focus,
.calendar td a:hover, .timelist a:hover {
background: #a4585d !important;
}
#changelist-filter li.selected a {
color: #444;
}
fieldset.collapsed .collapse-toggle {
color: #444;
}
a:link, a:visited {
color: #777;
}
a:focus, a:hover {
color: #999;
}
table thead th.sorted .sortoptions a.sortremove:focus:after,
table thead th.sorted .sortoptions a.sortremove:hover:after {
color: #444;
}
a.active.selector-chooseall:focus, a.active.selector-clearall:focus,
a.active.selector-chooseall:hover, a.active.selector-clearall:hover {
color: #999;
}
.calendar td a:active, .timelist a:active {
background: #444;
}
.change-list ul.toplinks .date-back a:focus,
.change-list ul.toplinks .date-back a:hover {
color: #222;
}
.paginator a.showall:focus, .paginator a.showall:hover {
color: #222;
}
.paginator a:focus, .paginator a:hover {
background: #222;
}
#changelist-filter a:focus, #changelist-filter a:hover,
#changelist-filter li.selected a:focus,
#changelist-filter li.selected a:hover {
color: #222;
}
.calendar td a:active, .timelist a:active {
background: #292D32;
color: white;
}
.calendar caption, .calendarbox h2 {
background: #999;
}
.button.default, input[type=submit].default, .submit-row input.default {
background: #7a1324;
}
.button.default:hover, input[type=submit].default:hover {
background: #191D22;
}
.select2-container--admin-autocomplete .select2-results__option--highlighted[aria-selected] {
background-color: #292D32;
}
.button.default, input[type=submit].default, .submit-row input.default {
background: #7a1324;
}
.object-tools a:focus, .object-tools a:hover {
background-color: #292D32;
}
input[type=file]::-webkit-file-upload-button:hover {
border: 0;
background: #292D32;
}
#changelist-filter {
top: -250px;
right: 15px;
}
#changelist-filter h2 {
padding-top: 0px;
padding-bottom: 0px
}
.chosen-select {
width: 100%;
}
.chosen-select-deselect {
width: 100%;
}
.chosen-container {
display: inline-block;
font-size: 14px;
position: relative;
vertical-align: middle;
}
.chosen-container .chosen-drop {
background: #ffffff;
border: 1px solid #cccccc;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
-webkit-box-shadow: 0 8px 8px rgba(0, 0, 0, .25);
box-shadow: 0 8px 8px rgba(0, 0, 0, .25);
margin-top: -1px;
position: absolute;
top: 100%;
left: -9000px;
z-index: 1060;
}
.chosen-container.chosen-with-drop .chosen-drop {
left: 0;
right: 0;
}
.chosen-container .chosen-results {
color: #555555;
margin: 0 4px 4px 0;
max-height: 240px;
padding: 0 0 0 4px;
position: relative;
overflow-x: hidden;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
}
.chosen-container .chosen-results li {
display: none;
line-height: 1.42857143;
list-style: none;
margin: 0;
padding: 5px 6px;
}
.chosen-container .chosen-results li em {
background: #feffde;
font-style: normal;
}
.chosen-container .chosen-results li.group-result {
display: list-item;
cursor: default;
color: #999;
font-weight: bold;
}
.chosen-container .chosen-results li.group-option {
padding-left: 15px;
}
.chosen-container .chosen-results li.active-result {
cursor: pointer;
display: list-item;
}
.chosen-container .chosen-results li.highlighted {
background-color: #428bca;
background-image: none;
color: white;
}
.chosen-container .chosen-results li.highlighted em {
background: transparent;
}
.chosen-container .chosen-results li.disabled-result {
display: list-item;
color: #777777;
}
.chosen-container .chosen-results .no-results {
background: #eeeeee;
display: list-item;
}
.chosen-container .chosen-results-scroll {
background: white;
margin: 0 4px;
position: absolute;
text-align: center;
width: 321px;
z-index: 1;
}
.chosen-container .chosen-results-scroll span {
display: inline-block;
height: 1.42857143;
text-indent: -5000px;
width: 9px;
}
.chosen-container .chosen-results-scroll-down {
bottom: 0;
}
.chosen-container .chosen-results-scroll-down span {
background: url("chosen-sprite.png") no-repeat -4px -3px;
}
.chosen-container .chosen-results-scroll-up span {
background: url("chosen-sprite.png") no-repeat -22px -3px;
}
.chosen-container-single .chosen-single {
background-color: #ffffff;
-webkit-background-clip: padding-box;
-moz-background-clip: padding;
background-clip: padding-box;
border: 1px solid #cccccc;
border-top-right-radius: 4px;
border-top-left-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
color: #555555;
display: block;
height: 34px;
overflow: hidden;
line-height: 34px;
padding: 0 0 0 8px;
position: relative;
text-decoration: none;
white-space: nowrap;
}
.chosen-container-single .chosen-single span {
display: block;
margin-right: 26px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.chosen-container-single .chosen-single abbr {
background: url("chosen-sprite.png") right top no-repeat;
display: block;
font-size: 1px;
height: 10px;
position: absolute;
right: 26px;
top: 12px;
width: 12px;
}
.chosen-container-single .chosen-single abbr:hover {
background-position: right -11px;
}
.chosen-container-single .chosen-single.chosen-disabled .chosen-single abbr:hover {
background-position: right 2px;
}
.chosen-container-single .chosen-single div {
display: block;
height: 100%;
position: absolute;
top: 0;
right: 0;
width: 18px;
}
.chosen-container-single .chosen-single div b {
background: url("chosen-sprite.png") no-repeat 0 7px;
display: block;
height: 100%;
width: 100%;
}
.chosen-container-single .chosen-default {
color: #777777;
}
.chosen-container-single .chosen-search {
margin: 0;
padding: 3px 4px;
position: relative;
white-space: nowrap;
z-index: 1000;
}
.chosen-container-single .chosen-search input[type="text"] {
background: url("chosen-sprite.png") no-repeat 100% -20px, #ffffff;
border: 1px solid #cccccc;
border-top-right-radius: 4px;
border-top-left-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
margin: 1px 0;
padding: 4px 20px 4px 4px;
width: 100%;
}
.chosen-container-single .chosen-drop {
margin-top: -1px;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
-webkit-background-clip: padding-box;
-moz-background-clip: padding;
background-clip: padding-box;
}
.chosen-container-single-nosearch .chosen-search input {
position: absolute;
left: -9000px;
}
.chosen-container-multi .chosen-choices {
background-color: #ffffff;
border: 1px solid #cccccc;
border-top-right-radius: 4px;
border-top-left-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
cursor: text;
height: auto !important;
height: 1%;
margin: 0;
overflow: hidden;
padding: 0;
position: relative;
}
.chosen-container-multi .chosen-choices li {
float: left;
list-style: none;
}
.chosen-container-multi .chosen-choices .search-field {
margin: 0;
padding: 0;
white-space: nowrap;
}
.chosen-container-multi .chosen-choices .search-field input[type="text"] {
background: transparent !important;
border: 0 !important;
-webkit-box-shadow: none;
box-shadow: none;
color: #555555;
height: 32px;
margin: 0;
padding: 4px;
outline: 0;
}
.chosen-container-multi .chosen-choices .search-field .default {
color: #999;
}
.chosen-container-multi .chosen-choices .search-choice {
-webkit-background-clip: padding-box;
-moz-background-clip: padding;
background-clip: padding-box;
background-color: #eeeeee;
border: 1px solid #cccccc;
border-top-right-radius: 4px;
border-top-left-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
background-image: -webkit-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
background-image: -o-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
background-image: linear-gradient(to bottom, #ffffff 0%, #eeeeee 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffeeeeee', GradientType=0);
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
color: #333333;
cursor: default;
line-height: 13px;
margin: 6px 0 3px 5px;
padding: 3px 20px 3px 5px;
position: relative;
}
.chosen-container-multi .chosen-choices .search-choice .search-choice-close {
background: url("chosen-sprite.png") right top no-repeat;
display: block;
font-size: 1px;
height: 10px;
position: absolute;
right: 4px;
top: 5px;
width: 12px;
cursor: pointer;
}
.chosen-container-multi .chosen-choices .search-choice .search-choice-close:hover {
background-position: right -11px;
}
.chosen-container-multi .chosen-choices .search-choice-focus {
background: #d4d4d4;
}
.chosen-container-multi .chosen-choices .search-choice-focus .search-choice-close {
background-position: right -11px;
}
.chosen-container-multi .chosen-results {
margin: 0 0 0 0;
padding: 0;
}
.chosen-container-multi .chosen-drop .result-selected {
display: none;
}
.chosen-container-active .chosen-single {
border: 1px solid #66afe9;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(82, 168, 236, .6);
box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(82, 168, 236, .6);
-webkit-transition: border linear .2s, box-shadow linear .2s;
-o-transition: border linear .2s, box-shadow linear .2s;
transition: border linear .2s, box-shadow linear .2s;
}
.chosen-container-active.chosen-with-drop .chosen-single {
background-color: #ffffff;
border: 1px solid #66afe9;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(82, 168, 236, .6);
box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(82, 168, 236, .6);
-webkit-transition: border linear .2s, box-shadow linear .2s;
-o-transition: border linear .2s, box-shadow linear .2s;
transition: border linear .2s, box-shadow linear .2s;
}
.chosen-container-active.chosen-with-drop .chosen-single div {
background: transparent;
border-left: none;
}
.chosen-container-active.chosen-with-drop .chosen-single div b {
background-position: -18px 7px;
}
.chosen-container-active .chosen-choices {
border: 1px solid #66afe9;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(82, 168, 236, .6);
box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(82, 168, 236, .6);
-webkit-transition: border linear .2s, box-shadow linear .2s;
-o-transition: border linear .2s, box-shadow linear .2s;
transition: border linear .2s, box-shadow linear .2s;
}
.chosen-container-active .chosen-choices .search-field input[type="text"] {
color: #111 !important;
}
.chosen-container-active.chosen-with-drop .chosen-choices {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.chosen-disabled {
cursor: default;
opacity: 0.5 !important;
}
.chosen-disabled .chosen-single {
cursor: default;
}
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
cursor: default;
}
.chosen-rtl {
text-align: right;
}
.chosen-rtl .chosen-single {
padding: 0 8px 0 0;
overflow: visible;
}
.chosen-rtl .chosen-single span {
margin-left: 26px;
margin-right: 0;
direction: rtl;
}
.chosen-rtl .chosen-single div {
left: 7px;
right: auto;
}
.chosen-rtl .chosen-single abbr {
left: 26px;
right: auto;
}
.chosen-rtl .chosen-choices .search-field input[type="text"] {
direction: rtl;
}
.chosen-rtl .chosen-choices li {
float: right;
}
.chosen-rtl .chosen-choices .search-choice {
margin: 6px 5px 3px 0;
padding: 3px 5px 3px 19px;
}
.chosen-rtl .chosen-choices .search-choice .search-choice-close {
background-position: right top;
left: 4px;
right: auto;
}
.chosen-rtl.chosen-container-single .chosen-results {
margin: 0 0 4px 4px;
padding: 0 4px 0 0;
}
.chosen-rtl .chosen-results .group-option {
padding-left: 0;
padding-right: 15px;
}
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
border-right: none;
}
.chosen-rtl .chosen-search input[type="text"] {
background: url("chosen-sprite.png") no-repeat -28px -20px, #ffffff;
direction: rtl;
padding: 4px 5px 4px 20px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
.chosen-rtl .chosen-search input[type="text"],
.chosen-container-single .chosen-single abbr,
.chosen-container-single .chosen-single div b,
.chosen-container-single .chosen-search input[type="text"],
.chosen-container-multi .chosen-choices .search-choice .search-choice-close,
.chosen-container .chosen-results-scroll-down span,
.chosen-container .chosen-results-scroll-up span {
background-image: url("chosen-sprite@2x.png") !important;
background-size: 52px 37px !important;
background-repeat: no-repeat !important;
}
}
Source diff could not be displayed: it is too large. Options to address this: view the blob.
static_common/common/css/chosen-sprite.png

538 B