Author: ltucker
Date: 2007-05-29 18:03:25 -0400 (Tue, 29 May 2007)
New Revision: 5819

Modified:
   opencore/trunk/opencore/configuration/configure.zcml
   opencore/trunk/opencore/configuration/meta.zcml
   opencore/trunk/opencore/project/browser/configure.zcml
   opencore/trunk/opencore/project/deliver.py
   opencore/trunk/opencore/project/handler.py
   opencore/trunk/opencore/siteui/configure.zcml
   opencore/trunk/opencore/siteui/member.py
Log:
merging -r4751:5813 from ltucker-sandbox, adjustments to redirector 
configuration and subproject behavior

Modified: opencore/trunk/opencore/configuration/configure.zcml
===================================================================
--- opencore/trunk/opencore/configuration/configure.zcml        2007-05-29 
22:01:19 UTC (rev 5818)
+++ opencore/trunk/opencore/configuration/configure.zcml        2007-05-29 
22:03:25 UTC (rev 5819)
@@ -19,9 +19,5 @@
   <include package="opencore.redirect" />
   <include package="opencore.utility" />
 
-  <!--opencore:defaulthost
-      host="localhost:8080"
-      /-->
-
 </configure>
  

Modified: opencore/trunk/opencore/configuration/meta.zcml
===================================================================
--- opencore/trunk/opencore/configuration/meta.zcml     2007-05-29 22:01:19 UTC 
(rev 5818)
+++ opencore/trunk/opencore/configuration/meta.zcml     2007-05-29 22:03:25 UTC 
(rev 5819)
@@ -1,5 +1,4 @@
 <configure xmlns="http://namespaces.zope.org/zope";>
   <!-- addform meta goes here too -->
   <include package="opencore.tasktracker" file="meta.zcml" />
-  <include package="opencore.redirect" file="meta.zcml" />
 </configure>

Modified: opencore/trunk/opencore/project/browser/configure.zcml
===================================================================
--- opencore/trunk/opencore/project/browser/configure.zcml      2007-05-29 
22:01:19 UTC (rev 5818)
+++ opencore/trunk/opencore/project/browser/configure.zcml      2007-05-29 
22:03:25 UTC (rev 5819)
@@ -78,14 +78,7 @@
      class="..browser.ProjectAddView"
      />
 
-  <!-- are both of these necessary? -->
-  <browser:page
-     name="do_add_project"
-     for="opencore.interfaces.IAddSubProject"
-     permission="zope2.View"
-     class="..browser.SubProjectAddView"
-     attribute="redirect"
-     />
+  <!-- 
 
   <fate:addform
      name="add_project"
@@ -94,28 +87,24 @@
      product="OpenPlans"
      meta_type="OpenProject"
      class="..browser.SubProjectAddView"
-     />
+     /> 
 
-  <fate:editform
-     name="edit_project"
-     for="opencore.interfaces.IEditProject"
-     permission="zope2.View"
-     />
-
   <browser:page 
      name="projects"
-     for="opencore.redirect.interfaces.IRedirected"
+     for="opencore.interfaces.IAddSubProject"
      class="..browser.SubProjectListingView"
      permission="zope2.View"
      template="subproject_listing.pt" 
-     />
+     /> 
+  
+  --> 
 
-  <browser:page
-     for="opencore.interfaces.IProject"
-     class="opencore.redirect.Redirector"
-     permission="zope.Public"
-     attribute="redirect"
-     name="opencore.redirect"
+  <fate:editform
+     name="edit_project"
+     for="opencore.interfaces.IEditProject"
+     permission="zope2.View"
      />
 
+
+
 </configure>

Modified: opencore/trunk/opencore/project/deliver.py
===================================================================
--- opencore/trunk/opencore/project/deliver.py  2007-05-29 22:01:19 UTC (rev 
5818)
+++ opencore/trunk/opencore/project/deliver.py  2007-05-29 22:03:25 UTC (rev 
5819)
@@ -3,8 +3,6 @@
 from cStringIO import StringIO
 from opencore.interfaces import IProject
 from opencore.interfaces.event import IAfterProjectAddedEvent, 
IAfterSubProjectAddedEvent
-from opencore.redirect import get_info
-from opencore.redirect.interfaces import IHostInfo
 from restclient import GET, POST, PUT, DELETE
 from zope.app.container.interfaces import IObjectMovedEvent
 from zope.app.event import IObjectCreatedEvent
@@ -14,8 +12,9 @@
 import simplejson
 
 def service_url(project):
