Access Rights

AcyMailing installs files in the following folders. Please first make sure those folders are writeable before trying to install AcyMailing :

  • Joomla / Administrator / Components
  • Joomla / Components
  • Joomla / Media
  • Joomla / Modules
  • Joomla / Plugins
  • Joomla / Plugins / System
  • Joomla / Language / en-GB
  • Joomla / tmp

For the update process, please make sure the following folders are writeable:

  • Joomla / Administrator / Components / com_acymailing
  • Joomla / Components / com_acymailing
  • Joomla / Media / com_acymailing
  • Joomla / Modules / mod_acymailing
  • Joomla / Plugins / acymailing
  • Joomla / Plugins / System
  • Joomla / Language / en-GB
  • Joomla / tmp
If you have errors regarding the copy of files, it's likely to be because of access right issues. You should look at these documentation pages of Joomla:

Install via FTP

If you have difficulties to install AcyMailing, you may want to try to install it via FTP.
This way, Joomla won't have to upload the AcyMailing package on your website so the installation will be much faster.

  • Extract your AcyMailing package in a folder called "acymailing" on your own computer.

 

  • Open your FTP software (FileZilla for example), connect to your website and upload the folder "acymailing" in the temporary folder of your website : /tmp/

 

  • Go to your Joomla Installer manager on your website backend and specify the path of your folder in the input "Install from Directory" : "\home\...\tmp\acymailing".

 

  • Click on the button "Install"... the install process should be much faster and will enable you to successfully install AcyMailing.

Blank page

A blank page does not help us to determine what could be the problem so if you get a blank page (an entire white screen without anything written on it), please make sure that your PHP configuration enables you to see errors and if not, edit your php.ini file and search for the string parameter display_errors.
This parameter should be turned On : display_errors = On.
If it's not the case, please edit your php.ini file, modify this line, save your file and then restart your server and try again to install AcyMailing.
You should not see a blank screen any more and the error message will help us a lot to fix the problem.

You don't have access to your php.ini file?
Please add this code at the top of your index.php file (front-end or back-end... depending on where you have the blank page) on your website:

Show/Hide php code

View source
<?php error_reporting(E_ALL);
 ini_set("display_errors", 1); ?>

You can also turn ON the Joomla debug mode (Site -> Global Configuration -> System -> Debug System : Yes), it may display an error.

If you can not see any error, please try to install AcyMailing via FTP, it solves more than half of the installation issues.

 

-1 - an error has occurred ( It was not possible to copy the selected file. )

An error occured

This error message is displayed when Joomla can not copy a folder from the temp folder to the destination folder.

It's usually because of access rights and you should make sure the AcyMailing folders are writeable (see above).

If it does not solve the issue, please edit the file libraries/joomla/filesystem/folder.php

Around line 93 AND 122, please replace:

Show/Hide php code

View source
return JError::raiseError(-1, JText::_('Copy failed'));

by

Show/Hide php code

View source
return JError::raiseError(-1, JText::_('Copy failed').'  '.$sfid.' => '.$dfid);

 

It won't solve the problem but at least if you try to install again AcyMailing, you will see a much better error message telling you what folder is not writeable.
That way you can move forward by fixing the permission issue on that folder and install again AcyMailing.

 

This kind of error can be automatically solved by enabling the FTP layer on the Joomla configuration page (or turning it OFF if it was enabled).

 

An error has occurred ( Copy failed )

Copy failed

Same error as above... And to check what's the issue, please edit the file libraries/joomla/filesystem/folder.php

Around line 98 AND 137, please replace:

Show/Hide php code

View source
return JError::raiseError(-1, JText::_('JLIB_FILESYSTEM_ERROR_COPY_FAILED'));

by

Show/Hide php code

View source
return JError::raiseError(-1, JText::_('JLIB_FILESYSTEM_ERROR_COPY_FAILED').'  '.$sfid.' => '.$dfid);

Then try to install again AcyMailing, you will see a more explicit error message and you can then change the access rights on the destination folder.

 

-1 - copy file failed

On J3, you may have the error "copy file failed" when you install an extension.
Some folders may not have the right access level.
To know exactly which one, edit the file libraries/joomla/filesystem/folder.php
Around line 150 AND 104 you will see:

Show/Hide php code

View source
throw new RuntimeException('Copy file failed', -1);

Please replace it by:

