iks:kvala_personal_indicator_zarplaty

Отображение максимального числа сотрудников, которое держит топ, а также максимальной технологии установленной в подразделении. Показ процентного соотношения зарплаты от среднегородской.

目前為 2015-03-07 提交的版本,檢視 最新版本

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name           iks:kvala_personal_indicator_zarplaty
// @version        1.08
// @namespace      virtonomica
// @description    Отображение максимального числа сотрудников, которое держит топ, а также максимальной технологии установленной в подразделении. Показ процентного соотношения зарплаты от среднегородской.
// @include        http://*virtonomic*.*/*/main/unit/view/*
// @exclude        http://*virtonomic*.*/*/main/unit/view/*/supply
// @exclude        http://*virtonomic*.*/*/main/unit/view/*/manufacture
// @exclude        http://*virtonomic*.*/*/main/unit/view/*/animals
// @exclude        http://*virtonomic*.*/*/main/unit/view/*/sale
// @exclude        http://*virtonomic*.*/*/main/unit/view/*/finans_report
// @exclude        http://*virtonomic*.*/*/main/unit/view/*/technology/*
// ==/UserScript==

var run = function() {

    var type, cur_pers;
    var kvTeh = [0, 1, 1.74, 2.41, 3.03, 3.62, 4.19, 4.74, 5.28, 5.8, 6.31, 6.81, 7.3, 7.78, 8.26, 8.73, 9.19, 9.65, 10.1, 10.54, 10.99, 11.42, 11.86, 12.29, 12.71, 13.13, 13.55, 13.97, 14.38, 14.79, 15.19, 15.6, 16, 16.4, 16.8, 17.19, 17.58, 17.97, 18.36, 18.74, 19.13];
    
	/***** Калькулятор *****/
	$('#unit_subtab').each(function() {
		var str = this.innerHTML;
		str += '<br><div id="calcTop"><a id="calcToBloc" class="popup scriptIks_cur"><u>Калькулятор ТОП-1</u></a></div>';
		var d=document.createElement('div');
		d.id='calcTop1';
		d.style='position: fixed; right: 5px; top: 5px; background:gray; padding: 0px; display:none;'
		          +' border-radius:10px; -webkit-border-radius:10px; -moz-border-radius:10px; -khtml-border-radius:10px;';
		d.innerHTML = '<div style="position:relative; margin: 0; padding: 4px;">'
		              +'<table style="background-color: white; border-radius:7px; -webkit-border-radius:7px; -moz-border-radius:7px; -khtml-border-radius:7px;">'
		              +'<tr><td align="center" colspan="2" style="color: #708090;"><b><h1>Калькулятор</h1><b><hr></td></tr>'
		              +'<tr><td>Квалификация ТОПа</td> <td><input id="calcTopKv" type="text" size="4" class="scriptIks_imp"></td></tr>'
		              +'<tr><td>Технология</td> <td><input id="calcTopTehImp" type="text" size="4" class="scriptIks_imp"></td></tr>'
		              +'<tr><td>Количество работников</td> <td><input id="calcTopKolRab" type="text" size="4" class="scriptIks_imp"></td></tr>'
		              +'<tr><td>Квалификация работников</td> <td><input id="calcTopKvRab" type="text" size="4" class="scriptIks_imp"></td></tr>'
		              +'<tr><td align="center" colspan="2"><input id="calcButton" type="button" value="Расчитать" class="scriptIks_cur scriptIks_but"></td></tr>'
		              +'<tr><td align="center" colspan="2"><hr></td></tr>'
		              +'<tr><td>Максимальная технология<br>по данной квалификации</td> <td id="calcTopTeh" style="text-align: right;"></td></tr>'
		              +'<tr><td align="center" colspan="2"><hr></td></tr>'
		              +'<tr><td>Максимальное количество<br>персонала при<br>данной квалификации</td> <td id="calcTopRabMax" style="text-align: right;"></td></tr>'
		              +'<tr><td><input id="calcTopRab_MaxImp" value="120" type="text" size="4" class="scriptIks_imp" title="Укажите процент на какой расчитать">&nbsp;%</td> <td id="calcTopRab_Max" style="text-align: right;"></td></tr>'
		              +'<tr><td align="center" colspan="2"><hr></td></tr>'
		              +'<tr><td>Максимальная квалификация<br>персонала при данном количестве<hr></td> <td id="calcTopRab" style="text-align: right;"></td></tr>'
		              +'<tr><td>Минимальная квалификация<br>по данной технолигии</td> <td id="calcTopRabTeh" style="text-align: right;"></td></tr>'
		              +'<tr><td align="center" colspan="2"><hr></td></tr>'
		              +'<tr><td>Максимальное качество<br>оборудования при данной<br>квалификации персонала<hr></td> <td id="calcTopOb" style="text-align: right;"></td></tr>'
		              +'<tr><td>Качество оборудования<br>по данной технолигии</td> <td id="calcTopObTeh" style="text-align: right;"></td></tr>'
		              +'<tr><td align="center" colspan="2"><hr></td></tr>'
		              +'<tr><td>Максимальное количество<br>персонала в отрасли</td> <td id="calcTop3" style="text-align: right;"></td></tr>'
		              +'<tr><td align="center" colspan="2"><hr></td></tr>'
		              +'<tr><td align="right" colspan="2"><a href="http://virtacalc.freehost96.ru/indextop.php" class="popup" title="Так-же расчет нагрузки ТОП-1 и многое другое..." target="_blank"><small>Калькулятор от DeMonyan</small></a></td></tr>'
		              +'<table>'
		              +'<div class="scriptIks_cur scriptIks_exitDiv" id="calcExitBloc" title="Закрыть">'
		              +'<div class="scriptIks_crug1"></div>'
		              +'<div class="scriptIks_exit"><b>X</b></div>'
		              +'<div class="scriptIks_crug"></div>';
		              +'</div>'
		              +'</div>';
		document.body.appendChild(d);
		
		this.innerHTML = str;
	});
	
	document.getElementById('calcButton').onclick = calcTopGet;
	function calcTopGet(){
	        var p = false;
	        if($('#calcTopTeh').html() != '') p = true;
            // Максимум рабов ТОП-3
            kv = $('#calcTopKv').val();
            var type_1 = type;
            if (type == 'orchard')  type_1 = 'farm';
            pers = calcPersonalTop3(kv, type_1);
            $('#calcTop3').html(pers);
            // Максимальная техна
            if(p) {
                techn = calcTechMax(kv);
                $('#calcTopTeh').html(Math.floor(techn));
            }
            // Максимальное кол. рабов ТОП-1
            kvp = $('#calcTopKvRab').val();
            emp_count = calcPersonalTop1(kv, kvp, type);
            $('#calcTopRabMax').html(emp_count);
            var kvpTeh = kvTeh[$('#calcTopTehImp').val()];
            $('#calcTopRabTeh').html(kvpTeh);
            //
            if(p) {
                    var maxRab = $('#calcTopRab_MaxImp').val();
                    $('#calcTopRab_Max').html(Math.floor(emp_count/100*maxRab));
            }
            // Макс. квала рабов
            cur_pers = $('#calcTopKolRab').val();
            maxq=f2(calcQualTop1(kv,cur_pers, type));
            $('#calcTopRab').html(maxq);
            // Макс. оборудование
            max_eq = calcEqQualMax(kvp);
            $('#calcTopOb').html(max_eq);
            if(p) {
                    var teh_eq = calcEqQualMax(kvpTeh);
                    $('#calcTopObTeh').html(teh_eq);
            }
	}
	
	document.getElementById('calcToBloc').onclick = calcTopUp;
	function calcTopUp(){
	       document.getElementById('calcTop').style.display = "none";
	       document.getElementById('calcTop1').style.display = "block";
	}
	document.getElementById('calcExitBloc').onclick = calcTopExit;
	function calcTopExit(){
	       document.getElementById('calcTop').style.display = "block";
	       document.getElementById('calcTop1').style.display = "none";
	}
	/*************************************/
	
    var win = (typeof(unsafeWindow) != 'undefined' ? unsafeWindow : top.window);
    $ = win.$;
	
	var mode='';
	$( 'img[src*="812223"]' ).each ( function()
	{
		mode='Crocuta';  // алмазы
	});
	//mode='Crocuta';// офисная мистика
	type = getType();//'unknow';
	var k =getK(type);// 0;

	if((type=='unknow')||(k==0)) return;
	
	//////////////////////////////////	
	var total=getPersonalTotal();
	cur_pers=getPersonal(type);
	var kv = getPlayerQual();
	$('#calcTopKv').val(kv);
		
	// топ-3
	$("td:contains('Суммарное')").next().each(function() {
		str = this.innerHTML;
		//kv = parseInt( str );		
		var type_1 = type;
		if (type == 'orchard')  type_1 = 'farm';
		pers = calcPersonalTop3(kv, type_1);
		$('#calcTop3').html(pers);
		var pers_next=calcPersonalTop3(kv+1, type_1);
		var overload = procVal(pers, total);
		 
		if(overload>102) font='red';
		else if(overload>100) font='blue';
		else font='green';
		
		var str=' <br><font color=' + font +'>Предельная нагрузка по квале: <b>';
		str+=pers+ '</b>'+' (на след.уровне: '+'<b>'+pers_next+'</b>'+')';
		//str+='</b>'; 
		str+='<br>Загрузка ТОП-3: <b> '+overload+' %</b>';
		if(overload<100) str+='<br>Свободно рабов: <b>'+(pers-total)+'</b>';
		else if(overload>100) str+='<br>Перебор рабов: <b>'+(total-pers)+'</b>';
		str+= '</b></font>';
		this.innerHTML = this.innerHTML +str;
	});
	
// Количество работников
 	var nofp=getPersonal(type);
 	var emp_count = 0;
	
// топ-1
	var kvp = 0;
	$("td:contains('Уровень квалификации')").next().each(function() { 
		str = this.innerHTML;
		kvp = parseFloat( str );
		$('#calcTopKvRab').val(kvp);
		
		emp_count = calcPersonalTop1(kv, kvp, type);
		$('#calcTopRabMax').html(emp_count);
		$('#calcTopKolRab').val(cur_pers);
		emp_count_next = calcPersonalTop1(kv+1, kvp, type);
				
		var maxq=f2(calcQualTop1(kv,cur_pers, type));
		$('#calcTopRab').html(maxq);
		
		if(maxq<kvp) font='red';
		else font='green';
		
		this.innerHTML = this.innerHTML + '<br><font color=gray>Максимальная квала для 100% по ТОП-1: <b>' + maxq + '</b></font>';
		
		if(emp_count<nofp){
		      if(Math.floor(emp_count*1.2)>=nofp) font='orange';
		      else font='red';
		} else font='green';
		this.innerHTML = this.innerHTML + '<br>(<font color='+font+'>Максимальное количество рабов: <b>' + (emp_count) + '</b></font>) ';
		this.innerHTML = this.innerHTML + '<br>(<font color='+font+'>120% количества рабов: <b>' + Math.floor(emp_count/100*120) + '</b></font>)';
		$('#calcTopRab_Max').html(Math.floor(emp_count/100*120));
		// процент загрузки по топ-1
		var num = procVal(emp_count, nofp);
		if(num>100){
		          if(num<=120) font='orange';
		          else font='red';
		} else font='green';
		this.innerHTML = this.innerHTML + '<br><font color=' + font + '>Нагрузка по ТОП-1: <b>' + num + '%</b></font>';
		///////////
		this.innerHTML = this.innerHTML + '<br>(<font color=gray>На квале ' + (kv+1) + ' (следующий уровень): <b>' + (emp_count_next) + '</b></font>)';
		
//		if(mode=='Crocuta'){
			
			var p5=Math.floor(pers/5);			
			var k5=calcQualTop1(kv,p5,type);			
			var e5=calcEqQualMax(k5);
			this.innerHTML = this.innerHTML + '<br>(<font color=olive>Special 05: <b>5 *' + p5 + '--'  + f2(k5) + '('+e5+')'+'</b></font>)';
			
			p5=Math.floor(pers/10);			
			k5=calcQualTop1(kv,p5,type);			
			e5=calcEqQualMax(k5);
			this.innerHTML = this.innerHTML + '<br>(<font color=olive>Special 10: <b>10*' + p5 + '--'  + f2(k5) + '('+e5+')'+'</b></font>)';
//		}
	});
// техна
	var techn = 0;
	var max_techn = 0;
	$("td:contains('Уровень технологии')").next().each(function() { 
		str = this.innerHTML;
		techn = parseInt( str );
		$('#calcTopTehImp').val(techn);
		max_techn = calcTechMax(kv);
		$('#calcTopTeh').html(Math.floor(max_techn));
		font = 'green';
		if ( max_techn < techn) {
			font = 'red';
		} 
		str = ' <br>(<font color=' + font +'>Максимальная технология: <b>' + (max_techn) + '</b></font>)';
		this.innerHTML = this.innerHTML + str;
	});
//оборудование
	var eq;
	var max_eq = 0;
	$("td:contains('Качество'):first").next().each(function() { 
		str = this.innerHTML;
		eq= parseFloat( str );
		max_eq = calcEqQualMax(kvp);
		$('#calcTopOb').html(max_eq);
		
		if(eq>max_eq) font='red';
		else font = 'green';
		
		str = ' <br>(<font color=' + font +'>Макс.качество по персоналу: <b>' + (max_eq) + '</b></font>)';
		
		this.innerHTML = this.innerHTML + str;
		
		// Вызов калькулятора, чтоб посчтитал
		calcTopGet();
	});
	

    var d, ob, per;
        
// максмальное количество поситетилей по персоналу
	$("td.title:contains('Количество посетителей')").next().each(function() {
        var str = this.innerHTML;
        
        per = str.match(/\d[.\s\d]*(?=)/g);
        per = [per[0].replace(/[^\d\.]/g,''), per[1].replace(/[^\d\.]/g,'')];
        var pos = per[0];
        
        ob = $("td:contains('Количество оборудования')").next().text();
        ob = ob.match(/\d[.\s\d]*(?=)/g);
        ob = [ob[0].replace(/[^\d\.]/g,''), ob[1].replace(/[^\d\.]/g,'')];
        
        var posMax = per[1];
        perMax = ob[1];
        
        var spec = $("td.title:contains('Специализация')").next().text();
        switch(spec)
		{
			case('Фитнес'):
			case('Йога'):
			case('Бодибилдинг'):
			case('Группы здоровья'):
			case('Профессиональный спорт'):
			case('Скалолазание'):
				d = 5;
				break;
			case('Прачечная'):
			case('Химчистка'):
			case('Прачечная самообслуживания'):
				d = 10;
				break;
			default:
				d = 1;
		}
		perMax = perMax/d;
        
        var persKol = parseInt( $("td:contains('Количество сотрудников')").next().text() );
        var maxPer = persKol*(posMax/perMax);
        var s = '<br>Макс. по персоналу: ' + maxPer;
        
        s += '<br>Посещаемость: ' + ( procVal(maxPer, pos) ) + '%';
        
        this.innerHTML = str + s;
	});

/*
// максмальное количество поситетилей по персоналу
	$("td.title:contains('Количество сотрудников')").next().each(function() {
        var str = this.innerHTML;
        var s = '';
        var p = parseInt( $("td:contains('Количество сотрудников')").next().text() );
        if( ob[0] < p*d ) s = '<br>Требуется оборудования по персоналу: ' + (p*d) + ' ед.';
        
        this.innerHTML = str + s;
	});
*/
	///////////////////////////////////////////////////////////////////////////
	//function f2(val)
	//возвращает аргумент округлённым до 2-го знака
	///////////////////////////////////////////////////////////////////////////// 
	function f2(val){
		return Math.floor(100*val)/100;
	}//end f2()
	
	
	///////////////////////////////////////////////////////////////////////////
	//function getPlayerQual()
	//возвращает квалификацию игрока
	///////////////////////////////////////////////////////////////////////////// 
	function getPlayerQual(){
		return parseInt($('td.title:contains("Квалификация игрока")').next().text());
	}//end getPlayerQual()
	
	///////////////////////////////////////////////////////////////////////////
	//function calcPersonalTop3(q, type)
	// q - квалификация игрока
	// 
	//вычисляет максимальное кол-во работающих на предприятиях отрасли для заданной квалификации игрока (топ-3)
	///////////////////////////////////////////////////////////////////////////// 
	function calcPersonalTop3( q, type){
		return ((2*q*q + 6*q)*getK(type));
	}//end calcPersonalTop3()
	
	///////////////////////////////////////////////////////////////////////////
	//function calcPersonalTop1(q, qp,type)
	// q - квалификация игрока
	// qp -  квалификация персонала
	//вычисляет максимальное кол-во работающих с заданной квалификацией на предприятиии для заданной квалификации игрока (топ-1)
	///////////////////////////////////////////////////////////////////////////// 
	function calcPersonalTop1(q, qp,type){
		if((mode=='Crocuta')&&(type=='office')){return Math.floor(14*q*q/Math.pow(1.4, qp)/4.15);}
		return Math.floor(0.2*getK(type)*14*q*q/Math.pow(1.4, qp));
	}//end calcPersonalTop1()
	
	///////////////////////////////////////////////////////////////////////////
	//function calcQualTop1(q, p, type)
	// q - квалификация игрока
	// p -  численность персонала
	//вычисляет максимальное квалификацию работающих при заданных их численности и квалификации игрока (обратна calcPersonalTop1())
	///////////////////////////////////////////////////////////////////////////// 
	function calcQualTop1(q, p, type){		
		if(p==0) return 0.00;
		if((mode=='Crocuta')&&(type=='office')){return Math.log(14/4.15*q*q/p)/Math.log(1.4);}
		return Math.log(0.2*14*getK(type)*q*q/p)/Math.log(1.4);	
	}//end calcQualTop1()
	
	///////////////////////////////////////////////////////////////////////////
	//function calcTechMax(q)
	// q - квалификация игрока
	// 
	//вычисляет максимальный уровень технологии для заданной квалификации игрока
	///////////////////////////////////////////////////////////////////////////// 
	function calcTechMax(q){
		return Math.floor(10*Math.pow(q/0.0064, 1/3))/10 ;
	}//end calcTechMax()
	
	///////////////////////////////////////////////////////////////////////////
	//function calcEqQualMax(q)
	// qp - квалификация игрока
	// 
	//вычисляет максимальное качество оборудования/животных для заданной квалификации персонала
	///////////////////////////////////////////////////////////////////////////// 
	function calcEqQualMax( qp ){
		return Math.floor(100*Math.pow(qp, 1.5))/100 ;
	}//end calcEqQualMax
	
	///////////////////////////////////////////////////////////////////////////
	//function getPersonalTotal()
	//возвращает суммарное кол-во работающих в отрасли (топ-3)
	///////////////////////////////////////////////////////////////////////////// 
	function getPersonalTotal(){
	
		return parseInt($('td.title:contains("Суммарное")').next().text().replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ',''));
		
	}//end getPersonalTotal()
	
	///////////////////////////////////////////////////////////////////////////
	//function getType()
	//возвращает тип в виде строки  (по изображению)
	///////////////////////////////////////////////////////////////////////////// 
	function getType(){
		var img =  $("#unitImage").html();
		if(img=='') return 'unknown';
		img = img.substr(0,img.length-8);
		switch(img)
		{
			case('<img src="/img/v2/units/shop'):
				return 'shop';
				break;
			case('<img src="/img/v2/units/workshop'):
				return 'workshop';
				break;
			case('<img src="/img/v2/units/mill'):
				return 'mill';
				break;
			case('<img src="/img/v2/units/animalfarm'):
				return 'animalfarm';
				break;
			case('<img src="/img/v2/units/medicine'):
				return 'medicine';
				break;
			case('<img src="/img/v2/units/restaurant'):
				return 'restaurant';
				break;
			case('<img src="/img/v2/units/orchard'):
				return 'orchard';
				break;	
			case('<img src="/img/v2/units/farm'):
				return 'farm';
				break;	
			case('<img src="/img/v2/units/mine'):
				return 'mine';
				break;	
			case('<img src="/img/v2/units/lab'):
				return 'lab';
				break;		
			case('<img src="/img/v2/units/villa'):
				return 'villa';
				break;	
			case('<img src="/img/v2/units/warehouse'):
				return 'warehouse';
				break;	
			case('<img src="/img/v2/units/fishingbase'):
				return 'fishingbase';
				break;		
			case('<img src="/img/v2/units/office'):
				return 'office';
				break;	
			case('<img src="/img/v2/units/sawmill'):
				return 'sawmill';
				break;		
			case('<img src="/img/v2/units/service_light'):
				return 'service';
				break;
			case('<img src="/img/v2/units/repair'):
				return 'repair';
				break;
			case('<img src="/img/v2/units/fuel'):
				return 'fuel';
				break;
			default:
				return 'unknown';
		}//end switch
	}//end getType()
	///////////////////////////////////////////////////////////////////////////
	//getK(type)
	//возвращает к для расчётов нагрузки по типу
	///////////////////////////////////////////////////////////////////////////
	function getK(type)
	{
		switch(type)
		{
			case('shop'):
			case('restaurant'):
			case('lab'):
				return 5;
				break;
			case('repair'):
			case('fuel'):
				return 2.5;
				break;
			case('workshop'):			
			case('mill'):
			case('sawmill'):
				return 50;
				break;
			case('animalfarm'):
				return 7.5;
				break;
			case('medicine'):
			case('fishingbase'):
				return 12.5;
				break;				
			case('farm'):
				return 20;
				break;			
			case('orchard'):
				return 18;
				break;	
			case('mine'):
				return 100;
				break;			
			case('office'):
				//if(mode=='Crocuta') return 
				return 1;
				break;	
			case('service'):
				return 1.5;
				break;
			case('villa'):	
			case('warehouse'):	
			case('unknown'):	
			default:
				return 0;
		}//end switch
	}//end getType()	
	///////////////////////////////////////////////////////////////////////////
	//getPersonal(type)
	//возвращает кол-во работников на предприятии (по типу)
	///////////////////////////////////////////////////////////////////////////
	function getPersonal(type)
	{
		var temp = getPersonal_1(type);
		
		if(temp=='' || temp== -1) return (-1); //error
		return parseInt($('td.title:contains('+temp+')').next().text().replace(' ','').replace(' ','').replace(' ',''));
	}//end getPersonal()	
	
	function getPersonal_1(type)
	{
		var temp;
		switch(type)
		{
			case('lab'):
				temp='Количество учёных';
				break;
			case('workshop'):			
			case('mill'):
			case('mine'):
			case('fishingbase'):
			case('sawmill'):
				temp='Количество рабочих';
				break;
			case('animalfarm'):
			case('orchard'):				
			case('farm'):
				temp='Количество работников';				
				break;
			case('medicine'):
			case('office'):
			case('shop'):
			case('restaurant'):
			case('service'):
			case('repair'):
			case('fuel'):
				temp='Количество сотрудников';				
				break;					
			case('villa'):	
			case('warehouse'):	
			case('unknown'):	
			default:
				temp='';
				break;
		}//end switch
		if(temp=='') return (-1); //error
		return temp;
	}//end getPersonal_1()
	
	///////////////////////////////////////////////////////////////////////////
	//function procVal(num, val)
	//возвращает процент от val по отношению к nun
	///////////////////////////////////////////////////////////////////////////// 
	function procVal(num, val){
		return Math.round(val/(num/100)*100)/100;
	}//end procVal()
	
	/*********************************************************************************/
	
	// Процент зарплаты
	$("td:contains('Зарплата')").next().each(function() { 
		str = this.innerHTML;
		
        zarp = str.match(/\d[.\s\d]*/g); // (/\d[.\s\d]*(?=\$)/g)
        zzz = (zarp[0].replace(/[^\d\.]/g,'')/zarp[1].replace(/[^\d\.]/g,'')*100).toFixed(0);
        zp80 = (zarp[1].replace(/[^\d\.]/g,'')*80/100).toFixed(2); //80% от городской ЗП
        color = zzz<80?'red':'green';
        color = zzz>80?'blue':color;
        
		this.innerHTML = '<font color=' + color +'>' + str + ' --> ' + zzz + '%</font>' + '<font color=magenta>' + ' | 80% --> ' + zp80 + '$</font>';
	});
}


var style = document.createElement("style");
style.textContent = ' .scriptIks_imp { border: 2px solid #708090; border-radius: 5px; background: #e1e1e1; text-align: right; }'
                    +' .scriptIks_cur { cursor: pointer; }'
                    +' .scriptIks_exitDiv { position: absolute; margin: 0; padding: 0; right: 0; top: 0; }'
                    +' .scriptIks_crug { position: absolute; right: 0; top: 0; width: 14px; height: 14px; border: 4px solid gray; border-radius: 50%; padding: 0; }'
                    +' .scriptIks_crug1 { position: absolute; right: 0; top: 0; width: 14px; height: 14px; border: 4px solid gray; border-radius: 0 50% 0 50%; padding: 0;  background:white; }'
                    +' .scriptIks_exit { position: absolute; margin: 0; padding: 0; right: 5px; top: 1px; font-size: 18px; color: darkred; }'
                    +' .scriptIks_but { color:white; border:1px solid #708090; border-radius: 10px; background: #708090; background: linear-gradient(top, #e1e1e1, #708090, #e1e1e1); background: -webkit-linear-gradient(top, #e1e1e1, #708090, #e1e1e1); background: -moz-linear-gradient(top, #e1e1e1, #708090, #e1e1e1); background: -ms-linear-gradient(top, #e1e1e1, #708090, #e1e1e1); background: -o-linear-gradient(top, #e1e1e1, #708090, #e1e1e1); }';
document.documentElement.appendChild(style);


if(window.top == window) {
    var script = document.createElement("script");
    script.textContent = '(' + run.toString() + ')();';
    document.documentElement.appendChild(script);
}