Anmelden
Ich möchte für die nächsten 30 Tagen angemeldet bleiben
Deutsch
Several pages in the usergroup are available in English. Click on english to visit these pages.

Blogs

19.10.2010
DNN 5 Manifest sauber aufsetzen (Philipp Becker)
Ich hatte gerade einen Kunden in der Leitung, bei dem die Installation eines unserer Module einfach nicht klappen wollte. Das Problem: Während der Installation schaltete der IE 8 in den Kompatibilitätsmodus um, der DNN Installer brach zusammen und Scripte wurden nicht korrekt abgearbeitet. Im Firefox lief die Installation einfach durch.

Als Modulentwickler bin ich in solchen Situation natürlich geneigt, die Schuld auf das Skin, den DNN Installer oder am besten gleich Microsoft selbst zu schieben - so such in diesem Fall. Ich habe dem Kunden schnell beweisen wollen, dass ich da nichts machen kann und habe mal eben auf dem Zielportal ein anderes Modul installiert (Simple Gallery in diesem Fall, weil Ventrians Module für Qualität bekannt sind...) und siehe da - die Installation lief problemlos durch - auch im IE 8.

Mein Modul ist also doch Schuld. Und wie sich herausstellt, ist der Fix ganz einfach. In dem von mir verwendeten Manifest wird nämlich HTML Code, eingebettet in einen CDATA Block, verwendet und wie sich weiter herausstellt, findet sich da am Ende ein nicht geschlossener <p> Tag. Und weil der DocType des Skins entsprechend streng war, kam es zu dem Fehler.

Ergo: HTML im Manifest verwenden sieht für den Endanwender schick aus, muss aber sauber implementiert sein:

<license>
  <![CDATA[ 
    <h3>dnnWerk, Philipp Becker END USER LICENSE AGREEMENT (EULA)</h3>
      <p>
This is a CONTRACT between you (either an individual or a single entity) and dnnWerk, Philipp Becker, which covers your use of "Nuntio Articles" and related software components. All such software is referred to herein as the "Software Product." A software license issued to a designated user only by dnnWerk, Philipp Becker or its authorized agents is required for each user of the Software Product. If you do not agree to the terms of this EULA, then do not install or use the Software Product or the Software Product License. By explicitly accepting this End-User License Agreement (EULA) you are acknowledging and agreeing to be bound by the following terms:
      </p>
      ...(gekürzt)...
      <p>
If you have any questions about this EULA, or if you want to contact dnnWerk, Philipp Becker for any reason, please direct all correspondence to: dnnWerk, Philipp Becker, sales@dnnwerk.de
      </p>
]]> 
</license>

Kommentare: 1

Michael Tobisch meint

Hallo Philipp, da kann man keinen Zeilevorschub eingeben, darum hier jetzt Spaghetti-Kommentar: Hab auch eine Zeit gebraucht, bis ich überzogen habe, dass man mit CDATA ganz normales HTML eingeben kann - davor hab ich halt immer sowas wi &lt;p&gt; usw. gemacht - ist halt m&uuml;hsam zu warten..
# 19.10.2010 19:57