Author: jablko
Date: Wed Sep  2 16:42:48 2009
New Revision: 3149

Log:
Improve edit digital object routing -- force

Modified:
   trunk/apps/qubit/config/routing.yml
   trunk/apps/qubit/modules/digitalobject/actions/editAction.class.php

Modified: trunk/apps/qubit/config/routing.yml
==============================================================================
--- trunk/apps/qubit/config/routing.yml Wed Sep  2 16:39:18 2009        (r3148)
+++ trunk/apps/qubit/config/routing.yml Wed Sep  2 16:42:48 2009        (r3149)
@@ -106,6 +106,14 @@
   url: /digitalobject/edit/:id
   param: { module: digitalobject, action: edit }
 
+createDigitalObject:
+  url: /digitalobject/create
+  param: { module: digitalobject, action: edit }
+
+digitalObjectCreate:
+  url: /digitalobject/create
+  param: { module: digitalobject, action: create }
+
 informationObjectCreate:
   url: /informationobject/create/:informationobject_template
   param: { module: informationobject, action: create }

Modified: trunk/apps/qubit/modules/digitalobject/actions/editAction.class.php
==============================================================================
--- trunk/apps/qubit/modules/digitalobject/actions/editAction.class.php Wed Sep 
 2 16:39:18 2009        (r3148)
+++ trunk/apps/qubit/modules/digitalobject/actions/editAction.class.php Wed Sep 
 2 16:42:48 2009        (r3149)
@@ -29,12 +29,30 @@
 {
   public function execute($request)
   {
-    $this->informationObject = QubitInformationObject::getById($request->id);
+    $this->digitalObject = new QubitDigitalObject;
 
-    // Check that object exists and that it is not the root
-    if (!isset($this->informationObject) || 
!isset($this->informationObject->parent))
+    $this->informationObject = new QubitInformationObject;
+
+    if (isset($request->id))
+    {
+      $this->digitalObject = QubitDigitalObject::getById($request->id);
+
+      if (!isset($this->digitalObject))
+      {
+        $this->forward404();
+      }
+
+      $this->informationObject = $this->digitalObject->informationObject;
+    }
+    else if (isset($request->informationObject))
     {
-      $this->forward404();
+      $this->informationObject = 
QubitInformationObject::getById($request->informationObject);
+
+      // Check that object exists and that it is not the root
+      if (!isset($this->informationObject) || 
!isset($this->informationObject->parent))
+      {
+        $this->forward404();
+      }
     }
 
     // Get 'show as compound digital object' toggle value

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.ca/group/qubit-commits?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to