Index: packages/rules/container.cfc
===================================================================
RCS file: /cvs/farcry/farcry_core/packages/rules/container.cfc,v
retrieving revision 1.23
diff -u -r1.23 container.cfc
--- packages/rules/container.cfc	21 May 2004 00:26:51 -0000	1.23
+++ packages/rules/container.cfc	13 Oct 2004 20:30:13 -0000
@@ -12,9 +12,15 @@
 		<cfargument name="parentobjectid" type="string" required="No" default="" hint="The objectid of the object that this container is rendered to">
 		<cfargument name="dsn" type="string" required="false" default="#application.dsn#">
 		<cfset var stNewObject = structNew()>
+		<cfset var tempObject = structNew()>
 		
-		<cfscript>
-			stNewObject = super.createData(arguments.stProperties);
+		<cfscript>		
+			//this is a hack, create a temp structure with the objectID and label of our new container for creation
+			tempObject.objectid = arguments.stProperties.objectid;
+			tempObject.label = arguments.stProperties.label;		
+			stNewObject = super.createData(tempObject);
+			//part 2 of hack, use setData to actually set the properties of our new container
+			super.setData(arguments.stProperties);			
 			if (len(arguments.parentObjectid))
 				createDataRefContainer(objectid=arguments.parentobjectid,containerid=stNewObject.objectid);
 		</cfscript>
@@ -136,9 +142,7 @@
 					st.label = replace(st.label,arguments.srcObjectId,arguments.destObjectId,"ALL");
 					st.objectid = createUUID();
 					//now we want to create this new container
-					createData(stProperties=st,dsn=arguments.dsn);
-					//and log a reference to it in refContainers
-					createDataRefContainer(objectid=arguments.destObjectid,containerid=st.objectid);
+					createData(stProperties=st,parentobjectid=arguments.destObjectid,dsn=arguments.dsn);
 				}
 				
 			}
