Actions

Incorrect Install File

From Joomla! Documentation

Revision as of 06:47, 29 March 2009 by Jedbox (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This error will occur when the <installfile> tag in the XML install file for a component is incorrectly specified. Commonly this occurs when an extension developer specifies the files in their administrator files section in addition to specifying an install file. Typically this doesn't cause an issue because the installer would silently ignore the error and continue working, however due to a change in 1.5.10 to fix an issue when the tag is used properly this may cause issues with extensions that use 'method="upgrade"' for the extension install files.

The <installfile> tag itself will handle copying the file denoted by that location from the root of the installation package (where the XML install file is) to the administrator section of the component.

Everything that is stated about the installfile is the same as the uninstallfile.

Putting the installfile in a different directory

Say for example you didn't want the install files to live in the root of your extension but wanted to put them in a subfolder in your administrator section. You may already be doing this for pre-1.5.10 in an incorrect way.

If you create in the root of your install package a folder matching your preferred target folder (e.g. "install") and then locate the install and uninstall files in that directory then you can specify the following:

<installfile>install/install.php</installfile>

Doing this alone will cause your installation to still fail because in the administrator directory there still won't be an 'install' folder created. To solve this, create an 'install' folder in your administrator folder of the package and also place an 'index.html' file into this folder. Then in the files section for the administrator put the following line:

<folder>install</folder>

This will automatically create the install folder for you and copy the index.html file across. Then when the installer comes to copy the install file across both the source and destination files will exist properly.