plugins/conversions/docs/plugins/conversions/scripts conversionTracker.js,NONE,1.1 tracker.php,NONE,1.1

Sebastian Bergmann <[email protected]> Sun, 11 Apr 2004 09:45:18 +0000
Newsgroups gmane.comp.web.phpopentracker.cvs
Message-ID <[email protected]>
Update of /cvsroot/phpopencounter/plugins/conversions/docs/plugins/conversions/scripts
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2596/conversions/docs/plugins/conversions/scripts

Added Files:
	conversionTracker.js tracker.php 
Log Message:
Initial import of Conversions plugin by Daniel Kehoe and Adrian Lanning.

--- NEW FILE: conversionTracker.js ---
//
// phpOpenTracker - The Website Traffic and Visitor Analysis Solution
//
// Copyright 2000 - 2004 Sebastian Bergmann. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// $Id: conversionTracker.js,v 1.1 2004/04/11 09:45:16 bergmann Exp $
//

function trackConversion(client_id){

// EDIT THIS VARIABLE TO POINT TO THE CORRECT URL FOR YOUR SERVER
tracker = 'http://www.example.com/tracker.php';

// define some defaults -------------------------------------
// if 'img', returns a visible image, 
// if 'debug', echo all data sent,
// otherwise return javascript that does nothing!
//show='debug'; 
show='n'; 

// get the user agent name ----------------------------------
v = navigator.appName;

// get the screen resolution --------------------------------
c=0;
if (v != "Netscape") {c = screen.colorDepth;}
else {c = screen.pixelDepth;}
resolution = window.screen.width + 'x' +
                 window.screen.height + 'x' +
                 c + 'bit';

// get the document's title ---------------------------------
t=escape(document.URL);
//if(document.title) {t = escape(document.title);}

// get the document's referrer -------------------------------
f = escape(document.referrer);

// getting data ready to send -------------------------------
r = tracker +
   '?' + 
  'show=' + show + '&' +
  'document=' + t + '&' +
  'client_id=' + client_id + '&' +
  'referer=' + f + '&' +
  'add_data[]=resolution::' + resolution;


// add any conversion detail
if(typeof(pot_conversion_sale)!="undefined"){
	r = r+'&'+'sale='+pot_conversion_sale;
}
if(typeof(pot_conversion_inquiry)!="undefined"){
	r = r+'&'+'inquiry=1';
}
if(typeof(pot_conversion_signup)!="undefined"){
	r = r+'&'+'signup=1';
}
if(typeof(pot_conversion_email)!="undefined"){
	r = r+'&'+'email='+escape(pot_conversion_email);
}
if(typeof(pot_conversion_zip)!="undefined"){
	r = r+'&'+'zip='+escape(pot_conversion_zip);
}
if(typeof(pot_conversion_country)!="undefined"){
	r = r+'&'+'country='+escape(pot_conversion_country);
}
if(typeof(pot_conversion_name)!="undefined"){
	r = r+'&'+'name='+escape(pot_conversion_name);
}


if (show=='img') { // calling phpOpenTracker to return an image
	rand = Math.round(1000*Math.random());
	r = r+'&'+'b='+rand;  //force the page to load the IMG
	document.open();
	document.write('<img src="'+r+'" alt="" border="0">');
	document.close();
} else { // calling phpOpenTracker to return JavaScript 
	r = r+'&document_url='+ escape(document.URL);
	document.open();
	document.write('<script language="JavaScript" type="text/javascript" src="'+r+'" />');
	document.close();
}
}


--- NEW FILE: tracker.php ---
<?php
//
// phpOpenTracker - The Website Traffic and Visitor Analysis Solution
//
// Copyright 2000 - 2004 Sebastian Bergmann. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// $Id: tracker.php,v 1.1 2004/04/11 09:45:16 bergmann Exp $
//

//header('Content-type: image/gif');
header('P3P: CP="NOI NID ADMa OUR IND UNI COM NAV"');
header('Expires: Sat, 22 Apr 1978 02:19:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');

