);
}
+ if ($element->nodeValue === $this->packageInfo['name']) {
+ throw new PackageValidationException(
+ PackageValidationException::SELF_EXCLUDE,
+ ['packageName' => $element->nodeValue]
+ );
+ }
+
// read attributes
$data = ['name' => $element->nodeValue];
$attributes = $xpath->query('attribute::*', $element);
*/
const INVALID_EXCLUDED_PACKAGE_VERSION_NUBMER = 19;
+ /**
+ * the package excludes itself
+ * @var int
+ * @since 5.5
+ */
+ const SELF_EXCLUDE = 20;
+
/**
* Creates a new PackageArchiveValidationException.
*
<item name="wcf.acp.package.validation.errorCode.17"><![CDATA[Die <void/>-Anweisung ist in den Installations-Anweisungen unzulässig.]]></item>
<item name="wcf.acp.package.validation.errorCode.18"><![CDATA[Die bereits installierte App „{$application->getPackage()->package}“ verwendet die gleiche App-Abkürzung.]]></item>
<item name="wcf.acp.package.validation.errorCode.19"><![CDATA[Die Versionsnummer „{$version}“ des inkompatiblen Paketes „{$packageName}“ ist ungültig.]]></item>
+ <item name="wcf.acp.package.validation.errorCode.20"><![CDATA[Das Paket „{$packageName}“ definiert sich selber als inkompatibel.]]></item>
<item name="wcf.acp.package.validation.failed"><![CDATA[Das hochgeladene Paket kann nicht installiert werden, bitte {if LANGUAGE_USE_INFORMAL_VARIANT}beachte{else}beachten Sie{/if} das unten stehende Prüfungsergebnis.]]></item>
<item name="wcf.acp.package.evaluation.expired"><![CDATA[Die Testphase von <strong>{$packageName}</strong> ist abgelaufen. Bitte aktualisiere{if !LANGUAGE_USE_INFORMAL_VARIANT}n Sie{/if} auf die aktuellste Version um diese Software weiterhin legal betreiben zu können.{if $pluginStoreFileID || $isWoltLab}<br>{if LANGUAGE_USE_INFORMAL_VARIANT}Du kannst{else}Sie können{/if} die aktuelle Version sicher und bequem <strong>{if $pluginStoreFileID}<a href="https://pluginstore.woltlab.com/file/{$pluginStoreFileID}/">im WoltLab Plugin-Store</a>{else}<a href="https://www.woltlab.com/purchase/">auf WoltLab.com</a>{/if}</strong> erwerben.{/if}]]></item>
<item name="wcf.acp.package.evaluation.pending"><![CDATA[Bei den folgenden installierten Apps handelt es sich um Testversionen, die am <strong>{$evaluationEndDate|plainTime}</strong> ({@$evaluationEndDate|dateDiff:TIME_NOW:true}) ablaufen. Mit Ablauf der Frist deaktiviert sich die App automatisch, es ist dann notwendig diese auf die endgültige Version zu aktualisieren, um den legalen Betrieb fortzusetzen.
<item name="wcf.acp.package.validation.errorCode.17"><![CDATA[The <void/> instruction may not be used in the install-instructions.]]></item>
<item name="wcf.acp.package.validation.errorCode.18"><![CDATA[The app “{$application->getPackage()->package}”, which is already installed, uses the same app abbreviation.]]></item>
<item name="wcf.acp.package.validation.errorCode.19"><![CDATA[The version “{$version}” of the incompatible package “{$packageName}” is invalid.]]></item>
+ <item name="wcf.acp.package.validation.errorCode.20"><![CDATA[The package “{$packageName}” excludes itself.]]></item>
<item name="wcf.acp.package.validation.failed"><![CDATA[The package cannot be installed, please review the validation results below.]]></item>
<item name="wcf.acp.package.evaluation.expired"><![CDATA[The evaluation period of <strong>{$packageName}</strong> has expired. For a legal use of this software, please update to the latest available version.{if $pluginStoreFileID || $isWoltLab}<br>The latest version can be purchased quickly and securely <strong>{if $pluginStoreFileID}<a href="https://pluginstore.woltlab.com/file/{$pluginStoreFileID}/">in the WoltLab Plugin-Store</a>{else}<a href="https://www.woltlab.com/purchase/">on WoltLab.com</a>{/if}</strong>.{/if}]]></item>
<item name="wcf.acp.package.evaluation.pending"><![CDATA[The evaluation period of the apps listed below will expire on <strong>{$evaluationEndDate|plainTime}</strong> ({@$evaluationEndDate|dateDiff:TIME_NOW:true}). The apps will automatically disable themselves after this date and become unusable, you'll need to install the latest versions of the apps to active them again.