Skip to content

added core files to repo #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,3 +40,6 @@ releases/
!.gitignore
!index.html
!index.php

setup/packages
setup/tmp
21 changes: 20 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,21 @@
#Quix Launcher
Quix Launcher to install and validate quix
Quix Launcher to install and validate quix


### Release Instructions

**Update `mainfest.xml`:**
1. Update the version number.
2. Update the download link.

**Update `iquix.php`:**
1. Update the version number.

**Create a ZIP Archive**:
1. Zip the entire directory, excluding `mainfest.xml`, `todo`, `.gitignore`, and `README.md`.


### **Upload ZIP Archive**:
```cmd
zip -r com_iquix_1.8.0.zip . -x "mainfest.xml" "todo" ".gitignore" "README.md"
```
Empty file added TODO
Empty file.
6 changes: 6 additions & 0 deletions access.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<access component="com_quix">
<section name="component">
<action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" />
</section>
</access>
6 changes: 6 additions & 0 deletions config.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<config>
<fieldset name="permissions" description="COM_IQUIX_JOOMLA_PERMISSIONS_DESC" label="COM_IQUIX_JOOMLA_PERMISSIONS">
<field name="rules" type="rules" component="com_iquix" filter="rules" validate="rules" label="Component Permissions" section="component" />
</fieldset>
</config>
55 changes: 55 additions & 0 deletions iquix.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
<?php
/**
* @package quix
* @copyright Copyright (C) 2010 - 2017 ThemeXpert.com. All rights reserved.
* @license GNU/GPL, see LICENSE.php
* quix is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
defined('_JEXEC') or die('Unauthorized Access');

use Joomla\CMS\Factory;
use Joomla\CMS\Filesystem\File;
use Joomla\CMS\Log\Log;
// define version
define('IQX_VERSION', '1.8.0');

if (defined('JDEBUG') && JDEBUG) {
Log::addLogger(array('text_file' => 'iquix.log.php'), Log::ALL, array('iquix'));
}

$app = Factory::getApplication();
$input = $app->input;
$exitInstallation = $input->get('exitInstallation', false, 'bool');

// Check if there's a file initiated for installation
$file = JPATH_ROOT . '/tmp/quix.installation';
if ($exitInstallation) {
if (File::exists($file)) {
File::delete($file);
return $app->redirect('index.php?option=com_quix');
}
}

// check if we need to proceed with installation
$launchInstaller = $input->get('launchInstaller', false, 'bool');
if ($launchInstaller) {
// Determines if the installation is a new installation or old installation.
$obj = new stdClass();
$obj->new = false;
$obj->step = 1;
$obj->status = 'installing';

$contents = json_encode($obj);

if (!File::exists($file)) {
File::write($file, $contents);
}
}

// finally check for setup view or not
require_once(dirname(__FILE__) . '/setup/bootstrap.php');
JExit();
37 changes: 37 additions & 0 deletions iquix.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="3.0" method="upgrade">
<name>com_iquix</name>
<creationDate>11th April 2018</creationDate>
<copyright>Copyright (C) 2015. All rights reserved.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<author>ThemeXpert</author>
<authorEmail>[email protected]</authorEmail>
<authorUrl>http://www.themexpert.com</authorUrl>
<version>1.8.0</version>
<description>Page builder for Joomla</description>
<scriptfile>script.php</scriptfile>

<languages folder="languages/site">
<language tag="en-GB">en-GB.com_iquix.ini</language>
</languages>

<administration>
<files folder="admin">
<folder>setup</folder>
<file>iquix.php</file>
<file>script.php</file>
<file>setup.html</file>
<file>config.xml</file>
<file>iquix.xml</file>
<file>access.xml</file>
</files>
<languages folder="languages/admin">
<language tag="en-GB">en-GB.com_iquix.ini</language>
<language tag="en-GB">en-GB.com_iquix.sys.ini</language>
</languages>
</administration>
<updateservers>
<!-- Note: No spaces or linebreaks allowed between the server tags -->
<server type="extension" priority="1" name="iQuix"><![CDATA[https://raw.githubusercontent.com/themexpert/iquix/master/mainfest.xml]]></server>
</updateservers>
</extension>
25 changes: 25 additions & 0 deletions languages/admin/en-GB.com_iquix.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
; @package Quix
; @copyright Copyright (C) 2009 - 2017 Stack Ideas Private Limited. All rights reserved.
; @license GNU/GPL, see LICENSE.php
; Quix is free software. This version may have been modified pursuant to the
; GNU General Public License, and as distributed it includes or is derivative of
; works licensed under the GNU General Public License or other free or open source
; software licenses. See COPYRIGHT.php for copyright notices and details.

COM_IQUIX="Quix installer"
COM_IQUIX_INSTALLATION_COMPLETE = "Complete"
COM_IQUIX_INSTALLATION_CACHECLEAN_SUCCESS = "Cache cleaned successfully!"

COM_QUIX_INSTALLATION_FIX_THIS = "Fix this"
COM_QUIX_INSTALLATION_PHP_VERSION_TIPS = "Quix recommand PHP7, but minimum requirement is: 5.6.0"
COM_QUIX_INSTALLATION_PHP_GD_TIPS = "GB library required!"
COM_QUIX_INSTALLATION_PHP_CURL_TIPS = "CURL support required"
COM_QUIX_INSTALLATION_PHP_MAGICQUOTES_TIPS = "PHP Magic quote should be disabled!"
COM_QUIX_INSTALLATION_PHP_MEMORYLIMIT_TIPS = "memory limit must be atleast 64MB"
COM_QUIX_INSTALLATION_MYSQL_VERSION_TIPS = "Minimum required version 5.0.4"
COM_QUIX_INSTALLATION_PHP_ZIP_TIPS = "ZIP extension is required for archive operation."
COM_QUIX_INSTALLATION_PHP_CTYPE_TIPS = "ctype function support is required!"
COM_QUIX_INSTALLATION_PHP_POST_MAX_SIZE_TIPS = "post_max_size php settings min 5MB"
COM_QUIX_INSTALLATION_PHP_MAX_EXECUTION_TIPS = "max_execution_time time config should be minimum 60"
COM_QUIX_INSTALLATION_ALLOW_URL_FOPEN_TIPS="allow_url_fopen is required to Install the package from Online Server."
COM_QUIX_INSTALLATION_FILEINFO_TIPS = "Reading fileinfo is required for installation process."
10 changes: 10 additions & 0 deletions languages/admin/en-GB.com_iquix.sys.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
; @package Quix
; @copyright Copyright (C) 2009 - 2017 Stack Ideas Private Limited. All rights reserved.
; @license GNU/GPL, see LICENSE.php
; Quix is free software. This version may have been modified pursuant to the
; GNU General Public License, and as distributed it includes or is derivative of
; works licensed under the GNU General Public License or other free or open source
; software licenses. See COPYRIGHT.php for copyright notices and details.

COM_IQUIX="Quix Installer"
COM_IQUIX_INSTALLATION_COMPLETE="Complete"
9 changes: 9 additions & 0 deletions languages/site/en-GB.com_iquix.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
; @package Quix
; @copyright Copyright (C) 2009 - 2017 Stack Ideas Private Limited. All rights reserved.
; @license GNU/GPL, see LICENSE.php
; Quix is free software. This version may have been modified pursuant to the
; GNU General Public License, and as distributed it includes or is derivative of
; works licensed under the GNU General Public License or other free or open source
; software licenses. See COPYRIGHT.php for copyright notices and details.

COM_IQUIX="Quix Installer"
16 changes: 16 additions & 0 deletions mainfest.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<updates>
<update>
<name>Quix Launcher</name>
<description>iQuix is an installer extension</description>
<element>com_iquix</element>
<type>component</type>
<version>1.8.0</version>
<client>site</client>
<infourl title="Quix Launcher">https://github.com/themexpert/iquix/releases/tag/v1.8.0</infourl>
<downloads>
<downloadurl type="full" format="zip">https://github.com/themexpert/iquix/releases/download/v1.8.0/com_iquix_1.8.0.zip</downloadurl>
</downloads>
<tags>
<tag>stable</tag>
</tags>
<targetplatform name="joomla" version="3|4|5" />
</update>
<update>
<name>Quix Launcher</name>
<description>iQuix is an installer extension</description>
Expand Down
103 changes: 103 additions & 0 deletions script.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
<?php
/**
* @package quix
* @copyright Copyright (C) 2010 - 2017 ThemeXpert.com. All rights reserved.
* @license GNU/GPL, see LICENSE.php
* quix is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
defined('_JEXEC') or die('Unauthorized Access');

class com_iQuixInstallerScript
{
/**
* Triggers before the installers are copied
*
* @since 1.0
* @access public
*/
public function postflight()
{
ob_start();
include(__DIR__ . '/setup.html');

$contents = ob_get_contents();
ob_end_clean();

echo $contents;
}

/**
* Triggers after the installers are copied
*
* @since 1.0
* @access public
*/
public function preflight()
{
// During the preflight, we need to create a new installer file in the temporary folder
$file = JPATH_ROOT . '/tmp/quix.installation';

// Determines if the installation is a new installation or old installation.
$obj = new stdClass();
$obj->new = false;
$obj->step = 1;
$obj->status = 'installing';

$contents = json_encode($obj);

if (!JFile::exists($file)) {
JFile::write($file, $contents);
}
}

/**
* Responsible to perform the installation
*
* @since 1.0
* @access public
*/
public function install()
{
$this->createTableConfig();
}

/**
* Responsible to perform the uninstallation
*
* @since 1.0
* @access public
*/
public function uninstall()
{
// @TODO: Disable modules
// @TODO: Disable plugins
}

/**
* Responsible to perform component updates
*
* @since 1.0
* @access public
*/
public function update()
{
$this->createTableConfig();
}

function createTableConfig()
{
$db = JFactory::getDbo();
$sql = "
CREATE TABLE IF NOT EXISTS `#__quix_configs` (
`name` varchar(255) NOT NULL,
`params` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COMMENT='Store any configuration in key => params maps';
";
$db->setQuery($sql);
return $db->execute();
}
}
Loading