From 6af6531f778c330993079cb0cd1fcc165f0e3af3 Mon Sep 17 00:00:00 2001
From: Sebastien Robin <seb@nexedi.com>
Date: Thu, 27 Jan 2005 16:25:58 +0000
Subject: [PATCH] allow to get the redirect script

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@2316 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5Type/Document/Folder.py |  6 ++++++
 product/ERP5Type/ERP5Type.py        | 17 +++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/product/ERP5Type/Document/Folder.py b/product/ERP5Type/Document/Folder.py
index 63632bb9e1..a1a9ad34bd 100755
--- a/product/ERP5Type/Document/Folder.py
+++ b/product/ERP5Type/Document/Folder.py
@@ -79,6 +79,12 @@ class FolderMixIn(ExtensionClass.Base):
     if immediate_reindex: new_instance.immediateReindexObject()
     return new_instance
 
+  security.declareProtected(Permissions.View, 'getRedirectScriptAfterNewContent')
+  def getRedirectScriptAfterNewContent(self,portal_type=None,**kw):
+    """
+    """
+    return self.portal_types.getTypeInfo(portal_type).getRedirectScript()
+
   security.declareProtected(Permissions.DeletePortalContent, 'deleteContent')
   def deleteContent(self, id):
     # id is string or list
diff --git a/product/ERP5Type/ERP5Type.py b/product/ERP5Type/ERP5Type.py
index 98a8cacfc4..40410d1ec4 100755
--- a/product/ERP5Type/ERP5Type.py
+++ b/product/ERP5Type/ERP5Type.py
@@ -30,6 +30,8 @@ from Products.CMFCore.interfaces.portal_types import ContentTypeInformation as I
 from Products.ERP5Type import _dtmldir
 from Products.ERP5Type import Permissions as ERP5Permissions
 
+from zLOG import LOG
+
 class ERP5TypeInformation( FactoryTypeInformation ):
     """
     ERP5 Types are based on FactoryTypeInformation
@@ -53,6 +55,11 @@ class ERP5TypeInformation( FactoryTypeInformation ):
          'label':'Product factory method'},
         {'id':'init_script', 'type': 'string', 'mode':'w',
          'label':'Init Script'},
+        {'id':'redirect_script'
+         , 'type': 'string'
+         , 'mode':'w'
+         , 'label':'Redirect Script'
+         },
         {'id':'filter_content_types', 'type': 'boolean', 'mode':'w',
          'label':'Filter content types?'},
         {'id':'allowed_content_types'
@@ -78,6 +85,7 @@ class ERP5TypeInformation( FactoryTypeInformation ):
     property_sheet_list = ()
     base_category_list = ()
     init_script = ''
+    redirect_script = ''
     product = 'ERP5Type'
     immediate_view = 'view'
 
@@ -130,6 +138,15 @@ class ERP5TypeInformation( FactoryTypeInformation ):
         result.sort()
         return result
         
+    security.declareProtected(ERP5Permissions.AccessContentsInformation, 'getRedirectScript')
+    def getRedirectScript( self ):
+         """
+         return the redirect script
+         """
+         if self.redirect_script == '':
+           return None
+         return self.redirect_script
+
     def manage_editProperties(self, REQUEST):
       """
         Method overload 
-- 
2.30.9