Compare commits
1 Commits
features/r
...
features/t
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
adf47646bf |
@@ -63,7 +63,6 @@ job_docker_nightly:
|
|||||||
only:
|
only:
|
||||||
- nightly
|
- nightly
|
||||||
- staging
|
- staging
|
||||||
- /^clients\/.+$/
|
|
||||||
|
|
||||||
job_documentation_build:
|
job_documentation_build:
|
||||||
stage: build_documentation
|
stage: build_documentation
|
||||||
@@ -159,9 +158,9 @@ job_push_python:
|
|||||||
- releases/all
|
- releases/all
|
||||||
- releases/docker
|
- releases/docker
|
||||||
- releases/python
|
- releases/python
|
||||||
|
- master
|
||||||
- staging
|
- staging
|
||||||
- nightly
|
- nightly
|
||||||
- /^clients\/.+$/
|
|
||||||
|
|
||||||
test-mysql:
|
test-mysql:
|
||||||
<<: *test_base
|
<<: *test_base
|
||||||
|
|||||||
13
.tx/config
13
.tx/config
@@ -115,12 +115,6 @@ source_lang = en
|
|||||||
source_file = mayan/apps/events/locale/en/LC_MESSAGES/django.po
|
source_file = mayan/apps/events/locale/en/LC_MESSAGES/django.po
|
||||||
type = PO
|
type = PO
|
||||||
|
|
||||||
[mayan-edms.file_caching-3-0]
|
|
||||||
file_filter = mayan/apps/file_caching/locale/<lang>/LC_MESSAGES/django.po
|
|
||||||
source_lang = en
|
|
||||||
source_file = mayan/apps/file_caching/locale/en/LC_MESSAGES/django.po
|
|
||||||
type = PO
|
|
||||||
|
|
||||||
[mayan-edms.file_metadata-3-0]
|
[mayan-edms.file_metadata-3-0]
|
||||||
file_filter = mayan/apps/file_metadata/locale/<lang>/LC_MESSAGES/django.po
|
file_filter = mayan/apps/file_metadata/locale/<lang>/LC_MESSAGES/django.po
|
||||||
source_lang = en
|
source_lang = en
|
||||||
@@ -228,10 +222,3 @@ file_filter = mayan/apps/user_management/locale/<lang>/LC_MESSAGES/django.po
|
|||||||
source_lang = en
|
source_lang = en
|
||||||
source_file = mayan/apps/user_management/locale/en/LC_MESSAGES/django.po
|
source_file = mayan/apps/user_management/locale/en/LC_MESSAGES/django.po
|
||||||
type = PO
|
type = PO
|
||||||
|
|
||||||
[mayan-edms.weblink-3-0]
|
|
||||||
file_filter = mayan/apps/weblinks/locale/<lang>/LC_MESSAGES/django.po
|
|
||||||
source_lang = en
|
|
||||||
source_file = mayan/apps/weblinks/locale/en/LC_MESSAGES/django.po
|
|
||||||
type = PO
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +0,0 @@
|
|||||||
- Use Select2 widget for the document type selection form.
|
|
||||||
- Update source column matching to be additive and not exclusive.
|
|
||||||
- Add two columns to show the number of documents per workflow and
|
|
||||||
workflow state.
|
|
||||||
- Sort module.
|
|
||||||
- Add link to sort individual indexes.
|
|
||||||
- Support exclusions from source columns.
|
|
||||||
- Improve source column exclusion. Improve for model subclasses in partial querysets.
|
|
||||||
- Add sortable index instance label column.
|
|
||||||
- Add rectangle drawing transformation.
|
|
||||||
830
HISTORY.rst
830
HISTORY.rst
File diff suppressed because it is too large
Load Diff
8
Makefile
8
Makefile
@@ -18,7 +18,7 @@ clean-pyc: ## Remove Python artifacts.
|
|||||||
find . -name '*.pyc' -exec rm -f {} +
|
find . -name '*.pyc' -exec rm -f {} +
|
||||||
find . -name '*.pyo' -exec rm -f {} +
|
find . -name '*.pyo' -exec rm -f {} +
|
||||||
find . -name '*~' -exec rm -f {} +
|
find . -name '*~' -exec rm -f {} +
|
||||||
find . -name '__pycache__' -exec rm -R -f {} +
|
|
||||||
|
|
||||||
# Testing
|
# Testing
|
||||||
|
|
||||||
@@ -234,10 +234,10 @@ generate-requirements: ## Generate all requirements files from the project deped
|
|||||||
# Dev server
|
# Dev server
|
||||||
|
|
||||||
runserver: ## Run the development server.
|
runserver: ## Run the development server.
|
||||||
./manage.py runserver --nothreading --settings=mayan.settings.development $(ADDRPORT)
|
./manage.py runserver --settings=mayan.settings.development $(ADDRPORT)
|
||||||
|
|
||||||
runserver_plus: ## Run the Django extension's development server.
|
runserver_plus: ## Run the Django extension's development server.
|
||||||
./manage.py runserver_plus --nothreading --settings=mayan.settings.development $(ADDRPORT)
|
./manage.py runserver_plus --settings=mayan.settings.development $(ADDRPORT)
|
||||||
|
|
||||||
shell_plus: ## Run the shell_plus command.
|
shell_plus: ## Run the shell_plus command.
|
||||||
./manage.py shell_plus --settings=mayan.settings.development
|
./manage.py shell_plus --settings=mayan.settings.development
|
||||||
@@ -258,7 +258,7 @@ test-with-docker-frontend: ## Launch a front end instance that uses the producti
|
|||||||
./manage.py runserver --settings=mayan.settings.staging.docker
|
./manage.py runserver --settings=mayan.settings.staging.docker
|
||||||
|
|
||||||
test-with-docker-worker: ## Launch a worker instance that uses the production-like services.
|
test-with-docker-worker: ## Launch a worker instance that uses the production-like services.
|
||||||
DJANGO_SETTINGS_MODULE=mayan.settings.staging.docker ./manage.py celery worker -A mayan -B -l INFO -O fair
|
./manage.py celery worker --settings=mayan.settings.staging.docker -B -l INFO -O fair
|
||||||
|
|
||||||
docker-mysql-on: ## Launch and initialize a MySQL Docker container.
|
docker-mysql-on: ## Launch and initialize a MySQL Docker container.
|
||||||
docker run -d --name mysql -p 3306:3306 -e MYSQL_ALLOW_EMPTY_PASSWORD=True -e MYSQL_DATABASE=mayan_edms mysql
|
docker run -d --name mysql -p 3306:3306 -e MYSQL_ALLOW_EMPTY_PASSWORD=True -e MYSQL_DATABASE=mayan_edms mysql
|
||||||
|
|||||||
72
contrib/scripts/install/development.sh
Normal file
72
contrib/scripts/install/development.sh
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
INSTALLATION_DIRECTORY=/home/vagrant/mayan-edms/
|
||||||
|
DB_NAME=mayan_edms
|
||||||
|
DB_PASSWORD=test123
|
||||||
|
|
||||||
|
cat << EOF | sudo tee -a /etc/motd.tail
|
||||||
|
**********************************sudo apt
|
||||||
|
|
||||||
|
Mayan EDMS Vagrant Development Box
|
||||||
|
|
||||||
|
**********************************
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Update sources
|
||||||
|
echo -e "\n -> Running apt-get update & upgrade \n"
|
||||||
|
sudo apt-get -qq update
|
||||||
|
sudo apt-get -y upgrade
|
||||||
|
|
||||||
|
echo -e "\n -> Installing core binaries \n"
|
||||||
|
sudo apt-get -y install git-core python-virtualenv gcc python-dev libjpeg-dev libpng-dev libtiff-dev tesseract-ocr poppler-utils libreoffice
|
||||||
|
|
||||||
|
echo -e "\n -> Cloning development branch of repository \n"
|
||||||
|
git clone /mayan-edms-repository/ $INSTALLATION_DIRECTORY
|
||||||
|
cd $INSTALLATION_DIRECTORY
|
||||||
|
git checkout development
|
||||||
|
git reset HEAD --hard
|
||||||
|
|
||||||
|
echo -e "\n -> Setting up virtual env \n"
|
||||||
|
virtualenv venv
|
||||||
|
source venv/bin/activate
|
||||||
|
|
||||||
|
echo -e "\n -> Installing python dependencies \n"
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
echo -e "\n -> Running Mayan EDMS initial setup \n"
|
||||||
|
./manage.py initialsetup
|
||||||
|
|
||||||
|
echo -e "\n -> Installing Redis server \n"
|
||||||
|
sudo apt-get install -y redis-server
|
||||||
|
pip install redis
|
||||||
|
|
||||||
|
echo -e "\n -> Installing testing software \n"
|
||||||
|
pip install coverage
|
||||||
|
|
||||||
|
echo -e "\n -> Installing MySQL \n"
|
||||||
|
sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password password '$DB_PASSWORD
|
||||||
|
sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password '$DB_PASSWORD
|
||||||
|
sudo apt-get install -y mysql-server libmysqlclient-dev
|
||||||
|
# Create a passwordless root and travis users
|
||||||
|
mysql -u root -p$DB_PASSWORD -e "SET PASSWORD = PASSWORD('');"
|
||||||
|
mysql -u root -e "CREATE USER 'travis'@'localhost' IDENTIFIED BY '';GRANT ALL PRIVILEGES ON * . * TO 'travis'@'localhost';FLUSH PRIVILEGES;"
|
||||||
|
mysql -u travis -e "CREATE DATABASE $DB_NAME;"
|
||||||
|
pip install mysql-python
|
||||||
|
|
||||||
|
echo -e "\n -> Installing PostgreSQL \n"
|
||||||
|
sudo apt-get install -y postgresql postgresql-server-dev-all
|
||||||
|
sudo -u postgres psql -c 'create database mayan_edms;' -U postgres
|
||||||
|
sudo cat > /etc/postgresql/9.3/main/pg_hba.conf << EOF
|
||||||
|
local all postgres trust
|
||||||
|
|
||||||
|
# TYPE DATABASE USER ADDRESS METHOD
|
||||||
|
|
||||||
|
# "local" is for Unix domain socket connections only
|
||||||
|
local all all peer
|
||||||
|
# IPv4 local connections:
|
||||||
|
host all all 127.0.0.1/32 md5
|
||||||
|
# IPv6 local connections:
|
||||||
|
host all all ::1/128 md5
|
||||||
|
EOF
|
||||||
|
|
||||||
|
pip install -q psycopg2
|
||||||
1733
contrib/scripts/install/dialog.sh
Normal file
1733
contrib/scripts/install/dialog.sh
Normal file
File diff suppressed because it is too large
Load Diff
171
contrib/scripts/install/production.sh
Normal file
171
contrib/scripts/install/production.sh
Normal file
@@ -0,0 +1,171 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# ====== CONFIG ======
|
||||||
|
INSTALLATION_DIRECTORY=/usr/share/mayan-edms/
|
||||||
|
DB_NAME=mayan_edms
|
||||||
|
DB_USERNAME=mayan
|
||||||
|
DB_PASSWORD=test123
|
||||||
|
# ==== END CONFIG ====
|
||||||
|
|
||||||
|
cat << EOF | tee -a /etc/motd.tail
|
||||||
|
**********************************
|
||||||
|
|
||||||
|
Mayan EDMS Vagrant Production Box
|
||||||
|
|
||||||
|
**********************************
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo -e "\n -> Running apt-get update & upgrade \n"
|
||||||
|
apt-get -qq update
|
||||||
|
apt-get -y upgrade
|
||||||
|
|
||||||
|
echo -e "\n -> Installing core binaries \n"
|
||||||
|
apt-get install nginx supervisor redis-server postgresql libpq-dev libjpeg-dev libmagic1 libpng-dev libreoffice libtiff-dev gcc ghostscript gpgv python-dev python-virtualenv tesseract-ocr poppler-utils -y
|
||||||
|
|
||||||
|
echo -e "\n -> Setting up virtualenv \n"
|
||||||
|
rm -f ${INSTALLATION_DIRECTORY}
|
||||||
|
virtualenv ${INSTALLATION_DIRECTORY}
|
||||||
|
source ${INSTALLATION_DIRECTORY}bin/activate
|
||||||
|
|
||||||
|
echo -e "\n -> Installing Mayan EDMS from PyPI \n"
|
||||||
|
pip install mayan-edms
|
||||||
|
|
||||||
|
echo -e "\n -> Installing Python client for PostgreSQL, Redis, and uWSGI \n"
|
||||||
|
pip install psycopg2 redis uwsgi
|
||||||
|
|
||||||
|
echo -e "\n -> Creating the database for the installation \n"
|
||||||
|
echo "CREATE USER mayan WITH PASSWORD '$DB_PASSWORD';" | sudo -u postgres psql
|
||||||
|
sudo -u postgres createdb -O $DB_USERNAME $DB_NAME
|
||||||
|
|
||||||
|
echo -e "\n -> Creating the directories for the logs \n"
|
||||||
|
mkdir /var/log/mayan
|
||||||
|
|
||||||
|
echo -e "\n -> Making a convenience symlink \n"
|
||||||
|
cd ${INSTALLATION_DIRECTORY}
|
||||||
|
ln -s lib/python2.7/site-packages/mayan .
|
||||||
|
|
||||||
|
echo -e "\n -> Creating an initial settings file \n"
|
||||||
|
mayan-edms.py createsettings
|
||||||
|
|
||||||
|
echo -e "\n -> Updating the mayan/settings/local.py file \n"
|
||||||
|
cat >> mayan/settings/local.py << EOF
|
||||||
|
DATABASES = {
|
||||||
|
'default': {
|
||||||
|
'ENGINE': 'django.db.backends.postgresql_psycopg2',
|
||||||
|
'NAME': '$DB_NAME',
|
||||||
|
'USER': '$DB_USERNAME',
|
||||||
|
'PASSWORD': '$DB_PASSWORD',
|
||||||
|
'HOST': 'localhost',
|
||||||
|
'PORT': '5432',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
BROKER_URL = 'redis://127.0.0.1:6379/0'
|
||||||
|
CELERY_RESULT_BACKEND = 'redis://127.0.0.1:6379/0'
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo -e "\n -> Migrating the database or initialize the project \n"
|
||||||
|
mayan-edms.py initialsetup
|
||||||
|
|
||||||
|
echo -e "\n -> Disabling the default NGINX site \n"
|
||||||
|
rm -f /etc/nginx/sites-enabled/default
|
||||||
|
|
||||||
|
echo -e "\n -> Creating a uwsgi.ini file \n"
|
||||||
|
cat > uwsgi.ini << EOF
|
||||||
|
[uwsgi]
|
||||||
|
chdir = ${INSTALLATION_DIRECTORY}lib/python2.7/site-packages/mayan
|
||||||
|
chmod-socket = 664
|
||||||
|
chown-socket = www-data:www-data
|
||||||
|
env = DJANGO_SETTINGS_MODULE=mayan.settings.production
|
||||||
|
gid = www-data
|
||||||
|
logto = /var/log/uwsgi/%n.log
|
||||||
|
pythonpath = ${INSTALLATION_DIRECTORY}lib/python2.7/site-packages
|
||||||
|
master = True
|
||||||
|
max-requests = 5000
|
||||||
|
socket = ${INSTALLATION_DIRECTORY}uwsgi.sock
|
||||||
|
uid = www-data
|
||||||
|
vacuum = True
|
||||||
|
wsgi-file = ${INSTALLATION_DIRECTORY}lib/python2.7/site-packages/mayan/wsgi.py
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo -e "\n -> Creating the directory for the uWSGI log files \n"
|
||||||
|
mkdir -p /var/log/uwsgi
|
||||||
|
|
||||||
|
echo -e "\n -> Creating the NGINX site file for Mayan EDMS, /etc/nginx/sites-available/mayan \n"
|
||||||
|
cat > /etc/nginx/sites-available/mayan << EOF
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name localhost;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
include uwsgi_params;
|
||||||
|
uwsgi_pass unix:${INSTALLATION_DIRECTORY}uwsgi.sock;
|
||||||
|
|
||||||
|
client_max_body_size 30M; # Increse if your plan to upload bigger documents
|
||||||
|
proxy_read_timeout 30s; # Increase if your document uploads take more than 30 seconds
|
||||||
|
}
|
||||||
|
|
||||||
|
location /static {
|
||||||
|
alias ${INSTALLATION_DIRECTORY}mayan/media/static;
|
||||||
|
expires 1h;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /favicon.ico {
|
||||||
|
alias ${INSTALLATION_DIRECTORY}mayan/media/static/appearance/images/favicon.ico;
|
||||||
|
expires 1h;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo -e "\n -> Enabling the NGINX site for Mayan EDMS \n"
|
||||||
|
ln -s /etc/nginx/sites-available/mayan /etc/nginx/sites-enabled/
|
||||||
|
|
||||||
|
echo -e "\n -> Creating the supervisor file for the uWSGI process, /etc/supervisor/conf.d/mayan-uwsgi.conf \n"
|
||||||
|
cat > /etc/supervisor/conf.d/mayan-uwsgi.conf << EOF
|
||||||
|
[program:mayan-uwsgi]
|
||||||
|
command = ${INSTALLATION_DIRECTORY}bin/uwsgi --ini ${INSTALLATION_DIRECTORY}uwsgi.ini
|
||||||
|
user = root
|
||||||
|
autostart = true
|
||||||
|
autorestart = true
|
||||||
|
redirect_stderr = true
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo -e "\n -> Creating the supervisor file for the Celery worker, /etc/supervisor/conf.d/mayan-celery.conf \n"
|
||||||
|
cat > /etc/supervisor/conf.d/mayan-celery.conf << EOF
|
||||||
|
[program:mayan-worker]
|
||||||
|
command = ${INSTALLATION_DIRECTORY}bin/python ${INSTALLATION_DIRECTORY}bin/mayan-edms.py celery --settings=mayan.settings.production worker -Ofair -l ERROR
|
||||||
|
directory = ${INSTALLATION_DIRECTORY}
|
||||||
|
user = www-data
|
||||||
|
stdout_logfile = /var/log/mayan/worker-stdout.log
|
||||||
|
stderr_logfile = /var/log/mayan/worker-stderr.log
|
||||||
|
autostart = true
|
||||||
|
autorestart = true
|
||||||
|
startsecs = 10
|
||||||
|
stopwaitsecs = 10
|
||||||
|
killasgroup = true
|
||||||
|
priority = 998
|
||||||
|
|
||||||
|
[program:mayan-beat]
|
||||||
|
command = ${INSTALLATION_DIRECTORY}bin/python ${INSTALLATION_DIRECTORY}bin/mayan-edms.py celery --settings=mayan.settings.production beat -l ERROR
|
||||||
|
directory = ${INSTALLATION_DIRECTORY}
|
||||||
|
user = www-data
|
||||||
|
numprocs = 1
|
||||||
|
stdout_logfile = /var/log/mayan/beat-stdout.log
|
||||||
|
stderr_logfile = /var/log/mayan/beat-stderr.log
|
||||||
|
autostart = true
|
||||||
|
autorestart = true
|
||||||
|
startsecs = 10
|
||||||
|
stopwaitsecs = 1
|
||||||
|
killasgroup = true
|
||||||
|
priority = 998
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo -e "\n -> Collecting the static files \n"
|
||||||
|
mayan-edms.py preparestatic --noinput
|
||||||
|
|
||||||
|
echo -e "\n -> Making the installation directory readable and writable by the webserver user \n"
|
||||||
|
chown www-data:www-data ${INSTALLATION_DIRECTORY} -R
|
||||||
|
|
||||||
|
echo -e "\n -> Restarting the services \n"
|
||||||
|
/etc/init.d/nginx restart
|
||||||
|
/etc/init.d/supervisor restart
|
||||||
@@ -13,12 +13,11 @@ APP_LIST = (
|
|||||||
'checkouts', 'common', 'converter', 'dashboards', 'dependencies',
|
'checkouts', 'common', 'converter', 'dashboards', 'dependencies',
|
||||||
'django_gpg', 'document_comments', 'document_indexing',
|
'django_gpg', 'document_comments', 'document_indexing',
|
||||||
'document_parsing', 'document_signatures', 'document_states',
|
'document_parsing', 'document_signatures', 'document_states',
|
||||||
'documents', 'dynamic_search', 'events', 'file_caching',
|
'documents', 'dynamic_search', 'events', 'file_metadata', 'linking',
|
||||||
'file_metadata', 'linking', 'lock_manager', 'mailer',
|
'lock_manager', 'mayan_statistics', 'mailer', 'metadata', 'mirroring',
|
||||||
'mayan_statistics', 'metadata', 'mirroring', 'motd', 'navigation',
|
'motd', 'navigation', 'ocr', 'permissions', 'platform', 'rest_api',
|
||||||
'ocr', 'permissions', 'platform', 'rest_api', 'smart_settings',
|
'smart_settings', 'sources', 'storage', 'tags', 'task_manager',
|
||||||
'sources', 'storage', 'tags', 'task_manager', 'user_management',
|
'user_management'
|
||||||
'weblinks'
|
|
||||||
)
|
)
|
||||||
|
|
||||||
LANGUAGE_LIST = (
|
LANGUAGE_LIST = (
|
||||||
|
|||||||
35
contrib/scripts/start_gunicorn.sh
Normal file
35
contrib/scripts/start_gunicorn.sh
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
NAME="mayan-edms"
|
||||||
|
DJANGODIR=/usr/share/mayan-edms
|
||||||
|
SOCKFILE=/var/tmp/filesystem.sock
|
||||||
|
USER=www-data
|
||||||
|
GROUP=www-data
|
||||||
|
NUM_WORKERS=3
|
||||||
|
DJANGO_SETTINGS_MODULE=mayan.settings.production
|
||||||
|
DJANGO_WSGI_MODULE=mayan.wsgi
|
||||||
|
TIMEOUT=600
|
||||||
|
|
||||||
|
echo "Starting $NAME as `whoami`"
|
||||||
|
|
||||||
|
# Activate the virtual environment
|
||||||
|
cd $DJANGODIR
|
||||||
|
source bin/activate
|
||||||
|
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
|
||||||
|
export PYTHONPATH=$DJANGODIR:$PYTHONPATH
|
||||||
|
|
||||||
|
# Create the run directory if it doesn't exist
|
||||||
|
RUNDIR=$(dirname $SOCKFILE)
|
||||||
|
test -d $RUNDIR || mkdir -p $RUNDIR
|
||||||
|
|
||||||
|
# Start your Django Unicorn
|
||||||
|
# Programs meant to be run under supervisor should not daemonize themselves (do not use --daemon)
|
||||||
|
exec bin/gunicorn ${DJANGO_WSGI_MODULE}:application \
|
||||||
|
--name $NAME \
|
||||||
|
--workers $NUM_WORKERS \
|
||||||
|
--user=$USER --group=$GROUP \
|
||||||
|
--log-level=debug \
|
||||||
|
--bind=unix:$SOCKFILE \
|
||||||
|
--timeout=$TIMEOUT
|
||||||
|
|
||||||
|
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
# BASE_IMAGE - Bare bones image with the base packages needed to run Mayan EDMS
|
# BASE_IMAGE - Bare bones image with the base packages needed to run Mayan EDMS
|
||||||
####
|
####
|
||||||
|
|
||||||
FROM debian:10.0-slim as BASE_IMAGE
|
FROM debian:9.8-slim as BASE_IMAGE
|
||||||
|
|
||||||
LABEL maintainer="Roberto Rosario roberto.rosario@mayan-edms.com"
|
LABEL maintainer="Roberto Rosario roberto.rosario@mayan-edms.com"
|
||||||
|
|
||||||
@@ -22,7 +22,6 @@ RUN set -x \
|
|||||||
&& DEBIAN_FRONTEND=noninteractive \
|
&& DEBIAN_FRONTEND=noninteractive \
|
||||||
apt-get update \
|
apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends \
|
&& apt-get install -y --no-install-recommends \
|
||||||
ca-certificates \
|
|
||||||
exiftool \
|
exiftool \
|
||||||
ghostscript \
|
ghostscript \
|
||||||
gpgv \
|
gpgv \
|
||||||
@@ -30,11 +29,11 @@ apt-get update \
|
|||||||
graphviz \
|
graphviz \
|
||||||
libfuse2 \
|
libfuse2 \
|
||||||
libmagic1 \
|
libmagic1 \
|
||||||
libmariadb3 \
|
libmariadbclient18 \
|
||||||
libreoffice \
|
libreoffice \
|
||||||
libpq5 \
|
libpq5 \
|
||||||
poppler-utils \
|
poppler-utils \
|
||||||
python3-distutils \
|
redis-server \
|
||||||
sane-utils \
|
sane-utils \
|
||||||
sudo \
|
sudo \
|
||||||
supervisor \
|
supervisor \
|
||||||
@@ -53,20 +52,22 @@ apt-get update \
|
|||||||
&& if [ "$(uname -m)" = "armv7l" ]; then \
|
&& if [ "$(uname -m)" = "armv7l" ]; then \
|
||||||
ln -s /usr/lib/arm-linux-gnueabihf/libz.so /usr/lib/ \
|
ln -s /usr/lib/arm-linux-gnueabihf/libz.so /usr/lib/ \
|
||||||
&& ln -s /usr/lib/arm-linux-gnueabihf/libjpeg.so /usr/lib/ \
|
&& ln -s /usr/lib/arm-linux-gnueabihf/libjpeg.so /usr/lib/ \
|
||||||
; fi
|
; fi \
|
||||||
|
# Discard data when Redis runs out of memory
|
||||||
|
&& echo "maxmemory-policy allkeys-lru" >> /etc/redis/redis.conf \
|
||||||
|
# Disable saving the Redis database
|
||||||
|
echo "save \"\"" >> /etc/redis/redis.conf \
|
||||||
|
# Only provision 1 database
|
||||||
|
&& echo "databases 1" >> /etc/redis/redis.conf
|
||||||
|
|
||||||
|
|
||||||
####
|
####
|
||||||
# BUILDER_IMAGE - This image builds the Python package and is discarded afterwards
|
# BUILDER_IMAGE - This image buildS the Python package and is discarded afterwards
|
||||||
# only the build artifact is carried over to the next image.
|
|
||||||
####
|
####
|
||||||
|
|
||||||
# Reuse image
|
# Reuse image
|
||||||
FROM BASE_IMAGE as BUILDER_IMAGE
|
FROM BASE_IMAGE as BUILDER_IMAGE
|
||||||
|
|
||||||
# Python libraries caching
|
|
||||||
ARG PIP_INDEX_URL
|
|
||||||
ARG PIP_TRUSTED_HOST
|
|
||||||
|
|
||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
|
|
||||||
# Copy the source files needed to build the Python package
|
# Copy the source files needed to build the Python package
|
||||||
@@ -95,40 +96,39 @@ apt-get install -y --no-install-recommends \
|
|||||||
libssl-dev \
|
libssl-dev \
|
||||||
g++ \
|
g++ \
|
||||||
gcc \
|
gcc \
|
||||||
python3-dev \
|
python-dev \
|
||||||
python3-venv \
|
python-virtualenv \
|
||||||
&& mkdir -p "${PROJECT_INSTALL_DIR}" \
|
&& mkdir -p "${PROJECT_INSTALL_DIR}" \
|
||||||
&& chown -R mayan:mayan "${PROJECT_INSTALL_DIR}" \
|
&& chown -R mayan:mayan "${PROJECT_INSTALL_DIR}" \
|
||||||
&& chown -R mayan:mayan /src
|
&& chown -R mayan:mayan /src
|
||||||
|
|
||||||
USER mayan
|
USER mayan
|
||||||
RUN python3 -m venv "${PROJECT_INSTALL_DIR}" \
|
RUN python -m virtualenv "${PROJECT_INSTALL_DIR}" \
|
||||||
&& . "${PROJECT_INSTALL_DIR}/bin/activate" \
|
&& . "${PROJECT_INSTALL_DIR}/bin/activate" \
|
||||||
&& pip install --no-cache-dir \
|
&& pip install --no-cache-dir --no-use-pep517 \
|
||||||
librabbitmq==2.0.0 \
|
librabbitmq==1.6.1 \
|
||||||
mysqlclient==1.4.2.post1 \
|
mysql-python==1.2.5 \
|
||||||
psycopg2==2.8.3 \
|
psycopg2==2.7.3.2 \
|
||||||
redis==3.2.1 \
|
redis==2.10.6 \
|
||||||
flower==0.9.3 \
|
|
||||||
# psutil is needed by ARM builds otherwise gevent and gunicorn fail to start
|
# psutil is needed by ARM builds otherwise gevent and gunicorn fail to start
|
||||||
&& UNAME=`uname -m` && if [ "${UNAME#*arm}" != $UNAME ]; then \
|
&& UNAME=`uname -m` && if [ "${UNAME#*arm}" != $UNAME ]; then \
|
||||||
pip install --no-cache-dir \
|
pip install --no-cache-dir --no-use-pep517 \
|
||||||
psutil==5.6.2 \
|
psutil==5.6.2 \
|
||||||
; fi \
|
; fi \
|
||||||
# Install the Python packages needed to build Mayan EDMS
|
# Install the Python packages needed to build Mayan EDMS
|
||||||
&& pip install --no-cache-dir -r /src/requirements/build.txt \
|
&& pip install --no-cache-dir --no-use-pep517 -r /src/requirements/build.txt \
|
||||||
# Build Mayan EDMS
|
# Build Mayan EDMS
|
||||||
&& python3 setup.py sdist \
|
&& python setup.py sdist \
|
||||||
# Install the built Mayan EDMS package
|
# Install the built Mayan EDMS package
|
||||||
&& pip install --no-cache-dir dist/mayan* \
|
&& pip install --no-cache-dir --no-use-pep517 dist/mayan* \
|
||||||
# Install the static content
|
# Install the static content
|
||||||
&& mayan-edms.py installdependencies \
|
&& mayan-edms.py installjavascript \
|
||||||
&& MAYAN_STATIC_ROOT=${PROJECT_INSTALL_DIR}/static mayan-edms.py preparestatic --link --noinput
|
&& MAYAN_STATIC_ROOT=${PROJECT_INSTALL_DIR}/static mayan-edms.py preparestatic --link --noinput
|
||||||
|
|
||||||
COPY --chown=mayan:mayan requirements/testing-base.txt "${PROJECT_INSTALL_DIR}"
|
COPY --chown=mayan:mayan requirements/testing-base.txt "${PROJECT_INSTALL_DIR}"
|
||||||
|
|
||||||
####
|
####
|
||||||
# Final image - BASE_IMAGE + BUILDER_IMAGE artifact (Mayan install directory)
|
# Final image - BASE_IMAGE + Mayan install directory from the builder image
|
||||||
####
|
####
|
||||||
|
|
||||||
FROM BASE_IMAGE
|
FROM BASE_IMAGE
|
||||||
@@ -144,7 +144,7 @@ VOLUME ["/var/lib/mayan"]
|
|||||||
ENTRYPOINT ["entrypoint.sh"]
|
ENTRYPOINT ["entrypoint.sh"]
|
||||||
|
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
CMD ["run_all"]
|
CMD ["mayan"]
|
||||||
|
|
||||||
RUN ${PROJECT_INSTALL_DIR}/bin/mayan-edms.py platformtemplate supervisord_docker > /etc/supervisor/conf.d/mayan.conf \
|
RUN ${PROJECT_INSTALL_DIR}/bin/mayan-edms.py platformtemplate supervisord_docker > /etc/supervisor/conf.d/mayan.conf \
|
||||||
&& apt-get clean autoclean \
|
&& apt-get clean autoclean \
|
||||||
|
|||||||
@@ -1,9 +1,4 @@
|
|||||||
HOST_IP = `/sbin/ip route|awk '/docker0/ { print $$9 }'`
|
APT_PROXY ?= `/sbin/ip route|awk '/docker0/ { print $$9 }'`:3142
|
||||||
|
|
||||||
APT_PROXY ?= $(HOST_IP):3142
|
|
||||||
PIP_INDEX_URL ?= http://$(HOST_IP):3141/root/pypi/+simple/
|
|
||||||
PIP_TRUSTED_HOST ?= $(HOST_IP)
|
|
||||||
|
|
||||||
IMAGE_VERSION ?= `cat docker/rootfs/version`
|
IMAGE_VERSION ?= `cat docker/rootfs/version`
|
||||||
CONSOLE_COLUMNS ?= `echo $$(tput cols)`
|
CONSOLE_COLUMNS ?= `echo $$(tput cols)`
|
||||||
CONSOLE_LINES ?= `echo $$(tput lines)`
|
CONSOLE_LINES ?= `echo $$(tput lines)`
|
||||||
@@ -12,7 +7,7 @@ docker-build: ## Build a new image locally.
|
|||||||
docker build -t mayanedms/mayanedms:$(IMAGE_VERSION) -f docker/Dockerfile .
|
docker build -t mayanedms/mayanedms:$(IMAGE_VERSION) -f docker/Dockerfile .
|
||||||
|
|
||||||
docker-build-with-proxy: ## Build a new image locally using an APT proxy as APT_PROXY.
|
docker-build-with-proxy: ## Build a new image locally using an APT proxy as APT_PROXY.
|
||||||
docker build -t mayanedms/mayanedms:$(IMAGE_VERSION) -f docker/Dockerfile --build-arg APT_PROXY=$(APT_PROXY) --build-arg PIP_INDEX_URL=$(PIP_INDEX_URL) --build-arg PIP_TRUSTED_HOST=$(PIP_TRUSTED_HOST) --build-arg HTTP_PROXY=$(HTTP_PROXY) --build-arg HTTPS_PROXY=$(HTTPS_PROXY) .
|
docker build -t mayanedms/mayanedms:$(IMAGE_VERSION) -f docker/Dockerfile --build-arg APT_PROXY=$(APT_PROXY) .
|
||||||
|
|
||||||
docker-shell: ## Launch a bash instance inside a running container. Pass the container name via DOCKER_CONTAINER.
|
docker-shell: ## Launch a bash instance inside a running container. Pass the container name via DOCKER_CONTAINER.
|
||||||
docker exec -e TERM=$(TERM) -e "COLUMNS=$(CONSOLE_COLUMNS)" -e "LINES=$(CONSOLE_LINES)" -it $(DOCKER_CONTAINER) /bin/bash
|
docker exec -e TERM=$(TERM) -e "COLUMNS=$(CONSOLE_COLUMNS)" -e "LINES=$(CONSOLE_LINES)" -it $(DOCKER_CONTAINER) /bin/bash
|
||||||
@@ -28,13 +23,3 @@ docker-test-cleanup: ## Delete the test container and the test volume.
|
|||||||
docker-test-all: ## Build and executed the test suite in a test container.
|
docker-test-all: ## Build and executed the test suite in a test container.
|
||||||
docker-test-all: docker-build-with-proxy
|
docker-test-all: docker-build-with-proxy
|
||||||
docker run --rm run-tests
|
docker run --rm run-tests
|
||||||
|
|
||||||
docker-compose-build:
|
|
||||||
docker-compose -f docker/docker-compose.yml -p mayan-edms build
|
|
||||||
|
|
||||||
docker-compose-build-with-proxy:
|
|
||||||
docker-compose -f docker/docker-compose.yml -p mayan-edms build --build-arg APT_PROXY=$(APT_PROXY) --build-arg PIP_INDEX_URL=$(PIP_INDEX_URL) --build-arg PIP_TRUSTED_HOST=$(PIP_TRUSTED_HOST) --build-arg HTTP_PROXY=$(HTTP_PROXY) --build-arg HTTPS_PROXY=$(HTTPS_PROXY)
|
|
||||||
|
|
||||||
docker-compose-up:
|
|
||||||
docker-compose -f docker/docker-compose.yml -p mayan-edms up
|
|
||||||
|
|
||||||
|
|||||||
72
docker/docker-compose-development.yml
Executable file
72
docker/docker-compose-development.yml
Executable file
@@ -0,0 +1,72 @@
|
|||||||
|
version: '2.1'
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
broker:
|
||||||
|
driver: local
|
||||||
|
app:
|
||||||
|
driver: local
|
||||||
|
db:
|
||||||
|
driver: local
|
||||||
|
results:
|
||||||
|
driver: local
|
||||||
|
|
||||||
|
services:
|
||||||
|
broker:
|
||||||
|
container_name: mayan-edms-broker
|
||||||
|
image: healthcheck/rabbitmq
|
||||||
|
environment:
|
||||||
|
RABBITMQ_DEFAULT_USER: mayan
|
||||||
|
RABBITMQ_DEFAULT_PASS: mayan
|
||||||
|
RABBITMQ_DEFAULT_VHOST: mayan
|
||||||
|
volumes:
|
||||||
|
- broker:/var/lib/rabbitmq
|
||||||
|
results:
|
||||||
|
container_name: mayan-edms-results
|
||||||
|
image: healthcheck/redis
|
||||||
|
volumes:
|
||||||
|
- results:/data
|
||||||
|
#db:
|
||||||
|
# container_name: mayan-edms-db
|
||||||
|
# image: healthcheck/mysql
|
||||||
|
# environment:
|
||||||
|
# MYSQL_DATABASE: mayan
|
||||||
|
# MYSQL_PASSWORD: mayan-password
|
||||||
|
# MYSQL_ROOT_PASSWORD: root-password
|
||||||
|
# MYSQL_USER: mayan
|
||||||
|
# volumes:
|
||||||
|
# - db:/var/lib/mysql
|
||||||
|
db:
|
||||||
|
container_name: mayan-edms-db
|
||||||
|
image: healthcheck/postgres
|
||||||
|
environment:
|
||||||
|
POSTGRES_DB: mayan
|
||||||
|
POSTGRES_PASSWORD: mayan-password
|
||||||
|
POSTGRES_USER: mayan
|
||||||
|
volumes:
|
||||||
|
- db:/var/lib/postgresql/data
|
||||||
|
mayan-edms:
|
||||||
|
container_name: mayan-edms-app
|
||||||
|
image: mayan-edms/next
|
||||||
|
build:
|
||||||
|
context: ./
|
||||||
|
args:
|
||||||
|
- APT_PROXY=172.18.0.1:3142
|
||||||
|
depends_on:
|
||||||
|
broker:
|
||||||
|
condition: service_healthy
|
||||||
|
db:
|
||||||
|
condition: service_healthy
|
||||||
|
results:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
MAYAN_BROKER_URL: amqp://mayan:mayan@broker:5672/mayan
|
||||||
|
MAYAN_CELERY_RESULT_BACKEND: redis://results:6379/0
|
||||||
|
MAYAN_DATABASE_ENGINE: django.db.backends.postgresql
|
||||||
|
MAYAN_DATABASE_HOST: db
|
||||||
|
MAYAN_DATABASE_NAME: mayan
|
||||||
|
MAYAN_DATABASE_PASSWORD: mayan-password
|
||||||
|
MAYAN_DATABASE_USER: mayan
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
volumes:
|
||||||
|
- app:/var/lib/mayan
|
||||||
@@ -1,130 +1,58 @@
|
|||||||
version: '3.7'
|
version: '2.1'
|
||||||
|
|
||||||
networks:
|
volumes:
|
||||||
mayan-bridge:
|
broker:
|
||||||
driver: bridge
|
driver: local
|
||||||
|
app:
|
||||||
|
driver: local
|
||||||
|
db:
|
||||||
|
driver: local
|
||||||
|
results:
|
||||||
|
driver: local
|
||||||
|
|
||||||
services:
|
services:
|
||||||
app:
|
broker:
|
||||||
build:
|
container_name: mayan-edms-broker
|
||||||
context: ..
|
image: healthcheck/rabbitmq
|
||||||
dockerfile: ./docker/Dockerfile
|
environment:
|
||||||
depends_on:
|
RABBITMQ_DEFAULT_USER: mayan
|
||||||
- postgresql
|
RABBITMQ_DEFAULT_PASS: mayan
|
||||||
- redis
|
RABBITMQ_DEFAULT_VHOST: mayan
|
||||||
# Enable to use RabbitMQ
|
|
||||||
#- rabbitmq
|
|
||||||
environment: &mayan_env
|
|
||||||
# Enable to use RabbitMQ
|
|
||||||
# MAYAN_CELERY_BROKER_URL: amqp://mayan:mayanrabbitpass@broker:5672/mayan
|
|
||||||
# Disable Redis Broker to use RabbitMQ as Broker
|
|
||||||
MAYAN_CELERY_BROKER_URL: redis://redis:6379/1
|
|
||||||
MAYAN_CELERY_RESULT_BACKEND: redis://redis:6379/0
|
|
||||||
MAYAN_DATABASES: "{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayandbpass','USER':'mayan','HOST':'postgresql'}}"
|
|
||||||
image: mayanedms/mayanedms:3.2.6
|
|
||||||
networks:
|
|
||||||
- mayan-bridge
|
|
||||||
ports:
|
|
||||||
- "80:8000"
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
volumes:
|
||||||
- /docker-volumes/mayan-edms/media:/var/lib/mayan
|
- broker:/var/lib/rabbitmq
|
||||||
|
results:
|
||||||
postgresql:
|
container_name: mayan-edms-results
|
||||||
|
image: healthcheck/redis
|
||||||
|
volumes:
|
||||||
|
- results:/data
|
||||||
|
db:
|
||||||
|
container_name: mayan-edms-db
|
||||||
|
image: healthcheck/postgres
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_DB: mayan
|
POSTGRES_DB: mayan
|
||||||
POSTGRES_PASSWORD: mayandbpass
|
POSTGRES_PASSWORD: mayan-password
|
||||||
POSTGRES_USER: mayan
|
POSTGRES_USER: mayan
|
||||||
image: postgres:9.6
|
|
||||||
networks:
|
|
||||||
- mayan-bridge
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
volumes:
|
||||||
- /docker-volumes/mayan-edms/postgres:/var/lib/postgresql/data
|
- db:/var/lib/postgresql/data
|
||||||
|
mayan-edms:
|
||||||
redis:
|
container_name: mayan-edms-app
|
||||||
command:
|
image: mayanedms/mayanedms:latest
|
||||||
- redis-server
|
depends_on:
|
||||||
- --databases
|
broker:
|
||||||
- "2"
|
condition: service_healthy
|
||||||
- --maxmemory-policy
|
db:
|
||||||
- allkeys-lru
|
condition: service_healthy
|
||||||
- --save
|
results:
|
||||||
- ""
|
condition: service_healthy
|
||||||
image: redis:5.0
|
environment:
|
||||||
networks:
|
MAYAN_BROKER_URL: amqp://mayan:mayan@broker:5672/mayan
|
||||||
- mayan-bridge
|
MAYAN_CELERY_RESULT_BACKEND: redis://results:6379/0
|
||||||
restart: unless-stopped
|
MAYAN_DATABASE_ENGINE: django.db.backends.postgresql
|
||||||
|
MAYAN_DATABASE_HOST: db
|
||||||
# Optional services
|
MAYAN_DATABASE_NAME: mayan
|
||||||
|
MAYAN_DATABASE_PASSWORD: mayan-password
|
||||||
# celery_flower:
|
MAYAN_DATABASE_USER: mayan
|
||||||
# command:
|
ports:
|
||||||
# - run_celery
|
- "80:8000"
|
||||||
# - flower
|
volumes:
|
||||||
# depends_on:
|
- app:/var/lib/mayan
|
||||||
# - postgresql
|
|
||||||
# - redis
|
|
||||||
# # Enable to use RabbitMQ
|
|
||||||
# # - rabbitmq
|
|
||||||
# environment:
|
|
||||||
# <<: *mayan_env
|
|
||||||
# image: mayanedms/mayanedms:3.2.6
|
|
||||||
# networks:
|
|
||||||
# - mayan-bridge
|
|
||||||
# ports:
|
|
||||||
# - "5555:5555"
|
|
||||||
# restart: unless-stopped
|
|
||||||
|
|
||||||
# Enable to use RabbitMQ
|
|
||||||
# rabbitmq:
|
|
||||||
# container_name: mayan-edms-rabbitmq
|
|
||||||
# image: healthcheck/rabbitmq
|
|
||||||
# environment:
|
|
||||||
# RABBITMQ_DEFAULT_USER: mayan
|
|
||||||
# RABBITMQ_DEFAULT_PASS: mayanrabbitpass
|
|
||||||
# RABBITMQ_DEFAULT_VHOST: mayan
|
|
||||||
# networks:
|
|
||||||
# - mayan-bridge
|
|
||||||
# restart: unless-stopped
|
|
||||||
# volumes:
|
|
||||||
# - /docker-volumes/mayan-edms/rabbitmq:/var/lib/rabbitmq
|
|
||||||
|
|
||||||
# Enable to run stand alone workers
|
|
||||||
# worker_fast:
|
|
||||||
# command:
|
|
||||||
# - run_worker
|
|
||||||
# - fast
|
|
||||||
# depends_on:
|
|
||||||
# - postgresql
|
|
||||||
# - redis
|
|
||||||
# # Enable to use RabbitMQ
|
|
||||||
# # - rabbitmq
|
|
||||||
# environment:
|
|
||||||
# <<: *mayan_env
|
|
||||||
# image: mayanedms/mayanedms:3.2.6
|
|
||||||
# networks:
|
|
||||||
# - mayan-bridge
|
|
||||||
# restart: unless-stopped
|
|
||||||
# volumes:
|
|
||||||
# - /docker-volumes/mayan-edms/media:/var/lib/mayan
|
|
||||||
|
|
||||||
# Enable to run stand frontend gunicorn
|
|
||||||
# frontend:
|
|
||||||
# command:
|
|
||||||
# - run_frontend
|
|
||||||
# depends_on:
|
|
||||||
# - postgresql
|
|
||||||
# - redis
|
|
||||||
# # Enable to use RabbitMQ
|
|
||||||
# # - rabbitmq
|
|
||||||
# environment:
|
|
||||||
# <<: *mayan_env
|
|
||||||
# image: mayanedms/mayanedms:3.2.6
|
|
||||||
# networks:
|
|
||||||
# - mayan-bridge
|
|
||||||
# ports:
|
|
||||||
# - "81:8000"
|
|
||||||
# restart: unless-stopped
|
|
||||||
# volumes:
|
|
||||||
# - /docker-volumes/mayan-edms/media:/var/lib/mayan
|
|
||||||
|
|||||||
@@ -1,7 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/bin/sh
|
||||||
|
|
||||||
# Use bash and not sh to support argument slicing "${@:2}"
|
|
||||||
# sh defaults to dash instead of bash.
|
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
echo "mayan: starting entrypoint.sh"
|
echo "mayan: starting entrypoint.sh"
|
||||||
@@ -9,15 +6,19 @@ INSTALL_FLAG=/var/lib/mayan/system/SECRET_KEY
|
|||||||
CONCURRENCY_ARGUMENT=--concurrency=
|
CONCURRENCY_ARGUMENT=--concurrency=
|
||||||
|
|
||||||
DEFAULT_USER_UID=1000
|
DEFAULT_USER_UID=1000
|
||||||
DEFAULT_USER_GID=1000
|
DEFAULT_USER_GUID=1000
|
||||||
|
|
||||||
|
export MAYAN_DEFAULT_BROKER_URL=redis://127.0.0.1:6379/0
|
||||||
|
export MAYAN_DEFAULT_CELERY_RESULT_BACKEND=redis://127.0.0.1:6379/0
|
||||||
|
|
||||||
export MAYAN_ALLOWED_HOSTS='["*"]'
|
export MAYAN_ALLOWED_HOSTS='["*"]'
|
||||||
export MAYAN_BIN=/opt/mayan-edms/bin/mayan-edms.py
|
export MAYAN_BIN=/opt/mayan-edms/bin/mayan-edms.py
|
||||||
|
export MAYAN_BROKER_URL=${MAYAN_BROKER_URL:-${MAYAN_DEFAULT_BROKER_URL}}
|
||||||
|
export MAYAN_CELERY_RESULT_BACKEND=${MAYAN_CELERY_RESULT_BACKEND:-${MAYAN_DEFAULT_CELERY_RESULT_BACKEND}}
|
||||||
export MAYAN_INSTALL_DIR=/opt/mayan-edms
|
export MAYAN_INSTALL_DIR=/opt/mayan-edms
|
||||||
export MAYAN_PYTHON_BIN_DIR=/opt/mayan-edms/bin/
|
export MAYAN_PYTHON_BIN_DIR=/opt/mayan-edms/bin/
|
||||||
export MAYAN_MEDIA_ROOT=/var/lib/mayan
|
export MAYAN_MEDIA_ROOT=/var/lib/mayan
|
||||||
export MAYAN_SETTINGS_MODULE=${MAYAN_SETTINGS_MODULE:-mayan.settings.production}
|
export MAYAN_SETTINGS_MODULE=${MAYAN_SETTINGS_MODULE:-mayan.settings.production}
|
||||||
export DJANGO_SETTINGS_MODULE=${MAYAN_SETTINGS_MODULE}
|
|
||||||
|
|
||||||
export MAYAN_GUNICORN_BIN=${MAYAN_PYTHON_BIN_DIR}gunicorn
|
export MAYAN_GUNICORN_BIN=${MAYAN_PYTHON_BIN_DIR}gunicorn
|
||||||
export MAYAN_GUNICORN_WORKERS=${MAYAN_GUNICORN_WORKERS:-2}
|
export MAYAN_GUNICORN_WORKERS=${MAYAN_GUNICORN_WORKERS:-2}
|
||||||
@@ -25,9 +26,13 @@ export MAYAN_GUNICORN_TIMEOUT=${MAYAN_GUNICORN_TIMEOUT:-120}
|
|||||||
export MAYAN_PIP_BIN=${MAYAN_PYTHON_BIN_DIR}pip
|
export MAYAN_PIP_BIN=${MAYAN_PYTHON_BIN_DIR}pip
|
||||||
export MAYAN_STATIC_ROOT=${MAYAN_INSTALL_DIR}/static
|
export MAYAN_STATIC_ROOT=${MAYAN_INSTALL_DIR}/static
|
||||||
|
|
||||||
MAYAN_WORKER_FAST_CONCURRENCY=${MAYAN_WORKER_FAST_CONCURRENCY:-0}
|
MAYAN_WORKER_FAST_CONCURRENCY=${MAYAN_WORKER_FAST_CONCURRENCY:-1}
|
||||||
MAYAN_WORKER_MEDIUM_CONCURRENCY=${MAYAN_WORKER_MEDIUM_CONCURRENCY:-0}
|
MAYAN_WORKER_MEDIUM_CONCURRENCY=${MAYAN_WORKER_MEDIUM_CONCURRENCY:-1}
|
||||||
MAYAN_WORKER_SLOW_CONCURRENCY=${MAYAN_WORKER_SLOW_CONCURRENCY:-0}
|
MAYAN_WORKER_SLOW_CONCURRENCY=${MAYAN_WORKER_SLOW_CONCURRENCY:-1}
|
||||||
|
|
||||||
|
echo "mayan: changing uid/guid"
|
||||||
|
usermod mayan -u ${MAYAN_USER_UID:-${DEFAULT_USER_UID}}
|
||||||
|
groupmod mayan -g ${MAYAN_USER_GUID:-${DEFAULT_USER_GUID}}
|
||||||
|
|
||||||
if [ "$MAYAN_WORKER_FAST_CONCURRENCY" -eq 0 ]; then
|
if [ "$MAYAN_WORKER_FAST_CONCURRENCY" -eq 0 ]; then
|
||||||
MAYAN_WORKER_FAST_CONCURRENCY=
|
MAYAN_WORKER_FAST_CONCURRENCY=
|
||||||
@@ -50,9 +55,11 @@ else
|
|||||||
fi
|
fi
|
||||||
export MAYAN_WORKER_SLOW_CONCURRENCY
|
export MAYAN_WORKER_SLOW_CONCURRENCY
|
||||||
|
|
||||||
# Allow importing of user setting modules
|
export CELERY_ALWAYS_EAGER=False
|
||||||
export PYTHONPATH=$PYTHONPATH:$MAYAN_MEDIA_ROOT
|
export PYTHONPATH=$PYTHONPATH:$MAYAN_MEDIA_ROOT
|
||||||
|
|
||||||
|
chown mayan:mayan /var/lib/mayan -R
|
||||||
|
|
||||||
apt_get_install() {
|
apt_get_install() {
|
||||||
apt-get -q update
|
apt-get -q update
|
||||||
apt-get install -y --force-yes --no-install-recommends --auto-remove "$@"
|
apt-get install -y --force-yes --no-install-recommends --auto-remove "$@"
|
||||||
@@ -60,9 +67,9 @@ apt_get_install() {
|
|||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
}
|
}
|
||||||
|
|
||||||
initialsetup() {
|
initialize() {
|
||||||
echo "mayan: initialsetup()"
|
echo "mayan: initialize()"
|
||||||
su mayan -c "${MAYAN_BIN} initialsetup --force --no-dependencies"
|
su mayan -c "${MAYAN_BIN} initialsetup --force --no-javascript"
|
||||||
}
|
}
|
||||||
|
|
||||||
os_package_installs() {
|
os_package_installs() {
|
||||||
@@ -79,71 +86,43 @@ pip_installs() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
run_all() {
|
start() {
|
||||||
echo "mayan: start()"
|
echo "mayan: start()"
|
||||||
rm -rf /var/run/supervisor.sock
|
rm -rf /var/run/supervisor.sock
|
||||||
exec /usr/bin/supervisord -nc /etc/supervisor/supervisord.conf
|
exec /usr/bin/supervisord -nc /etc/supervisor/supervisord.conf
|
||||||
}
|
}
|
||||||
|
|
||||||
performupgrade() {
|
upgrade() {
|
||||||
echo "mayan: performupgrade()"
|
echo "mayan: upgrade()"
|
||||||
su mayan -c "${MAYAN_BIN} performupgrade --no-dependencies"
|
su mayan -c "${MAYAN_BIN} performupgrade --no-javascript"
|
||||||
}
|
|
||||||
|
|
||||||
make_ready() {
|
|
||||||
# Check if this is a new install, otherwise try to upgrade the existing
|
|
||||||
# installation on subsequent starts
|
|
||||||
if [ ! -f $INSTALL_FLAG ]; then
|
|
||||||
initialsetup
|
|
||||||
else
|
|
||||||
performupgrade
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
set_uid_guid() {
|
|
||||||
echo "mayan: changing uid/guid"
|
|
||||||
usermod mayan -u ${MAYAN_USER_UID:-${DEFAULT_USER_UID}}
|
|
||||||
groupmod mayan -g ${MAYAN_USER_GID:-${DEFAULT_USER_GID}}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
os_package_installs || true
|
os_package_installs || true
|
||||||
pip_installs || true
|
pip_installs || true
|
||||||
chown mayan:mayan /var/lib/mayan -R
|
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
|
|
||||||
run_initialsetup)
|
mayan) # Check if this is a new install, otherwise try to upgrade the existing
|
||||||
initialsetup
|
# installation on subsequent starts
|
||||||
;;
|
if [ ! -f $INSTALL_FLAG ]; then
|
||||||
|
initialize
|
||||||
|
else
|
||||||
|
upgrade
|
||||||
|
fi
|
||||||
|
start
|
||||||
|
;;
|
||||||
|
|
||||||
run_performupgrade)
|
run-tests) # Check if this is a new install, otherwise try to upgrade the existing
|
||||||
performupgrade
|
# installation on subsequent starts
|
||||||
;;
|
if [ ! -f $INSTALL_FLAG ]; then
|
||||||
|
initialize
|
||||||
|
else
|
||||||
|
upgrade
|
||||||
|
fi
|
||||||
|
run-tests.sh
|
||||||
|
;;
|
||||||
|
|
||||||
run_all)
|
*) su mayan -c "$@";
|
||||||
make_ready
|
;;
|
||||||
run_all
|
|
||||||
;;
|
|
||||||
|
|
||||||
run_celery)
|
|
||||||
run_celery.sh "${@:2}"
|
|
||||||
;;
|
|
||||||
|
|
||||||
run_frontend)
|
|
||||||
run_frontend.sh
|
|
||||||
;;
|
|
||||||
|
|
||||||
run_tests)
|
|
||||||
make_ready
|
|
||||||
run_tests.sh
|
|
||||||
;;
|
|
||||||
|
|
||||||
run_worker)
|
|
||||||
run_worker.sh "${@:2}"
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
su mayan -c "$@"
|
|
||||||
;;
|
|
||||||
|
|
||||||
esac
|
esac
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Use -A and not --app. Both are the same but behave differently
|
|
||||||
# -A can be located before the command while --app cannot.
|
|
||||||
su mayan -c "${MAYAN_PYTHON_BIN_DIR}celery -A mayan $@"
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
MAYAN_GUNICORN_MAX_REQUESTS=${MAYAN_GUNICORN_MAX_REQUESTS:-500}
|
|
||||||
MAYAN_GUNICORN_MAX_REQUESTS_JITTERS=${MAYAN_GUNICORN_MAX_REQUESTS_JITTERS:-50}
|
|
||||||
MAYAN_GUNICORN_WORKER_CLASS=${MAYAN_GUNICORN_WORKER_CLASS:-sync}
|
|
||||||
|
|
||||||
su mayan -c "${MAYAN_PYTHON_BIN_DIR}gunicorn -w ${MAYAN_GUNICORN_WORKERS} mayan.wsgi --max-requests ${MAYAN_GUNICORN_MAX_REQUESTS} --max-requests-jitter ${MAYAN_GUNICORN_MAX_REQUESTS_JITTERS} --worker-class ${MAYAN_GUNICORN_WORKER_CLASS} --bind 0.0.0.0:8000 --timeout ${MAYAN_GUNICORN_TIMEOUT}"
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
QUEUE_LIST=`MAYAN_WORKER_NAME=$1 su mayan -c "${MAYAN_PYTHON_BIN_DIR}mayan-edms.py platformtemplate worker_queues"`
|
|
||||||
|
|
||||||
# Use -A and not --app. Both are the same but behave differently
|
|
||||||
# -A can be located before the command while --app cannot.
|
|
||||||
# Pass ${@:2} to allow overriding the defaults arguments
|
|
||||||
su mayan -c "${MAYAN_PYTHON_BIN_DIR}celery -A mayan worker -Ofair -l ERROR -Q $QUEUE_LIST ${@:2}"
|
|
||||||
@@ -1 +1 @@
|
|||||||
3.2.6
|
3.2.3
|
||||||
|
|||||||
@@ -9,32 +9,24 @@ volumes:
|
|||||||
services:
|
services:
|
||||||
|
|
||||||
db:
|
db:
|
||||||
|
image: postgres
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_DB: mayan
|
POSTGRES_DB: mayan
|
||||||
POSTGRES_PASSWORD: mayandbpass
|
POSTGRES_PASSWORD: mayan-password
|
||||||
POSTGRES_USER: mayan
|
POSTGRES_USER: mayan
|
||||||
image: postgres
|
|
||||||
volumes:
|
volumes:
|
||||||
- db:/var/lib/postgresql/data
|
- db:/var/lib/postgresql/data
|
||||||
|
|
||||||
app:
|
app:
|
||||||
environment:
|
|
||||||
MAYAN_CELERY_BROKER_URL: redis://redis:6379/1
|
|
||||||
MAYAN_CELERY_RESULT_BACKEND: redis://redis:6379/0
|
|
||||||
MAYAN_DATABASES: "{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayandbpass','USER':'mayan','HOST':'db'}}"
|
|
||||||
image: mayanedms/mayanedms:latest
|
image: mayanedms/mayanedms:latest
|
||||||
ports:
|
ports:
|
||||||
- 80:8000
|
- 80:8000
|
||||||
|
environment:
|
||||||
|
MAYAN_DATABASE_ENGINE: django.db.backends.postgresql
|
||||||
|
MAYAN_DATABASE_HOST: db
|
||||||
|
MAYAN_DATABASE_NAME: mayan
|
||||||
|
MAYAN_DATABASE_PASSWORD: mayan-password
|
||||||
|
MAYAN_DATABASE_USER: mayan
|
||||||
|
MAYAN_DATABASE_CONN_MAX_AGE: 0
|
||||||
volumes:
|
volumes:
|
||||||
- app:/var/lib/mayan
|
- app:/var/lib/mayan
|
||||||
|
|
||||||
redis:
|
|
||||||
command:
|
|
||||||
- redis-server
|
|
||||||
- --databases
|
|
||||||
- "2"
|
|
||||||
- --maxmemory-policy
|
|
||||||
- allkeys-lru
|
|
||||||
- --save
|
|
||||||
- ""
|
|
||||||
image: redis:5.0
|
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ Direct deployments
|
|||||||
|
|
||||||
Mayan EDMS should be deployed like any other Django_ project and
|
Mayan EDMS should be deployed like any other Django_ project and
|
||||||
preferably using virtualenv_. Below are some ways to deploy and use Mayan EDMS.
|
preferably using virtualenv_. Below are some ways to deploy and use Mayan EDMS.
|
||||||
|
Do not use more than one method.
|
||||||
|
|
||||||
Being a Django_ and a Python_ project, familiarity with these technologies is
|
Being a Django_ and a Python_ project, familiarity with these technologies is
|
||||||
recommended to better understand why Mayan EDMS does some of the things it
|
recommended to better understand why Mayan EDMS does some of the things it
|
||||||
@@ -37,7 +38,7 @@ For another setup that offers more performance and scalability refer to the
|
|||||||
Platforms with the ARM CPU might also need additional requirements.
|
Platforms with the ARM CPU might also need additional requirements.
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo apt-get install libffi-dev libssl-dev -y
|
apt-sudo get libffi-dev libssl-dev -y
|
||||||
|
|
||||||
|
|
||||||
2. Create the user account for the installation:
|
2. Create the user account for the installation:
|
||||||
@@ -127,8 +128,9 @@ For another setup that offers more performance and scalability refer to the
|
|||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo -u mayan MAYAN_DATABASES="{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayanuserpass','USER':'mayan','HOST':'127.0.0.1'}}" \
|
sudo -u mayan MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
|
||||||
MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
|
||||||
|
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
||||||
/opt/mayan-edms/bin/mayan-edms.py initialsetup
|
/opt/mayan-edms/bin/mayan-edms.py initialsetup
|
||||||
|
|
||||||
|
|
||||||
@@ -147,8 +149,9 @@ For another setup that offers more performance and scalability refer to the
|
|||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo mayan MAYAN_DATABASES="{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayanuserpass','USER':'mayan','HOST':'127.0.0.1'}}" \
|
MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
|
||||||
MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
|
||||||
|
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
||||||
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf
|
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf
|
||||||
|
|
||||||
|
|
||||||
@@ -158,17 +161,17 @@ For another setup that offers more performance and scalability refer to the
|
|||||||
database and only keep 1 database:
|
database and only keep 1 database:
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo echo "maxmemory-policy allkeys-lru" >> /etc/redis/redis.conf
|
echo "maxmemory-policy allkeys-lru" >> /etc/redis/redis.conf
|
||||||
sudo echo "save \"\"" >> /etc/redis/redis.conf
|
echo "save \"\"" >> /etc/redis/redis.conf
|
||||||
sudo echo "databases 1" >> /etc/redis/redis.conf
|
echo "databases 1" >> /etc/redis/redis.conf
|
||||||
sudo systemctl restart redis
|
systemctl restart redis
|
||||||
|
|
||||||
13. Enable and restart the services [1_]:
|
13. Enable and restart the services [1_]:
|
||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo systemctl enable supervisor
|
systemctl enable supervisor
|
||||||
sudo systemctl restart supervisor
|
systemctl restart supervisor
|
||||||
|
|
||||||
|
|
||||||
14. Cleaning up:
|
14. Cleaning up:
|
||||||
@@ -177,7 +180,7 @@ For another setup that offers more performance and scalability refer to the
|
|||||||
installation and can be removed.
|
installation and can be removed.
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo apt-get remove --purge libjpeg-dev libpq-dev libpng-dev libtiff-dev zlib1g-dev
|
apt-get remove --purge libjpeg-dev libpq-dev libpng-dev libtiff-dev zlib1g-dev
|
||||||
|
|
||||||
|
|
||||||
.. _deployment_advanced:
|
.. _deployment_advanced:
|
||||||
@@ -220,11 +223,11 @@ of a restart or power failure. The Gunicorn workers are increased to 3.
|
|||||||
---------------------------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
Replace (paying attention to the comma at the end)::
|
Replace (paying attention to the comma at the end)::
|
||||||
|
|
||||||
MAYAN_CELERY_BROKER_URL="redis://127.0.0.1:6379/0",
|
MAYAN_BROKER_URL="redis://127.0.0.1:6379/0",
|
||||||
|
|
||||||
with::
|
with::
|
||||||
|
|
||||||
MAYAN_CELERY_BROKER_URL="amqp://mayan:mayanrabbitmqpassword@localhost:5672/mayan",
|
MAYAN_BROKER_URL="amqp://mayan:mayanuserpass@localhost:5672/mayan",
|
||||||
|
|
||||||
increase the number of Gunicorn workers to 3 in the line (``-w 2`` section)::
|
increase the number of Gunicorn workers to 3 in the line (``-w 2`` section)::
|
||||||
|
|
||||||
@@ -237,7 +240,7 @@ of a restart or power failure. The Gunicorn workers are increased to 3.
|
|||||||
------------------------
|
------------------------
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo supervisorctl restart all
|
supervisorctl restart all
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -49,7 +49,12 @@ Finally create and run a Mayan EDMS container::
|
|||||||
--name mayan-edms \
|
--name mayan-edms \
|
||||||
--restart=always \
|
--restart=always \
|
||||||
-p 80:8000 \
|
-p 80:8000 \
|
||||||
-e MAYAN_DATABASES="{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayanuserpass','USER':'mayan','HOST':'172.17.0.1'}}" \
|
-e MAYAN_DATABASE_ENGINE=django.db.backends.postgresql \
|
||||||
|
-e MAYAN_DATABASE_HOST=172.17.0.1 \
|
||||||
|
-e MAYAN_DATABASE_NAME=mayan \
|
||||||
|
-e MAYAN_DATABASE_PASSWORD=mayanuserpass \
|
||||||
|
-e MAYAN_DATABASE_USER=mayan \
|
||||||
|
-e MAYAN_DATABASE_CONN_MAX_AGE=0 \
|
||||||
-v /docker-volumes/mayan-edms/media:/var/lib/mayan \
|
-v /docker-volumes/mayan-edms/media:/var/lib/mayan \
|
||||||
mayanedms/mayanedms:<version>
|
mayanedms/mayanedms:<version>
|
||||||
|
|
||||||
@@ -103,7 +108,12 @@ instead of the IP address of the Docker host (``172.17.0.1``)::
|
|||||||
--network=mayan \
|
--network=mayan \
|
||||||
--restart=always \
|
--restart=always \
|
||||||
-p 80:8000 \
|
-p 80:8000 \
|
||||||
-e MAYAN_DATABASES="{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayanuserpass','USER':'mayan','HOST':'mayan-edms-postgres'}}" \
|
-e MAYAN_DATABASE_ENGINE=django.db.backends.postgresql \
|
||||||
|
-e MAYAN_DATABASE_HOST=mayan-edms-postgres \
|
||||||
|
-e MAYAN_DATABASE_NAME=mayan \
|
||||||
|
-e MAYAN_DATABASE_PASSWORD=mayanuserpass \
|
||||||
|
-e MAYAN_DATABASE_USER=mayan \
|
||||||
|
-e MAYAN_DATABASE_CONN_MAX_AGE=0 \
|
||||||
-v /docker-volumes/mayan-edms/media:/var/lib/mayan \
|
-v /docker-volumes/mayan-edms/media:/var/lib/mayan \
|
||||||
mayanedms/mayanedms:<version>
|
mayanedms/mayanedms:<version>
|
||||||
|
|
||||||
@@ -127,14 +137,102 @@ To start the container again::
|
|||||||
Environment Variables
|
Environment Variables
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
The common set of settings can also be modified via environment variables when
|
The Mayan EDMS image can be configure via environment variables.
|
||||||
using the Docker image. In addition to the common set of settings, some Docker
|
|
||||||
image specific environment variables are available.
|
``MAYAN_DATABASE_ENGINE``
|
||||||
|
|
||||||
|
Defaults to ``None``. This environment variable configures the database
|
||||||
|
backend to use. If left unset, SQLite will be used. The database backends
|
||||||
|
supported by this Docker image are:
|
||||||
|
|
||||||
|
- ``'django.db.backends.postgresql'``
|
||||||
|
- ``'django.db.backends.mysql'``
|
||||||
|
- ``'django.db.backends.sqlite3'``
|
||||||
|
|
||||||
|
When using the SQLite backend, the database file will be saved in the Docker
|
||||||
|
volume. The SQLite database as used by Mayan EDMS is meant only for development
|
||||||
|
or testing, never use it in production.
|
||||||
|
|
||||||
|
``MAYAN_DATABASE_NAME``
|
||||||
|
|
||||||
|
Defaults to 'mayan'. This optional environment variable can be used to define
|
||||||
|
the database name that Mayan EDMS will connect to. For more information read
|
||||||
|
the pertinent Django documentation page:
|
||||||
|
:django-docs:`Connecting to the database <ref/databases/#connecting-to-the-database>`
|
||||||
|
|
||||||
|
``MAYAN_DATABASE_USER``
|
||||||
|
|
||||||
|
Defaults to 'mayan'. This optional environment variable is used to set the
|
||||||
|
username that will be used to connect to the database. For more information
|
||||||
|
read the pertinent Django documentation page:
|
||||||
|
:django-docs:`Settings, USER <ref/settings/#user>`
|
||||||
|
|
||||||
|
``MAYAN_DATABASE_PASSWORD``
|
||||||
|
|
||||||
|
Defaults to ''. This optional environment variable is used to set the
|
||||||
|
password that will be used to connect to the database. For more information
|
||||||
|
read the pertinent Django documentation page:
|
||||||
|
:django-docs:`Settings, PASSWORD <ref/settings/#password>`
|
||||||
|
|
||||||
|
``MAYAN_DATABASE_HOST``
|
||||||
|
|
||||||
|
Defaults to `None`. This optional environment variable is used to set the
|
||||||
|
hostname that will be used to connect to the database. This can be the
|
||||||
|
hostname of another container or an IP address. For more information read
|
||||||
|
the pertinent Django documentation page:
|
||||||
|
:django-docs:`Settings, HOST <ref/settings/#host>`
|
||||||
|
|
||||||
|
``MAYAN_DATABASE_PORT``
|
||||||
|
|
||||||
|
Defaults to `None`. This optional environment variable is used to set the
|
||||||
|
port number to use when connecting to the database. An empty string means
|
||||||
|
the default port. Not used with SQLite. For more information read the
|
||||||
|
pertinent Django documentation page:
|
||||||
|
:django-docs:`Settings, PORT <ref/settings/#port>`
|
||||||
|
|
||||||
|
``MAYAN_BROKER_URL``
|
||||||
|
|
||||||
|
This optional environment variable determines the broker that Celery will use
|
||||||
|
to relay task messages between the frontend code and the background workers.
|
||||||
|
For more information read the pertinent Celery Kombu documentation page: `Broker URL`_
|
||||||
|
|
||||||
|
.. _Broker URL: http://kombu.readthedocs.io/en/latest/userguide/connections.html#connection-urls
|
||||||
|
|
||||||
|
This Docker image supports using Redis and RabbitMQ as brokers.
|
||||||
|
|
||||||
|
Caveat: If the `MAYAN_BROKER_URL` and `MAYAN_CELERY_RESULT_BACKEND` environment
|
||||||
|
variables are specified, the built-in Redis server inside the container will
|
||||||
|
be disabled.
|
||||||
|
|
||||||
|
``MAYAN_CELERY_RESULT_BACKEND``
|
||||||
|
|
||||||
|
This optional environment variable determines the results backend that Celery
|
||||||
|
will use to relay result messages from the background workers to the frontend
|
||||||
|
code. For more information read the pertinent Celery Kombu documentation page:
|
||||||
|
`Task result backend settings`_
|
||||||
|
|
||||||
|
.. _Task result backend settings: http://docs.celeryproject.org/en/3.1/configuration.html#celery-result-backend
|
||||||
|
|
||||||
|
This Docker image supports using Redis and RabbitMQ as result backends.
|
||||||
|
|
||||||
|
Caveat: If the `MAYAN_BROKER_URL` and `MAYAN_CELERY_RESULT_BACKEND` environment
|
||||||
|
variables are specified, the built-in Redis server inside the container will
|
||||||
|
be disabled.
|
||||||
|
|
||||||
``MAYAN_SETTINGS_MODULE``
|
``MAYAN_SETTINGS_MODULE``
|
||||||
|
|
||||||
Optional. Allows loading an alternate settings file.
|
Optional. Allows loading an alternate settings file.
|
||||||
|
|
||||||
|
``MAYAN_DATABASE_CONN_MAX_AGE``
|
||||||
|
|
||||||
|
Amount in seconds to keep a database connection alive. Allow reuse of database
|
||||||
|
connections. For more information read the pertinent Django documentation
|
||||||
|
page: :django-docs:`Settings, CONN_MAX_AGE <ref/settings/#conn-max-age>`
|
||||||
|
According to new information Gunicorn's microthreads don't share connections
|
||||||
|
and will exhaust the available Postgres connections available if a number
|
||||||
|
other than 0 is used. Reference: https://serverfault.com/questions/635100/django-conn-max-age-persists-connections-but-doesnt-reuse-them-with-postgresq
|
||||||
|
and https://github.com/benoitc/gunicorn/issues/996
|
||||||
|
|
||||||
``MAYAN_GUNICORN_WORKERS``
|
``MAYAN_GUNICORN_WORKERS``
|
||||||
|
|
||||||
Optional. This environment variable controls the number of frontend workers
|
Optional. This environment variable controls the number of frontend workers
|
||||||
@@ -171,21 +269,12 @@ number of CPUs detected).
|
|||||||
Optional. Changes the UID of the ``mayan`` user internal to the Docker
|
Optional. Changes the UID of the ``mayan`` user internal to the Docker
|
||||||
container. Defaults to 1000.
|
container. Defaults to 1000.
|
||||||
|
|
||||||
``MAYAN_USER_GID``
|
``MAYAN_USER_GUID``
|
||||||
|
|
||||||
Optional. Changes the GID of the ``mayan`` user internal to the Docker
|
Optional. Changes the GUID of the ``mayan`` user internal to the Docker
|
||||||
container. Defaults to 1000.
|
container. Defaults to 1000.
|
||||||
|
|
||||||
|
|
||||||
Included drivers
|
|
||||||
----------------
|
|
||||||
|
|
||||||
The Docker image supports using Redis and RabbitMQ as result backends. For
|
|
||||||
databases, the image includes support for PostgreSQL and MySQL/MariaDB.
|
|
||||||
Support for additional brokers or databases may be added using the
|
|
||||||
``MAYAN_APT_INSTALL`` environment variable.
|
|
||||||
|
|
||||||
|
|
||||||
.. _docker-accessing-outside-data:
|
.. _docker-accessing-outside-data:
|
||||||
|
|
||||||
Accessing outside data
|
Accessing outside data
|
||||||
@@ -353,7 +442,6 @@ These are:
|
|||||||
|
|
||||||
Nightly images
|
Nightly images
|
||||||
==============
|
==============
|
||||||
|
|
||||||
The continuous integration pipeline used for testing development builds also
|
The continuous integration pipeline used for testing development builds also
|
||||||
produces a resulting Docker image. These are build automatically and their
|
produces a resulting Docker image. These are build automatically and their
|
||||||
stability is not guaranteed. They should never be used in production.
|
stability is not guaranteed. They should never be used in production.
|
||||||
|
|||||||
@@ -94,11 +94,11 @@ For the Docker image, launch a separate RabbitMQ container
|
|||||||
|
|
||||||
docker run -d --name mayan-edms-rabbitmq -e RABBITMQ_DEFAULT_USER=mayan -e RABBITMQ_DEFAULT_PASS=mayanrabbitmqpassword -e RABBITMQ_DEFAULT_VHOST=mayan rabbitmq:3
|
docker run -d --name mayan-edms-rabbitmq -e RABBITMQ_DEFAULT_USER=mayan -e RABBITMQ_DEFAULT_PASS=mayanrabbitmqpassword -e RABBITMQ_DEFAULT_VHOST=mayan rabbitmq:3
|
||||||
|
|
||||||
Pass the MAYAN_CELERY_BROKER_URL environment variable (https://kombu.readthedocs.io/en/latest/userguide/connections.html#connection-urls)
|
Pass the MAYAN_BROKER_URL environment variable (https://kombu.readthedocs.io/en/latest/userguide/connections.html#connection-urls)
|
||||||
to the Mayan EDMS container so that it uses the RabbitMQ container the
|
to the Mayan EDMS container so that it uses the RabbitMQ container the
|
||||||
message broker::
|
message broker::
|
||||||
|
|
||||||
-e MAYAN_CELERY_BROKER_URL="amqp://mayan:mayanrabbitmqpassword@localhost:5672/mayan",
|
-e MAYAN_BROKER_URL="amqp://mayan:mayanrabbitmqpassword@localhost:5672/mayan",
|
||||||
|
|
||||||
When tasks finish, they leave behind a return status or the result of a
|
When tasks finish, they leave behind a return status or the result of a
|
||||||
calculation, these are stored for a while so that whoever requested the
|
calculation, these are stored for a while so that whoever requested the
|
||||||
|
|||||||
@@ -15,8 +15,7 @@ The current document sources supported are:
|
|||||||
- IMAP email - Same as the ``POP3`` email source but for email accounts using
|
- IMAP email - Same as the ``POP3`` email source but for email accounts using
|
||||||
the ``IMAP`` protocol.
|
the ``IMAP`` protocol.
|
||||||
- Watch folder - A filesystem folder that is scanned periodically for files.
|
- Watch folder - A filesystem folder that is scanned periodically for files.
|
||||||
Any file in the watch folder is automatically uploaded. When the upload for a
|
Any file in the watch folder is automatically uploaded.
|
||||||
file is completed, the file is removed from source folder.
|
|
||||||
- Staging folder - Folder where networked attached scanned can save image
|
- Staging folder - Folder where networked attached scanned can save image
|
||||||
files. The files in these staging folders are scanned and a preview is
|
files. The files in these staging folders are scanned and a preview is
|
||||||
generated to help the process of upload. Staging folders and Watch folders
|
generated to help the process of upload. Staging folders and Watch folders
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ Changes
|
|||||||
GitLab issue #625. Thanks to Jesaja Everling (@jeverling)
|
GitLab issue #625. Thanks to Jesaja Everling (@jeverling)
|
||||||
for the report and the research.
|
for the report and the research.
|
||||||
|
|
||||||
|
|
||||||
Removals
|
Removals
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Version 3.2.4
|
Version 3.2.4
|
||||||
=============
|
=============
|
||||||
|
|
||||||
Released: June 29, 2019
|
Released: June XX, 2019
|
||||||
|
|
||||||
|
|
||||||
Changes
|
Changes
|
||||||
@@ -10,33 +10,6 @@ Changes
|
|||||||
- Support configurable GUnicorn timeouts. Defaults to
|
- Support configurable GUnicorn timeouts. Defaults to
|
||||||
current value of 120 seconds.
|
current value of 120 seconds.
|
||||||
- Fix help text of the platformtemplate command.
|
- Fix help text of the platformtemplate command.
|
||||||
- Fix IMAP4 mailbox.store flags argument. Python's documentation
|
|
||||||
incorrectly state it is named flag_list. Closes GitLab issue
|
|
||||||
#606. Thanks to Samuel Aebi (@samuelaebi) for the report and
|
|
||||||
debug information.
|
|
||||||
- Support configurable GUnicorn timeouts. Defaults to
|
|
||||||
current value of 120 seconds.
|
|
||||||
- Fix help text of the platformtemplate command.
|
|
||||||
- Fix IMAP4 mailbox.store flags argument. Python's documentation
|
|
||||||
incorrectly state it is named flag_list. Closes GitLab issue
|
|
||||||
#606.
|
|
||||||
- Improve the workflow preview generation. Use polylines
|
|
||||||
instead of splines. Add state actions to the preview.
|
|
||||||
Highlight the initial state.
|
|
||||||
- Add help text to the workflow transition form comment field.
|
|
||||||
- Fix direct deployment instructions.
|
|
||||||
- Add user, group, and role dashboard widgets.
|
|
||||||
- Add test mixin detect database connection leaks.
|
|
||||||
- Remove tag create event registration from the tag
|
|
||||||
instances. The tag create event is not applicable to
|
|
||||||
existing tags.
|
|
||||||
- Add proper redirection after moving a document to the
|
|
||||||
trash.
|
|
||||||
- Remove the INSTALLED_APPS setting. Replace it with
|
|
||||||
the new COMMON_EXTRA_APPS and COMMON_DISABLED_APPS.
|
|
||||||
- Improve email metadata support. Can now work on
|
|
||||||
email with nested parts. Also the metadata.yaml
|
|
||||||
attachment no longer needs to be the first attachment.
|
|
||||||
|
|
||||||
Removals
|
Removals
|
||||||
--------
|
--------
|
||||||
@@ -56,7 +29,7 @@ Remove deprecated requirements::
|
|||||||
|
|
||||||
Type in the console::
|
Type in the console::
|
||||||
|
|
||||||
$ pip install mayan-edms==3.2.4
|
$ pip install mayan-edms==3.2.3
|
||||||
|
|
||||||
the requirements will also be updated automatically.
|
the requirements will also be updated automatically.
|
||||||
|
|
||||||
@@ -95,7 +68,7 @@ variables values show here with your respective settings. This step will refresh
|
|||||||
the supervisord configuration file with the new queues and the latest
|
the supervisord configuration file with the new queues and the latest
|
||||||
recommended layout::
|
recommended layout::
|
||||||
|
|
||||||
sudo MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
|
MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
|
||||||
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
|
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
|
||||||
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
||||||
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf
|
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf
|
||||||
@@ -103,7 +76,7 @@ recommended layout::
|
|||||||
Edit the supervisord configuration file and update any setting the template
|
Edit the supervisord configuration file and update any setting the template
|
||||||
generator missed::
|
generator missed::
|
||||||
|
|
||||||
sudo vi /etc/supervisor/conf.d/mayan.conf
|
vi /etc/supervisor/conf.d/mayan.conf
|
||||||
|
|
||||||
Migrate existing database schema with::
|
Migrate existing database schema with::
|
||||||
|
|
||||||
@@ -125,7 +98,6 @@ Backward incompatible changes
|
|||||||
Bugs fixed or issues closed
|
Bugs fixed or issues closed
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
- :gitlab-issue:`606` Delete after IMAP Processing
|
|
||||||
- :gitlab-issue:`628` mailbox.user in POP3Email gets passed keyword argument, but only accepts "user" or positional argument
|
- :gitlab-issue:`628` mailbox.user in POP3Email gets passed keyword argument, but only accepts "user" or positional argument
|
||||||
|
|
||||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||||
|
|||||||
@@ -1,117 +0,0 @@
|
|||||||
Version 3.2.5
|
|
||||||
=============
|
|
||||||
|
|
||||||
Released: July 05, 2019
|
|
||||||
|
|
||||||
|
|
||||||
Changes
|
|
||||||
-------
|
|
||||||
|
|
||||||
- Don't error out if the EXTRA_APPS or the DISABLED_APPS settings
|
|
||||||
are set to blank.
|
|
||||||
- Update troubleshooting documentation topic.
|
|
||||||
- Add data migration to the file metadata app. Synchronizes the
|
|
||||||
document type settings model of existing document types.
|
|
||||||
- Fix cabinet and tags upload wizard steps missing some entries.
|
|
||||||
GitLab issue #632. Thanks to Matthias Urhahn (@d4rken) for the
|
|
||||||
report.
|
|
||||||
- Add alert when settings are changed and util the installation
|
|
||||||
is restarted. GitLab issue #605. Thanks to
|
|
||||||
Vikas Kedia (@vikaskedia) to the report.
|
|
||||||
- Update Django to version 1.11.22, PyYAML to version 5.1.1,
|
|
||||||
django-widget-tweaks to version 1.4.5, pathlib2 to version 2.3.4,
|
|
||||||
Werkzeug to version 0.15.4, django-extensions to version 2.1.9,
|
|
||||||
django-rosetta to version 0.9.3, psutil to version 5.6.3.
|
|
||||||
|
|
||||||
Removals
|
|
||||||
--------
|
|
||||||
|
|
||||||
- None
|
|
||||||
|
|
||||||
|
|
||||||
Upgrading from a previous version
|
|
||||||
---------------------------------
|
|
||||||
|
|
||||||
If installed via Python's PIP
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Remove deprecated requirements::
|
|
||||||
|
|
||||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
|
||||||
|
|
||||||
Type in the console::
|
|
||||||
|
|
||||||
$ pip install mayan-edms==3.2.5
|
|
||||||
|
|
||||||
the requirements will also be updated automatically.
|
|
||||||
|
|
||||||
|
|
||||||
Using Git
|
|
||||||
^^^^^^^^^
|
|
||||||
|
|
||||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
|
||||||
|
|
||||||
$ git reset --hard HEAD
|
|
||||||
$ git pull
|
|
||||||
|
|
||||||
otherwise download the compressed archived and uncompress it overriding the
|
|
||||||
existing installation.
|
|
||||||
|
|
||||||
Remove deprecated requirements::
|
|
||||||
|
|
||||||
$ pip uninstall -y -r removals.txt
|
|
||||||
|
|
||||||
Next upgrade/add the new requirements::
|
|
||||||
|
|
||||||
$ pip install --upgrade -r requirements.txt
|
|
||||||
|
|
||||||
|
|
||||||
Common steps
|
|
||||||
^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Perform these steps after updating the code from either step above.
|
|
||||||
|
|
||||||
Make a backup of your supervisord file::
|
|
||||||
|
|
||||||
sudo cp /etc/supervisor/conf.d/mayan.conf /etc/supervisor/conf.d/mayan.conf.bck
|
|
||||||
|
|
||||||
Update the supervisord configuration file. Replace the environment
|
|
||||||
variables values show here with your respective settings. This step will refresh
|
|
||||||
the supervisord configuration file with the new queues and the latest
|
|
||||||
recommended layout::
|
|
||||||
|
|
||||||
sudo MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
|
|
||||||
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
|
|
||||||
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
|
||||||
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf
|
|
||||||
|
|
||||||
Edit the supervisord configuration file and update any setting the template
|
|
||||||
generator missed::
|
|
||||||
|
|
||||||
sudo vi /etc/supervisor/conf.d/mayan.conf
|
|
||||||
|
|
||||||
Migrate existing database schema with::
|
|
||||||
|
|
||||||
$ mayan-edms.py performupgrade
|
|
||||||
|
|
||||||
Add new static media::
|
|
||||||
|
|
||||||
$ mayan-edms.py preparestatic --noinput
|
|
||||||
|
|
||||||
The upgrade procedure is now complete.
|
|
||||||
|
|
||||||
|
|
||||||
Backward incompatible changes
|
|
||||||
-----------------------------
|
|
||||||
|
|
||||||
- None
|
|
||||||
|
|
||||||
|
|
||||||
Bugs fixed or issues closed
|
|
||||||
---------------------------
|
|
||||||
|
|
||||||
- :gitlab-issue:`605` Project title fluctuates between default value and new value [Video]
|
|
||||||
- :gitlab-issue:`629` Cannot Upgrade to 3.2.X Docker Image
|
|
||||||
- :gitlab-issue:`632` Tags get lost when uploading through the webui
|
|
||||||
|
|
||||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
|
||||||
@@ -1,111 +0,0 @@
|
|||||||
Version 3.2.6
|
|
||||||
=============
|
|
||||||
|
|
||||||
Released: July 10, 2019
|
|
||||||
|
|
||||||
|
|
||||||
Changes
|
|
||||||
-------
|
|
||||||
|
|
||||||
- Remove the smart settings app * import. Following MERC 0005.
|
|
||||||
- Encode settings YAML before hashing. Avoids unicode issues with Python 3.
|
|
||||||
- Fix document icon used in the workflow runtime links.
|
|
||||||
- Add trashed date time label.
|
|
||||||
- Fix thumbnail generation issue. GitLab issue #637.
|
|
||||||
Thanks to Giacomo Cariello (@giacomocariello) for the report
|
|
||||||
and the merge request fixing the issue.
|
|
||||||
|
|
||||||
Removals
|
|
||||||
--------
|
|
||||||
|
|
||||||
- None
|
|
||||||
|
|
||||||
|
|
||||||
Upgrading from a previous version
|
|
||||||
---------------------------------
|
|
||||||
|
|
||||||
If installed via Python's PIP
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Remove deprecated requirements::
|
|
||||||
|
|
||||||
sudo -u mayan curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt -o /tmp/removals.txt && sudo -u mayan /opt/mayan-edms/bin/pip uninstall -y -r /tmp/removals.txt
|
|
||||||
|
|
||||||
Type in the console::
|
|
||||||
|
|
||||||
sudo -u mayan /opt/mayan-edms/bin/pip install mayan-edms==3.2.6
|
|
||||||
|
|
||||||
the requirements will also be updated automatically.
|
|
||||||
|
|
||||||
|
|
||||||
Using Git
|
|
||||||
^^^^^^^^^
|
|
||||||
|
|
||||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
|
||||||
|
|
||||||
$ git reset --hard HEAD
|
|
||||||
$ git pull
|
|
||||||
|
|
||||||
otherwise download the compressed archived and uncompress it overriding the
|
|
||||||
existing installation.
|
|
||||||
|
|
||||||
Remove deprecated requirements::
|
|
||||||
|
|
||||||
$ pip uninstall -y -r removals.txt
|
|
||||||
|
|
||||||
Next upgrade/add the new requirements::
|
|
||||||
|
|
||||||
$ pip install --upgrade -r requirements.txt
|
|
||||||
|
|
||||||
|
|
||||||
Common steps
|
|
||||||
^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Perform these steps after updating the code from either step above.
|
|
||||||
|
|
||||||
Make a backup of your supervisord file::
|
|
||||||
|
|
||||||
sudo cp /etc/supervisor/conf.d/mayan.conf /etc/supervisor/conf.d/mayan.conf.bck
|
|
||||||
|
|
||||||
Update the supervisord configuration file. Replace the environment
|
|
||||||
variables values show here with your respective settings. This step will refresh
|
|
||||||
the supervisord configuration file with the new queues and the latest
|
|
||||||
recommended layout::
|
|
||||||
|
|
||||||
sudo MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
|
|
||||||
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
|
|
||||||
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
|
||||||
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf
|
|
||||||
|
|
||||||
Edit the supervisord configuration file and update any setting the template
|
|
||||||
generator missed::
|
|
||||||
|
|
||||||
sudo vi /etc/supervisor/conf.d/mayan.conf
|
|
||||||
|
|
||||||
Migrate existing database schema with::
|
|
||||||
|
|
||||||
sudo -u mayan MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
|
|
||||||
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
|
|
||||||
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
|
||||||
/opt/mayan-edms/bin/mayan-edms.py performupgrade
|
|
||||||
|
|
||||||
Add new static media::
|
|
||||||
|
|
||||||
sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
|
||||||
/opt/mayan-edms/bin/mayan-edms.py preparestatic --noinput
|
|
||||||
|
|
||||||
The upgrade procedure is now complete.
|
|
||||||
|
|
||||||
|
|
||||||
Backward incompatible changes
|
|
||||||
-----------------------------
|
|
||||||
|
|
||||||
- None
|
|
||||||
|
|
||||||
|
|
||||||
Bugs fixed or issues closed
|
|
||||||
---------------------------
|
|
||||||
|
|
||||||
- :gitlab-issue:`637` Thumbnail generation bug
|
|
||||||
|
|
||||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
|
||||||
@@ -1,207 +0,0 @@
|
|||||||
Version 3.3
|
|
||||||
===========
|
|
||||||
|
|
||||||
Released: XX XX, 2019
|
|
||||||
|
|
||||||
|
|
||||||
Changes
|
|
||||||
-------
|
|
||||||
|
|
||||||
- Add support for icon shadows.
|
|
||||||
- Add icons and no-result template to the object error log view and
|
|
||||||
links.
|
|
||||||
- Use Select2 widget for the document type selection form.
|
|
||||||
- Backport the vertical main menu update. This update splits the previous
|
|
||||||
main menu into a new menu in the same location as the previous one
|
|
||||||
now called the top bar, and a new vertical main menu on the left side.
|
|
||||||
The vertical menu remain open even when clicking on items and upon
|
|
||||||
a browser refresh will also restore its state to match the selected
|
|
||||||
view.
|
|
||||||
- Backport workflow preview refactor. GitLab issue #532.
|
|
||||||
- Add support for source column inheritance.
|
|
||||||
- Add support for source column exclusion.
|
|
||||||
- Backport workflow context support.
|
|
||||||
- Backport workflow transitions field support.
|
|
||||||
- Backport workflow email action.
|
|
||||||
- Backport individual index rebuild support.
|
|
||||||
- Rename the installjavascript command to installdependencies.
|
|
||||||
- Remove database conversion command.
|
|
||||||
- Remove support for quoted configuration entries. Support unquoted,
|
|
||||||
nested dictionaries in the configuration. Requires manual
|
|
||||||
update of existing config.yml files.
|
|
||||||
- Support user specified locations for the configuration file with the
|
|
||||||
CONFIGURATION_FILEPATH (MAYAN_CONFIGURATION_FILEPATH environment variable), and
|
|
||||||
CONFIGURATION_LAST_GOOD_FILEPATH
|
|
||||||
(MAYAN_CONFIGURATION_LAST_GOOD_FILEPATH environment variable) settings.
|
|
||||||
- Move bootstrapped settings code to their own module in the smart_settings apps.
|
|
||||||
- Remove individual database configuration options. All database configuration
|
|
||||||
is now done using MAYAN_DATABASES to mirror Django way of doing database setup.
|
|
||||||
- Added support for YAML encoded environment variables to the platform
|
|
||||||
templates apps.
|
|
||||||
- Move YAML code to its own module. Code now resides in common.serialization
|
|
||||||
in the form of two new functions: yaml_load and yaml_dump.
|
|
||||||
- Move Django and Celery settings. Django settings now reside in the smart
|
|
||||||
settings app. Celery settings now reside in the task manager app.
|
|
||||||
- Backport FakeStorageSubclass from versions/next. Placeholder class to allow
|
|
||||||
serializing the real storage subclass to support migrations.
|
|
||||||
Used by all configurable storages.
|
|
||||||
- Support checking in and out multiple documents.
|
|
||||||
- Remove encapsulate helper.
|
|
||||||
- Add support for menu inheritance.
|
|
||||||
- Emphasize source column labels.
|
|
||||||
- Backport file cache manager app.
|
|
||||||
- Convert document image cache to use file cache manager app.
|
|
||||||
Add setting DOCUMENTS_CACHE_MAXIMUM_SIZE defaults to 500 MB.
|
|
||||||
- Update Celery to version 4.3.0. Settings changed:
|
|
||||||
MAYAN_BROKER_URL to MAYAN_CELERY_BROKER_URL,
|
|
||||||
MAYAN_CELERY_ALWAYS_EAGER to MAYAN_CELERY_TASK_ALWAYS_EAGER.
|
|
||||||
- Replace djcelery and replace it with django-celery-beat.
|
|
||||||
- Update Celery to version 4.3.0 with 55e9b2263cbdb9b449361412fd18d8ee0a442dd3
|
|
||||||
from versions/next, code from GitLab issue #594 and GitLab merge request !55.
|
|
||||||
Thanks to Jakob Haufe (@sur5r) and Jesaja Everling (@jeverling)
|
|
||||||
for much of the research and code updates.
|
|
||||||
- Support wildcard MIME type associations for the file metadata drivers.
|
|
||||||
- Rename MAYAN_GUID to MAYAN_GID
|
|
||||||
- Update Gunicorn to use sync workers.
|
|
||||||
- Include devpi-server as a development dependency.
|
|
||||||
- Update default Docker stack file.
|
|
||||||
- Remove Redis from the Docker image.
|
|
||||||
- Add Celery flower to the Docker image.
|
|
||||||
- Allow PIP proxying to the Docker image during build.
|
|
||||||
- Default Celery worker concurrency to 0 (auto).
|
|
||||||
- Set DJANGO_SETTINGS_MODULE environment variable to make it
|
|
||||||
available to sub processes.
|
|
||||||
- Add entrypoint commands to run single workers, single gunicorn
|
|
||||||
or single celery commands like "flower".
|
|
||||||
- Add platform template to return queues for a worker.
|
|
||||||
- Remove task inspection from task manager app.
|
|
||||||
- Move pagination navigation inside the toolbar.
|
|
||||||
- Remove document image clear link and view.
|
|
||||||
This is now handled by the file caching app.
|
|
||||||
- Add web links app.
|
|
||||||
- Add support to display column help text
|
|
||||||
as a tooltip.
|
|
||||||
- Update numeric dashboard widget to display
|
|
||||||
thousand commas.
|
|
||||||
- Add support for disabling document pages.
|
|
||||||
|
|
||||||
Removals
|
|
||||||
--------
|
|
||||||
|
|
||||||
- Database conversion. Reason for removal. The database conversions support
|
|
||||||
provided by this feature (SQLite to PostgreSQL) was being confused with
|
|
||||||
database migrations and upgrades.
|
|
||||||
|
|
||||||
Database upgrades are the responsibility of the app and the framework.
|
|
||||||
Database conversions however are not the responsibility of the app (Mayan),
|
|
||||||
they are the responsibility of the framework.
|
|
||||||
|
|
||||||
Database conversion is outside the scope of what Mayan does but we added
|
|
||||||
the code, management command, instructions and testing setup to provide
|
|
||||||
this to our users until the framework (Django) decided to add this
|
|
||||||
themselves (like they did with migrations).
|
|
||||||
|
|
||||||
Continued confusion about the purpose of the feature and confusion about
|
|
||||||
how errors with this feature were a reflexion of the code quality of
|
|
||||||
Mayannecessitated the removal of the database conversion feature.
|
|
||||||
|
|
||||||
- Django environ
|
|
||||||
|
|
||||||
|
|
||||||
Upgrading from a previous version
|
|
||||||
---------------------------------
|
|
||||||
|
|
||||||
If installed via Python's PIP
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Remove deprecated requirements::
|
|
||||||
|
|
||||||
sudo -u mayan curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt -o /tmp/removals.txt && sudo -u mayan /opt/mayan-edms/bin/pip uninstall -y -r /tmp/removals.txt
|
|
||||||
|
|
||||||
Type in the console::
|
|
||||||
|
|
||||||
/opt/mayan-edms/bin/pip install mayan-edms==3.3
|
|
||||||
|
|
||||||
the requirements will also be updated automatically.
|
|
||||||
|
|
||||||
|
|
||||||
Using Git
|
|
||||||
^^^^^^^^^
|
|
||||||
|
|
||||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
|
||||||
|
|
||||||
git reset --hard HEAD
|
|
||||||
git pull
|
|
||||||
|
|
||||||
otherwise download the compressed archived and uncompress it overriding the
|
|
||||||
existing installation.
|
|
||||||
|
|
||||||
Remove deprecated requirements::
|
|
||||||
|
|
||||||
pip uninstall -y -r removals.txt
|
|
||||||
|
|
||||||
Next upgrade/add the new requirements::
|
|
||||||
|
|
||||||
pip install --upgrade -r requirements.txt
|
|
||||||
|
|
||||||
|
|
||||||
Common steps
|
|
||||||
^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Perform these steps after updating the code from either step above.
|
|
||||||
|
|
||||||
Make a backup of your supervisord file::
|
|
||||||
|
|
||||||
sudo cp /etc/supervisor/conf.d/mayan.conf /etc/supervisor/conf.d/mayan.conf.bck
|
|
||||||
|
|
||||||
Update the supervisord configuration file. Replace the environment
|
|
||||||
variables values show here with your respective settings. This step will refresh
|
|
||||||
the supervisord configuration file with the new queues and the latest
|
|
||||||
recommended layout::
|
|
||||||
|
|
||||||
sudo MAYAN_DATABASES="{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayanuserpass','USER':'mayan','HOST':'127.0.0.1'}}" \
|
|
||||||
MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
|
||||||
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf
|
|
||||||
|
|
||||||
Edit the supervisord configuration file and update any setting the template
|
|
||||||
generator missed::
|
|
||||||
|
|
||||||
sudo vi /etc/supervisor/conf.d/mayan.conf
|
|
||||||
|
|
||||||
Migrate existing database schema with::
|
|
||||||
|
|
||||||
sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media /opt/mayan-edms/bin/mayan-edms.py performupgrade
|
|
||||||
|
|
||||||
Add new static media::
|
|
||||||
|
|
||||||
sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media /opt/mayan-edms/bin/mayan-edms.py preparestatic --noinput
|
|
||||||
|
|
||||||
The upgrade procedure is now complete.
|
|
||||||
|
|
||||||
|
|
||||||
Backward incompatible changes
|
|
||||||
-----------------------------
|
|
||||||
|
|
||||||
- Update quoted settings to be unquoted:
|
|
||||||
|
|
||||||
- COMMON_SHARED_STORAGE_ARGUMENTS
|
|
||||||
- CONVERTER_GRAPHICS_BACKEND_ARGUMENTS
|
|
||||||
- DOCUMENTS_CACHE_STORAGE_BACKEND_ARGUMENTS
|
|
||||||
- DOCUMENTS_STORAGE_BACKEND_ARGUMENTS
|
|
||||||
- FILE_METADATA_DRIVERS_ARGUMENTS
|
|
||||||
- SIGNATURES_STORAGE_BACKEND_ARGUMENTS
|
|
||||||
|
|
||||||
|
|
||||||
Bugs fixed or issues closed
|
|
||||||
---------------------------
|
|
||||||
|
|
||||||
- :gitlab-issue:`526` RuntimeWarning: Never call result.get() within a task!
|
|
||||||
- :gitlab-issue:`532` Workflow preview isn't updated right after transitions are modified
|
|
||||||
- :gitlab-issue:`540` hint-outdated/update documentation
|
|
||||||
- :gitlab-issue:`594` 3.2b1: Unable to install/run under Python 3.5/3.6/3.7
|
|
||||||
- :gitlab-issue:`634` Failing docker entrypoint when using secret config
|
|
||||||
- :gitlab-issue:`635` Build a docker image for Python3
|
|
||||||
- :gitlab-issue:`644` Update sane-utils package in docker image.
|
|
||||||
|
|
||||||
|
|
||||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
|
||||||
@@ -20,9 +20,6 @@ versions of the documentation contain the release notes for any later releases.
|
|||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
3.3
|
|
||||||
3.2.6
|
|
||||||
3.2.5
|
|
||||||
3.2.4
|
3.2.4
|
||||||
3.2.3
|
3.2.3
|
||||||
3.2.2
|
3.2.2
|
||||||
|
|||||||
@@ -168,16 +168,3 @@ files to a temporary directory on the same partition as the watchfolder first.
|
|||||||
Then move the files to the watchfolder. The move will be executed as an atomic
|
Then move the files to the watchfolder. The move will be executed as an atomic
|
||||||
operation and will prevent the files to be uploaded in the middle of the
|
operation and will prevent the files to be uploaded in the middle of the
|
||||||
copying process.
|
copying process.
|
||||||
|
|
||||||
************
|
|
||||||
Dependencies
|
|
||||||
************
|
|
||||||
|
|
||||||
Error: ``unable to execute 'x86_64-linux-gnu-gcc': No such file or directory``
|
|
||||||
==============================================================================
|
|
||||||
|
|
||||||
This happens when using the ``MAYAN_APT_INSTALLS`` feature. It means that the
|
|
||||||
``GCC`` package is required to compile the packages specified with
|
|
||||||
``MAYAN_APT_INSTALLS``.
|
|
||||||
|
|
||||||
Solution: Include ``gcc`` in the list of packages specified with ``MAYAN_APT_INSTALLS``.
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
__title__ = 'Mayan EDMS'
|
__title__ = 'Mayan EDMS'
|
||||||
__version__ = '3.2.6'
|
__version__ = '3.2.3'
|
||||||
__build__ = 0x030206
|
__build__ = 0x030203
|
||||||
__build_string__ = 'v3.2.6-68-gab601f9180_Wed Jul 17 04:30:11 2019 -0400'
|
__build_string__ = 'v3.2.3_Fri Jun 21 00:01:37 2019 -0400'
|
||||||
__django_version__ = '1.11'
|
__django_version__ = '1.11'
|
||||||
__author__ = 'Roberto Rosario'
|
__author__ = 'Roberto Rosario'
|
||||||
__author_email__ = 'roberto.rosario@mayan-edms.com'
|
__author_email__ = 'roberto.rosario@mayan-edms.com'
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ logger = logging.getLogger(__name__)
|
|||||||
class ModelPermission(object):
|
class ModelPermission(object):
|
||||||
_functions = {}
|
_functions = {}
|
||||||
_inheritances = {}
|
_inheritances = {}
|
||||||
_manager_names = {}
|
|
||||||
_registry = {}
|
_registry = {}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@@ -98,24 +97,6 @@ class ModelPermission(object):
|
|||||||
def get_inheritance(cls, model):
|
def get_inheritance(cls, model):
|
||||||
return cls._inheritances[model]
|
return cls._inheritances[model]
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def get_manager(cls, model):
|
|
||||||
try:
|
|
||||||
manager_name = cls.get_manager_name(model=model)
|
|
||||||
except KeyError:
|
|
||||||
manager_name = None
|
|
||||||
|
|
||||||
if manager_name:
|
|
||||||
manager = getattr(model, manager_name)
|
|
||||||
else:
|
|
||||||
manager = model._meta.default_manager
|
|
||||||
|
|
||||||
return manager
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def get_manager_name(cls, model):
|
|
||||||
return cls._manager_names[model]
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def register_function(cls, model, function):
|
def register_function(cls, model, function):
|
||||||
cls._functions[model] = function
|
cls._functions[model] = function
|
||||||
@@ -123,7 +104,3 @@ class ModelPermission(object):
|
|||||||
@classmethod
|
@classmethod
|
||||||
def register_inheritance(cls, model, related):
|
def register_inheritance(cls, model, related):
|
||||||
cls._inheritances[model] = related
|
cls._inheritances[model] = related
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def register_manager(cls, model, manager_name):
|
|
||||||
cls._manager_names[model] = manager_name
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Arabic (http://www.transifex.com/rosarior/mayan-edms/language/ar/)\n"
|
"Language-Team: Arabic (http://www.transifex.com/rosarior/mayan-edms/language/ar/)\n"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Bulgarian (http://www.transifex.com/rosarior/mayan-edms/language/bg/)\n"
|
"Language-Team: Bulgarian (http://www.transifex.com/rosarior/mayan-edms/language/bg/)\n"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Bosnian (Bosnia and Herzegovina) (http://www.transifex.com/rosarior/mayan-edms/language/bs_BA/)\n"
|
"Language-Team: Bosnian (Bosnia and Herzegovina) (http://www.transifex.com/rosarior/mayan-edms/language/bs_BA/)\n"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Czech (http://www.transifex.com/rosarior/mayan-edms/language/cs/)\n"
|
"Language-Team: Czech (http://www.transifex.com/rosarior/mayan-edms/language/cs/)\n"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Danish (Denmark) (http://www.transifex.com/rosarior/mayan-edms/language/da_DK/)\n"
|
"Language-Team: Danish (Denmark) (http://www.transifex.com/rosarior/mayan-edms/language/da_DK/)\n"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: German (Germany) (http://www.transifex.com/rosarior/mayan-edms/language/de_DE/)\n"
|
"Language-Team: German (Germany) (http://www.transifex.com/rosarior/mayan-edms/language/de_DE/)\n"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Greek (http://www.transifex.com/rosarior/mayan-edms/language/el/)\n"
|
"Language-Team: Greek (http://www.transifex.com/rosarior/mayan-edms/language/el/)\n"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:51+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:51+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Spanish (http://www.transifex.com/rosarior/mayan-edms/language/es/)\n"
|
"Language-Team: Spanish (http://www.transifex.com/rosarior/mayan-edms/language/es/)\n"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Persian (http://www.transifex.com/rosarior/mayan-edms/language/fa/)\n"
|
"Language-Team: Persian (http://www.transifex.com/rosarior/mayan-edms/language/fa/)\n"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: French (http://www.transifex.com/rosarior/mayan-edms/language/fr/)\n"
|
"Language-Team: French (http://www.transifex.com/rosarior/mayan-edms/language/fr/)\n"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Hungarian (http://www.transifex.com/rosarior/mayan-edms/language/hu/)\n"
|
"Language-Team: Hungarian (http://www.transifex.com/rosarior/mayan-edms/language/hu/)\n"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Indonesian (http://www.transifex.com/rosarior/mayan-edms/language/id/)\n"
|
"Language-Team: Indonesian (http://www.transifex.com/rosarior/mayan-edms/language/id/)\n"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Italian (http://www.transifex.com/rosarior/mayan-edms/language/it/)\n"
|
"Language-Team: Italian (http://www.transifex.com/rosarior/mayan-edms/language/it/)\n"
|
||||||
|
|||||||
Binary file not shown.
@@ -8,9 +8,9 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-28 11:16+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Māris Teivāns <maris.teivans@gmail.com>\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Latvian (http://www.transifex.com/rosarior/mayan-edms/language/lv/)\n"
|
"Language-Team: Latvian (http://www.transifex.com/rosarior/mayan-edms/language/lv/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -185,7 +185,7 @@ msgstr "Lomas, kuru piekļuve tiks mainīta."
|
|||||||
#: workflow_actions.py:52 workflow_actions.py:167
|
#: workflow_actions.py:52 workflow_actions.py:167
|
||||||
msgid ""
|
msgid ""
|
||||||
"Permissions to grant/revoke to/from the role for the object selected above."
|
"Permissions to grant/revoke to/from the role for the object selected above."
|
||||||
msgstr "Atļaujas piešķirt/atsaukt iepriekš atlasītā objekta lomu."
|
msgstr "Atļaujas piešķirt / atsaukt iepriekš atlasītā objekta lomu."
|
||||||
|
|
||||||
#: workflow_actions.py:60
|
#: workflow_actions.py:60
|
||||||
msgid "Grant access"
|
msgid "Grant access"
|
||||||
@@ -197,8 +197,8 @@ msgstr "Atsaukt piekļuvi"
|
|||||||
|
|
||||||
#: workflow_actions.py:175
|
#: workflow_actions.py:175
|
||||||
msgid "Grant document access"
|
msgid "Grant document access"
|
||||||
msgstr "Piešķirt piekļuvi dokumentam"
|
msgstr ""
|
||||||
|
|
||||||
#: workflow_actions.py:214
|
#: workflow_actions.py:214
|
||||||
msgid "Revoke document access"
|
msgid "Revoke document access"
|
||||||
msgstr "Atsaukt piekļuvi dokumentam"
|
msgstr ""
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Dutch (Netherlands) (http://www.transifex.com/rosarior/mayan-edms/language/nl_NL/)\n"
|
"Language-Team: Dutch (Netherlands) (http://www.transifex.com/rosarior/mayan-edms/language/nl_NL/)\n"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Polish (http://www.transifex.com/rosarior/mayan-edms/language/pl/)\n"
|
"Language-Team: Polish (http://www.transifex.com/rosarior/mayan-edms/language/pl/)\n"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Portuguese (http://www.transifex.com/rosarior/mayan-edms/language/pt/)\n"
|
"Language-Team: Portuguese (http://www.transifex.com/rosarior/mayan-edms/language/pt/)\n"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/rosarior/mayan-edms/language/pt_BR/)\n"
|
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/rosarior/mayan-edms/language/pt_BR/)\n"
|
||||||
|
|||||||
Binary file not shown.
@@ -8,9 +8,9 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-18 15:35+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Harald Ersch\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Romanian (Romania) (http://www.transifex.com/rosarior/mayan-edms/language/ro_RO/)\n"
|
"Language-Team: Romanian (Romania) (http://www.transifex.com/rosarior/mayan-edms/language/ro_RO/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -197,8 +197,8 @@ msgstr "Revocă acces"
|
|||||||
|
|
||||||
#: workflow_actions.py:175
|
#: workflow_actions.py:175
|
||||||
msgid "Grant document access"
|
msgid "Grant document access"
|
||||||
msgstr "Acordați acces la documente"
|
msgstr ""
|
||||||
|
|
||||||
#: workflow_actions.py:214
|
#: workflow_actions.py:214
|
||||||
msgid "Revoke document access"
|
msgid "Revoke document access"
|
||||||
msgstr "Revocați accesul la documente"
|
msgstr ""
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Russian (http://www.transifex.com/rosarior/mayan-edms/language/ru/)\n"
|
"Language-Team: Russian (http://www.transifex.com/rosarior/mayan-edms/language/ru/)\n"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Slovenian (Slovenia) (http://www.transifex.com/rosarior/mayan-edms/language/sl_SI/)\n"
|
"Language-Team: Slovenian (Slovenia) (http://www.transifex.com/rosarior/mayan-edms/language/sl_SI/)\n"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Turkish (Turkey) (http://www.transifex.com/rosarior/mayan-edms/language/tr_TR/)\n"
|
"Language-Team: Turkish (Turkey) (http://www.transifex.com/rosarior/mayan-edms/language/tr_TR/)\n"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Vietnamese (Viet Nam) (http://www.transifex.com/rosarior/mayan-edms/language/vi_VN/)\n"
|
"Language-Team: Vietnamese (Viet Nam) (http://www.transifex.com/rosarior/mayan-edms/language/vi_VN/)\n"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Chinese (http://www.transifex.com/rosarior/mayan-edms/language/zh/)\n"
|
"Language-Team: Chinese (http://www.transifex.com/rosarior/mayan-edms/language/zh/)\n"
|
||||||
|
|||||||
@@ -200,26 +200,28 @@ class AccessControlListManager(models.Manager):
|
|||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
def check_access(self, obj, permissions, user):
|
def check_access(self, obj, permissions, user, manager=None):
|
||||||
# Allow specific managers for models that have more than one
|
# Allow specific managers for models that have more than one
|
||||||
# for example the Document model when checking for access for a trashed
|
# for example the Document model when checking for access for a trashed
|
||||||
# document.
|
# document.
|
||||||
|
|
||||||
meta = getattr(obj, '_meta', None)
|
if manager:
|
||||||
|
|
||||||
if not meta:
|
|
||||||
logger.debug(
|
|
||||||
ugettext(
|
|
||||||
'Object "%s" is not a model and cannot be checked for '
|
|
||||||
'access.'
|
|
||||||
) % force_text(obj)
|
|
||||||
)
|
|
||||||
return True
|
|
||||||
else:
|
|
||||||
manager = ModelPermission.get_manager(model=obj._meta.model)
|
|
||||||
source_queryset = manager.all()
|
source_queryset = manager.all()
|
||||||
|
else:
|
||||||
|
meta = getattr(obj, '_meta', None)
|
||||||
|
|
||||||
restricted_queryset = manager.none()
|
if not meta:
|
||||||
|
logger.debug(
|
||||||
|
ugettext(
|
||||||
|
'Object "%s" is not a model and cannot be checked for '
|
||||||
|
'access.'
|
||||||
|
) % force_text(obj)
|
||||||
|
)
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
source_queryset = obj._meta.default_manager.all()
|
||||||
|
|
||||||
|
restricted_queryset = obj._meta.default_manager.none()
|
||||||
for permission in permissions:
|
for permission in permissions:
|
||||||
# Default relationship betweens permissions is OR
|
# Default relationship betweens permissions is OR
|
||||||
# TODO: Add support for AND relationship
|
# TODO: Add support for AND relationship
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ from django.template.loader import get_template
|
|||||||
|
|
||||||
|
|
||||||
class IconDriver(object):
|
class IconDriver(object):
|
||||||
context = {}
|
|
||||||
_registry = {}
|
_registry = {}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@@ -15,17 +14,6 @@ class IconDriver(object):
|
|||||||
def register(cls, driver_class):
|
def register(cls, driver_class):
|
||||||
cls._registry[driver_class.name] = driver_class
|
cls._registry[driver_class.name] = driver_class
|
||||||
|
|
||||||
def get_context(self):
|
|
||||||
return self.context
|
|
||||||
|
|
||||||
def render(self, extra_context=None):
|
|
||||||
context = self.get_context()
|
|
||||||
if extra_context:
|
|
||||||
context.update(extra_context)
|
|
||||||
return get_template(template_name=self.template_name).render(
|
|
||||||
context=context
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
class FontAwesomeDriver(IconDriver):
|
class FontAwesomeDriver(IconDriver):
|
||||||
name = 'fontawesome'
|
name = 'fontawesome'
|
||||||
@@ -34,8 +22,10 @@ class FontAwesomeDriver(IconDriver):
|
|||||||
def __init__(self, symbol):
|
def __init__(self, symbol):
|
||||||
self.symbol = symbol
|
self.symbol = symbol
|
||||||
|
|
||||||
def get_context(self):
|
def render(self):
|
||||||
return {'symbol': self.symbol}
|
return get_template(template_name=self.template_name).render(
|
||||||
|
context={'symbol': self.symbol}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class FontAwesomeDualDriver(IconDriver):
|
class FontAwesomeDualDriver(IconDriver):
|
||||||
@@ -46,21 +36,23 @@ class FontAwesomeDualDriver(IconDriver):
|
|||||||
self.primary_symbol = primary_symbol
|
self.primary_symbol = primary_symbol
|
||||||
self.secondary_symbol = secondary_symbol
|
self.secondary_symbol = secondary_symbol
|
||||||
|
|
||||||
def get_context(self):
|
def render(self):
|
||||||
return {
|
return get_template(template_name=self.template_name).render(
|
||||||
'data': (
|
context={
|
||||||
{
|
'data': (
|
||||||
'class': 'fas fa-circle',
|
{
|
||||||
'transform': 'down-3 right-10',
|
'class': 'fas fa-circle',
|
||||||
'mask': 'fas fa-{}'.format(self.primary_symbol)
|
'transform': 'down-3 right-10',
|
||||||
},
|
'mask': 'fas fa-{}'.format(self.primary_symbol)
|
||||||
{'class': 'far fa-circle', 'transform': 'down-3 right-10'},
|
},
|
||||||
{
|
{'class': 'far fa-circle', 'transform': 'down-3 right-10'},
|
||||||
'class': 'fas fa-{}'.format(self.secondary_symbol),
|
{
|
||||||
'transform': 'shrink-4 down-3 right-10'
|
'class': 'fas fa-{}'.format(self.secondary_symbol),
|
||||||
},
|
'transform': 'shrink-4 down-3 right-10'
|
||||||
)
|
},
|
||||||
}
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class FontAwesomeCSSDriver(IconDriver):
|
class FontAwesomeCSSDriver(IconDriver):
|
||||||
@@ -70,8 +62,10 @@ class FontAwesomeCSSDriver(IconDriver):
|
|||||||
def __init__(self, css_classes):
|
def __init__(self, css_classes):
|
||||||
self.css_classes = css_classes
|
self.css_classes = css_classes
|
||||||
|
|
||||||
def get_context(self):
|
def render(self):
|
||||||
return {'css_classes': self.css_classes}
|
return get_template(template_name=self.template_name).render(
|
||||||
|
context={'css_classes': self.css_classes}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class FontAwesomeMasksDriver(IconDriver):
|
class FontAwesomeMasksDriver(IconDriver):
|
||||||
@@ -81,23 +75,23 @@ class FontAwesomeMasksDriver(IconDriver):
|
|||||||
def __init__(self, data):
|
def __init__(self, data):
|
||||||
self.data = data
|
self.data = data
|
||||||
|
|
||||||
def get_context(self):
|
def render(self):
|
||||||
return {'data': self.data}
|
return get_template(template_name=self.template_name).render(
|
||||||
|
context={'data': self.data}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class FontAwesomeLayersDriver(IconDriver):
|
class FontAwesomeLayersDriver(IconDriver):
|
||||||
name = 'fontawesome-layers'
|
name = 'fontawesome-layers'
|
||||||
template_name = 'appearance/icons/font_awesome_layers.html'
|
template_name = 'appearance/icons/font_awesome_layers.html'
|
||||||
|
|
||||||
def __init__(self, data, shadow_class=None):
|
def __init__(self, data):
|
||||||
self.data = data
|
self.data = data
|
||||||
self.shadow_class = shadow_class
|
|
||||||
|
|
||||||
def get_context(self):
|
def render(self):
|
||||||
return {
|
return get_template(template_name=self.template_name).render(
|
||||||
'data': self.data,
|
context={'data': self.data}
|
||||||
'shadow_class': self.shadow_class,
|
)
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
class Icon(object):
|
class Icon(object):
|
||||||
|
|||||||
Binary file not shown.
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Arabic (http://www.transifex.com/rosarior/mayan-edms/language/ar/)\n"
|
"Language-Team: Arabic (http://www.transifex.com/rosarior/mayan-edms/language/ar/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -181,22 +181,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "الإجراءات"
|
msgstr "الإجراءات"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Bulgarian (http://www.transifex.com/rosarior/mayan-edms/language/bg/)\n"
|
"Language-Team: Bulgarian (http://www.transifex.com/rosarior/mayan-edms/language/bg/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -181,22 +181,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Действия"
|
msgstr "Действия"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -8,8 +8,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Bosnian (Bosnia and Herzegovina) (http://www.transifex.com/rosarior/mayan-edms/language/bs_BA/)\n"
|
"Language-Team: Bosnian (Bosnia and Herzegovina) (http://www.transifex.com/rosarior/mayan-edms/language/bs_BA/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -182,22 +182,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Upozorenje"
|
msgstr "Upozorenje"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Akcije"
|
msgstr "Akcije"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Toggle Dropdown"
|
msgstr "Toggle Dropdown"
|
||||||
|
|||||||
Binary file not shown.
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Czech (http://www.transifex.com/rosarior/mayan-edms/language/cs/)\n"
|
"Language-Team: Czech (http://www.transifex.com/rosarior/mayan-edms/language/cs/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -181,22 +181,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -8,8 +8,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Danish (Denmark) (http://www.transifex.com/rosarior/mayan-edms/language/da_DK/)\n"
|
"Language-Team: Danish (Denmark) (http://www.transifex.com/rosarior/mayan-edms/language/da_DK/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -182,22 +182,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Advarelse"
|
msgstr "Advarelse"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -11,8 +11,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: German (Germany) (http://www.transifex.com/rosarior/mayan-edms/language/de_DE/)\n"
|
"Language-Team: German (Germany) (http://www.transifex.com/rosarior/mayan-edms/language/de_DE/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -185,22 +185,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr "\nMachen Sie dieses Projekt bekannt. Berichten Sie Ihren Freunden und Kollegen, wie angenehm die Arbeit mit %(project_title)s ist!\n Folgen Sie uns auf <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a>, oder <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>\n "
|
msgstr "\nMachen Sie dieses Projekt bekannt. Berichten Sie Ihren Freunden und Kollegen, wie angenehm die Arbeit mit %(project_title)s ist!\n Folgen Sie uns auf <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a>, oder <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>\n "
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Warnung"
|
msgstr "Warnung"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Aktionen"
|
msgstr "Aktionen"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Ausklappmenü ein-/ausschalten"
|
msgstr "Ausklappmenü ein-/ausschalten"
|
||||||
|
|||||||
Binary file not shown.
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Greek (http://www.transifex.com/rosarior/mayan-edms/language/el/)\n"
|
"Language-Team: Greek (http://www.transifex.com/rosarior/mayan-edms/language/el/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -181,22 +181,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Ενέργειες"
|
msgstr "Ενέργειες"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@@ -203,22 +203,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -8,8 +8,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 06:49+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Spanish (http://www.transifex.com/rosarior/mayan-edms/language/es/)\n"
|
"Language-Team: Spanish (http://www.transifex.com/rosarior/mayan-edms/language/es/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -182,22 +182,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr "\n Riega la voz. ¡Habla con tus amigos y colegas sobre lo increíble que es %(project_title)s!\n Síguenos en <a class=\"new_window\" href=\"https://twitter.com/mayanedms\"> Twitter %(icon_social_twitter)s </a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\"> Facebook %(icon_social_facebook)s </a> o <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\"> Instagram %(icon_social_instagram)s </a>\n "
|
msgstr "\n Riega la voz. ¡Habla con tus amigos y colegas sobre lo increíble que es %(project_title)s!\n Síguenos en <a class=\"new_window\" href=\"https://twitter.com/mayanedms\"> Twitter %(icon_social_twitter)s </a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\"> Facebook %(icon_social_facebook)s </a> o <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\"> Instagram %(icon_social_instagram)s </a>\n "
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Advertencia"
|
msgstr "Advertencia"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr "Configuraciones actualizadas, reinicie su instalación para que los cambios tengas efecto."
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Acciones"
|
msgstr "Acciones"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Alternar desplegable"
|
msgstr "Alternar desplegable"
|
||||||
|
|||||||
Binary file not shown.
@@ -8,8 +8,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Persian (http://www.transifex.com/rosarior/mayan-edms/language/fa/)\n"
|
"Language-Team: Persian (http://www.transifex.com/rosarior/mayan-edms/language/fa/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -182,22 +182,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "عملیات"
|
msgstr "عملیات"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "تغییر وضعیت dropdown"
|
msgstr "تغییر وضعیت dropdown"
|
||||||
|
|||||||
Binary file not shown.
@@ -6,15 +6,14 @@
|
|||||||
# Christophe CHAUVET <christophe.chauvet@gmail.com>, 2017
|
# Christophe CHAUVET <christophe.chauvet@gmail.com>, 2017
|
||||||
# Frédéric Escudero <frederic.escudero@gmail.com>, 2017
|
# Frédéric Escudero <frederic.escudero@gmail.com>, 2017
|
||||||
# Frédéric Sheedy <sheedf@gmail.com>, 2019
|
# Frédéric Sheedy <sheedf@gmail.com>, 2019
|
||||||
# Frédéric Sheedy <sheedf@gmail.com>, 2019
|
|
||||||
# Thierry Schott <DarkDare@users.noreply.github.com>, 2016
|
# Thierry Schott <DarkDare@users.noreply.github.com>, 2016
|
||||||
# Yves Dubois <ydubois@gmail.com>, 2018
|
# Yves Dubois <ydubois@gmail.com>, 2018
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: French (http://www.transifex.com/rosarior/mayan-edms/language/fr/)\n"
|
"Language-Team: French (http://www.transifex.com/rosarior/mayan-edms/language/fr/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -29,7 +28,7 @@ msgstr "Apparence"
|
|||||||
|
|
||||||
#: dependencies.py:10
|
#: dependencies.py:10
|
||||||
msgid "Lato font"
|
msgid "Lato font"
|
||||||
msgstr "Police d'écriture Lato"
|
msgstr ""
|
||||||
|
|
||||||
#: dependencies.py:14
|
#: dependencies.py:14
|
||||||
msgid "Bootstrap"
|
msgid "Bootstrap"
|
||||||
@@ -187,22 +186,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr "\n Faites passer le mot. Parlez à vos amis et vos collègues de comment %(project_title)s est génial!\n Suivez-nous sur <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a> ou <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>\n "
|
msgstr "\n Faites passer le mot. Parlez à vos amis et vos collègues de comment %(project_title)s est génial!\n Suivez-nous sur <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a> ou <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>\n "
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Avertissement"
|
msgstr "Avertissement"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Actions"
|
msgstr "Actions"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Activer la liste déroulante"
|
msgstr "Activer la liste déroulante"
|
||||||
|
|||||||
Binary file not shown.
@@ -8,8 +8,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Hungarian (http://www.transifex.com/rosarior/mayan-edms/language/hu/)\n"
|
"Language-Team: Hungarian (http://www.transifex.com/rosarior/mayan-edms/language/hu/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -182,22 +182,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Műveletek"
|
msgstr "Műveletek"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Indonesian (http://www.transifex.com/rosarior/mayan-edms/language/id/)\n"
|
"Language-Team: Indonesian (http://www.transifex.com/rosarior/mayan-edms/language/id/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -181,22 +181,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Aksi"
|
msgstr "Aksi"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -10,8 +10,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Italian (http://www.transifex.com/rosarior/mayan-edms/language/it/)\n"
|
"Language-Team: Italian (http://www.transifex.com/rosarior/mayan-edms/language/it/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -184,22 +184,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr "\nDiffondi il verbo. Dillo ai tuoi amici e colleghi quanto è bello %(project_title)s!\nSeguici su <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a> o <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>"
|
msgstr "\nDiffondi il verbo. Dillo ai tuoi amici e colleghi quanto è bello %(project_title)s!\nSeguici su <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a> o <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>"
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Attenzione"
|
msgstr "Attenzione"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Azioni "
|
msgstr "Azioni "
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Apri dropdown"
|
msgstr "Apri dropdown"
|
||||||
|
|||||||
Binary file not shown.
@@ -8,8 +8,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Latvian (http://www.transifex.com/rosarior/mayan-edms/language/lv/)\n"
|
"Language-Team: Latvian (http://www.transifex.com/rosarior/mayan-edms/language/lv/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -24,7 +24,7 @@ msgstr "Izskats"
|
|||||||
|
|
||||||
#: dependencies.py:10
|
#: dependencies.py:10
|
||||||
msgid "Lato font"
|
msgid "Lato font"
|
||||||
msgstr "Lato fonts"
|
msgstr ""
|
||||||
|
|
||||||
#: dependencies.py:14
|
#: dependencies.py:14
|
||||||
msgid "Bootstrap"
|
msgid "Bootstrap"
|
||||||
@@ -182,22 +182,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr "\nIzplatiet vārdu. Runājiet ar saviem draugiem un kolēģiem par to, cik lielisks %(project_title)s ir! Sekojiet mums <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a> , <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a> vai <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>"
|
msgstr "\nIzplatiet vārdu. Runājiet ar saviem draugiem un kolēģiem par to, cik lielisks %(project_title)s ir! Sekojiet mums <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a> , <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a> vai <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram %(icon_social_instagram)s</a>"
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Brīdinājums"
|
msgstr "Brīdinājums"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Darbības"
|
msgstr "Darbības"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Toggle Dropdown"
|
msgstr "Toggle Dropdown"
|
||||||
|
|||||||
Binary file not shown.
@@ -10,8 +10,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Dutch (Netherlands) (http://www.transifex.com/rosarior/mayan-edms/language/nl_NL/)\n"
|
"Language-Team: Dutch (Netherlands) (http://www.transifex.com/rosarior/mayan-edms/language/nl_NL/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -184,22 +184,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Waarschuwing"
|
msgstr "Waarschuwing"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Acties"
|
msgstr "Acties"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Toggle Dropdown"
|
msgstr "Toggle Dropdown"
|
||||||
|
|||||||
Binary file not shown.
@@ -10,8 +10,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Polish (http://www.transifex.com/rosarior/mayan-edms/language/pl/)\n"
|
"Language-Team: Polish (http://www.transifex.com/rosarior/mayan-edms/language/pl/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -184,22 +184,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Ostrzeżenie"
|
msgstr "Ostrzeżenie"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Akcje"
|
msgstr "Akcje"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Rozwiń listę"
|
msgstr "Rozwiń listę"
|
||||||
|
|||||||
Binary file not shown.
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Portuguese (http://www.transifex.com/rosarior/mayan-edms/language/pt/)\n"
|
"Language-Team: Portuguese (http://www.transifex.com/rosarior/mayan-edms/language/pt/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -181,22 +181,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Ações"
|
msgstr "Ações"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
Binary file not shown.
@@ -10,8 +10,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Mayan EDMS\n"
|
"Project-Id-Version: Mayan EDMS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2019-07-05 01:27-0400\n"
|
"POT-Creation-Date: 2019-06-15 03:35-0400\n"
|
||||||
"PO-Revision-Date: 2019-07-05 05:33+0000\n"
|
"PO-Revision-Date: 2019-06-15 07:48+0000\n"
|
||||||
"Last-Translator: Roberto Rosario\n"
|
"Last-Translator: Roberto Rosario\n"
|
||||||
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/rosarior/mayan-edms/language/pt_BR/)\n"
|
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/rosarior/mayan-edms/language/pt_BR/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -184,22 +184,16 @@ msgid ""
|
|||||||
" "
|
" "
|
||||||
msgstr "\n\nEspalhe a palavra! Fale com seus amigos e colegas sobre como o %(project_title)s é incrível!\nSiga-nos no <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a>, ou <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram%(icon_social_instagram)s</a>"
|
msgstr "\n\nEspalhe a palavra! Fale com seus amigos e colegas sobre como o %(project_title)s é incrível!\nSiga-nos no <a class=\"new_window\" href=\"https://twitter.com/mayanedms\">Twitter %(icon_social_twitter)s</a>, <a class=\"new_window\" href=\"https://www.facebook.com/MayanEDMS/\">Facebook %(icon_social_facebook)s</a>, ou <a class=\"new_window\" href=\"https://www.instagram.com/mayan_edms/\">Instagram%(icon_social_instagram)s</a>"
|
||||||
|
|
||||||
#: templates/appearance/base.html:32 templates/appearance/base.html:42
|
#: templates/appearance/base.html:32
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Advertência"
|
msgstr "Advertência"
|
||||||
|
|
||||||
#: templates/appearance/base.html:42
|
#: templates/appearance/base.html:51
|
||||||
msgid ""
|
|
||||||
"Settings updated, restart your installation for changes to take proper "
|
|
||||||
"effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: templates/appearance/base.html:59
|
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:104
|
#: templates/appearance/generic_list_items_subtemplate.html:104
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr "Ações"
|
msgstr "Ações"
|
||||||
|
|
||||||
#: templates/appearance/base.html:61
|
#: templates/appearance/base.html:53
|
||||||
#: templates/appearance/generic_list_items_subtemplate.html:106
|
#: templates/appearance/generic_list_items_subtemplate.html:106
|
||||||
msgid "Toggle Dropdown"
|
msgid "Toggle Dropdown"
|
||||||
msgstr "Mostrar/esconder menu"
|
msgstr "Mostrar/esconder menu"
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user