125 lines
3.7 KiB
PHP
125 lines
3.7 KiB
PHP
<?php
|
|
/**
|
|
* @package Joomla.Component.Builder
|
|
*
|
|
* @created 30th April, 2015
|
|
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
|
|
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
|
|
* @copyright Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved.
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
|
|
// No direct access to this file
|
|
defined('_JEXEC') or die('Restricted access');
|
|
?>
|
|
###BOM###
|
|
|
|
// No direct access to this file
|
|
defined('_JEXEC') or die('Restricted access');
|
|
|
|
JHTML::_('behavior.modal');
|
|
|
|
/**
|
|
* Script File of ###Component### Component
|
|
*/
|
|
class com_###component###InstallerScript
|
|
{
|
|
/**
|
|
* Constructor
|
|
*
|
|
* @param JAdapterInstance $parent The object responsible for running this script
|
|
*/
|
|
public function __construct(JAdapterInstance $parent) {}
|
|
|
|
/**
|
|
* Called on installation
|
|
*
|
|
* @param JAdapterInstance $parent The object responsible for running this script
|
|
*
|
|
* @return boolean True on success
|
|
*/
|
|
public function install(JAdapterInstance $parent) {}
|
|
|
|
/**
|
|
* Called on uninstallation
|
|
*
|
|
* @param JAdapterInstance $parent The object responsible for running this script
|
|
*/
|
|
public function uninstall(JAdapterInstance $parent)
|
|
{###UNINSTALLSCRIPT###
|
|
// little notice as after service, in case of bad experience with component.
|
|
echo '<h2>Did something go wrong? Are you disappointed?</h2>
|
|
<p>Please let me know at <a href="mailto:###AUTHOREMAIL###">###AUTHOREMAIL###</a>.
|
|
<br />We at ###COMPANYNAME### are committed to building extensions that performs proficiently! You can help us, really!
|
|
<br />Send me your thoughts on improvements that is needed, trust me, I will be very grateful!
|
|
<br />Visit us at <a href="###AUTHORWEBSITE###" target="_blank">###AUTHORWEBSITE###</a> today!</p>';
|
|
}
|
|
|
|
/**
|
|
* Called on update
|
|
*
|
|
* @param JAdapterInstance $parent The object responsible for running this script
|
|
*
|
|
* @return boolean True on success
|
|
*/
|
|
public function update(JAdapterInstance $parent){}
|
|
|
|
/**
|
|
* Called before any type of action
|
|
*
|
|
* @param string $type Which action is happening (install|uninstall|discover_install|update)
|
|
* @param JAdapterInstance $parent The object responsible for running this script
|
|
*
|
|
* @return boolean True on success
|
|
*/
|
|
public function preflight($type, JAdapterInstance $parent)
|
|
{
|
|
// get application
|
|
$app = JFactory::getApplication();
|
|
// is redundant or so it seems ...hmmm let me know if it works again
|
|
if ($type === 'uninstall')
|
|
{
|
|
return true;
|
|
}
|
|
// the default for both install and update
|
|
$jversion = new JVersion();
|
|
if (!$jversion->isCompatible('3.8.0'))
|
|
{
|
|
$app->enqueueMessage('Please upgrade to at least Joomla! 3.8.0 before continuing!', 'error');
|
|
return false;
|
|
}
|
|
// do any updates needed
|
|
if ($type === 'update')
|
|
{###PREUPDATESCRIPT###
|
|
}
|
|
// do any install needed
|
|
if ($type === 'install')
|
|
{###PREINSTALLSCRIPT###
|
|
}
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* Called after any type of action
|
|
*
|
|
* @param string $type Which action is happening (install|uninstall|discover_install|update)
|
|
* @param JAdapterInstance $parent The object responsible for running this script
|
|
*
|
|
* @return boolean True on success
|
|
*/
|
|
public function postflight($type, JAdapterInstance $parent)
|
|
{
|
|
// get application
|
|
$app = JFactory::getApplication();###MOVEFOLDERSSCRIPT###
|
|
// set the default component settings
|
|
if ($type === 'install')
|
|
{###POSTINSTALLSCRIPT###
|
|
}
|
|
// do any updates needed
|
|
if ($type === 'update')
|
|
{###POSTUPDATESCRIPT###
|
|
}
|
|
return true;
|
|
}###MOVEFOLDERSMETHOD###
|
|
}
|