-    hostinfo = getUtility(IHostInfo)
-    return "http://%s.%s/.deliverance"; %(project.getId(), hostinfo.host)
+    # XXX FIXME Subprojects... vhosting baseurl comes from where now ? 
+    host = 'openplans.org'
+    return "http://%s.%s/.deliverance"; %(project.getId(), base_host)
 
 @adapter(IAfterProjectAddedEvent)
 def init_parent_vhoster(event):
@@ -25,6 +24,10 @@
 
 @adapter(IAfterSubProjectAddedEvent)
 def init_subproject_vhoster(event):
+
+    # XXX probably we want to post to an internal local trusted URL
+    # and set the HOST header ...
+    
     url = service_url(event.project)
     out = StringIO()
     simplejson.dump(out)

Modified: opencore/trunk/opencore/project/handler.py
===================================================================
--- opencore/trunk/opencore/project/handler.py  2007-05-29 22:01:19 UTC (rev 
5818)
+++ opencore/trunk/opencore/project/handler.py  2007-05-29 22:03:25 UTC (rev 
5819)
@@ -30,7 +30,7 @@
 
     # add defaulting redirect hooks(may be overwritten by other
     # events)
-    redirect.activate(instance, explicit=False)
+    redirect.activate(instance)
     
     # ugh... roster might have been created by an event before a
     # team was associated (in _initializeProject), need to fix up
@@ -74,7 +74,8 @@
     parent_path = redirect.pathstr(parent)
     parent_info[child_id] = child_path
     child_url = "%s/%s" %(parent_info.url, child_id) 
-    redirect.activate(child, url=child_url, parent=parent_path)
+    child_info = redirect.activate(child, url=child_url)
+    child_info.parent = parent_path
 
 
 @adapter(IProject, IObjectModifiedEvent)
@@ -128,6 +129,6 @@
 def add_redirection_hooks(container, ignore=[]):
     for obj in container.objectValues():
         if IProject.providedBy(obj) and obj.getId() not in ignore:
-            redirect.activate(obj, explicit=False)
+            redirect.activate(obj)
             
     

Modified: opencore/trunk/opencore/siteui/configure.zcml
===================================================================
--- opencore/trunk/opencore/siteui/configure.zcml       2007-05-29 22:01:19 UTC 
(rev 5818)
+++ opencore/trunk/opencore/siteui/configure.zcml       2007-05-29 22:03:25 UTC 
(rev 5819)
@@ -19,14 +19,6 @@
      allowed_interface=".interfaces.IMemberInfo"
      />
 
-  <browser:page
-     for=".interfaces.IMemberFolder"
-     class="opencore.redirect.Redirector"
-     permission="zope.Public"
-     attribute="redirect"
-     name="opencore.redirect"
-     />
-
   <subscriber handler=".member.create_home_directory"/>
 
   <include package=".menu" />
@@ -68,7 +60,6 @@
   <!-- dead chickens -->
   <include package="opencore.configuration" file="permissions.zcml" />
   <include package="Products.listen" file="permissions.zcml" />
-  <include package="opencore.redirect" file="meta.zcml" />
 
   <!-- browser:page for new topnav view -->
   <browser:page

Modified: opencore/trunk/opencore/siteui/member.py
===================================================================
--- opencore/trunk/opencore/siteui/member.py    2007-05-29 22:01:19 UTC (rev 
5818)
+++ opencore/trunk/opencore/siteui/member.py    2007-05-29 22:03:25 UTC (rev 
5819)
@@ -188,8 +188,10 @@
     parents = request.get('PARENTS', tuple())
 
     for parent in parents:
-        # check the request for a redirected project
+        # check the request for a greedy project project,
+        # ie one that is redirected and marked with IAddSubProject
         if (redirect.IRedirected.providedBy(parent) and
+            IAddSubProject.providedBy(parent) and 
             IProject.providedBy(parent)):
             return parent
         
@@ -201,7 +203,8 @@
         folder_id = folder.getId()
         folder_path = "%s/people/%s" % (parent_info.url, folder_id)
         return redirect.activate(folder, url=folder_path)
-    return redirect.activate(folder, explicit=False)
+    else:
+        return redirect.activate(folder)
 
 
 



--
Archive: 
http://www.openplans.org/projects/opencore/lists/openplans-svn/archive/2007/05/1180476206386
To unsubscribe send an email with subject unsubscribe to [EMAIL PROTECTED]  
Please contact [EMAIL PROTECTED] for questions.

Reply via email to