Add/Edit Project

Now it is time for the most important part of the script! Adding and editing the projects, here you have full control about your release! In the top of the page you will find the menu. The documentation is setup per tab also! So when you can't find things, check out another tab ;)

project edit 1

Part 1 - Project Settings and Project Information.

The information as stated below is for internal use of this component, it will be all for ordering and overviews.

  • Project Name
    Enter the desired project name which will be used in the project overview.
  • Category
    Choose the desired category for this project.

The information below is release specific.

  • Extension Name
    Here you can add the name of the component which will be used in the build script. (EG; component/module/plugin XML file, or the uspdate server information) It will also being used in the PHP headers. You can set these dynamically (read more below)
  • Extension Type
    What kind of project is this. (Module/Component/Module)
  • Joomla Element
    This is being used in all files. (Language file names and the XML file)
  • Joomla Update Server
    Enter the update server for this project, it will only being added to your XML file when it is being filled out here.
  • Pro or Free Version
    You can define here if your project is a free project or a paid project. (Read more in the docs here)

Part 2 - Setting the resources

The builder part of the component is nothing when you can't set the resources. It is pretty straigth forward. You can set a folder for everything which is required for a component/module/plugin.

  • Main Source
    This is the main source of your website. (EG: /Applications/MAMP/htdocs/releasesystem ) it is the path where the installation of the component (development environment) is hosted. When using a hosting provider it is the path which can be found in your favorite FTP client.  
  • Media File Source
    Enter the file source for the media files. (EG: /Applications/MAMP/htdocs/releasesystem/media/com_translations)
  • Frontend Files Source
    Enter the file source for your frontend files. (EG: /Applications/MAMP/htdocs/releasesystem/components/com_translations)
  • Admin Files Source
    Enter the file source for your backend files. (EG: /Applications/MAMP/htdocs/releasesystem/administrator/components/com_translations)

Using sub domains?
The path of a subdomain is also valid!
Using more than one domains on the same server?
No problem, PHP is able to access these folders also. Let's pick Siteground for example, you might have more than one domains on one hosting package. you can access them all!

Project Description & XML Settings

The install XML is generated on the fly as it might change during the process, so you have to set evrything up for a proper XML file. The project description is the description which will be used in the XML description, it may contain HTML as it is being used in CDDATA tags.

The XML settings are used in the XML where information is being used for Joomla itself.

Database Settings (Database Tab)

