Introduction

Welcome to Ventrino LTE. LTE stands for "Light Traffic Exchange". Traffic Exchanges, in particular the Professional Traffic Exchange Script from Ventrino, have grown to include a huge amount of features. The pro's and con's of this expansion are too much to reveal in detail but as a generalisiation the "good" is that traffic exchange owners truly have been able to create a unique formula where the success is down to them rather than the scripts they own. The "bad" is that only the dedicated and persistent have been able to take full advantage. One might argue this is good reason for anyone to be succesful, persistence and dedication are definetly pre-requisits to financial success.

However there is only so much you can cram into a small place, at sometime the pressure will be too much and the dam will burst. It is at that time we need to find new solutions and like the effect of a few billion gallons of water pouring over the landscape a complete purge can encourage new ideas and innovative solutions.

So a complete rewrite has been made and it has returned to basics with just a traffic exchange and a basic banner exchange (486x60 only by design). Instead the focus has been on validation, security and quality of service. Rich high level functions have been created to enable other programmers to enhance and provide onward development services to their clients.

If you need to check a standard setting visit www.clicklimit.com and checkout the Admin menu.


System Requirements

Your hosting plan must provide industry standard features such as email, FTP. As it's unlikely you will find a hosting plan without an acceptible list of standard features we do not list them here. However there are some features which vary from company to company and the features listed below are a minimum requirement. We state PHP 5 is a minimum, therefore if your host provides PHP 5.3 then the script woll operate correctly.

  • Linux, Unix or Windows
  • PHP 5
  • MySQL 5
  • Ioncube Loaders*

*If your host does not already provide these already (most do) we include everything you need in the installation files, however, in some rare situations a host may ban the use of the dl() function. If you experience any ioncube errors contact your host and provide them with this link and ask if they will install them for you: http://www.ioncube.com/loader_installation.php it is a 2 minute job and presents no risk to the server (indeed it improves the PHP performance and reduces server load so their should be no issue).

Optional Requirements

The script falls back graciously if a particular feature or security setting of your host is not the latest version or optimal setting. This means in most cases it will still run without issue so long as your host has not been draconian in their choice of regulations.

PHP.INI

Setting | Purpose | Desireable Value
allow_url_fopen | Enables certain functions to open files across the Internet | On (1) (Default)
enable_dl | Dynamic loading of extensions. Only required if host has not installed ioncube (very rare). Removed in PHP 6.0.0 | On (1) (Default)
magic_quotes_runtime | Automatically handles text by adding quotes escaped with backslash. Removed in PHP 6.0.0 | Off (0) (Default)


Installation

