<?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### }