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