Standard Installation:

  1. Download and unzip the installation files to your local drive.
  2. Upload files to your host.
  3. Create a database.
  4. Point your browser to the root directory (http://yourservice.com/ for example) and follow the onscreen instructions.
  5. Setup crons (click here for general help setting up crons or here for my suggestions)

Crons:

cron.php - table summaries and sending of repeat invoices, run once every 10 minutes
news.php - send newsletters, run once every minute

Source Code Installation:

This option is only available if you have purchased the developer pack option. Note whether you have the developer pack option or not it does not effect your ability to modify the design or to add your own PHP code (or indeed other scripts) to any point in the design or templates.

  1. Download the developer pack and unzip using your password (see illustrations below).
  2. Follow the instructions for Standard Installation including crons but use the developer pack installation files instead.

Where can I find my developer pack?

You can get your developer pack files from "My LTE Licenses" in the client area.

Your license and downloads can be seen here

Click to download


How To Setup The Cron

What is a cron?
A cron is a schedule. It is used to call a file or web page at regular intervals.

Why do I need it?
A number of features within the application need to be calculated on a regular basis.

Where will I find the cron?
Most control panels offer a cron or schedule service. cPanel is the most popular and offers extensive videos and tutorials if you are new to hosting. You can check them out here.

How to setup the cron
You will often here people say creating a cron or schedule is easy but get frustrated as everything you try appears to fail, so to save a little stress here's a few things to check before we cover the subject of setting up a cron.

Are you using Windows hosting? This makes a big difference to how this works. Contrary to popular belief Windows had a scheduling system many years before Linux even existed, that's the good news. While it can do anything the *nix cron system can it's just not so easy to use and unless you have desktop access to it practically impossible. Helm added this feature a couple of years ago but most hosting companies turn it off because it is so easy to drain resources. If you have windows the best way is to provide all the information to your hosting company and ask them to set it up.

Are you using Linux? While setting up the cron is easier (IMO) there are other problems that can be just as irritating. First is discovering what method of calling a file your hosting company allows you to use, they may allow one, many or all of the following, trouble is if they disallow one that's usually the on you want to use:-

wget
GET
lynx
curl
perl
php

In order of preference try the following, note that linux/unix is case sensitive:

10 * * * * /usr/bin/wget -O -q -t 1 http://yourdomain.com/cron.php

10 * * * * /usr/bin/wget http://yourdomain.com/cron.php

10 * * * * /usr/bin/GET http://yourdomain.com/cron.php

10 * * * * /usr/bin/lynx -source http://yourdomain.com/cron.php

10 * * * * /usr/bin/curl --silent http://yourdomain.com/cron.php

10 * * * * /usr/bin/php -q http://yourdomain.com/cron.php

10 * * * * /usr/bin/perl -MWLP::Simple -e 'getprint http://yourdomain.com/cron.php

10 represents the frequency in minutes up to 60, 10 is recommended. As we're focusing on the ventrino script so for information on other options search google.

A note about /usr/bin/

This is the standard path in *nix machines to the folder containing these programs. Very often you will see these called without the path and they still work however you should avoid shortcuts as there are circumstances where they won't work.

How do I know the cron is working?

In your control panel you will be given the opportunity to receive an email each time the cron is run, if you receive this, without errors, then you know it is running. However some control panels won't allow you to leave this blank, tempting as it maybe to use the email address of a much hated enemy it might be wiser to discard the information. To do that add /dev/null 2>&1 to the end like this:-

10 * * * * /usr/bin/wget -O -q -t 1 http://yourdomain.com/backend/scheduled.php /dev/null 2>&1

My hosting company does not allow any crons or schedules, what do I do now?

Check http://www.ventrino.com/blog/90/2007/07/how-to-run-a-cron-from-your-home-pc/ for a free method. The other alternative is to search google for cron services. For a few dollars a year they will run your cron for you.

Further Reading

Drupal have put together a good page, although targeted to supporting their product it provides a useful explanation on some advanced features not covered in this topic: http://drupal.org/cron


Basic Configuration

During installation the majority of these settings are altered for you and some of them such as paths are unlikely to need any modification. However there are plenty of items such as email addresses used by payment processors that need to be modified at your earliest convenience (these can be done during installation of course but some times its expedient to leave entries such as this after succesful installation).

How to change a configuration setting

You must login with an Admin Account before you can edit the configuration.

Admin --> Configuration

Edit configuration detail as you desire

Click the yellow pencil to modify an entry. Instructions for each entry will be shown on each screen as shown below. On completion of your edits you must click the rebuild button for your changes to take effect.

Click the rebuild button for your traffic exchange to update

Instructions for each configuration entry can be seen on the edit screen


Creating An Admin Account

Only an Admin account can create another admin account. If you delete ALL admin accounts (something I strongly suggest you do not do!) the only way to recover the situation is to create another ordinary account, then login with phpMyAdmin or your favourite MySQL editor and modify the account using SQL. So, as long as you are already logged in to a valid Admin account you may create other Admin accounts as follows:-

Admin --> Members

Edit the account you wish to modify. Check the Admin Account checkbox as appropriate.


Edit The Home Page

Admin --> Edit Home Page

Edit the front or home page

Use the Wysiwyg Editor remembering to press the save icon or Submit button when done

Save your changes

Wysiwyg makes it far too easy to edit the home page.


Change The Appearance

Admin --> Change Appearance

Change how your site looks

The Change Appearance screen allows you to manage themes created by your designer or a pre created theme, Simply checkout those in the list and the click the "Use This Template" button beside the one you wish to use.

Changing the theme

See "How to change your logo" for further personalisation.


How To Change Your Logo

The default logo that comes with the script Changing the logo on the standard themese utilising the following method ensures that when you change the appearance of your site with a new theme your logo does not lose its attractive look. Of cours colors and style maybe an issue however it is feasible to create slightly different themes that match your corporate look. For example you may have different looks for Easter and Thanks Giving.

If your own designer has used another method then you will need to refer to them for help. This page only describes the method used by the default templates that come with the script.

Concept

The logo sits in it's own layer and is displayed in front of the design. It is therefore useful if you can use a transparent design where possible as it means you will be able to change the theme to meet your mood and not have to recreate the logo to suit.

Ordering a logo
So how and where do you get a logo with a transparent background? There are literally thousands of people who will do this for you. Try our forum (Third Party Services) or one of the many freelancer websites such as www.getafreelancer.com where you are sure to get a whizzy design for just a few dollars. Remember to ask for the file to be delivered with the original source file (usually this will will be a PSD for photoshop) and the logo itself to be delivered in several sizes in the PNG format with Alpha (necessary for a clear transparent background).

Then replace the HTML in pages/logo.htm with your HTML, something like this will do:-

<img alt="" src="images/logo.png" />

What if I don't know HTML or how to create a logo?

Ask your designer for help if HTML is voodoo to you or click here for online tutorials. There are several people on the forum who offer service at reasonable prices. They can offer to create a logo for you or will replace the entire standard template with a design to your specification. Click here to visit The Third Party Products & Services. Note that you cannot post a request in this forum, instead use the contact information in the post to talk directly to them.


Keep Your Script Secure

A sure way to avoid being knocked down when you cross the street is to never cross the street. Unfortunately Internet security requires the same paradigm if you are to avoid the attention of hackers. If you have a website then you have the attention of hackers already. The best you can do is protect yourself by observing a few simple rules. Unfortunately some hosts go over the top and will strangle your hosting to the point nothing will run correctly. The trick is to find a balanced happy medium.

Avoid Some Hosts

Most hosting companies implement mod_sec rules that are perfectly OK to run with. Occassionally a host will go nuts and enter a long list of rules they found on the Internet and include "experimental" rules which completely stifle PHP to the point it cannot run basic commands. If you suspect your host is one of these then ask them for a copy of the rules they use and if they are find another host (use of these rules is enough to indicate they have no interest in seeing your business succesful).

Local PC security

This is a problem that comes and goes. It depends on patches releases and the security software you have installed. McAfee and Norton have caused so much confusion with their "intelligent" protection that I would say if you have either of these installed switch them off and try again (do NOT EVER switch of antivirus software, I am referring only to their web security software). It works by following patterns as well as monitoring huge databases of know issues. Unfortunately a term such as "sex" and "child" will be too close for comfort and ban your site. If you happen to be a childs footwear manufacturer from Essex they will ban you. Obviously you should investigate the page or website before you switch any security off, but if you are confident you should be able to access a site and you cannot you might like to temporarily disable the security sofware and see if it works.

PHP Security

If PHP was not so powerful and flexible it wouldn't be a popular web scripting language. Because of that power it can be used against you too. We protect you from XSS attacks but the very nature of the web and it's ever changing nature means we cannot always. If you have a file that shows PHPInfo() information you should remove it (Why tell the bad guys anything?). However, use it and check what your host has set for openbase_dir. If they have it set to Off that's good. If it's set to On, that's bad so ask them to change it, if they won't, find another host. You may see it is set as "no value" that could be good or bad. Your host may handle the issue at a higher level, ask them, and if they say they have it set on all you need to do is check. To do that create a file with a PHP extension and put this in it:-

<?php

@$passwd=fopen('/etc/passwd','r');

if (!$passwd) {
   echo "Great, you are safe";
} else {
   echo "Oh crap, a hacker can read your passwd file :(";
}

?>

You should be able to work out what that does even if you're not a programmer. If you get the bad message and your host won't fix it then RUN

What Else Can I Do?

The average hosting server will be hit by several thousand hacking attempts per hour so don't blame your host if one day your site is stuffed. If they kept you up for more than a few hours chances are they did everything they possibly could to keep you going already.

Keep scripts up to date, update patches frequently.

Change passwords frequently.

Backup frequently.

Better make that clearer:-

BACKUP FREQUENTLY


Supporting Your Members

Introduction

Much of the success of any online business depends on how well support is managed. Email is the scurge of good support with so much lost to spam filters or just missed through volume of requests. This is damaging to your reputation but more seriously to your bottom line. If your sales ratio is 1:100 you just need to miss 10 sales and your effective sales is -1000% and no business will survive long with that kind of figure.

There are plenty of web support systems which offer varying quality and features but they often focus on large support teams and performance monitoring. Nothing wrong with that but if like most new businesses you intend to handle support yourself with a few friends and family then your main focus should be giving the customer what they want. For that we offer a simple solution.

Your members can add tickets with a simple input form and replying to them is just as simple. Here is an example entry made by a member from his support screen.

Members add a ticket

You would see the entry arrive which would look like this:-

A support request

Each message is date time stamped. Click the reply link and you get a similar form to the member which looks like this:-

Replying to a support request

The only difference is you cannot change the subject.

Opening and Closing Tickets

The process of opening and closing tickets is automatic and neither you or the person making the support request has to do anything for this process to happen. When your members asks a questions through the support system the status is automatically set to open and when you answer it is automatically closed.

A closed ticket

If your member needs more information on that subject they merely have to reply and the ticket is automatically opened again.

Support Ticket Lists

Shows 1 ticket currently open Both you and the member have a list of support tickets. The member can see the last 5 tickets whether open or closed. The administrator can see all tickets currently open, closed tickets are hidden from view.

Tickets are ordered as they arrive, this provides a better spread of your support effort. Keeping in mind this is designed for small support teams its iportant that one individual does not consume all your time. Far better to spread your effort and share your insights on an even basis.

Also no more than 10 open tickets are listed for the administrator at any one time either, this reduces the temptation to skip down the list and look for only those you want to answer! The author accepts these limitations can have as many disadvantages but the simplicity of the system will ensure a new installation has the best opportunity to build a relationship with members with the least hassle. As soon as your exchange requires a team support solution there are numerous excellent products that can be purchased for a small price.


Developing Plugins

A plugin is a bit of code that can be tied into Ventrino LTE and run within the template system. The basic principle of development is this:-

  1. Create your code
  2. Create your template file
  3. Add a menu option to the menus table in the database

Directory Structure
To achieve the above you must create a directory structure in the /plugins folder. For example, if you create a new surfbar you might do something like this:-

/plugins/aaaplugins/surfbar

The first directory below plugins should be a distinctive and unique name for your company, keep in mind other people will be creating plugins, so if you have a common name try create a name that is unlikely to be copied

/plugins/johnsmith451/surfbar

Once you upload your code all you need to do is edit the menus to include your new feature (or overwrite a feature already in the system) and hit the build button in the admin screen.

Example plugin
The standard surfbar is just a plugin, you can find the code in /plugins/ventrino/surf. You are free to use or modify this code as you please.


Designing A Template

To create your own designs (whether for sale or your own use) you need to do the following.

1. Create the design and save it to a file called _master_xxxxx.htm, replace the xxxxx with the name you wish to give the template. See the current _master* templates to see the HTML required.

2. Create a file called _master_xxxxx.php with the following variables:

<?php

$author_link = "http://www.ventrino.com/";
$author_name = "Ventrino Software LLC";
$template_image_link = "_master_red.jpg";
$template_price = "Free";
$template_download_link = "http://free-traffic-scripts.com/forums/";
$template_description =<<<EOT

The default template in red from Ventrino.  Change
ventrino_lte_red_2.jpg, ventrino_lte_red_3.jpg and images/ventrino_lte_red_4.jpg
in the images folder to alter the header to your own.

EOT;

?>

Next load both to the root directory where the traffic exchange is installed.

As long as your _master_* template files are in the root directory you can place the images and supporting files where you like. So if your company is called GreatDesigns fopr example you might place them in /greatdesigns/images to keep things easy should modifications be required in the future.