Switch to full app paths

Instead of inserting the path of the apps into the Python app,
the apps are now referenced by their full import path.

This solves name clashes with external or native Python libraries.
Example: Mayan statistics app vs. Python new statistics library.

Every app reference is now prepended with 'mayan.apps'.

Existing config.yml files need to be updated manually.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
Roberto Rosario
2018-12-05 02:00:52 -04:00
parent 382173351a
commit 36a51eeb73
467 changed files with 1169 additions and 1114 deletions

View File

@@ -2,4 +2,4 @@ from __future__ import unicode_literals
from .classes import ModelPermission # NOQA from .classes import ModelPermission # NOQA
default_app_config = 'acls.apps.ACLsApp' default_app_config = 'mayan.apps.acls.apps.ACLsApp'

View File

@@ -2,16 +2,18 @@ from __future__ import unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common import MayanAppConfig, menu_object, menu_sidebar from mayan.apps.common import MayanAppConfig, menu_object, menu_sidebar
from navigation import SourceColumn from mayan.apps.navigation import SourceColumn
from .links import link_acl_create, link_acl_delete, link_acl_permissions from .links import link_acl_create, link_acl_delete, link_acl_permissions
class ACLsApp(MayanAppConfig): class ACLsApp(MayanAppConfig):
app_namespace = 'acls'
app_url = 'acls'
has_rest_api = True has_rest_api = True
has_tests = True has_tests = True
name = 'acls' name = 'mayan.apps.acls'
verbose_name = _('ACLs') verbose_name = _('ACLs')
def ready(self): def ready(self):

View File

@@ -1,6 +1,6 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
from appearance.classes import Icon from mayan.apps.appearance.classes import Icon
icon_acl_list = Icon(driver_name='fontawesome', symbol='lock') icon_acl_list = Icon(driver_name='fontawesome', symbol='lock')
icon_acl_new = Icon(driver_name='fontawesome', symbol='plus') icon_acl_new = Icon(driver_name='fontawesome', symbol='plus')

View File

@@ -3,7 +3,7 @@ from __future__ import unicode_literals
from django.apps import apps from django.apps import apps
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation import Link from mayan.apps.navigation import Link
from .icons import icon_acl_list, icon_acl_new from .icons import icon_acl_list, icon_acl_new
from .permissions import permission_acl_view, permission_acl_edit from .permissions import permission_acl_view, permission_acl_edit

View File

@@ -9,9 +9,9 @@ from django.db.models import Q
from django.utils.encoding import force_text from django.utils.encoding import force_text
from django.utils.translation import ugettext from django.utils.translation import ugettext
from common.utils import return_attrib, return_related from mayan.apps.common.utils import return_attrib, return_related
from permissions import Permission from mayan.apps.permissions import Permission
from permissions.models import StoredPermission from mayan.apps.permissions.models import StoredPermission
from .exceptions import PermissionNotValidForClass from .exceptions import PermissionNotValidForClass
from .classes import ModelPermission from .classes import ModelPermission

View File

@@ -8,7 +8,7 @@ from django.db import models
from django.utils.encoding import force_text, python_2_unicode_compatible from django.utils.encoding import force_text, python_2_unicode_compatible
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from permissions.models import Role, StoredPermission from mayan.apps.permissions.models import Role, StoredPermission
from .managers import AccessControlListManager from .managers import AccessControlListManager

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from permissions import PermissionNamespace from mayan.apps.permissions import PermissionNamespace
namespace = PermissionNamespace('acls', _('Access control lists')) namespace = PermissionNamespace('acls', _('Access control lists'))

View File

@@ -9,10 +9,10 @@ from rest_framework import serializers
from rest_framework.exceptions import ValidationError from rest_framework.exceptions import ValidationError
from rest_framework.reverse import reverse from rest_framework.reverse import reverse
from common.serializers import ContentTypeSerializer from mayan.apps.common.serializers import ContentTypeSerializer
from permissions import Permission from mayan.apps.permissions import Permission
from permissions.models import Role, StoredPermission from mayan.apps.permissions.models import Role, StoredPermission
from permissions.serializers import PermissionSerializer, RoleSerializer from mayan.apps.permissions.serializers import PermissionSerializer, RoleSerializer
from .models import AccessControlList from .models import AccessControlList

View File

@@ -3,11 +3,11 @@ from __future__ import unicode_literals
from django.contrib.auth import get_user_model from django.contrib.auth import get_user_model
from django.contrib.auth.models import Group from django.contrib.auth.models import Group
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from permissions.models import Role from mayan.apps.permissions.models import Role
from permissions.tests.literals import TEST_ROLE_LABEL from mayan.apps.permissions.tests.literals import TEST_ROLE_LABEL
from permissions.tests.mixins import RoleTestCaseMixin from mayan.apps.permissions.tests.mixins import RoleTestCaseMixin
from user_management.tests.literals import ( from mayan.apps.user_management.tests.literals import (
TEST_ADMIN_PASSWORD, TEST_ADMIN_USERNAME, TEST_ADMIN_EMAIL, TEST_ADMIN_PASSWORD, TEST_ADMIN_USERNAME, TEST_ADMIN_EMAIL,
TEST_GROUP_NAME, TEST_USER_EMAIL, TEST_USER_USERNAME, TEST_USER_PASSWORD TEST_GROUP_NAME, TEST_USER_EMAIL, TEST_USER_USERNAME, TEST_USER_PASSWORD
) )

View File

@@ -2,8 +2,8 @@ from __future__ import unicode_literals
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from document_states.tests.test_actions import ActionTestCase from mayan.apps.document_states.tests.test_actions import ActionTestCase
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from ..workflow_actions import GrantAccessAction, RevokeAccessAction from ..workflow_actions import GrantAccessAction, RevokeAccessAction

View File

@@ -5,10 +5,10 @@ from django.test import override_settings
from rest_framework import status from rest_framework import status
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from documents.tests import DocumentTestMixin from mayan.apps.documents.tests import DocumentTestMixin
from permissions.tests.literals import TEST_ROLE_LABEL from mayan.apps.permissions.tests.literals import TEST_ROLE_LABEL
from rest_api.tests import BaseAPITestCase from mayan.apps.rest_api.tests import BaseAPITestCase
from ..models import AccessControlList from ..models import AccessControlList
from ..permissions import permission_acl_view from ..permissions import permission_acl_view

View File