Show/Hide php code

View source
throw new RuntimeException('Copy file failed from '.$sfid.' to '.$dfid, -1);

That won't fix the issue but at least you will know exactly what file is causing the issue and you can then check the access level.

-1 - cannot create destination folder

On J3, you may have the error "cannot create destination folder" when you install an extension.
Some folders may not have the right access level.
To know exactly which one, edit the file libraries / joomla / filesystem / folder.php
Around line 65 you will see:

Show/Hide php code

View source
throw new RuntimeException('Cannot create destination folder', -1);

Please replace it by:

Show/Hide php code

View source
throw new RuntimeException('Cannot create destination folder: '.$dest, -1);

That won't fix the issue but at least you will know exactly what folder is causing the issue and you can then check the access level of its parent folder.

Unable to create the target folder

This error occurs if Joomla can not create a folder.

Please edit the file libraries/joomla/filesystem/folder.php
Around line 61 you should see:

Show/Hide php code

View source
return JError::raiseError(-1, JText::_('JLIB_FILESYSTEM_ERROR_FOLDER_CREATE'));

that you should replace by:

Show/Hide php code

View source
return JError::raiseError(-1, JText::_('JLIB_FILESYSTEM_ERROR_FOLDER_CREATE').' : '.$dest);

So next time you try to install Acy, you will get a better error message and you should check why the folder could not be created (usually an access right issue)

 

JFolder::create: Could not create directory
Unable to create destination
Unable to find install package

Could not create directory

This error can occur if Joomla is not able to copy your package from your computer to your server.

It can be because you don't have enough rights on your tmp folder or because your tmp folder is not the right one.

Please edit the file libraries/joomla/filesystem/folder.php and around line 234 replace:

Show/Hide php code

View source
if (!$ret = @mkdir($path, $mode)) {
 @umask($origmask);
JError::raiseWarning(
 'SOME_ERROR_CODE',
 'JFolder::create: ' . JText::_('Could not create directory'),
 'Path: ' . $path
 );
return false;
 }

by:

Show/Hide php code

View source
if (!$ret = mkdir($path, $mode)) {
 umask($origmask);
 JError::raiseWarning(
 'SOME_ERROR_CODE',
 'JFolder::create: ' . JText::_('Could not create directory').' Path: ' . $path.' Your website is installed on: '.JPATH_SITE
 );
 return false;
 }

So unfortunately it won't fix the problem but if you reinstall AcyMailing, you will get a much better error message.

 

JFolder::create: Path not in open_basedir paths - Unable to create destination

Path not in open_basedir

This issue usually happens when the "path to temp folder" specified in your Joomla configuration page is not the right one...

This path should be the absolute path to your tmp folder, it should not be an "http://" link.

You can install AcyMailing via FTP, that will avoid that issue but you can also make sure your path is the right one.

If you don't know the path you should use, you can try with /tmp which will do the job most of the time.

 

Please enter a package directory
Unable to find install package

Enter package directory

This error can happen if you didn't enter a directory (or didn't enter the right one) if you try to install via the FTP method.

Modify the file administrator\components\com_installer\models\install.php

Around line 177 you should see:

Show/Hide php code

View source
if (!is_dir($p_dir)) {
 JError::raiseWarning('SOME_ERROR_CODE', JText::_('Please enter a package directory'));
 return false;
 }

Replace it by:

Show/Hide php code

View source
if (!is_dir($p_dir)) {
 JError::raiseWarning('SOME_ERROR_CODE', JText::_('Please enter a package directory').' | Example : '.JPATH_SITE.DS.'tmp');
 return false;
 }

Try to install again... you will get a better error message with the path you should normally use if you install via FTP.

 

This error may also occur on J2.5, you should edit the file administrator\components\com_installer\models\install.php

Around line 203 you should see:

Show/Hide php code

View source
if (!is_dir($p_dir)) {
 JError::raiseWarning('', JText::_('COM_INSTALLER_MSG_INSTALL_PLEASE_ENTER_A_PACKAGE_DIRECTORY'));
 return false;
 }

Which should be replaced by:

Show/Hide php code

View source
if (!is_dir($p_dir)) {
 JError::raiseWarning('', JText::_('COM_INSTALLER_MSG_INSTALL_PLEASE_ENTER_A_PACKAGE_DIRECTORY').' | Example : '.JPATH_SITE.DS.'tmp');
 return false;
 }

 

 