require 'phpOpenTracker.php';

if ( isset($_GET['document_url']) &&
    !empty($_GET['document_url'])) {
  $parameters['document_url'] = urldecode($_GET['document_url']);
  //$parameters['document_url'] = base64_decode($_GET['document_url']);
}
else if (isset($_SERVER['HTTP_REFERER'])) {
  $parameters['document_url'] = $_SERVER['HTTP_REFERER'];
}

if (!isset($parameters['document_url'])) {
  exit;
}

if ( isset($_GET['document']) &&
    !empty($_GET['document'])) {
  $parameters['document'] = $_GET['document'];
}

$parameters['client_id'] = isset($_GET['client_id']) ? $_GET['client_id'] : 1;

// don't record a referrer if it is from the same site
$parameters['referer'] = '';
if ( isset($_GET['referer']) && !empty($_GET['referer'])) {
	$referrer = urldecode($_GET['referer']);
	//$referrer = base64_decode($_GET['referer']);
	$docURL = parse_url($parameters['document_url']);
	$refURL = parse_url($referrer);
	if ($docURL[host] !== $refURL[host]) {
		$parameters['referer'] = $referrer;
	}
}

//if (   isset($_GET['add_data']) &&
//    is_array($_GET['add_data'])) {
//  foreach ($_GET['add_data'] as $data) {
//    list($field, $value) = explode('::', $data);
//
//    $parameters['add_data'][$field] = $value;
//  }
//}

// capture any data from a sale, inquiry, or signup
$field = 'sale';
if ( isset($_GET[$field]) &&
    !empty($_GET[$field])) {
  $parameters['conversions'][$field] = $_GET[$field];
} else $parameters['conversions'][$field] = '';

$field = 'inquiry';
if ( isset($_GET[$field]) &&
    !empty($_GET[$field])) {
  $parameters['conversions'][$field] = $_GET[$field];
} else $parameters['conversions'][$field] = '';

$field = 'signup';
if ( isset($_GET[$field]) &&
    !empty($_GET[$field])) {
  $parameters['conversions'][$field] = $_GET[$field];
} else $parameters['conversions'][$field] = '';

$field = 'email';
if ( isset($_GET[$field]) &&
    !empty($_GET[$field])) {
  $parameters['conversions'][$field] = $_GET[$field];
} else $parameters['conversions'][$field] = '';

$field = 'zip';
if ( isset($_GET[$field]) &&
    !empty($_GET[$field])) {
  $parameters['conversions'][$field] = $_GET[$field];
} else $parameters['conversions'][$field] = '';

$field = 'country';
if ( isset($_GET[$field]) &&
    !empty($_GET[$field])) {
  $parameters['conversions'][$field] = $_GET[$field];
} else $parameters['conversions'][$field] = '';

$field = 'name';
if ( isset($_GET[$field]) &&
    !empty($_GET[$field])) {
  $parameters['conversions'][$field] = $_GET[$field];
} else $parameters['conversions'][$field] = '';

$success = phpOpenTracker::log($parameters);

if ( isset($_GET['show']) && !empty($_GET['show'])) {
	
	switch($_GET['show']) {
		
		/* script was called through IMG-Tag */
		case 'img':
			header ("Content-type: image/png" ); 
			$im = @ ImageCreate (120,20) or die ( "Cannot create a new GD image." ); 
			$background_color =ImageColorAllocate ($im ,255 ,255 ,255 ); 
			$text_color =ImageColorAllocate ($im ,233 ,14 ,91 ); 
			ImageString ($im ,1,5,5,'JavaScript disabled?',$text_color ); 
			ImagePng ($im );
		break;
		
		/* script was called through JavaScript */
		case 'debug':
			// show the data received:
			echo('msg = "'.join(" ",$parameters).'";');
			echo('document.open();');
			echo('document.write(msg);');
			echo('document.close();');
		break;
		
		/* script was called through JavaScript */
		default:
			echo "document.open()\ndocument.write(' ')\ndocument.close()\n";
		break;
	}
}
?>



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click