@@ -3,7 +3,7 @@ from __future__ import unicode_literals
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from django.urls import reverse from django.urls import reverse
from documents.tests import GenericDocumentViewTestCase from mayan.apps.documents.tests import GenericDocumentViewTestCase
from ..links import ( from ..links import (
link_acl_delete, link_acl_list, link_acl_create, link_acl_permissions link_acl_delete, link_acl_list, link_acl_create, link_acl_permissions

View File

@@ -3,10 +3,10 @@ from __future__ import absolute_import, unicode_literals
from django.core.exceptions import PermissionDenied from django.core.exceptions import PermissionDenied
from django.test import override_settings from django.test import override_settings
from common.tests import BaseTestCase from mayan.apps.common.tests import BaseTestCase
from documents.models import Document, DocumentType from mayan.apps.documents.models import Document, DocumentType
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from documents.tests import ( from mayan.apps.documents.tests import (
TEST_SMALL_DOCUMENT_PATH, TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH, TEST_DOCUMENT_TYPE_LABEL,
TEST_DOCUMENT_TYPE_2_LABEL TEST_DOCUMENT_TYPE_2_LABEL
) )

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from documents.tests import GenericDocumentViewTestCase from mayan.apps.documents.tests import GenericDocumentViewTestCase
from ..models import AccessControlList from ..models import AccessControlList
from ..permissions import permission_acl_edit, permission_acl_view from ..permissions import permission_acl_edit, permission_acl_view

View File

@@ -11,12 +11,12 @@ from django.urls import reverse
from django.utils.encoding import force_text from django.utils.encoding import force_text
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.views import ( from mayan.apps.common.views import (
AssignRemoveView, SingleObjectCreateView, SingleObjectDeleteView, AssignRemoveView, SingleObjectCreateView, SingleObjectDeleteView,
SingleObjectListView SingleObjectListView
) )
from permissions import PermissionNamespace, Permission from mayan.apps.permissions import PermissionNamespace, Permission
from permissions.models import StoredPermission from mayan.apps.permissions.models import StoredPermission
from .classes import ModelPermission from .classes import ModelPermission
from .icons import icon_acl_list from .icons import icon_acl_list

View File

@@ -7,10 +7,10 @@ from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from document_states.classes import WorkflowAction from mayan.apps.document_states.classes import WorkflowAction
from permissions.classes import Permission from mayan.apps.permissions.classes import Permission
from permissions.models import Role from mayan.apps.permissions.models import Role
from .classes import ModelPermission from .classes import ModelPermission
from .permissions import permission_acl_edit from .permissions import permission_acl_edit

View File

@@ -1,3 +1,3 @@
from __future__ import unicode_literals from __future__ import unicode_literals
default_app_config = 'appearance.apps.AppearanceApp' default_app_config = 'mayan.apps.appearance.apps.AppearanceApp'

View File

@@ -2,13 +2,13 @@ from __future__ import unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common import MayanAppConfig from mayan.apps.common import MayanAppConfig
from .licenses import * # NOQA from .licenses import * # NOQA
class AppearanceApp(MayanAppConfig): class AppearanceApp(MayanAppConfig):
name = 'appearance' name = 'mayan.apps.appearance'
verbose_name = _('Appearance') verbose_name = _('Appearance')
def ready(self): def ready(self):

View File

@@ -1,6 +1,6 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from common.classes import Package from mayan.apps.common.classes import Package
Package(label='Bootstrap', license_text=''' Package(label='Bootstrap', license_text='''
The MIT License (MIT) The MIT License (MIT)

View File

@@ -2,7 +2,7 @@ from __future__ import unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from smart_settings import Namespace from mayan.apps.smart_settings import Namespace
from .literals import DEFAULT_MAXIMUM_TITLE_LENGTH from .literals import DEFAULT_MAXIMUM_TITLE_LENGTH

View File

@@ -60,14 +60,14 @@
{% smart_setting 'COMMON_PROJECT_TITLE' as setting_project_title %} {% smart_setting 'COMMON_PROJECT_TITLE' as setting_project_title %}
{% project_information '__title__' as project_title %} {% project_information '__title__' as project_title %}
{% get_icon 'common.icons.icon_documentation' as icon_documentation %} {% get_icon 'mayan.apps.common.icons.icon_documentation' as icon_documentation %}
{% get_icon 'common.icons.icon_forum' as icon_forum %} {% get_icon 'mayan.apps.common.icons.icon_forum' as icon_forum %}
{% get_icon 'common.icons.icon_social_facebook' as icon_social_facebook %} {% get_icon 'mayan.apps.common.icons.icon_social_facebook' as icon_social_facebook %}
{% get_icon 'common.icons.icon_social_paypal' as icon_social_paypal %} {% get_icon 'mayan.apps.common.icons.icon_social_paypal' as icon_social_paypal %}
{% get_icon 'common.icons.icon_social_twitter' as icon_social_twitter %} {% get_icon 'mayan.apps.common.icons.icon_social_twitter' as icon_social_twitter %}
{% get_icon 'common.icons.icon_social_instagram' as icon_social_instagram %} {% get_icon 'mayan.apps.common.icons.icon_social_instagram' as icon_social_instagram %}
{% get_icon 'common.icons.icon_source_code' as icon_source_code %} {% get_icon 'mayan.apps.common.icons.icon_source_code' as icon_source_code %}
{% get_icon 'common.icons.icon_wiki' as icon_wiki %} {% get_icon 'mayan.apps.common.icons.icon_wiki' as icon_wiki %}
<div class="well"> <div class="well">
<h3 class="text-center">{{ setting_project_title }}</h3> <h3 class="text-center">{{ setting_project_title }}</h3>

View File

@@ -1,7 +1,7 @@
{% load common_tags %} {% load common_tags %}
{% load navigation_tags %} {% load navigation_tags %}
{% if link|get_type == "<class 'navigation.classes.Menu'>" %} {% if link|get_type == "<class 'mayan.apps.navigation.classes.Menu'>" %}
<li class="dropdown"> <li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="true"> <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="true">
{% if link.icon %} {% if link.icon %}

View File

@@ -1,3 +1,3 @@
from __future__ import unicode_literals from __future__ import unicode_literals
default_app_config = 'authentication.apps.AuthenticationApp' default_app_config = 'mayan.apps.authentication.apps.AuthenticationApp'

View File

@@ -4,8 +4,8 @@ import logging
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common import MayanAppConfig, menu_user from mayan.apps.common import MayanAppConfig, menu_user
from navigation.classes import Separator from mayan.apps.navigation.classes import Separator
from .links import link_logout, link_password_change from .links import link_logout, link_password_change
@@ -13,8 +13,10 @@ logger = logging.getLogger(__name__)
class AuthenticationApp(MayanAppConfig): class AuthenticationApp(MayanAppConfig):
app_namespace = 'authentication'
app_url = 'authentication'
has_tests = True has_tests = True
name = 'authentication' name = 'mayan.apps.authentication'
verbose_name = _('Authentication') verbose_name = _('Authentication')
def ready(self): def ready(self):

View File

@@ -7,7 +7,7 @@ from django.contrib.auth import authenticate
from django.contrib.auth.forms import AuthenticationForm from django.contrib.auth.forms import AuthenticationForm
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.widgets import EmailInput from mayan.apps.common.widgets import EmailInput
class EmailAuthenticationForm(forms.Form): class EmailAuthenticationForm(forms.Form):

View File

@@ -1,6 +1,6 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
from appearance.classes import Icon from mayan.apps.appearance.classes import Icon
icon_logout = Icon(driver_name='fontawesome', symbol='sign-out-alt') icon_logout = Icon(driver_name='fontawesome', symbol='sign-out-alt')
icon_password_change = Icon(driver_name='fontawesome', symbol='key') icon_password_change = Icon(driver_name='fontawesome', symbol='key')

View File

@@ -2,7 +2,7 @@ from __future__ import unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation import Link from mayan.apps.navigation import Link
from .icons import icon_logout, icon_password_change from .icons import icon_logout, icon_password_change

View File

@@ -2,7 +2,7 @@ from __future__ import unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from smart_settings import Namespace from mayan.apps.smart_settings import Namespace
from .literals import DEFAULT_LOGIN_METHOD, DEFAULT_MAXIMUM_SESSION_LENGTH from .literals import DEFAULT_LOGIN_METHOD, DEFAULT_MAXIMUM_SESSION_LENGTH

View File

@@ -1,3 +1,3 @@
from __future__ import unicode_literals from __future__ import unicode_literals
TEST_EMAIL_AUTHENTICATION_BACKEND = 'authentication.auth.email_auth_backend.EmailAuthBackend' TEST_EMAIL_AUTHENTICATION_BACKEND = 'mayan.apps.authentication.auth.email_auth_backend.EmailAuthBackend'

View File

@@ -5,9 +5,9 @@ from django.core import mail
from django.test import override_settings from django.test import override_settings
from django.urls import reverse from django.urls import reverse
from common.tests import GenericViewTestCase from mayan.apps.common.tests import GenericViewTestCase
from smart_settings.classes import Namespace from mayan.apps.smart_settings.classes import Namespace
from user_management.tests.literals import ( from mayan.apps.user_management.tests.literals import (
TEST_ADMIN_EMAIL, TEST_ADMIN_PASSWORD, TEST_USER_PASSWORD_EDITED, TEST_ADMIN_EMAIL, TEST_ADMIN_PASSWORD, TEST_USER_PASSWORD_EDITED,
TEST_ADMIN_USERNAME TEST_ADMIN_USERNAME
) )

View File

@@ -15,8 +15,8 @@ from django.utils.translation import ugettext_lazy as _
from stronghold.decorators import public from stronghold.decorators import public
from common.settings import setting_project_title, setting_project_url
import mayan import mayan
from mayan.apps.common.settings import setting_project_title, setting_project_url
from .forms import EmailAuthenticationForm, UsernameAuthenticationForm from .forms import EmailAuthenticationForm, UsernameAuthenticationForm
from .settings import setting_login_method, setting_maximum_session_length from .settings import setting_login_method, setting_maximum_session_length

View File

@@ -1,3 +1,3 @@
from __future__ import unicode_literals from __future__ import unicode_literals
default_app_config = 'cabinets.apps.CabinetsApp' default_app_config = 'mayan.apps.cabinets.apps.CabinetsApp'

View File

@@ -5,11 +5,11 @@ from django.shortcuts import get_object_or_404
from rest_framework import generics from rest_framework import generics
from rest_framework.response import Response from rest_framework.response import Response
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from documents.models import Document from mayan.apps.documents.models import Document
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from rest_api.filters import MayanObjectPermissionsFilter from mayan.apps.rest_api.filters import MayanObjectPermissionsFilter
from rest_api.permissions import MayanPermission from mayan.apps.rest_api.permissions import MayanPermission
from .models import Cabinet from .models import Cabinet
from .permissions import ( from .permissions import (

View File

@@ -3,14 +3,14 @@ from __future__ import unicode_literals
from django.apps import apps from django.apps import apps
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from acls import ModelPermission from mayan.apps.acls import ModelPermission
from acls.permissions import permission_acl_edit, permission_acl_view from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
from common import ( from mayan.apps.common import (
MayanAppConfig, menu_facet, menu_main, menu_multi_item, menu_object, MayanAppConfig, menu_facet, menu_main, menu_multi_item, menu_object,
menu_sidebar menu_sidebar
) )
from documents.search import document_page_search, document_search from mayan.apps.documents.search import document_page_search, document_search
from navigation import SourceColumn from mayan.apps.navigation import SourceColumn
from .links import ( from .links import (
link_cabinet_list, link_document_cabinet_list, link_cabinet_list, link_document_cabinet_list,
@@ -30,9 +30,11 @@ from .widgets import widget_document_cabinets
class CabinetsApp(MayanAppConfig): class CabinetsApp(MayanAppConfig):
app_namespace = 'cabinets'
app_url = 'cabinets'
has_rest_api = True has_rest_api = True
has_tests = True has_tests = True
name = 'cabinets' name = 'mayan.apps.cabinets'
verbose_name = _('Cabinets') verbose_name = _('Cabinets')
def ready(self): def ready(self):

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from events import EventTypeNamespace from mayan.apps.events import EventTypeNamespace
namespace = EventTypeNamespace(name='cabinets', label=_('Cabinets')) namespace = EventTypeNamespace(name='cabinets', label=_('Cabinets'))

View File

@@ -5,7 +5,7 @@ import logging
from django import forms from django import forms
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from .models import Cabinet from .models import Cabinet

View File

@@ -1,6 +1,6 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
from appearance.classes import Icon from mayan.apps.appearance.classes import Icon
icon_cabinet = Icon(driver_name='fontawesome', symbol='columns') icon_cabinet = Icon(driver_name='fontawesome', symbol='columns')
icon_cabinet_add = Icon(driver_name='fontawesome', symbol='plus') icon_cabinet_add = Icon(driver_name='fontawesome', symbol='plus')

View File

@@ -4,9 +4,9 @@ import copy
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from acls.links import link_acl_list from mayan.apps.acls.links import link_acl_list
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from navigation import Link, get_cascade_condition from mayan.apps.navigation import Link, get_cascade_condition
from .icons import ( from .icons import (
icon_cabinet_add, icon_cabinet_child_add, icon_cabinet_create, icon_cabinet_add, icon_cabinet_child_add, icon_cabinet_create,

View File

@@ -2,7 +2,7 @@ from __future__ import unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation import Menu, get_cascade_condition from mayan.apps.navigation import Menu, get_cascade_condition
from .icons import icon_cabinet_list from .icons import icon_cabinet_list
from .permissions import permission_cabinet_create, permission_cabinet_view from .permissions import permission_cabinet_create, permission_cabinet_view

View File

@@ -9,9 +9,9 @@ from django.utils.translation import ugettext_lazy as _
from mptt.fields import TreeForeignKey from mptt.fields import TreeForeignKey
from mptt.models import MPTTModel from mptt.models import MPTTModel
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from documents.models import Document from mayan.apps.documents.models import Document
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from .events import event_cabinets_add_document, event_cabinets_remove_document from .events import event_cabinets_add_document, event_cabinets_remove_document
from .search import cabinet_search # NOQA from .search import cabinet_search # NOQA

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from permissions import PermissionNamespace from mayan.apps.permissions import PermissionNamespace
namespace = PermissionNamespace('cabinets', _('Cabinets')) namespace = PermissionNamespace('cabinets', _('Cabinets'))

View File

@@ -2,14 +2,14 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from dynamic_search.classes import SearchModel from mayan.apps.dynamic_search.classes import SearchModel
from .permissions import permission_cabinet_view from .permissions import permission_cabinet_view
cabinet_search = SearchModel( cabinet_search = SearchModel(
app_label='cabinets', model_name='Cabinet', app_label='cabinets', model_name='Cabinet',
permission=permission_cabinet_view, permission=permission_cabinet_view,
serializer_string='cabinets.serializers.CabinetSerializer' serializer_string='mayan.apps.cabinets.serializers.CabinetSerializer'
) )
cabinet_search.add_model_field( cabinet_search.add_model_field(

View File

@@ -6,11 +6,10 @@ from django.utils.translation import ugettext_lazy as _
from rest_framework import serializers from rest_framework import serializers
from rest_framework.reverse import reverse from rest_framework.reverse import reverse
from rest_framework.settings import api_settings from rest_framework.settings import api_settings
from rest_framework_recursive.fields import RecursiveField from rest_framework_recursive.fields import RecursiveField
from documents.models import Document from mayan.apps.documents.models import Document
from documents.serializers import DocumentSerializer from mayan.apps.documents.serializers import DocumentSerializer
from .models import Cabinet from .models import Cabinet

View File

@@ -8,8 +8,8 @@ from django.utils.encoding import force_text
from rest_framework import status from rest_framework import status
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from documents.tests import DocumentTestMixin from mayan.apps.documents.tests import DocumentTestMixin
from user_management.tests.literals import ( from mayan.apps.user_management.tests.literals import (
TEST_ADMIN_EMAIL, TEST_ADMIN_PASSWORD, TEST_ADMIN_USERNAME TEST_ADMIN_EMAIL, TEST_ADMIN_PASSWORD, TEST_ADMIN_USERNAME
) )

View File

@@ -2,7 +2,7 @@ from __future__ import unicode_literals
from actstream.models import Action from actstream.models import Action
from documents.tests.test_models import GenericDocumentTestCase from mayan.apps.documents.tests.test_models import GenericDocumentTestCase
from ..events import ( from ..events import (
event_cabinets_add_document, event_cabinets_remove_document event_cabinets_add_document, event_cabinets_remove_document

View File

@@ -3,8 +3,8 @@ from __future__ import unicode_literals
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from django.test import override_settings from django.test import override_settings
from common.tests import BaseTestCase from mayan.apps.common.tests import BaseTestCase
from documents.tests import DocumentTestMixin from mayan.apps.documents.tests import DocumentTestMixin
from ..models import Cabinet from ..models import Cabinet

View File

@@ -1,6 +1,6 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
from documents.tests import GenericDocumentViewTestCase from mayan.apps.documents.tests import GenericDocumentViewTestCase
from ..models import Cabinet from ..models import Cabinet
from ..permissions import ( from ..permissions import (

View File

@@ -1,15 +1,15 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from documents.models import Document from mayan.apps.documents.models import Document
from documents.permissions import permission_document_create from mayan.apps.documents.permissions import permission_document_create
from documents.tests import ( from mayan.apps.documents.tests import (
GenericDocumentViewTestCase, TEST_SMALL_DOCUMENT_PATH, GenericDocumentViewTestCase, TEST_SMALL_DOCUMENT_PATH,
) )
from sources.models import WebFormSource from mayan.apps.sources.models import WebFormSource
from sources.tests.literals import ( from mayan.apps.sources.tests.literals import (
TEST_SOURCE_LABEL, TEST_SOURCE_UNCOMPRESS_N TEST_SOURCE_LABEL, TEST_SOURCE_UNCOMPRESS_N
) )
from sources.wizards import WizardStep from mayan.apps.sources.wizards import WizardStep
from ..models import Cabinet from ..models import Cabinet
from ..wizard_steps import WizardStepCabinets from ..wizard_steps import WizardStepCabinets

View File

@@ -8,14 +8,14 @@ from django.template import RequestContext
from django.urls import reverse_lazy from django.urls import reverse_lazy
from django.utils.translation import ugettext_lazy as _, ungettext from django.utils.translation import ugettext_lazy as _, ungettext
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from common.views import ( from mayan.apps.common.views import (
MultipleObjectFormActionView, SingleObjectCreateView, MultipleObjectFormActionView, SingleObjectCreateView,
SingleObjectDeleteView, SingleObjectEditView, SingleObjectListView SingleObjectDeleteView, SingleObjectEditView, SingleObjectListView
) )
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from documents.models import Document from mayan.apps.documents.models import Document
from documents.views import DocumentListView from mayan.apps.documents.views import DocumentListView
from .forms import CabinetListForm from .forms import CabinetListForm
from .icons import icon_cabinet from .icons import icon_cabinet

View File

@@ -6,7 +6,7 @@ from django.apps import apps
from django.utils.encoding import force_text from django.utils.encoding import force_text
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from sources.wizards import WizardStep from mayan.apps.sources.wizards import WizardStep
from .forms import CabinetListForm from .forms import CabinetListForm
from .permissions import permission_cabinet_add_document from .permissions import permission_cabinet_add_document

View File

@@ -1,3 +1,3 @@
from __future__ import unicode_literals from __future__ import unicode_literals
default_app_config = 'checkouts.apps.CheckoutsApp' default_app_config = 'mayan.apps.checkouts.apps.CheckoutsApp'

View File

@@ -2,8 +2,8 @@ from __future__ import absolute_import, unicode_literals
from rest_framework import generics from rest_framework import generics
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from .models import DocumentCheckout from .models import DocumentCheckout
from .permissions import ( from .permissions import (

View File

@@ -8,10 +8,10 @@ from django.apps import apps
from django.db.models.signals import pre_save from django.db.models.signals import pre_save
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from acls import ModelPermission from mayan.apps.acls import ModelPermission
from common import MayanAppConfig, menu_facet, menu_main, menu_sidebar from mayan.apps.common import MayanAppConfig, menu_facet, menu_main, menu_sidebar
from common.dashboards import dashboard_main from mayan.apps.common.dashboards import dashboard_main
from events import ModelEventType from mayan.apps.events import ModelEventType
from mayan.celery import app from mayan.celery import app
from .dashboard_widgets import DashboardWidgetTotalCheckouts from .dashboard_widgets import DashboardWidgetTotalCheckouts
@@ -35,9 +35,11 @@ from .tasks import task_check_expired_check_outs # NOQA
class CheckoutsApp(MayanAppConfig): class CheckoutsApp(MayanAppConfig):
app_namespace = 'checkouts'
app_url = 'checkouts'
has_rest_api = True has_rest_api = True
has_tests = True has_tests = True
name = 'checkouts' name = 'mayan.apps.checkouts'
verbose_name = _('Checkouts') verbose_name = _('Checkouts')
def ready(self): def ready(self):
@@ -94,7 +96,7 @@ class CheckoutsApp(MayanAppConfig):
app.conf.CELERYBEAT_SCHEDULE.update( app.conf.CELERYBEAT_SCHEDULE.update(
{ {
'task_check_expired_check_outs': { 'task_check_expired_check_outs': {
'task': 'checkouts.tasks.task_check_expired_check_outs', 'task': 'mayan.apps.checkouts.tasks.task_check_expired_check_outs',
'schedule': timedelta( 'schedule': timedelta(
seconds=CHECK_EXPIRED_CHECK_OUTS_INTERVAL seconds=CHECK_EXPIRED_CHECK_OUTS_INTERVAL
), ),
@@ -111,7 +113,7 @@ class CheckoutsApp(MayanAppConfig):
app.conf.CELERY_ROUTES.update( app.conf.CELERY_ROUTES.update(
{ {
'checkouts.tasks.task_check_expired_check_outs': { 'mayan.apps.checkouts.tasks.task_check_expired_check_outs': {
'queue': 'checkouts_periodic' 'queue': 'checkouts_periodic'
}, },
} }

View File

@@ -4,8 +4,8 @@ from django.apps import apps
from django.urls import reverse_lazy from django.urls import reverse_lazy
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.classes import DashboardWidgetNumeric from mayan.apps.common.classes import DashboardWidgetNumeric
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from .icons import icon_dashboard_checkouts from .icons import icon_dashboard_checkouts
from .permissions import permission_document_checkout_detail_view from .permissions import permission_document_checkout_detail_view

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from events import EventTypeNamespace from mayan.apps.events import EventTypeNamespace
namespace = EventTypeNamespace(name='checkouts', label=_('Checkouts')) namespace = EventTypeNamespace(name='checkouts', label=_('Checkouts'))

View File

@@ -3,7 +3,7 @@ from __future__ import unicode_literals
from django import forms from django import forms
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.forms import DetailForm from mayan.apps.common.forms import DetailForm
from .literals import STATE_LABELS from .literals import STATE_LABELS
from .models import DocumentCheckout from .models import DocumentCheckout

View File

@@ -1,6 +1,6 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
from appearance.classes import Icon from mayan.apps.appearance.classes import Icon
icon_checkout_info = Icon(driver_name='fontawesome', symbol='shopping-cart') icon_checkout_info = Icon(driver_name='fontawesome', symbol='shopping-cart')
icon_dashboard_checkouts = Icon( icon_dashboard_checkouts = Icon(

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation import Link from mayan.apps.navigation import Link
from .icons import icon_checkout_info from .icons import icon_checkout_info
from .permissions import ( from .permissions import (

View File

@@ -6,7 +6,7 @@ from django.apps import apps
from django.db import models from django.db import models
from django.utils.timezone import now from django.utils.timezone import now
from documents.models import Document from mayan.apps.documents.models import Document
from .events import ( from .events import (
event_document_auto_check_in, event_document_check_in, event_document_auto_check_in, event_document_check_in,

View File

@@ -10,7 +10,7 @@ from django.utils.encoding import force_text, python_2_unicode_compatible
from django.utils.timezone import now from django.utils.timezone import now
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from documents.models import Document from mayan.apps.documents.models import Document
from .events import event_document_check_out from .events import event_document_check_out
from .exceptions import DocumentAlreadyCheckedOut from .exceptions import DocumentAlreadyCheckedOut

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from permissions import PermissionNamespace from mayan.apps.permissions import PermissionNamespace
namespace = PermissionNamespace('checkouts', _('Document checkout')) namespace = PermissionNamespace('checkouts', _('Document checkout'))

View File

@@ -2,12 +2,12 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from task_manager.classes import CeleryQueue from mayan.apps.task_manager.classes import CeleryQueue
queue_checkouts_periodic = CeleryQueue( queue_checkouts_periodic = CeleryQueue(
name='checkouts_periodic', label=_('Checkouts periodic'), transient=True name='checkouts_periodic', label=_('Checkouts periodic'), transient=True
) )
queue_checkouts_periodic.add_task_type( queue_checkouts_periodic.add_task_type(
name='task_check_expired_check_outs', name='mayan.apps.task_check_expired_check_outs',
label=_('Check expired checkouts') label=_('Check expired checkouts')
) )

View File

@@ -4,9 +4,9 @@ from django.utils.translation import ugettext_lazy as _
from rest_framework import serializers from rest_framework import serializers
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from documents.models import Document from mayan.apps.documents.models import Document
from documents.serializers import DocumentSerializer from mayan.apps.documents.serializers import DocumentSerializer
from .models import DocumentCheckout from .models import DocumentCheckout
from .permissions import permission_document_checkout from .permissions import permission_document_checkout

View File

@@ -4,8 +4,8 @@ import logging
from django.apps import apps from django.apps import apps
from lock_manager import LockError from mayan.apps.lock_manager import LockError
from lock_manager.runtime import locking_backend from mayan.apps.lock_manager.runtime import locking_backend
from mayan.celery import app from mayan.celery import app
from .literals import CHECKOUT_EXPIRATION_LOCK_EXPIRE from .literals import CHECKOUT_EXPIRATION_LOCK_EXPIRE

View File

@@ -8,9 +8,9 @@ from django.utils.timezone import now
from rest_framework import status from rest_framework import status
from documents.tests import DocumentTestMixin from mayan.apps.documents.tests import DocumentTestMixin
from documents.permissions import permission_document_view from mayan.apps.documents.permissions import permission_document_view
from rest_api.tests import BaseAPITestCase from mayan.apps.rest_api.tests import BaseAPITestCase
from ..models import DocumentCheckout from ..models import DocumentCheckout
from ..permissions import ( from ..permissions import (

View File

@@ -7,9 +7,9 @@ import time
from django.test import override_settings from django.test import override_settings
from django.utils.timezone import now from django.utils.timezone import now
from common.tests import BaseTestCase from mayan.apps.common.tests import BaseTestCase
from documents.tests import DocumentTestMixin from mayan.apps.documents.tests import DocumentTestMixin
from documents.tests.literals import TEST_SMALL_DOCUMENT_PATH from mayan.apps.documents.tests.literals import TEST_SMALL_DOCUMENT_PATH
from ..exceptions import ( from ..exceptions import (
DocumentAlreadyCheckedOut, DocumentNotCheckedOut, DocumentAlreadyCheckedOut, DocumentNotCheckedOut,

View File

@@ -5,10 +5,10 @@ import logging
from django.utils.timezone import now from django.utils.timezone import now
from common.literals import TIME_DELTA_UNIT_DAYS from mayan.apps.common.literals import TIME_DELTA_UNIT_DAYS
from documents.tests import GenericDocumentViewTestCase from mayan.apps.documents.tests import GenericDocumentViewTestCase
from sources.links import link_upload_version from mayan.apps.sources.links import link_upload_version
from user_management.tests.literals import ( from mayan.apps.user_management.tests.literals import (
TEST_USER_PASSWORD, TEST_USER_USERNAME, TEST_ADMIN_PASSWORD, TEST_USER_PASSWORD, TEST_USER_USERNAME, TEST_ADMIN_PASSWORD,
TEST_ADMIN_USERNAME, TEST_ADMIN_USERNAME,
) )

View File

@@ -6,14 +6,13 @@ from django.shortcuts import get_object_or_404
from django.urls import reverse from django.urls import reverse
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from documents.models import Document from mayan.apps.acls.models import AccessControlList
from documents.views import DocumentListView from mayan.apps.common.generics import (
from acls.models import AccessControlList
from common.generics import (
ConfirmView, SingleObjectCreateView, SingleObjectDetailView ConfirmView, SingleObjectCreateView, SingleObjectDetailView
) )
from common.utils import encapsulate from mayan.apps.common.utils import encapsulate
from mayan.apps.documents.models import Document
from mayan.apps.documents.views import DocumentListView
from .exceptions import DocumentAlreadyCheckedOut, DocumentNotCheckedOut from .exceptions import DocumentAlreadyCheckedOut, DocumentNotCheckedOut
from .forms import DocumentCheckoutForm, DocumentCheckoutDefailForm from .forms import DocumentCheckoutForm, DocumentCheckoutDefailForm

View File

@@ -6,7 +6,7 @@ from django import forms
from django.utils.timezone import now from django.utils.timezone import now
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.literals import TIME_DELTA_UNIT_CHOICES from mayan.apps.common.literals import TIME_DELTA_UNIT_CHOICES
class SplitTimeDeltaWidget(forms.widgets.MultiWidget): class SplitTimeDeltaWidget(forms.widgets.MultiWidget):

View File

@@ -4,4 +4,4 @@ from .apps import MayanAppConfig # NOQA
from .classes import MissingItem # NOQA from .classes import MissingItem # NOQA
from .menus import * # NOQA from .menus import * # NOQA
default_app_config = 'common.apps.CommonApp' default_app_config = 'mayan.apps.common.apps.CommonApp'

View File

@@ -47,10 +47,11 @@ logger = logging.getLogger(__name__)
class MayanAppConfig(apps.AppConfig): class MayanAppConfig(apps.AppConfig):
app_url = None
app_namespace = None app_namespace = None
app_url = None
def ready(self): def ready(self):
logger.debug('Initializing app: %s', self.name)
from mayan.urls import urlpatterns from mayan.urls import urlpatterns
if self.app_url: if self.app_url:
@@ -70,7 +71,7 @@ class MayanAppConfig(apps.AppConfig):
), ),
except ImportError as exception: except ImportError as exception:
if force_text(exception) not in ('No module named urls', 'No module named \'{}.urls\''.format(self.name)): if force_text(exception) not in ('No module named urls', 'No module named \'{}.urls\''.format(self.name)):
logger.error( logger.exception(
'Import time error when running AppConfig.ready() of app ' 'Import time error when running AppConfig.ready() of app '
'"%s".', self.name '"%s".', self.name
) )
@@ -78,10 +79,11 @@ class MayanAppConfig(apps.AppConfig):
class CommonApp(MayanAppConfig): class CommonApp(MayanAppConfig):
app_namespace = 'common'
app_url = '' app_url = ''
has_rest_api = True has_rest_api = True
has_tests = True has_tests = True
name = 'common' name = 'mayan.apps.common'
verbose_name = _('Common') verbose_name = _('Common')
def ready(self): def ready(self):
@@ -96,7 +98,7 @@ class CommonApp(MayanAppConfig):
app.conf.CELERYBEAT_SCHEDULE.update( app.conf.CELERYBEAT_SCHEDULE.update(
{ {
'task_delete_stale_uploads': { 'task_delete_stale_uploads': {
'task': 'common.tasks.task_delete_stale_uploads', 'task': 'mayan.apps.common.tasks.task_delete_stale_uploads',
'schedule': timedelta( 'schedule': timedelta(
seconds=DELETE_STALE_UPLOADS_INTERVAL seconds=DELETE_STALE_UPLOADS_INTERVAL
), ),
@@ -119,7 +121,7 @@ class CommonApp(MayanAppConfig):
app.conf.CELERY_ROUTES.update( app.conf.CELERY_ROUTES.update(
{ {
'common.tasks.task_delete_stale_uploads': { 'mayan.apps.common.tasks.task_delete_stale_uploads': {
'queue': 'common_periodic' 'queue': 'common_periodic'
}, },
} }
@@ -191,7 +193,7 @@ class CommonApp(MayanAppConfig):
'disable_existing_loggers': False, 'disable_existing_loggers': False,
'formatters': { 'formatters': {
'intermediate': { 'intermediate': {
'format': '%(name)s <%(process)d> [%(levelname)s] "%(funcName)s() line %(lineno)d %(message)s"' 'format': '%(name)s <%(process)d> [%(levelname)s] "%(funcName)s() line %(lineno)d %(message)s"',
}, },
'logfile': { 'logfile': {
'format': '%(asctime)s %(name)s <%(process)d> [%(levelname)s] "%(funcName)s() line %(lineno)d %(message)s"' 'format': '%(asctime)s %(name)s <%(process)d> [%(levelname)s] "%(funcName)s() line %(lineno)d %(message)s"'

View File

@@ -12,7 +12,7 @@ except ImportError:
from django.core.files.uploadedfile import SimpleUploadedFile from django.core.files.uploadedfile import SimpleUploadedFile
from mimetype.api import get_mimetype from mayan.apps.mimetype.api import get_mimetype
from .exceptions import NoMIMETypeMatch from .exceptions import NoMIMETypeMatch

View File

@@ -1,6 +1,6 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
from appearance.classes import Icon from mayan.apps.appearance.classes import Icon
icon_about = Icon(driver_name='fontawesome', symbol='info') icon_about = Icon(driver_name='fontawesome', symbol='info')
icon_assign_remove_add = Icon(driver_name='fontawesome', symbol='plus') icon_assign_remove_add = Icon(driver_name='fontawesome', symbol='plus')

View File

@@ -3,8 +3,8 @@ from __future__ import unicode_literals
from django.apps import apps from django.apps import apps
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation import Link from mayan.apps.navigation import Link
from navigation.classes import Separator, Text from mayan.apps.navigation.classes import Separator, Text
from .icons import ( from .icons import (
icon_about, icon_check_version, icon_current_user_details, icon_about, icon_check_version, icon_current_user_details,

View File

@@ -11,8 +11,8 @@ from django.core.management.base import CommandError
from django.utils.encoding import force_text from django.utils.encoding import force_text
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.utils import fs_cleanup from mayan.apps.common.utils import fs_cleanup
from documents.models import DocumentType from mayan.apps.documents.models import DocumentType
CONVERTDB_FOLDER = 'convertdb' CONVERTDB_FOLDER = 'convertdb'
CONVERTDB_OUTPUT_FILENAME = 'migrate.json' CONVERTDB_OUTPUT_FILENAME = 'migrate.json'

View File

@@ -2,7 +2,7 @@ from __future__ import unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation import Menu from mayan.apps.navigation import Menu
from .icons import icon_menu_about, icon_menu_user from .icons import icon_menu_about, icon_menu_user

View File

@@ -5,7 +5,7 @@ from django.db import models, migrations
from django.conf import settings from django.conf import settings
from django.core.files.storage import FileSystemStorage from django.core.files.storage import FileSystemStorage
import common.models import mayan.apps.common.models
class Migration(migrations.Migration): class Migration(migrations.Migration):
@@ -77,7 +77,7 @@ class Migration(migrations.Migration):
), ),
( (
'file', models.FileField( 'file', models.FileField(
upload_to=common.models.upload_to, upload_to=mayan.apps.common.models.upload_to,
storage=FileSystemStorage(), storage=FileSystemStorage(),
verbose_name='File' verbose_name='File'
) )

View File

@@ -2,7 +2,7 @@
# Generated by Django 1.11.11 on 2018-04-03 07:02 # Generated by Django 1.11.11 on 2018-04-03 07:02
from __future__ import unicode_literals from __future__ import unicode_literals
import common.models import mayan.apps.common.models
import django.core.files.storage import django.core.files.storage
from django.db import migrations, models from django.db import migrations, models
@@ -17,6 +17,6 @@ class Migration(migrations.Migration):
migrations.AlterField( migrations.AlterField(
model_name='shareduploadedfile', model_name='shareduploadedfile',
name='file', name='file',
field=models.FileField(storage=django.core.files.storage.FileSystemStorage(location=b'mayan/media/shared_files'), upload_to=common.models.upload_to, verbose_name='File'), field=models.FileField(storage=django.core.files.storage.FileSystemStorage(location=b'mayan/media/shared_files'), upload_to=mayan.apps.common.models.upload_to, verbose_name='File'),
), ),
] ]

View File

@@ -2,7 +2,7 @@
# Generated by Django 1.11.11 on 2018-04-29 07:58 # Generated by Django 1.11.11 on 2018-04-29 07:58
from __future__ import unicode_literals from __future__ import unicode_literals
import common.models import mayan.apps.common.models
import django.core.files.storage import django.core.files.storage
from django.db import migrations, models from django.db import migrations, models
@@ -17,6 +17,6 @@ class Migration(migrations.Migration):
migrations.AlterField( migrations.AlterField(
model_name='shareduploadedfile', model_name='shareduploadedfile',
name='file', name='file',
field=models.FileField(storage=django.core.files.storage.FileSystemStorage(location=b'/home/rosarior/development/mayan-edms/mayan/media/shared_files'), upload_to=common.models.upload_to, verbose_name='File'), field=models.FileField(storage=django.core.files.storage.FileSystemStorage(location=b'/home/rosarior/development/mayan-edms/mayan/media/shared_files'), upload_to=mayan.apps.common.models.upload_to, verbose_name='File'),
), ),
] ]

View File

@@ -8,9 +8,8 @@ from django.http import HttpResponseRedirect
from django.shortcuts import resolve_url from django.shortcuts import resolve_url
from django.utils.translation import ungettext, ugettext_lazy as _ from django.utils.translation import ungettext, ugettext_lazy as _
from permissions import Permission from mayan.apps.acls.models import AccessControlList
from mayan.apps.permissions import Permission
from acls.models import AccessControlList
from .exceptions import ActionError from .exceptions import ActionError
from .forms import DynamicForm from .forms import DynamicForm

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from permissions import PermissionNamespace from mayan.apps.permissions import PermissionNamespace
namespace = PermissionNamespace('common', _('Common')) namespace = PermissionNamespace('common', _('Common'))

View File

@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from task_manager.classes import CeleryQueue from mayan.apps.task_manager.classes import CeleryQueue
queue_default = CeleryQueue( queue_default = CeleryQueue(
name='default', label=_('Default'), is_default_queue=True name='default', label=_('Default'), is_default_queue=True
@@ -12,6 +12,6 @@ queue_common_periodic = CeleryQueue(
name='common_periodic', label=_('Common periodic'), transient=True name='common_periodic', label=_('Common periodic'), transient=True
) )
queue_common_periodic.add_task_type( queue_common_periodic.add_task_type(
name='common.tasks.task_delete_stale_uploads', name='mayan.apps.common.tasks.task_delete_stale_uploads',
label=_('Delete stale uploads') label=_('Delete stale uploads')
) )

View File

@@ -7,7 +7,7 @@ from django.conf import settings
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
import mayan import mayan
from smart_settings import Namespace from mayan.apps.smart_settings import Namespace
namespace = Namespace(name='common', label=_('Common')) namespace = Namespace(name='common', label=_('Common'))

View File

@@ -4,10 +4,10 @@ from django.test import TestCase
from django_downloadview import assert_download_response from django_downloadview import assert_download_response
from acls.tests.mixins import ACLTestCaseMixin from mayan.apps.acls.tests.mixins import ACLTestCaseMixin
from permissions.classes import Permission from mayan.apps.permissions.classes import Permission
from smart_settings.classes import Namespace from mayan.apps.smart_settings.classes import Namespace
from user_management.tests.mixins import UserTestCaseMixin from mayan.apps.user_management.tests.mixins import UserTestCaseMixin
from .mixins import ( from .mixins import (
ClientMethodsTestCaseMixin, ContentTypeCheckTestCaseMixin, ClientMethodsTestCaseMixin, ContentTypeCheckTestCaseMixin,

View File

@@ -3,7 +3,7 @@ from __future__ import unicode_literals
from django.urls import reverse from django.urls import reverse
from django.test import override_settings from django.test import override_settings
from rest_api.tests import BaseAPITestCase from mayan.apps.rest_api.tests import BaseAPITestCase
from ..classes import Template from ..classes import Template

View File

@@ -1,6 +1,6 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from common.tests import BaseTestCase from mayan.apps.common.tests import BaseTestCase
from ..compressed_files import Archive, TarArchive, ZipArchive from ..compressed_files import Archive, TarArchive, ZipArchive

View File

@@ -1,7 +1,7 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from common.tests import BaseTestCase from mayan.apps.common.tests import BaseTestCase
from user_management.tests.mixins import UserTestMixin from mayan.apps.user_management.tests.mixins import UserTestMixin
class UserLocaleProfileTestCase(UserTestMixin, BaseTestCase): class UserLocaleProfileTestCase(UserTestMixin, BaseTestCase):

View File

@@ -3,7 +3,7 @@ from __future__ import absolute_import, unicode_literals
from django.contrib.auth import get_user_model from django.contrib.auth import get_user_model
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from acls import ModelPermission from mayan.apps.acls import ModelPermission
from ..models import ErrorLogEntry from ..models import ErrorLogEntry
from ..permissions_runtime import permission_error_log_view from ..permissions_runtime import permission_error_log_view

View File

@@ -16,8 +16,8 @@ from django.utils.http import (
from django.utils.six.moves import reduce as reduce_function, xmlrpc_client from django.utils.six.moves import reduce as reduce_function, xmlrpc_client
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.compat import dict_type, dictionary_type
import mayan import mayan
from mayan.apps.common.compat import dict_type, dictionary_type
from .exceptions import NotLatestVersion, UnknownLatestVersion from .exceptions import NotLatestVersion, UnknownLatestVersion
from .literals import DJANGO_SQLITE_BACKEND, MAYAN_PYPI_NAME, PYPI_URL from .literals import DJANGO_SQLITE_BACKEND, MAYAN_PYPI_NAME, PYPI_URL

View File

@@ -14,7 +14,7 @@ from django.utils.http import urlencode
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from django.views.generic import RedirectView, TemplateView from django.views.generic import RedirectView, TemplateView
from acls.models import AccessControlList from mayan.apps.acls.models import AccessControlList
from .exceptions import NotLatestVersion, UnknownLatestVersion from .exceptions import NotLatestVersion, UnknownLatestVersion
from .forms import ( from .forms import (

View File

@@ -6,4 +6,4 @@ from .transformations import ( # NOQA
TransformationZoom TransformationZoom
) )
default_app_config = 'converter.apps.ConverterApp' default_app_config = 'mayan.apps.converter.apps.ConverterApp'

View File

@@ -3,9 +3,8 @@ from __future__ import unicode_literals
from django.utils.encoding import force_text from django.utils.encoding import force_text
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common import MayanAppConfig, menu_object, menu_sidebar from mayan.apps.common import MayanAppConfig, menu_object, menu_sidebar
from mayan.apps.navigation import SourceColumn
from navigation import SourceColumn
from .links import ( from .links import (
link_transformation_create, link_transformation_delete, link_transformation_create, link_transformation_delete,
@@ -15,8 +14,10 @@ from .licenses import * # NOQA
class ConverterApp(MayanAppConfig): class ConverterApp(MayanAppConfig):
app_namespace = 'converter'
app_url = 'converter'
has_tests = True has_tests = True
name = 'converter' name = 'mayan.apps.converter'
verbose_name = _('Converter') verbose_name = _('Converter')
def ready(self): def ready(self):

View File

@@ -12,7 +12,7 @@ import yaml
from django.utils.encoding import force_text from django.utils.encoding import force_text
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.utils import fs_cleanup, mkstemp from mayan.apps.common.utils import fs_cleanup, mkstemp
from ..classes import ConverterBase from ..classes import ConverterBase
from ..exceptions import PageCountError from ..exceptions import PageCountError

View File

@@ -11,9 +11,9 @@ import yaml
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from common.settings import setting_temporary_directory from mayan.apps.common.settings import setting_temporary_directory
from common.utils import fs_cleanup, mkdtemp, mkstemp from mayan.apps.common.utils import fs_cleanup, mkdtemp, mkstemp
from mimetype.api import get_mimetype from mayan.apps.mimetype.api import get_mimetype
from .exceptions import InvalidOfficeFormat, OfficeConversionError from .exceptions import InvalidOfficeFormat, OfficeConversionError
from .literals import ( from .literals import (

View File

@@ -1,6 +1,6 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
from appearance.classes import Icon from mayan.apps.appearance.classes import Icon
icon_transformation = Icon(driver_name='fontawesome', symbol='crop') icon_transformation = Icon(driver_name='fontawesome', symbol='crop')
icon_transformation_create = Icon(driver_name='fontawesome', symbol='plus') icon_transformation_create = Icon(driver_name='fontawesome', symbol='plus')

View File

@@ -1,6 +1,6 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from common.classes import Package from mayan.apps.common.classes import Package
Package(label='Pillow', license_text=''' Package(label='Pillow', license_text='''
The Python Imaging Library (PIL) is The Python Imaging Library (PIL) is

View File

@@ -3,7 +3,7 @@ from __future__ import unicode_literals
from django.apps import apps from django.apps import apps
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation import Link from mayan.apps.navigation import Link
from .icons import icon_transformation, icon_transformation_create from .icons import icon_transformation, icon_transformation_create
from .permissions import ( from .permissions import (

View File

@@ -2,7 +2,8 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from django.db import models, migrations from django.db import models, migrations
import converter.models
import mayan.apps.converter.models
class Migration(migrations.Migration): class Migration(migrations.Migration):
@@ -40,7 +41,7 @@ class Migration(migrations.Migration):
( (
'arguments', models.TextField( 'arguments', models.TextField(
blank=True, null=True, verbose_name='Arguments', blank=True, null=True, verbose_name='Arguments',
validators=[converter.validators.YAMLValidator] validators=[mayan.apps.converter.validators.YAMLValidator]
) )
), ),
( (

View File

@@ -2,7 +2,8 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from django.db import models, migrations from django.db import models, migrations
import converter.validators
import mayan.apps.converter.validators
class Migration(migrations.Migration): class Migration(migrations.Migration):
@@ -19,7 +20,7 @@ class Migration(migrations.Migration):
default='', help_text='Enter the arguments for the ' default='', help_text='Enter the arguments for the '
'transformation as a YAML dictionary. ie: {"degrees": 180}', 'transformation as a YAML dictionary. ie: {"degrees": 180}',
blank=True, verbose_name='Arguments', validators=[ blank=True, verbose_name='Arguments', validators=[
converter.validators.YAMLValidator mayan.apps.converter.validators.YAMLValidator
] ]
), ),
preserve_default=False, preserve_default=False,

View File

@@ -2,7 +2,8 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from django.db import models, migrations from django.db import models, migrations
import converter.validators
import mayan.apps.converter.validators
class Migration(migrations.Migration): class Migration(migrations.Migration):
@@ -19,7 +20,7 @@ class Migration(migrations.Migration):
help_text='Enter the arguments for the transformation as a ' help_text='Enter the arguments for the transformation as a '
'YAML dictionary. ie: {"degrees": 180}', 'YAML dictionary. ie: {"degrees": 180}',
blank=True, verbose_name='Arguments', blank=True, verbose_name='Arguments',
validators=[converter.validators.YAMLValidator()] validators=[mayan.apps.converter.validators.YAMLValidator()]
), ),
preserve_default=True, preserve_default=True,
), ),

Some files were not shown because too many files have changed in this diff Show More