Warning! Failed to move file.

Failed to move file

Modify the file libraries\joomla\filesystem\file.php

Around line 348, you will see:

Show/Hide php code

View source
JError::raiseWarning(21, JText::_('WARNFS_ERR02'));

Replace it by:

Show/Hide php code

View source
JError::raiseWarning(21, JText::_('WARNFS_ERR02').' FROM '.$src.' TO '.$dest);

Apply the exact same modification on line 358.

 

Then try to install again AcyMailing, you will still get an error message but at least you will know what folder is causing the issue so you can check the access right or make sure your tmp folder has the right path.

Unable to write entry - JInstaller: :Install: Cannot find XML setup file

Unable to write entry

This error occurs when the package could not be extracted and so the XML file is not found.

The easiest way to avoid that is to install AcyMailing via FTP.

 

Component Install: DB function reports no errors

  • JFTP: :delete: Bad response
  • JFTP: :delete: Bad response
  • Error installing component

Error delete bad response

 

This error is apparently due to the fact AcyMailing could not be installed properly and there are probably still some instances of AcyMailing on your Extensions Manager.

Please go on your Extensions Manager (click on the menu "Manage"), select AcyMailing (the component) and uninstall it.

Once uninstalled, please access your phpMyAdmin and execute this query (don't forget to replace #__ by your own table prefix):

  • DELETE FROM `#__menu` WHERE link LIKE '%com_acymailing%';
  • DELETE FROM #__extensions WHERE element = 'com_acymailing';
  • DELETE FROM #__assets WHERE name='com_acymailing';

Then install AcyMailing again... it should work.

 

Error Building Admin Menus

Error building admin menus

AcyMailing will be installed properly but then you won't be able to access it via the components menu on your Joomla back-end.

To fix that, you should uninstall AcyMailing via the Joomla Extensions manager.

Once uninstalled, please access your phpMyAdmin and execute this query (don't forget to replace #__ by your own table prefix):

  • DELETE FROM `#__menu` WHERE link LIKE '%com_acymailing%';
  • DELETE FROM #__extensions WHERE element = 'com_acymailing';
  • DELETE FROM #__assets WHERE name='com_acymailing';

Then install AcyMailing again... it should work and you will new see AcyMailing under your component menu.

 

JTableMenu::_getNode Failed

JTable menu getNode failed

AcyMailing will be installed properly but you won't see the admin components menu.

This issue occurs when your menu ID 1 is not in your database any more (for an unknown reason...)

You have to create it back by executing this query on your phpMyAdmin:

Show/Hide php code

View source
INSERT INTO `#__menu` (`id` ,`menutype` ,`title` ,`alias` ,`note` ,`path` ,`link` ,`type` ,`published` ,`parent_id` ,`level` ,`component_id` ,`ordering` ,`checked_out` ,`checked_out_time` ,`browserNav` ,`access` ,`img` ,`template_style_id` ,`params` ,`lft` ,`rgt` ,`home` ,`language` ,`client_id` ) VALUES ( '1', '', 'Menu_Item_Root', 'root', '', '', '', '', '1', '0', '0', '0', '0', '0', '0000-00-00 00:00:00', '0', '0', '', '0', '', '0', '0', '0', '*', '0')

Then reinstall AcyMailing.

This solution has been found thanks to this post on the Joomla forum from Lieven Borms.

 

An error has occurred. 404 component not found

Component not found

If after installing AcyMailing you have this "404 component not found" error message, you should first try to clear your cache.

If this is not enough, then it's probably because the extension is not enabled on the Joomla Extensions Manager...
Access the Joomla Extensions Manager and click on the "Manage" link on the left menu to check the AcyMailing component and make sure the Status is enabled.
If you see several instances of the AcyMailing Component there, you may want to uninstall all of them, delete the components/com_acymailing and administrator/components/com_acymailing folders and then reinstall AcyMailing so you only have a single instance of the AcyMailing component.

Component not found solution

 

Frequently Asked Questions

Why don't you improve the install process instead of providing documentation?

All the above issues occur while installing the Extension.

Joomla itself handles that part, not AcyMailing... So the only thing we can do is to provide you with a documentation to help you out.

The Joomla installer could be improved with the above suggestions (and it's improved quite often so don't forget to update your Joomla installation!)

Follow us :