Install Guide | Quick Start | Admin | Trade Options | Broker Options | Settings | Groups | Toplists | Lists | Algorithms

 INSTALL GUIDE: (everything must be done from a non-root account for most servers)
  Installation Instructions.
  Step Instruction
  1. Upload the /swiftclicks directory to your root html/web folder.
  2. Make your cgi-bin/swiftclicks folder (you can temporarily name swiftclicks2 if you're upgrading)
  3. Chmod the new folder to 777.
  4. Upload install.cgi and binaries.tar.gz to that folder.
  5. Chmod install.cgi to 755.
  6a. Run install.cgi from your browser or "./install.cgi -ssh" in SSH (make sure everything is successful)
  6b. 500 Internal Server Error means you either have the wrong package or the server forbids cgi execution in folders with 777 permissions. Run install.cgi from SSH to overcome the permissions problem.
  7. Remove install.cgi and binaries.tar.gz from the folder.
  8. Chmod the directory from step 2 back to 755.

  Upgrade Instructions (for versions 2 and above).
  Step Instruction
  1. Chmod your swiftclicks folder to 777.
  2. Upload upgrade.cgi and upgrade_binaries.tar.gz to that folder.
  3. Chmod upgrade.cgi to 755.
  4a. Run upgrade.cgi from your browser or "./upgrade.cgi -ssh" in SSH (make sure everything is successful)
  4b. 500 Internal Server Error means you either have the wrong package or the server forbids cgi execution in folders with 777 permissions. Run upgrade.cgi from SSH to overcome the permissions problem.
  5. Remove upgrade.cgi and upgrade_binaries.tar.gz from the folder.
  6. Chmod the directory from step 1 back to 755.

  Upgrades from versions 1.x:
      All options are the same. Just perform a new installation and remove the old lost.cgi counter from your pages.

  Crontab Instructions. (SSH access required)
  Step Instruction
  1. Move yourself to a writable directory with the command: cd directory
  2. Run the command: crontab -l
  3. Note the first few characters.
  4. Run the command: crontab -l > crontab.txt
  5. Download crontab.txt that was created from the last command.
  6. Open crontab.txt in your favorite text editor
  7. Make sure the file begins at exactly the same place as step 3. (if not, go back to step 4)
  8. Edit your crontab.txt file to put this line (IMPORTANT!: Make sure you end on an empty line):
* * * * * cd /full/path/to/cgi-bin/swiftclicks; ./cronjob.cgi > /dev/null 2>&1

Note: Don't forget to change the path from the above line to one that works on your server.
  9. Upload and overwrite the crontab.txt on your server.
  10. Run the command: crontab crontab.txt
  11. Run the command: crontab -l
  12. Verify that the changes have gone through successfully in step 11's output.

  HTAccess Instructions.
  Step Instruction
  1. Make a htpasswd.txt file if you don't already have one

Username:
Password:
 
  2. Copy the text below to a file and name it htaccess.txt

  3. Edit the path to your .htpasswd file on your server and the list of IP addresses.
  4. Upload htaccess.txt to your swiftclicks directory and make sure it is chmod'd to 644.
  5. Upload htpasswd.txt to the directory you specified when you edited the htaccess.
  6. Rename to both to .htaccess and .htpasswd.
  7. Test it! An untested protection could be no protection at all.

 QUICK START:
  Incoming counter.
      <!--#include virtual="cgi-bin/swiftclicks/in.cgi" --> just under <HEAD>.
      When going live, look at the source to make sure you see "yourdomain.com's Tracking cookie" just above the cookie.
      If it doesn't appear, specify it to in.cgi like this: <!--#include virtual="cgi-bin/swiftclicks/in.cgi?yourdomain.com" -->
      Note: If your domain does not appear, you will not be able to get a licence for this domain.

  Outgoing counter.
      Use as a link. Specifications must be in the URL.
      Example: /cgi-bin/swiftclicks/out.cgi?l=teens&g=1&u=http://www.gallery.com/45634/Linda/blowjob_04.html

      Link Options (in order of priority):
  Code Function Requirements Examples
  "p=" Permanent links MUST be followed by an ID p=11
  "o=" Other links MUST be followed by a URL o=http://www.sponsor.com/userid/
  "r=" Rotate clicks MUST be followed by a number r=2 (Gal,Gal,Trade,Gal,Gal,Trade,etc..)
  "g=" Group Options MUST be followed by a group ID g=10
  "i=" Force ID MUST be followed by an ID i=14 (If we're skimmed to a trade, go to ID 14)
  "s=" Skim Percent MUST be followed by a number s=75 (Go to content 75% of the time)
  "c=" First Clicks To Gallery MUST be followed by an ID c=2 (Always see content on the first 2 clicks)
  "u=" URL To Content MUST be last and a full URL u=http://www.gallery.com/45634/page1.html
  "l=" Link Tracking MUST be followed by a name l=toplist (Track toplist clicks - Lowercase 'L')
  "x=" No Source Specifics MUST be followed by "1" x=1 (Ignore ALL source specifics for this link)

  Brokers counter.
      Example: Set your broker to return or send to your "cgi-bin/swiftclicks/broker.cgi?id=10&url=http://yoursite.com"
  Code Function
  "id=" ID of the broker to log the incoming hit to.
  "url=" Destination URL (must be after ID). If it's your own site, clicks will be logged to the ID specified.

  Settings.
      Go to your Settings menu and go through all the sub-menus to specify your informations and preferences.

  Groups.
      See Groups for more information.

  Toplists.
      See Toplists for more information.

  Lists.
      Download this Search Engines List and grow it from there. Also get a Country Database to enable Geo Tracking.

  Import Tool.
  Step Instruction
  1. Create a toplist in your other script to build this format: Title|Domain|ReturnURL|Email|ICQ|Nickname
  2. Paste the created text file in the Import Tool and import all your trades instantly.
  3. Make sure you activate all your trades if they are not. The import tool uses the default algorithm.

 ADMINISTRATION AREA:
  Statistics.
  Name Description
  ID Number used to identify the database entry.
  In Number of incoming surfers on your site. Split into Raw and Unique amounts.
  Prod Split into percentage of Clicks divided by In and actual number of Clicks.
  Content Split into percentage of Content Clicks divided by In and ratio of Content Clicks:All Clicks.
  Trades Split into percentage of Trade Clicks divided by In and ratio of Trade Clicks:All Clicks.
  Brokers Split into percentage of Broker Clicks divided by In and ratio of Broker Clicks:All Clicks.
  Other Split into percentage of Other Clicks divided by In and ratio of Other Clicks:All Clicks.
  Out Number of outgoing surfers from your site. Split into Raw and Unique amounts.
  Blind Ratio of Blind Outs:All Outs.
  Perm Ratio of Perm Outs:All Outs.
  Ret % Percentage of Raw Outs divided by Raw Ins.
  Loyal % Percentage of surfers who came back to click again within 1 minute of being sent out to a trade.
  Gain % If greater than zero, reflects the amount of Trade Clicks gained. Else, reflects the Outs Lost.
  Force Goal Current Force Amount and remaining Force Hours for that entry.
  Ladder Rank Current rank on the return ladder. Useful if using your own custom algorithm.
  Link Tracking Get detailed Linkname statistics for every possible source of traffic.
  Referrers Get detailed Referrer URL's for every possible source of traffic.
  IP's Get detailed IP statistics for every possible source of traffic.
  User Agents Get detailed Browser Type statistics for every possible source of traffic.
  Countries Get detailed Country statistics for every possible source of traffic.
  Charts See details of all statistics for every possible source of traffic in beautiful customizable charts.
  Mass Edit See Trade Options and Broker Options for details.

  Defined Traffic Sources.
  Name Description
  No Referrers Statistics for the surfers who didn't come from a click on another page. (Usually a bookmarker)
  Search Eng... Statistics for the surfers who came from a URL who's domain is in your Search Engines list.
  Extra Refer... Statistics for the surfers who came from a URL who's domain did not match anything in your DB.
  No Cookies All clicks made from surfers who's cookies were disabled.
  Exit URL All Outs that went to your exit URL along with their ratios.
  ID Number used to identify the database entry
  Deleted Ent... Statistics of old entries that were in your database but are now deleted.
  Ignored Statistics for the domains you put in your Ignored list.

  Mass Edit.
      To reset a field of characters to nothing, like a row color, enter "-1" in that field.
      See Trade Options and Broker Options for more details.

 TRADE OPTIONS:
  Options.
  Name Description
  Title Required: A short descriptive Title for that trade.
  Domain Required: Domain to check when receiving from that trade.
  Return URL Required: URL to send to when sending to that trade.
  Nickname Nickname of the owner of that trade.
  Email Email of the owner of that trade.
  ICQ ICQ of the owner of that trade.
  Webmaster Password Password for that webmaster to check his stats on your site. (via Signup Form)
  Trading Algorithm + % (if any) The Trading Algorithm this trade will use. Best if all trades use the same!
(This is where we enable/disable trades for the return ladder)
  Force/Hour + Duration (Hours) The amount you want to try to send per hour. -1 Hours for a permanent Force.
  Max Out/Day + Max Return % Self-explanatory. Maxed trades are excluded from the ladder. -1: no Maximums.
  Specific Skim % + First Clicks These settings overwrite anything on the site if the surfer came from this trade.
  Dynamic Skim Range of the skim along with the Gain you want to try to achieve for that trade.
  Trade Auto-Disabler Allowed Allows or prevents the Trade Disabler from altering that trade's status.
  Row Color + Row Text Color Optional color settings for that trade so they are easy to spot in the admin area.
  Descriptions 1-4 Choose up to 4 different Descriptions for your toplists.
  Thumb URL's 1-4 Choose up to 4 different Thumb URL's for your toplists.
  Toplist Inclusion Choose which toplist this trade will be part of. (Max 15. If more, choose All)

 BROKER OPTIONS:
  Options.
  Name Description
  Broker Group Name Required: The name that you want this broker to be a part of in the admin.
  Entry Name Required: The name of this broker entry. Similar to Title in Trade Options.
  Broker URL Required: URL to send to when sending to that broker.
  Description Not part of anything. Serves as a note for you to know what this broker is for.
  Max Out/Day Self-explanatory. Maxed trades are excluded from the ladder. -1: no Maximum.
  Max % Of Outs Maximum % of all Outs. Scales with different traffic volumes. -1: no Maximum.
  Force/Hour + Duration (Hours) The amount you want to try to send per hour. -1 Hours for a permanent Force.
  Max Out/Day + Max % Of Outs Self-explanatory. Maxed trades ar excluded from the ladder. -1 for no Maximums.
  Specific Skim % + First Clicks These settings overwrite anything on the site if the surfer came from this broker.
  Row Color + Row Text Color Optional color settings for that trade so they are easy to spot in the admin area.

 SETTINGS:
  General Settings.
  Name Description
  Trade Disabler Will disable/enable allowed trades based on your minimum thresholds.
  Inactivity Monitor Will (Urgent) Email you if your site had no activity for # minutes long.
  Link Spy Monitor Will (Urgent) Email you if more than # hidden clicks were detected.
  New Trade Monitor Will perform the requested action when someone signs up their site successfully.
  Exhausted Traffic Choose what you want to do with surfers who already visited all your trades.
  Out Links Fatal Errors Choose your default skim and URL if an unrecoverable error occurs in out.cgi.
  Traffic Settings Will override anything from your page if the referrer is a NoRef, SE, or Extra.
  Default Selections What you want selected by default in Add Trade, Add Broker, and New Signups.
  Backup Management The amount of days back you want to keep backups for. Older will get deleted.
  Traffic Details The amount of days back you want to keep precise minute details for.
  Registration Will apply your licence to the script. Removes or reduces your skim.
  Network Manager Interface Allows for communication between SwiftClicks and SwiftClicks Network Manager.
  Network Manager Pass Key Encrypted and used to authenticate your SCNM copy to your SC copies.
  Network Manager Port Used by your copy for incoming connections. Only one program can bind to a specific port at a time so you must select a different port for each SC copy.
Your ports must be in the 49152-65535 range. Read More on Ports...

  Signup Form Settings.
  Name Description
  Security Key Will require new signups to enter the correct key to be processed.
  Advertisements Leave Ad Title empty to remove the advertisement table.

 GROUPS:
  Can be used to control different pages of your site without having to change the HTML.

      Options:
  Option Description
  Skim % Controls the skim for this group.
  First Clicks How many clicks to send to the gallery before starting to skim.
  Optional Description Just a note or reminder for yourself to remember what this group controls.
  Priorities Trades selected as a priority will *always* get the first returns from this group if the surfer has not visited it yet.
  Normal Priorities Will respect the return ladder as well as not sending to disabled trades.
  Strict Priorities Sends to trades in the specified order regardless if they are disabled or not.

 TOPLISTS:
  Upload your toplist code to any location.
  Upload an empty (or not) file to somewhere in your web folder. (the folder it is in needs to be writeable)
  Make sure you go through in.cgi before testing links in your toplist since out.cgi needs the cookie.

      Toplist Codes:
  Code Description
  %%RAW_IN_#%% Raw Ins of the trade in the #'th position.
  %%UNIQUES_IN_#%% Unique Ins of the trade in the #'th position.
  %%RAW_OUT_#%% Raw Outs of the trade in the #'th position.
  %%UNIQUES_OUT_#%% Unique Outs of the trade in the #'th position.
  %%CLICKS_#%% Clicks of the trade in the #'th position.
  %%TRADE_CLICKS_#%% Trade Clicks of the trade in the #'th position.
  %%RETURN_URL_#%% Return URL of the trade in the #'th position.
  %%TITLE_#%% Title of the trade in the #'th position.
  %%DOMAIN_#%% Domain of the trade in the #'th position.
  %%ID_#%% ID of the trade in the #'th position.
  %%DESCRIPTION_##_#%% Description ## of the trade in the #'th position.
  %%THUMB_URL_##_#%% Thumb URL ## of the trade in the #'th position.

Note: Toplist codes start at 1. You can use zero-padding if you prefer, the result will be the same.

 LISTS:
  Most of these lists affect the core behaviour of SwiftClicks.

      Lists:
  List Description
  Search Engines Domains listed here will be categorized in Search Engines in the admin.
  Ignore Domains Domains listed here will be excluded from totals in the admin.
  Domain Blacklist Domains listed here will be prevented from signing up via the Signup Form.
  Domain IP Blacklist Domain IP's listed here will be prevented from signing up via the Signup Form.
  IP Blacklist (webmasters) IP's listed here will prevent webmasters from signing up via the Signup Form.
  DNS Server Blacklist DNS Servers listed here will be prevented from signing up via the Signup Form.
  Email Blacklist Emails listed here will be prevented from signing up via the Signup Form.
  Refused HTML Terms listed here will be used when the Scanner scans a page source.
  Required HTML Terms listed here will be used when the Scanner scans a page source.
  Country List Geo IP database of your choice. Anonymous Proxies must be in this list.
Must respect this format: Start_IP|End_IP|Country_Name
Does not have to be sorted. SwiftClicks will do it for you if it is not.
  Max Mind (CSV) to SwiftClicks Use your preferred text editor that supports regular expression.
Search for: \"[^\"]*\",\"[^\"]*\",\"([0-9]*)\",\"([0-9]*)\",\"[^\"]*\",\"(.*)\"
Replace by: \1|\2|\3
Replace codes may vary depending on your text editor. This works for Editpad.
  Any GeoDB to SwiftClicks Use the above example to custom fit your own regular expression using any CSV database. Can also be done using other formats, RegEx's are very versatile.

Note: We do not distribute country databases. Check out Max Mind (best on the market) or IP to Country (free).

 DEFINED ALGORITHMS:
  Choose from a set of pre-defined algorithms that best suits your needs.
  Algorithm Description
  Disabled Trade will not be ranked in the return ladder.
  SwiftClicks v2.1 Mathematically better than v2.0. Targets growth.
  SwiftClicks v2.0 Mixture of Gain and Loyals. Targets growth.
  Total Prod Trades will be ranked by their Total Prod.
  Trade Prod Trades will be ranked by their Trade Prod.
  Gain Algorithm for pure volume. However, Gain trading does not promote growth.
  % of Uniques In Aim to send <uni_in * algorithm_percent> of outs to each trade.
  % of Raws In Aim to send <raw_in * algorithm_percent> of outs to each trade.
  % of All Clicks Aim to send <all_clicks * algorithm_percent> of outs to each trade.
  % of Trade Clicks Aim to send <trade_clicks * algorithm_percent> of outs to each trade.

Note: It is best to select one algorithm to control all your trades to prevent comparing apples and oranges.

 CUSTOM ALGORITHMS:
  Supports as many conditions as you want to enter to automate manual jobs and rank your trades to your liking.

      Tutorial:
  Category Explanation
  General Supports 1 set of conditions with as many 'else if's as you want.
Supports numerical values with decimal places.
Equations are calculated as they are encountered. (3 + 2 / 5 - 1 would be 0)
Brackets are fully supported to give importance to parts of your equation.

Syntax example:
  if(condition){equation;}
else if(condition){another_equation;}
else{equation_if_none_of_the_above_was_true;}
  Conditions Syntax Supports these comparison operands:
  Operand Returns true if
  == left is equal to right
  != left is not equal to right
  > left is greater than right
  >= left is greater than or equal to right
  < left is less than right
  <= left is less than or equal to right
  (none) value is not zero

Syntax Example:
  if(left > right){equation for this trade;}
else if(left < right){equation for this trade;}
else{equation for this trade;}
  Equation Syntax Supports these equation operands:
  Operand Performs
  + addition
  - subtraction
  * multiplication
  / division
  % modulo (remainder after the last multiple)
  ^ exponent (to the power of)

Syntax Example:
  1.5 + 2.5 - 3.5 * 4.5 / 5.5 % 6.5 ^ 7;
  Statistics in Equations Supports these predefined values to fetch statistics from trades for equations:
  Name Value (for percentages, multiply by 100)
* raw_in Raws In for that trade.
* uni_in Uniques In for that trade.
* total_clicks Total Clicks for that trade.
* total_prod Total Clicks / Raws In for that trade.
* content_prod Content Clicks / Raws In for that trade.
* content_clicks Content Clicks for that trade.
* content_ratio Content Clicks / All Clicks for that trade.
* trade_prod Trade Clicks / Raws In for that trade.
* trade_clicks Trade Clicks for that trade.
* trade_ratio Trade Clicks / All Clicks for that trade.
* broker_prod Broker Clicks / Raws In for that trade.
* broker_clicks Broker Clicks for that trade.
* broker_ratio Broker Clicks / All Clicks for that trade.
* other_prod Other Clicks / Raws In for that trade.
* other_clicks Other Clicks for that trade.
* other_ratio Other Clicks / All Clicks for that trade.
* raw_out Raws Out for that trade.
* uni_out Uniques Out for that trade.
* out_from_blind Blind Outs / Raws Out for that trade.
* out_from_perm Permanent Outs / Raws Out for that trade.
* returned Raws Out / Raws In for that trade.
* loyal Loyal Clicks / Raws Out for that trade.
* gain Complex calculation of the Gain for that trade.
  swiftclicks_v2.0 Returns the SwiftClicks v2.0 algorithm value.
  swiftclicks_v2.1 Returns the SwiftClicks v2.1 algorithm value.
* total_raw_in Total Raws In of all trades.
* highest_raw_in Highest Raws In of all trades.
* total_uni_in Total Uniques In of all trades.
* highest_uni_in Highest Uniques In of all trades.
* total_raw_out Total Raws Out of all trades.
* highest_raw_out Highest Raws Out of all trades.
* total_uni_out Total Uniques Out of all trades.
* highest_uni_out Highest Uniques Out of all trades.
    *Must be preceeded by 'hourly_' or 'daily_'.

Equation Example:
  hourly_trade_clicks / daily_trade_clicks;
  Absolute Negative/Positive Supports these absolute operands:
  Operand Performs
  + Turns negative numbers into positive.
  - Turns positive numbers into negative.

Syntax Example:
  5 + -3 - +gain;
  Examples To score by Total Prod over 180% and by Trade Prod if under or equal to that:
  if(total_prod > 1.8){total_prod;}
else{trade_prod;}

To score by Loyal and Gain:
  if(gain > 0){gain * loyal;}
else if(gain < 0){gain * ( 1 / loyal);}
else{0;}

Same as above but Gain has more weight:
  if(gain > 0){(gain * 2.5) * loyal;}
else if(gain < 0){(gain * 2.5) * ( 1 / loyal);}
else{0;}

Note: The 'else{0;}' is not necessary. It is just for demonstration purposes.