The database is something which is pretty important for your component (for modules and plugins you don't see this settings)

database settings

Step 1 - Main database Settings

  • Database Name
    As the component you're trying to build can be in another database, you can set the database name here. 
  • Joomla Database Prefix
    All Joomla websites have a database prefix, we;re using it also as we need to make database install files also. The prefix needs to be set so we can replace it back from yourprefix_ to #__ again. So it can be installed in any Joomla website.
  • Use external database
    You might have seperated all databases or need to connect a database which requires other credentials. Or when you're hosted at for example Siteground then you have all development environments in another database with other credentials, you can set the credentials here.
  • Create Install MySQL File
    When you want to create automatically an install MySQL file.
  • Use Drop Tables
    When you want to set DROP TABLES statements before the install query of your install MySQL file
  • Create Install MySQL File
    When you want to create automatically an uninstall MySQL file.

Step 2 - Database tables

In this box you can write down the database tables which are needed for your extension. Select all database included the prefix. In our example bente_ is the prefix for this project so we write down bente_translations_yourtable. 

Note: Make sure you write down all your tables on a new line!

Step 3 - Database tables including contents

Sometimes you need tables that includes sample data or any other data which is in the tables. Write the tables where the contents are required here. Not that this tables in also listed in step 2! In the examples aboe we also need all iso codes in the table so we add a table like this in the rightbox also.

File Settings (Files Tab)

During the installation you might want to remove files, skip files or entire folders. Or just clearing file because the logs in it are not for customers. Below we will describe how to do all these things. 

file settings

Step 1 - Changing headers automatically. 

You see them often, large component but the headers change all time again.. They probably don't do this manually :P So we implemented a function to repleace your headers files.

Example header which will be replaced automatically

* @package               Joomla
* @subpackage    {heading_name}
* @version            {version}
* @release            {creation_date}
*
* @copyright        {copyrights} All rights reserved.
* @author             {author_name}
* @license             {license}
* @license            http://rd-media.org/license.php

The possible tags for a header are the following:

  • {creation_date}        -- Current date
  • {author_email}         -- Email address of the author
  • {author_name}         -- Name of the author
  • {copyrights}              -- Copyrights for this project
  • {license}                   -- License for this project
  • {version}                  -- Version which is being released
  • {extension_type}     -- Extension type
  • {extension_name}   -- Name of the extension
  • {plugin_group}        -- Plugin group
  • {author_url}             -- Url of the Author.

There 2 specific replacers in the component, you can use them like below;

[ RELEASED VERSION ]
* [ COPYRIGHT HEADER ]

How to use this 2 variables then? The first one can be used anywhere in the script. We're using itfor example in the script.php file so the version number will be changed on any update without changing it myself. 

The Copyrights header.. Let's provide an example for that. It is useing the header code and can be implmented easy, this is how we using it on top of all our scripts. The COPYRIGHT HEADER will be replaced with the main header as defined at the optio of this step :) 

<?php
/**
* [ COPYRIGHT HEADER ]
*/

// No direct access
defined('_JEXEC') or die('Restricted access');

Adding language files to the installers

Below the replacements you will find an extra box to add languages to your component/module/plugin installation. Add a new line for all language tags! As the component knows what your extension name is you don't have to specify the language file names as the element will be used for this. en-GB.com_translations.sys.ini and so on :)

Step 2 - Exlude Files & Folders

OK, you have developed many code and your downloads folder becomes filled up, but you don't want to release all this kind of stuff to your customers.. Here is how the trick works! 

In the "Exclude Files" section you can enter the files which needs to be excluded from this installation. All files entered line by line in this box will be ignored in the release. Example when you want to excude a file in the administratstrotor folder: admin/views/projects/tmpl/test.php

In the "Exclude Folders" section you can enter the folders which needs to be excluded from this installation. All folders entered line by line in this box will be ignored in the release. Example when you want to excude a file in the administratstrotor folder: site/downloads
Excluding the folder doesn't mean the folder is not copied, all contents in it are skipped and a fresh empty html files is being added to the folder. 

Step 3 - Clearing and Moving Files

OK, you have installed the component at some time and som files might be in the backend, but we want them at the frontend or in the  root of the installation. This can be done with the file mover. Enter the folders which needs to be moved wihtin this installation. All files entered line by line in this box will be moved within the release.
Note; the moving doesn't create folders, so the folder where to move it must be present!

Example 1:  when you want to move a file during the build: admin/script.php->script.php  (The script will be moved to the toot of the zip file) 
Example 2: admin/script.php->views/script.php (The script will move the file to the views folder now)

 

 

Why Choose Us?

Latest Joomla! & PHP Versions!

We're always developing our components in the latest Joomla! and PHP environments! No need to be scared to run in troubles when your hosting company is updating their servers. We have probable tested it already ;)

100% Open Source

Our code is fully Open Source, so you can make changes to the code as much as you like! Making changes to the code? We can advise, but don't support your custom code. Using overides is the best thing to do!

Responsive Design

All extensions are as responsive as possible built on the shipped Joomla Bootstrap 2.x.x Library! We will soon make all our products compatible with Boostrap 3 to make sure it works on all Bootstrap versions.

Easy updating by the Joomla Updater

All components are being shipped with Joomla Update support, this means you don't have to upgrade manually anymore! The only thing you need to do is making sure you have entered a valid Download Key!

Quality Guaranteed

All our components are fully based on the Joomla API, this gives us flexibility so we can guarantee the quality of our products. When Joomla moves on, we're also moving on!

Service & Support

All our components are fully based on the Joomla API, this gives us flexibility so we can guarantee the quality of our products. When Joomla moves on, we're also moving on!