diff --git a/src/collective/onlogin/adapters.py b/src/collective/onlogin/adapters.py
index a7a818e..2c54213 100644
--- a/src/collective/onlogin/adapters.py
+++ b/src/collective/onlogin/adapters.py
@@ -12,12 +12,17 @@
from plone.api.portal import get as get_portal
from plone.registry.interfaces import IRegistry
from Products.CMFCore.Expression import Expression
-from Products.CMFPlone.interfaces import IRedirectAfterLogin
from Products.CMFPlone.PloneBaseTool import getExprContext
from zope.component import getUtility
from zope.interface import implementer
+try:
+ from Products.CMFPlone.interfaces import IRedirectAfterLogin
+except ImportError:
+ from plone.login.interfaces import IRedirectAfterLogin
+
+
def OUTAHERE():
logger.info('audi5000')
@@ -54,7 +59,7 @@ def __call__(self, came_from=None, is_first_login=False):
logger.info('ignore_came_from {0}'.format(self.ignore_came_from))
logger.info('came_from ' + self.came_from)
- if not self.ignore_came_from and self.came_from:
+ if not self.ignore_came_from and self.came_from != 'redirect_on':
OUTAHERE()
return self.came_from
diff --git a/src/collective/onlogin/configure.zcml b/src/collective/onlogin/configure.zcml
index 48c0966..5d45e7b 100644
--- a/src/collective/onlogin/configure.zcml
+++ b/src/collective/onlogin/configure.zcml
@@ -29,27 +29,34 @@
/>
-
-
-
-
-
-
+
-
+ zope.publisher.interfaces.IRequest"
+ />
+
+
+
+
+
+
+
+
+
@@ -63,7 +70,5 @@
layer=".interfaces.IOnloginLayer"
/>
-
-
diff --git a/src/collective/onlogin/interfaces.py b/src/collective/onlogin/interfaces.py
index 9a77310..fad22f7 100644
--- a/src/collective/onlogin/interfaces.py
+++ b/src/collective/onlogin/interfaces.py
@@ -52,7 +52,10 @@ class IOnloginSettings(Interface):
title=_(u'Ignore came_from parameter on login'),
description=_(u'By default Plone redirects user to last visited page '
'after login. Here you can disable this behavior and '
- 'always redirect to above entered url.'),
+ 'always redirect to above entered url. To selectively '
+ 'enable the redirect, use came_from=redirect_on '
+ 'in a link. For example, '
+ 'http://localhost/Plone/login?came_from=redirect_on'),
required=False,
default=False)