// ==UserScript==
// @name          Yahoo display number
// @description	  Display Numbers results of Yahoo searches
// @include       http://search.yahoo.co.jp*
// ==/UserScript==

(function() {

	function param(qstr) {
		var value = null;
		for (var i = 0; i < param.keys.length; i++) {
			if (param.keys[i] == qstr) {
				value = param.values[i];
				break;
			}
		}
		return value;
	}
	
	param.keys = new Array();
	param.values = new Array();

	function p_analys() {
		var query = window.location.search.substring(1);
		var squery=query.split('&');
		for (var i = 0 ; i < squery.length; i++) {
			var pos = squery[i].indexOf('=');
			if (pos >= 0) {
				var a = squery[i].substring(0,pos);
				var value = squery[i].substring(pos+1);
				param.keys[param.keys.length] = a;
				param.values[param.values.length] = value;
			}
		}
	}
	
	p_analys();
	var j = 0;
	var start = param('b');

	if (start == null) {
		start=0;
	}

	if (parseInt(start) == 0){
	start = parseInt(start) + 1;
	}
	start = parseInt(start);

	sw = document.getElementById('WS2m');

	function disp(){

		ss = sw.getElementsByTagName('li');

		for (si = 0; si < ss.length; si++) {
			sc = ss[si];
			num = start + j;

			sd = sc.getElementsByClassName('hd');
			if(sd[0] == null || sd[0] == undefined){
				continue;
			}

			if(sc.className == ''){
				if (num < 10) {
					sc.innerHTML = '<div style="margin-top:28px"></div><div style="color:#000000;font-size: 0.9em;margin-left:0.5em;position: absolute;margin-top:3px;">' + num + '. </div>' + sc.innerHTML;
				}

				else if (num < 100) {
					sc.innerHTML = '<div style="margin-top:28px"></div><div style="color:#000000;font-size: 0.9em;margin-left:0em;position: absolute;margin-top:3px;">' + num + '. </div>' + sc.innerHTML;
				}
					
				else {
					sc.innerHTML = '<div style="margin-top:28px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-0.6em;position: absolute;margin-top:3px;">' + num + '. </div>' + sc.innerHTML;
				}
			}
			else if(sc.className == 'w dmn'){
				if (num < 10) {
					sc.innerHTML = '<div style="margin-top:10px"></div><div style="color:#000000;font-size: 0.9em;margin-left:1.3em;position: absolute;">' + num + '. </div>' + '<div style="margin-top:-3px">' + sc.innerHTML + '</div>';
				}

				else if (num < 100) {
					sc.innerHTML = '<div style="margin-top:10px"></div><div style="color:#000000;font-size: 0.9em;margin-left:0em;position: absolute;">' + num + '. </div>' + '<div style="margin-top:-3px">' + sc.innerHTML + '</div>';
				}
					
				else {
					sc.innerHTML = '<div style="margin-top:10px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-0.6em;position: absolute;">' + num + '. </div>' + '<div style="margin-top:-3px">' + sc.innerHTML + '</div>';
				}
			}

			else if(sc.className == 'dd enc' || sc.className == 'dd map' || sc.className == 'dd nws'){
				if (num < 10) {
					sc.innerHTML = '<div style="margin-top:28px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-1.3em;position: absolute;margin-top:3px;">' + num + '. </div>' + sc.innerHTML;
				}

				else if (num < 100) {
					sc.innerHTML = '<div style="margin-top:28px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-1.8em;position: absolute;margin-top:3px;">' + num + '. </div>' + sc.innerHTML;
				}
					
				else {
					sc.innerHTML = '<div style="margin-top:28px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-2.4em;position: absolute;margin-top:3px;">' + num + '. </div>' + sc.innerHTML;
				}				
			}

			else {
				if (num < 10) {
					sc.innerHTML = '<div style="margin-top:10px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-1.3em;position: absolute;">' + num + '. </div>' + '<div style="margin-top:-3px">' + sc.innerHTML + '</div>';
				}

				else if (num < 100) {
					sc.innerHTML = '<div style="margin-top:10px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-1.8em;position: absolute;">' + num + '. </div>' + '<div style="margin-top:-3px">' + sc.innerHTML + '</div>';
				}
					
				else {
					sc.innerHTML = '<div style="margin-top:10px"></div><div style="color:#000000;font-size: 0.9em;margin-left:-2.4em;position: absolute;">' + num + '. </div>' + '<div style="margin-top:-3px">' + sc.innerHTML + '</div>';
				}				
			}
			j++;
		}
	}
disp();
})();