コード例 #1
0
ファイル: advanced.py プロジェクト: FrankBie/django-seo-link
 def setUp(self):
     """ 
     Setup the cached backend
     """
     import seo_link.settings as seo_link_settings
     seo_link_settings.BACKEND = "seo_link.backends.advanced.LXMLCachedBackend"
     seo_link.middleware.SEO_BACKEND = get_seo_link_backend_class(path=seo_link_settings.BACKEND)
コード例 #2
0
ファイル: advanced.py プロジェクト: FrankBie/django-seo-link
 def setUp(self):
     import seo_link.settings as seo_link_settings
     seo_link_settings.IGNORE_CSS_SELECTOR_CLASSES = ['nav','user-nav','footer','sidebar']
     seo_link_settings.OPERATIONAL_CSS_SELECTOR_CLASSES = ['main']
     seo_link_settings.OPERATIONAL_CSS_SELECTOR_IDS = None
     seo_link_settings.IGNORE_CSS_SELECTOR_IDS = None
     seo_link_settings.BACKEND = "seo_link.backends.advanced.LXMLBackend"
     seo_link.middleware.SEO_BACKEND = get_seo_link_backend_class(path=seo_link_settings.BACKEND)
コード例 #3
0
ファイル: backend.py プロジェクト: FrankBie/django-seo-link
 def setUp(self):
     """ 
     Setup the cached backend
     """
     super(SimpleCachedBackendTestCase,self).setUp()
     seo_link_settings.BACKEND = "seo_link.backends.simple.SimpleCachedBackend"
     seo_link.middleware.SEO_BACKEND = get_seo_link_backend_class(path=seo_link_settings.BACKEND)
     
 
     
コード例 #4
0
ファイル: base.py プロジェクト: FrankBie/django-seo-link
    def setUp(self):
        import seo_link.settings as seo_link_settings
        
        seo_link_settings.BACKEND = "seo_link.backends.simple.SimpleBackend"
        seo_link.middleware.SEO_BACKEND = get_seo_link_backend_class(path=seo_link_settings.BACKEND)

        seo_link_settings.MIN_TERM_WORD_COUNT = 0
        seo_link_settings.MAX_DIFFERENT_TERM_REPLACMENT_PER_PAGE = None
        seo_link_settings.IGNORE_EXCEPTIONS_ON = False
        seo_link_settings.REPLACE_ONLY_ONE_TIME_PER_TERM = False
        seo_link_settings.DEBUG = False
        seo_link_settings.TIMER_ON = True
コード例 #5
0
import re
import logging as log

from django.core.exceptions import ImproperlyConfigured
from django.conf import settings as django_settings

from seo_link import settings
from seo_link.utils import get_seo_link_backend_class


# one instance of the seo_backend only
# Singleton
SEO_BACKEND = None
if SEO_BACKEND is None:
    log.warn("SEO_BACKEND loaded - middleware")
    SEO_BACKEND = get_seo_link_backend_class()
    
class SEOLinkMiddleware(object):
    """
    Middleware to inject links based on the term configuration
    add this before the csrf protection middleware and any other content manipulation middlewares
    """
    backend = None
    
    def __init__(self,*args,**kwargs):
        # check if the csrf middleware is in the configrued middelwares
        if "django.middleware.csrf.CsrfViewMiddleware" in django_settings.MIDDLEWARE_CLASSES:
            # check if the middleware is before this middleware
            csrfId = django_settings.MIDDLEWARE_CLASSES.index('django.middleware.csrf.CsrfViewMiddleware')
            meId = django_settings.MIDDLEWARE_CLASSES.index('seo_link.middleware.SEOLinkMiddleware')
            if meId > csrfId: