Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -23,23 +23,23 @@ Initialize a ``virtualenv`` to deploy the project:
|
||||
$ source venv/bin/activate
|
||||
$ pip install mayan-edms==1.0.rc1
|
||||
|
||||
By default **Mayan EDMS** will create a single file SQLite_ database which makes
|
||||
is very easy to start using **Mayan EDMS**. Populate the database with the project's schema doing:
|
||||
By default **Mayan EDMS** will create a single file SQLite_ database, which makes
|
||||
it very easy to start using **Mayan EDMS**. Populate the database with the project's schema doing:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ mayan-edms.py initialsetup
|
||||
$ mayan-edms.py runserver
|
||||
|
||||
Point your browser to http://127:0.0.1:8000, if everything was installed
|
||||
Point your browser to http://127.0.0.1:8000. If everything was installed
|
||||
correctly you should see the login screen and panel showing a randomly generated admin password.
|
||||
|
||||
|
||||
Production use
|
||||
--------------
|
||||
|
||||
To create a custom settings file for **Mayan EDMS**, create your a Python (.py) file
|
||||
in the directory: venv/mayan/settings/ with the following basic content::
|
||||
To create a custom settings file for **Mayan EDMS**, create a Python (.py) file
|
||||
in the directory: venv/lib/python2.7/site-packages/mayan/settings/ with the following basic content::
|
||||
|
||||
# my_settings.py
|
||||
|
||||
@@ -49,7 +49,7 @@ in the directory: venv/mayan/settings/ with the following basic content::
|
||||
|
||||
<Your customized settings>
|
||||
|
||||
Then test your settings launch **Mayan EDMS** use::
|
||||
To test your settings launch **Mayan EDMS** using::
|
||||
|
||||
$ mayan-edms runserver --settings=mayan.settings.my_settings
|
||||
|
||||
@@ -63,8 +63,8 @@ Other database managers
|
||||
-----------------------
|
||||
|
||||
If you want to use a database manager other than SQLite_ install any
|
||||
corresponding python database drivers and create a settings_local.py file
|
||||
with the corresponding database settings as shown here: https://docs.djangoproject.com/en/1.6/ref/settings/#std:setting-DATABASES
|
||||
corresponding python database drivers and add the corresponding database settings
|
||||
to your settings file (see above) as shown here: https://docs.djangoproject.com/en/1.6/ref/settings/#std:setting-DATABASES
|
||||
|
||||
|
||||
.. _`vendor lock-in`: https://secure.wikimedia.org/wikipedia/en/wiki/Vendor_lock-in
|
||||
|
||||
@@ -165,4 +165,4 @@ class FileDisplayForm(forms.Form):
|
||||
|
||||
class LicenseForm(FileDisplayForm):
|
||||
FILENAME = u'LICENSE'
|
||||
DIRECTORY = [u'..']
|
||||
DIRECTORY = []
|
||||
|
||||
@@ -13,7 +13,7 @@ import sh
|
||||
|
||||
try:
|
||||
from sh import lsb_release, uname
|
||||
except sh.CommandNotFound:
|
||||
except ImportError:
|
||||
LSB = False
|
||||
else:
|
||||
LSB = True
|
||||
|
||||
@@ -7,15 +7,12 @@ from . import BackendBase
|
||||
|
||||
|
||||
class LanguageBackend(BackendBase):
|
||||
def check_word(word):
|
||||
def check_word(self, word):
|
||||
ALL_ALPHANUM = re.compile('([0-9a-zäöüß])', re.I)
|
||||
NON_ALPHANUM = re.compile('([^0-9a-zäöüß])', re.I)
|
||||
ALL_ALPHANUM = re.compile('([0-9a-z])', re.I)
|
||||
NON_ALPHANUM = re.compile('([^0-9a-z])', re.I)
|
||||
|
||||
TOO_MANY_VOWELS = re.compile('[aäeioöuü]{4}', re.I)
|
||||
TOO_MANY_CONSONANTS = re.compile('[bcdfghjklmnpqrstvwxyz]{4}', re.I)
|
||||
ALL_ALPHA = re.compile('^[a-z]+$', re.I)
|
||||
# SINGLE_LETTER_WORDS = re.compile('^$', re.I)
|
||||
|
||||
#(L) If a string is longer than 40 characters, it is considered as garbage
|
||||
|
||||
@@ -12,7 +12,6 @@ class LanguageBackend(BackendBase):
|
||||
|
||||
TOO_MANY_VOWELS = re.compile('[aeiou]{3}', re.I)
|
||||
TOO_MANY_CONSONANTS = re.compile('[bcdfghjklmnpqrstvwxyz]{5}', re.I)
|
||||
ALL_ALPHA = re.compile('^[a-z]+$', re.I)
|
||||
SINGLE_LETTER_WORDS = re.compile('^[ai]$', re.I)
|
||||
|
||||
# (L) If a string is longer than 20 characters, it is garbage
|
||||
|
||||
43
mayan/apps/ocr/lang/fra.py
Normal file
43
mayan/apps/ocr/lang/fra.py
Normal file
@@ -0,0 +1,43 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from __future__ import absolute_import
|
||||
|
||||
import re
|
||||
|
||||
from . import BackendBase
|
||||
|
||||
|
||||
class LanguageBackend(BackendBase):
|
||||
def check_word(self, word):
|
||||
ALL_ALPHANUM = re.compile('([0-9a-záéíóúüñ])', re.I)
|
||||
NON_ALPHANUM = re.compile('([^0-9a-záéíóúüñ])', re.I)
|
||||
|
||||
TOO_MANY_VOWELS = re.compile('[aáeéiíoóuúü]{3}', re.I)
|
||||
TOO_MANY_CONSONANTS = re.compile('[bcdfghjklmnñpqrstvwxyz]{5}', re.I)
|
||||
SINGLE_LETTER_WORDS = re.compile('^[aeoóuy]$', re.I)
|
||||
|
||||
#(L) If a string is longer than 20 characters, it is garbage
|
||||
if len(word) > 20:
|
||||
return None
|
||||
|
||||
#(A) If a string’s ratio of alphanumeric characters to total
|
||||
#characters is less than 50%, the string is garbage
|
||||
if len(ALL_ALPHANUM.findall(word)) < len(word) / 2:
|
||||
return None
|
||||
|
||||
#Remove word if all the letters in the word are non alphanumeric
|
||||
if len(NON_ALPHANUM.findall(word)) == len(word):
|
||||
return None
|
||||
|
||||
#Removed words with too many consecutie vowels
|
||||
if TOO_MANY_VOWELS.findall(word):
|
||||
return None
|
||||
|
||||
#Removed words with too many consecutie consonants
|
||||
if TOO_MANY_CONSONANTS.findall(word):
|
||||
return None
|
||||
|
||||
#Only allow specific single letter words
|
||||
if len(word) == 1 and not SINGLE_LETTER_WORDS.findall(word):
|
||||
return None
|
||||
|
||||
return word
|
||||
@@ -13,7 +13,6 @@ class LanguageBackend(BackendBase):
|
||||
|
||||
TOO_MANY_VOWELS = re.compile('[ёуеыаоэяию]{3}', re.I)
|
||||
TOO_MANY_CONSONANTS = re.compile('[йцкнгшщзхъфвпрлджчсмтьб{5}', re.I)
|
||||
ALL_ALPHA = re.compile('^[ёйцукенгшщзхъфывапролджэячсмитьбю]+$', re.I)
|
||||
SINGLE_LETTER_WORDS = re.compile('^[уквояси]$', re.I)
|
||||
|
||||
# (L) If a string is longer than 25 characters, it is garbage
|
||||
|
||||
@@ -13,7 +13,6 @@ class LanguageBackend(BackendBase):
|
||||
|
||||
TOO_MANY_VOWELS = re.compile('[aáeéiíoóuúü]{3}', re.I)
|
||||
TOO_MANY_CONSONANTS = re.compile('[bcdfghjklmnñpqrstvwxyz]{5}', re.I)
|
||||
ALL_ALPHA = re.compile('^[a-z]+$', re.I)
|
||||
SINGLE_LETTER_WORDS = re.compile('^[aeoóuy]$', re.I)
|
||||
|
||||
# (L) If a string is longer than 20 characters, it is garbage
|
||||
|
||||
@@ -8,7 +8,7 @@ https://docs.djangoproject.com/en/1.6/howto/deployment/wsgi/
|
||||
"""
|
||||
|
||||
import os
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mayan.settings")
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mayan.settings.local")
|
||||
|
||||
from django.core.wsgi import get_wsgi_application
|
||||
application = get_wsgi_application()
|
||||
|
||||
Reference in New Issue
Block a user