Fixed some issues with object type pips
authorMarcel Werk <burntime@woltlab.com>
Wed, 19 Oct 2011 13:47:56 +0000 (15:47 +0200)
committerMarcel Werk <burntime@woltlab.com>
Wed, 19 Oct 2011 13:47:56 +0000 (15:47 +0200)
com.woltlab.wcf/packageInstallationPlugin.xml
wcfsetup/install/files/lib/system/package/plugin/ObjectTypeDefinitionPackageInstallationPlugin.class.php
wcfsetup/install/files/lib/system/package/plugin/ObjectTypePackageInstallationPlugin.class.php

index 9deed6ac630723ae4a70f78526345f8a16cf9d24..f3cb59da1e3132256e7b150695a0b65500a6bafc 100644 (file)
@@ -11,7 +11,7 @@
                <pip name="file">wcf\system\package\plugin\FilePackageInstallationPlugin</pip>
                <pip name="language">wcf\system\package\plugin\LanguagePackageInstallationPlugin</pip>
                <pip name="objectType">wcf\system\package\plugin\ObjectTypePackageInstallationPlugin</pip>
-               <pip name="objectTypeDefinition">wcf\system\package\plugin\ObjectTypeDefinitionInstallationPlugin</pip>
+               <pip name="objectTypeDefinition">wcf\system\package\plugin\ObjectTypeDefinitionPackageInstallationPlugin</pip>
                <pip name="option">wcf\system\package\plugin\OptionPackageInstallationPlugin</pip>
                <pip name="pageMenu">wcf\system\package\plugin\PageMenuPackageInstallationPlugin</pip>
                <pip name="script">wcf\system\package\plugin\ScriptPackageInstallationPlugin</pip>
index 5ae27eb0c8e9a5d830765a3930dd645b87f684b3..d350ec3f9a9d9fee9663303c372bef8be5aef5ff 100644 (file)
@@ -50,7 +50,7 @@ class ObjectTypeDefinitionPackageInstallationPlugin extends AbstractXMLPackageIn
        protected function prepareImport(array $data) {
                return array(
                        'interfaceName' => (isset($data['elements']['interfacename']) ? $data['elements']['interfacename'] : ''),
-                       'definitionName' => $data['attributes']['name']
+                       'definitionName' => $data['elements']['name']
                );
        }
        
index f74e728138eb8f2f7b69d3db8b00e69fe6479d35..d82c43c0667dd33b3e0d7bb7562243000c606331 100644 (file)
@@ -37,7 +37,7 @@ class ObjectTypePackageInstallationPlugin extends AbstractXMLPackageInstallation
         */
        protected function getDefinitionID($definitionName) {
                // get object type id
-               $sql = "SELECT          notification_object_type.definitionID
+               $sql = "SELECT          object_type_definition.definitionID
                        FROM            wcf".WCF_N."_package_dependency package_dependency,
                                        wcf".WCF_N."_object_type_definition object_type_definition
                        WHERE           object_type_definition.packageID = package_dependency.dependency
@@ -57,7 +57,7 @@ class ObjectTypePackageInstallationPlugin extends AbstractXMLPackageInstallation
        protected function handleDelete(array $items) {
                $sql = "DELETE FROM     wcf".WCF_N."_".$this->tableName."
                        WHERE           objectType = ?
-                                       definitionID = ?
+                                       AND definitionID = ?
                                        AND packageID = ?";
                $statement = WCF::getDB()->prepareStatement($sql);
                foreach ($items as $item) {
@@ -75,7 +75,7 @@ class ObjectTypePackageInstallationPlugin extends AbstractXMLPackageInstallation
        protected function prepareImport(array $data) {
                return array(
                        'definitionID' => $this->getDefinitionID($data['elements']['definitionname']),
-                       'objectType' => $data['attributes']['name'],
+                       'objectType' => $data['elements']['name'],
                        'className' => (isset($data['elements']['classname']) ? $data['elements']['classname'] : ''),
                        'additionalData' => serialize(isset($data['elements']['additionaldata']) ? $data['elements']['additionaldata'] : array())
                );
@@ -88,7 +88,7 @@ class ObjectTypePackageInstallationPlugin extends AbstractXMLPackageInstallation
                $sql = "SELECT  *
                        FROM    wcf".WCF_N."_".$this->tableName."
                        WHERE   objectType = ?
-                               definitionID = ?
+                               AND definitionID = ?
                                AND packageID = ?";
                $parameters = array(
                        $data['objectType'],