array_push($parentResourceArray, $sanitizedInstance); } //get children resources $childResourceArray = array(); foreach ($resource->getChildResources() as $instance) { foreach (array_keys($instance->attributeNames) as $attributeName) { $sanitizedInstance[$attributeName] = $instance->{$attributeName}; } $sanitizedInstance[$instance->primaryKeyName] = $instance->primaryKey; array_push($childResourceArray, $sanitizedInstance); } //get aliases $sanitizedInstance = array(); $instance = new Alias(); $aliasArray = array(); foreach ($resource->getAliases() as $instance) { foreach (array_keys($instance->attributeNames) as $attributeName) { $sanitizedInstance[$attributeName] = $instance->{$attributeName}; } $sanitizedInstance[$instance->primaryKeyName] = $instance->primaryKey; $aliasType = new AliasType(new NamedArguments(array('primaryKey' => $instance->aliasTypeID))); $sanitizedInstance['aliasTypeShortName'] = $aliasType->shortName; array_push($aliasArray, $sanitizedInstance); } //get organizations (already returned in an array) $orgArray = $resource->getOrganizationArray(); $orderType = new OrderType(new NamedArguments(array('primaryKey' => $resource->orderTypeID))); $acquisitionType = new AcquisitionType(new NamedArguments(array('primaryKey' => $resource->acquisitionTypeID))); //get purchase sites $sanitizedInstance = array(); $instance = new PurchaseSite();
foreach ($parentResourcesArray as $parentResource) { $resourceRelationship = new ResourceRelationship(); $resourceRelationship->resourceID = $resourceID; $resourceRelationship->relatedResourceID = $parentResource; $resourceRelationship->relationshipTypeID = '1'; //hardcoded because we're only allowing parent relationships try { $resourceRelationship->save(); } catch (Exception $e) { echo $e->getMessage(); } } } //next, delete and then re-insert the aliases $alias = new Alias(); foreach ($resource->getAliases() as $alias) { $alias->delete(); } $aliasTypeArray = array(); $aliasTypeArray = explode(':::', $_POST['aliasTypes']); $aliasNameArray = array(); $aliasNameArray = explode(':::', $_POST['aliasNames']); foreach ($aliasTypeArray as $key => $value) { if ($value && $aliasNameArray[$key]) { $alias = new Alias(); $alias->resourceID = $resourceID; $alias->aliasTypeID = $value; $alias->shortName = $aliasNameArray[$key]; $alias->save(); } }