// ByteMobile Inc. Content Modification Detector - written by saenet.de
//
// Many providers of UMTS service such as o2 compress AND CHANGE(!) data during transportation.
// This script detects and corrects provider-side modification made to the website
// to route image traffic threw their proxys wich degrease the size of images.
//
// This script should be added to the bottom of each website
// beeing protected for any provider-side changes.
//
// Code snippet to add this hack to a website:
//  <script type="text/javascript" src="http://www.saenet.de/js/bmidetect.js"></script>

var AutoCorrectProviderSabotage; // Set this true before adding script if you dont want your visitors to be asked.
var bmiMatch = /^(https?:\/\/)1\.(?:2\.3\.4|1\.1\.[1-9])\/bmi\/(.+)\//;
var bmiObjects = (document.all)?document.images:document.getElementsByTagName("IMG");

function bmiDetect()
{
	for ( var ind in bmiObjects ) {
		if(typeof bmiObjects[ind] == 'object') if(bmiObjects[ind].src.match(bmiMatch))
			var bmiTagged = 1;
	}
	if(bmiTagged)
		if(confirm("Ihr Provider hat bei dem Aufruf dieser Seite, einige Daten verändert!\nAlle übertragenen Informationen entsprechen ggF. qualitativ nicht mehr den Orginaldaten!\nMöchten Sie umgehen, dass Ihr Provider Ihre besuchten Seiten verändert,\nsurfen sie wenn möglich nur noch verschlüsselt per \"https\"!\n\nEinige unerwünschte Veränderungen werden nun rückgängig gemacht."))
			bmiCorrect();
}
function bmiCorrect()
{
	for ( var ind in bmiObjects ) {
		if(typeof bmiObjects[ind] == 'object') bmiObjects[ind].src = bmiObjects[ind].src.replace(bmiMatch, "$1$2/");
	}
}

if(AutoCorrectProviderSabotage === true) bmiCorrect();
else bmiDetect();
