var AboutMsg = '<div align="center"><h1>Добро пожаловать!</h1></div>';
var BClanImageTag = '<img src="http://img.ereality.ru/clan/';
var ETag = '"/>';
var SelId, SelLev;
var MineData = [
	[69, 'Лига вольных', '-ЭЛЬДОРАДО-', BClanImageTag + '97.gif' + ETag, '26:80', 30, 210, '-', 2, 2, '-', 'КЛАН', 0, 4, 4, '-', 'ДА', 1, 'По договору', 'НЕТ', 'В разработке', 'GravE-IN-ParadisE,LostSoul,Net Wizard'],
	[10101, 'Гильдия Ремесленников', 'Северный Оплот™', BClanImageTag + '46.gif' + ETag, '9:19', 30, '', '-', 5],
	[10037, 'Chili Peppers', 'Кладбище светлячков', BClanImageTag + '51.gif' + ETag, '15:91', 30, '', '-', 3],
	[87, 'Sheer Power', 'Абсолютная шахта', BClanImageTag + '40.gif' + ETag, '12:32', 30, '', '-', 0],
	[78, 'Hell Saints', 'Добропожаловать в Ад', BClanImageTag + '47.gif' + ETag, '15:32', 30, 210, 'Есть лицензии по 90 и 150 сер.', 5, 5, '-', 'КЛАН', 0, 5, 4, '-', 'ДА', 0, 'По предварительному согласованию', 'НЕТ', '<a target="_blank" href="http://www.freedom.erclans.ru/shaht/map3.php?s_id=78&etaj=1&sid=1">Границы</a>', 'Whiteblade,Nyv,MrTopa,mr M,manut'],
	[10058, 'Мудрые странники', 'Копи царя Соломона', BClanImageTag + '85.gif' + ETag, '19:42', 30, 210, '-', 0, '4-5', '-', 'КЛАН', 0, 5, 4, '-', 'КЛАН', 0, '-', 'Все соседи, кроме ОДМ', '-', 'shumer4,nektoras,Андрей Добрый,Olegych33,Мальмштейн'],
	[101, 'Street Killers', 'АТЛАНТИДА', BClanImageTag + '70.gif' + ETag, '13:84', 30, '', '-', 3],
	[108, 'ОдМ', 'Логово Блондинки', BClanImageTag + '37.gif' + ETag, '26:64', 30, '', '-', 2],
	[385, 'DarkPaladins', 'Black Hole', BClanImageTag + '53.gif' + ETag, '20:94', 30, '', '-', 3],
	[10113, 'Гильдия Ремесленников', 'Дримлэнд™', BClanImageTag + '46.gif' + ETag, '25:86', 30, 210, '-', 2, 5, '-', 'КЛАН', 0, 4, 4, '-', 'ДА', 0, 'Только с лицензией и по правилам', 'НЕТ', '<a target="_blank" href="http://www.freedom.erclans.ru/shaht/map3.php?s_id=10113&etaj=1&sid=1">Границы</a>', 'Light-Monk,Летящий кинжал'],
	[10003, 'Иные', 'Шахта Иные', BClanImageTag + '34.gif' + ETag, '11:73', 30, '', '-', 3],
	[88, 'Brotherhood of blood', 'Шахта BoB', BClanImageTag + '31.gif' + ETag, '13:78', 30, 210, '-', 3, 3, '-', 'КЛАН', 0, 'гос', 'гос', '-', 'ДА', 0, '-', 'НЕТ', '<a target="_blank" href="http://bb.erclans.ru/s/map2.php?level=4&klan=88">Границы</a>', 'gmg'],
	[368, 'Казацкая Сечь', 'КозаЦкИе ПечеРы', BClanImageTag + '58.gif' + ETag, '7:26', 30, '', '-', 2],
	[100, 'Ночные Мотыльки', 'ЗАБОЙНАЯ ШАХТА', BClanImageTag + '42.gif' + ETag, '8:63', 30, '', '-', 3],
	[10025, 'Орден Пламени Анора', 'Бамбармия Кергуду', BClanImageTag + '71.gif' + ETag, '21:81', 30, 210, '-', 2, 4, '-', 'КЛАН', 0, 'Ненужны', 'Ненужны', '-', 'ДА', 0, 'Соблюдать  границы', 'НЕТ', '<a target="_blank" href="http://www.freedom.erclans.ru/shaht/map3.php?s_id=10025&etaj=5&sid=1">Границы</a>, PvP запрещено', 'Dogger'],
	[117, 'Freedom', 'Свободная шахта', BClanImageTag + '68.gif' + ETag, '6:56', 35, '', '-', 3],
	[98, 'Corsars', 'Подземелье Сокровищ', BClanImageTag + '45.gif' + ETag, '20:75', 35, '', '-', 2],
	[92, 'ihar', 'Пригородная', '', '13:41'],
	[72, 'Сидзоку Такаи', 'Мечта Самурая', BClanImageTag + '73.gif' + ETag, '24:72', 30, 210, '-', 0, 2, '-', 'КЛАН', 0, 5, 4, '-', 'КЛАН', 0, '-', 'НЕТ', '<a target="_blank" href="http://www.freedom.erclans.ru/shaht/map3.php?etaj=1&sid=2&s_id=72">Границы</a>', 'канцлер,_WhiRa_'],
	[66, 'Blade of Darkness', 'Шахта Драконов', BClanImageTag + '29.gif' + ETag, '10:68', 30, '', '-', 3],
	[86, 'Тамплиеры', 'Рудники Тамплиеров', BClanImageTag + '39.gif' + ETag, '8:42', 30, '', '-', 2],
	[10059, 'Братство Клинка', 'Золото Клинков', BClanImageTag + '59.gif' + ETag, '20:89', '', '', 'Закрыта для посетителей'],
	[83, 'Darth_Sergius', 'Ядрёный бункер', '', '16:86', 30, 210, 'Для VIP - возмещение стоимости лицензии', 1, 1, '-', 'ДА', 0, 'полгос', 'полгос', 'Актуально для бригады ремонтников, возможно вступление', 'ДА', 1, 'Иногда', 'НЕТ', '<a target="_blank" href="http://www.freedom.erclans.ru/shaht/map3.php?s_id=10025&etaj=1&sid=1">Договор с Анорами</a>, <a target="_blank" href="http://s57.radikal.ru/i156/0903/a1/4885cd270645.jpg">Договор с Паладинами</a>', 'Zolvo'],
	[10036, 'EVirtuality - Immortals', 'План МооХа!', BClanImageTag + '56.gif' + ETag, '22:60', 30, '', '-', 1],
	[95, 'Ангелы Ада', 'Город Золотой', BClanImageTag + '32.gif' + ETag, '18:65', 30, '', '-', 5],
	[74, 'Наемники', 'UnderGrounD', BClanImageTag + '78.gif' + ETag, '7:33', 30, '', '-', 0],
	[91, 'S.T.J.', 'Dubba$ Palace', BClanImageTag + '38.gif' + ETag, '6:48', 30, 210, 'За недельную - билет хомяка в подарок', 3, 5, '-', 'КЛАН', 0, 5, 4, '-', 'ДА', 0, 'Строго соблюдать схему и границы', 'НЕТ', '<a target="_blank" href="http://www.clan-stj.com/forum/MineRule.htm">Правила</a>', 'Oldforest'],
	[84, 'CCCР', 'Песочница-СССР', BClanImageTag + '57.gif' + ETag, '16:38', 30, 210, '-',  1, 1, '-', 'КЛАН', 0, 5, 4, '-', 'ДА', 0, '-', 'НЕТ', '<a target="_blank" href="http://www.freedom.erclans.ru/shaht/map3.php?s_id=84&etaj=1&sid=1">Границы</a>', 'Vurdalaak,ВВЛАД'],
	[71, 'NOMADS', 'БУРЯ В ПУСТЫНЕ', BClanImageTag + '43.gif' + ETag, '15:62', 35, '', '-', 5],
	[76, 'Дом PinKRozze', 'Шахта РОЗ', BClanImageTag + '24.gif' + ETag, '15:52', 35, '', '-', 2],
	[94, 'Черная Сотня', 'Хрустальное Ущелье Й', BClanImageTag + '41.gif' + ETag, '11:46', 30, '', '-', 0],
	[96, 'Impudent Cats', 'Impudent Cats', BClanImageTag + '65.gif' + ETag, '16:72', 30, '', '-', 1],
	[61, 'ОдМ', 'Рудники Мафии', BClanImageTag + '37.gif' + ETag, '18:47', 30, '', '-', 3],
	[102, 'agresor', '*A.G.R.E.S.O.R*', '', '12:62', 30, '', '-', 0],
	[10001, 'Sensus Veris', 'Родничок', BClanImageTag + '48.gif' + ETag, '17:57', 30, 210, 'За недельную - кирка или лопата за 50% цены', 0, 1, '-', 'КЛАН', 0, 5, 4, '-', 'ДА', 1, 'Оплата при соблюдении границ', 'НЕТ', '<a target="_blank" href="http://sv.erclans.ru/index.php?do=forum&subaction=topic&topic=11">Пользования</a>, <a target="_blank" href="http://saintdraxon.narod.ru/newgra.jpg">Границы</a>', 'SaintDragon'],
	[62, 'Amour', 'глАмурная шахта', BClanImageTag + '36.gif' + ETag, '10:38', 30, 210, '-', 3, 3, '-', 'КЛАН', 0, 4, 3, 'Иногда', 'НЕТ', 0, '-', 'НЕТ', '<a target="_blank" href="http://www.freedom.erclans.ru/shaht/map3.php?s_id=62&etaj=1&sid=1">Границы</a>', 'Tyrus Prime'],
	[10004, 'Brothers', 'BROTHERS', BClanImageTag + '49.gif' + ETag, '12:57', 30, 210, '-', 0, 0, '-', 'КЛАН', 0, 5, 4, 'Все сами', 'ДА', 0, 'За несоблюдение границ - в черный список', 'Дом PinKRozze, Das Phantom', '<a target="_blank" href="http://odm.erclans.ru/fullmap.php?level=1&id=10004">Границы</a> различны на каждом этаже', 'Громыч,OTRO,Профессор'],
	[73, 'Das Phantom', 'Emirates Palace', '', '10:52'],
	[10129, 'Гладиаторы', 'Колизей', BClanImageTag + '126.gif' + ETag, '20:53']
];

var MineStore = new Ext.data.SimpleStore({	sortInfo: {
		field: 'mname',
		direction: 'ASC'
	},
	fields: [
		{name: 'mid', type: 'int'},
		{name: 'oname', type: 'string'},
		{name: 'mname', type: 'string'},
	    {name: 'oimage', type: 'string'},
		{name: 'sector', type: 'string'}
	],
    data: MineData
});

var MineSelector = new Ext.form.ComboBox({
	name: 'mineid',
	tpl: '<tpl for="."><div ext:qtip="<b>Владелец:</b> {oname}<br><b>Размещение:</b> {sector}" class="x-combo-list-item">{oimage}&nbsp;{mname}</div></tpl>',
	store: MineStore,
	displayField: 'mname',
	typeAhead: true,
	forceSelection: true,
	mode: 'local',
	triggerAction: 'all',
	selectOnFocus: true,
	emptyText: 'Шахта...'
});

MineSelector.on('select', function(selector, record){
	SelId = record.get('mid');
	if (SelId && SelLev){
		Ext.getCmp('mineshowbtn').setDisabled(false);
	}
});

var LevStore = new Ext.data.SimpleStore({
	fields: [
    	{name: 'lev', type: 'int'},
    	{name: 'res', type: 'string'}
    ],
    data: [
    	[1, 'Уголь, Медь, Олово'],
    	[2, 'Медь, Олово, Железо'],
    	[3, 'Железо, Платина'],
    	[4, 'Платина, Мифрил'],
    	[5, 'Мифрил, Адамантин']
    ]
});

var LevSelector = new Ext.form.ComboBox({
	name: 'level',
	width: 70,
	tpl: '<tpl for="."><div ext:qtip="Ресурсы: {res}" class="x-combo-list-item">{lev}</div></tpl>',
	store: LevStore,
	displayField: 'lev',
	mode: 'local',
	triggerAction: 'all',
	selectOnFocus: true,
	emptyText: 'Этаж...'
});

LevSelector.on('select', function(selector, record, index){
	SelLev = record.get('lev');
	if (SelId && SelLev){		Ext.getCmp('mineshowbtn').setDisabled(false);	}
});

function minerCalculation(){	var OreData = [['Уголь', 900, -60, 1.35], ['Медь', 1100, -30, 1.75], ['Олово', 1300, 20, 2.5],
	['Железо', 1550, 75, 3.6], ['Платина', 1800, 130, 5], ['Мифрил', 2000, 175, 6.6],
	['Адамантин', 2200, 210, 8.4]];
	var prof = minerProf.getValue();
	if (prof == '') prof = 0;
	var fak = minerFak.getValue();
	if (fak == '') fak = 0;
	var kir = minerKir.getValue();
	if (kir == '') kir = 0;
	if (minerHck.getValue()) kir = kir + 25 + prof * 0.25;
	prof = prof + fak + kir;
	var Tresult = '<table id="calcres"><tr><td class="head">Ресурс</td><td class="head">Цена, сер</td><td class="head">Время подхода</td>' +
		'<td class="head">Добыча</td><td class="head">Доход за подход, сер</td>' +
		'<td class="head">Доход в минуту, сер</td></tr>';
	var Dob = ['', '', '', '', '', '', ''];
	for (i = 0; i < 7; i++){
		Time = Math.round(OreData[i][1] - 5 * prof * 1.21);
		if (Time < 474) Time = 474;		Dmin = Math.round((prof - OreData[i][2]) / 40);
		if (Dmin < 0) Dmin = 0;
		Dmax = Math.round((prof - OreData[i][2]) / 20);
		if (Dmax < 0) Dmax = 0;
		if ((Dmax != Dmin) && (Dmin != 0)) Dob[i] = 'от ' + Dmin + ' до ' + Dmax;
		else Dob[i] = Dmax;
		if (!minerGos.getValue()) price = OreData[i][3];
		else price = minerPriceStore.getAt(i).get('price');
		PrDoh = (Dmin + Dmax) * price * 0.425;
		TimeDoh = (PrDoh * 60) / Time;
		if (Dmax != 0) Tresult += '<tr><td>' + OreData[i][0] + '</td><td>' + price + '</td><td>' + Math.floor(Time / 60) + ' мин. ' + (Time % 60) + ' сек.' + '</td><td>' +
        		Dob[i] + '</td><td>' + PrDoh.toFixed(2) + '</td><td>' + TimeDoh.toFixed(2) + '</td></tr>'
        else Tresult += '<tr><td>' + OreData[i][0] + '</td><td>' + price + '</td><td colspan=4><span style="color:red;">Недоступно</span></td></tr>';
	}
	minerWin.body.update(Tresult + '<tr><td colspan=6><b>*</b> - расчет среднего дохода производится по гос цене (если не отмечено "Рыночная цена") и 15% вероятности пустышек. ' +
		'Уровни плантаций грибов и закусочной считаются максимальными.</td></tr></table>');
};

var minerProf = new Ext.form.NumberField({
	id: 'minerprof',
	width: 30,
	allowDecimals: false,
	allowNegative: false,
	enableKeyEvents: true,
	listeners: {
		keyup: function(){
			if (this.getValue() > 255) this.setValue(255);
			minerCalculation();
		}
	}
});

var minerFak = new Ext.form.NumberField({
	id: 'minerfak',
	width: 30,
	allowDecimals: false,
	allowNegative: false,
	enableKeyEvents: true,
	listeners: {
		keyup: function(){
			if (this.getValue() > 255) this.setValue(255);
			minerCalculation();
		}
	}
});

var minerKir = new Ext.form.NumberField({
	id: 'minerkir',
	width: 30,
	allowDecimals: false,
	allowNegative: false,
	enableKeyEvents: true,
	listeners: {
		keyup: function(){
			if (this.getValue() > 255) this.setValue(255);
			minerCalculation();
		}
	}
});

var minerHck = new Ext.form.Checkbox({
	id: 'minerholy',
	listeners: {
		check: minerCalculation
	}
});

var minerGos = new Ext.form.Checkbox({
	id: 'minergos',
	listeners: {
		check: minerCalculation
	}
});

var minerPriceStore = new Ext.data.JsonStore({
	url: '/superservice/jproducts.php',
	root: 'ores',
	fields: [
		{name: 'name', type: 'string'},
		{name: 'count', type: 'int'},
    	{name: 'gprice', type: 'float'},
    	{name: 'price', type: 'float'}
    ],
    listeners: {
    	load: minerCalculation,
    	loadexception: function(){    		minerGos.disabled = true;
    		minerCalculation();
    	}
    }
});

var minerWin = new Ext.Window({	id: 'minercalc',	title: 'Калькулятор шахтера',
	layout: 'fit',
	width: 640,
	height: 238,
	closeAction: 'hide',
	plain: true,
	resizable: false,
	tbar: [
		'<b>Умелка</b>', '&nbsp;', minerProf, '-',
		'<b>Факел</b>', '&nbsp;', minerFak, '-',
		'<b>Кирка</b>', '&nbsp;', minerKir, '-',
		'<b>Праздник</b>', '&nbsp;', minerHck, '-',
		'<b>Рыночная цена</b>', '&nbsp;', minerGos, '-', '->',
		{			text: 'Обновить цены',
			handler: function(){					minerGos.disabled = false;
					minerWin.body.getUpdater().indicatorText = '<div class="loading-indicator">Загрузка рыночных цен...</div>';
		           	minerWin.body.getUpdater().showLoading();
					minerPriceStore.reload();
			}
		}
	],
	bodyStyle: 'padding: 2px',
	listeners: {		show: function(){			this.body.getUpdater().indicatorText = '<div class="loading-indicator">Загрузка рыночных цен...</div>';
           	this.body.getUpdater().showLoading();			minerPriceStore.reload();
		}	},
	bodyStyle: 'padding: 2px;',
	html: ''
});

function diggerCalculation(){	var Kubs = [[1, 3],[3, 5],[5, 8],[7, 10],[9, 12]];	var Tmax = 765;
	var Tmin = 540;
	var profAddbyLevel = 200;
	var TbyLevel = 60;
	var prof = diggerProf.getValue();
	if (prof == '') prof = 0;
	var fak = diggerFak.getValue();
	if (fak == '') fak = 0;
	var lop = diggerLopStore.getAt(diggerLopStore.find('name', diggerLop.getValue())).get('hint') - 25;
	if (diggerHck.getValue()) prof = 25 + prof * 1.25;
	var kub = prof + fak + lop;
	kub=Math.floor((kub + 35) / 25);
	prof = prof * 2 + fak + lop;
	prof = Tmax - prof;
	var Tresult = '<table id="calcres"><tr><th colspan="3">За подход: ' + kub + ' куб.</th></tr>' +
		'<tr><td class="head">Этаж</td><td class="head">Время на подход</td><td class="head">Подходов</td></tr>';
	for (i = 0; i < 5; i++){
		if ((Tmin + TbyLevel * i) > (prof + profAddbyLevel * i)) Time = Tmin + TbyLevel * i;
		else Time = prof + profAddbyLevel * i;
	    Tresult += '<tr><td>' + (i+1) + '</td><td>' + Math.floor(Time / 60) + ' мин. ' + (Time % 60) + ' сек.' + '</td>';
	    Kmin = Math.ceil(Kubs[i][0] / kub);
	    Kmax = Math.ceil(Kubs[i][1] / kub);
	    if (Kmin == Kmax) Tresult += '<td>' + Kmin + '</td></tr>';
	    else Tresult += '<td>от ' + Kmin + ' до ' + Kmax + '</td></tr>';
	}
	Tresult +='</table>';
	diggerWin.body.update(Tresult);
};

var diggerProf = new Ext.form.NumberField({	id: 'diggerprof',
	width: 30,
	allowDecimals: false,
	allowNegative: false,
	enableKeyEvents: true,
	listeners: {		keyup: function(){			if (this.getValue() > 255) this.setValue(255);
			diggerCalculation();		}	}
});

var diggerFak = new Ext.form.NumberField({
	id: 'diggerfak',
	width: 30,
	allowDecimals: false,
	allowNegative: false,
	enableKeyEvents: true,
	listeners: {		keyup: function(){
			if (this.getValue() > 255) this.setValue(255);
			diggerCalculation();
		}
	}
});

var diggerLopStore = new Ext.data.SimpleStore({
	fields: [
    	{name: 'name', type: 'string'},
    	{name: 'hint', type: 'int'}
    ],
    data: [
    	['Лопата', 25],
    	['Лопата +1', 40]
    ]
});

var diggerLop = new Ext.form.ComboBox({
	name: 'diggerlop',
	width: 80,
	tpl: '<tpl for="."><div ext:qtip="Умелка: +{hint}" class="x-combo-list-item">{name}</div></tpl>',
	store: diggerLopStore,
	displayField: 'name',
	mode: 'local',
	triggerAction: 'all',
	selectOnFocus: true,
	value: 'Лопата',
	listeners: {		select: diggerCalculation	}
});

var diggerHck = new Ext.form.Checkbox({
	id: 'diggerholy',
	listeners: {		check: diggerCalculation	}
});

var diggerWin = new Ext.Window({
	title: 'Калькулятор землекопа',
	layout: 'fit',
	width: 440,
	height: 190,
	closeAction: 'hide',
	plain: true,
	resizable: false,
	tbar: [
		'<b>Умелка</b>', '&nbsp;', diggerProf, '-',
		'<b>Факел</b>', '&nbsp;', diggerFak, '-',
		'<b>Лопата</b>', '&nbsp;', diggerLop, '-',
		'<b>Праздник</b>', '&nbsp;', diggerHck
	],
    listeners: {
    	show: diggerCalculation
    },
	bodyStyle: 'padding: 2px;',
	html: ''
});

var MineTBar = ['<b>Карты:</b>', '&nbsp;', MineSelector, '&nbsp;', LevSelector, '&nbsp;', {	id: 'mineshowbtn',	text: 'Показать',
	disabled: true,
	handler: function(){		if (MineTab.findById(SelId + '-' + SelLev)){			MineTab.activate(SelId + '-' + SelLev);		}else{	    	MineTab.add({    			id: SelId + '-' + SelLev,    			title: MineSelector.getValue() + ' | ' + LevSelector.getValue(),
    			closable: true,
				bodyStyle: 'background-color: #000000; padding: 10px;',
    			autoLoad: {					url: '/superservice/jminemap.php?mid=' + SelId + '&level=' + SelLev,
					text: '<font color=#aaaaaa>Запрос к EReality.ru... Ожидайте.</font>',
					timeout: 60
    			}
	    	}).show();
	    }
	}
}, '&nbsp;', {	id: 'minerefreshbtn',
	text: 'Обновить',
	handler: function(){		if (MineTab.getActiveTab().getId() == 'totmineinfo'){			MineInfoStore.reload();
		}
		else{			MineTab.getActiveTab().getUpdater().refresh();
		}	}
}, '->', '<b>Калькуляторы:</b>', '&nbsp;', {	id: 'minercalcbtn',
	text: 'Шахтера',
	handler: function(){		minerWin.show();
		}}, {	id: 'diggercalcbtn',
	text: 'Землекопа',
	handler: function(){
		diggerWin.show();
		}
}];

var MineInfoStore = new Ext.data.JsonStore({	url: '/superservice/jmineinfo.php',
	root: 'minedata',
	sortInfo: {field: 'total', direction: 'DESC'},
	fields: [
		{name: 'id', type: 'int'},
		{name: 'ug', type: 'int'},
    	{name: 'med', type: 'int'},
    	{name: 'ol',  type: 'int'},
    	{name: 'jel', type: 'int'},
    	{name: 'pl',  type: 'int'},
    	{name: 'mif', type: 'int'},
    	{name: 'adam', type: 'int'},
    	{name: 'total', type: 'int'}
    ],
    listeners:{    	load: selectUs
    }
});

function selectUs(){	var rec = [MineInfoStore.getAt(MineInfoStore.find('id', 91))];
   	var SelModel = TotMineInfoGrid.getSelectionModel();
   	SelModel.unlock();
   	SelModel.selectRecords(rec);
   	SelModel.lock();
};

function getMineName(val){	var i;	for (i in MineData){		if (MineData[i][0] == val) return MineData[i][3] + '&nbsp;' + MineData[i][2];
	}    return val;
};

function mineOres(val){	if (val < 0){		return '<span style="color:red;">Недоступно</span>';
	}
	return val;
};

var TotMineInfoGrid = new Ext.grid.GridPanel({	store: MineInfoStore,
	viewConfig: {forceFit: true},
	loadMask: {		msg: 'Запрос к EReality.ru... Ожидайте.',
		store: MineInfoStore
	},
	columns: [		{width: 200, header: '<span style="color: red;"><b>Шахта</b></span>', align: 'center', css: 'font-weight: bold;', sortable: false, menuDisabled: true, renderer: getMineName, dataIndex: 'id'},
		{header: '<span style="color: blue;"><b>Уголь</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'ug'},
		{header: '<span style="color: blue;"><b>Медь</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'med'},
		{header: '<span style="color: blue;"><b>Олово</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'ol'},
		{header: '<span style="color: blue;"><b>Железо</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'jel'},
		{header: '<span style="color: blue;"><b>Платина</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'pl'},
		{header: '<span style="color: blue;"><b>Мифрил</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'mif'},
		{header: '<span style="color: blue;"><b>Адамантин</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'adam'},
		{header: '<span style="color: green;"><b>Всего</b></span>', align: 'center', sortable: true, menuDisabled: true, renderer: mineOres, dataIndex: 'total'}
	],
    listeners: {
    	render: function(){    		MineInfoStore.reload();
    	},
    	sortchange: selectUs,
    	celldblclick: function(grid, rowIndex, columnIndex, event){	        var record = grid.getStore().getAt(rowIndex);
	        var data = record.get('id');
	        updateMineInfo(data);
    	}
    }
});

var MineTab = new Ext.TabPanel({
	activeTab: 0,
	enableTabScroll: true,
	defaults: {autoScroll: true},
    items: [
    	{
    		id: 'totmineinfo',
    		title: 'Сводная',
    		layout: 'fit',
   			tabTip: 'Сводная информация по<br>наличию ресурсов в шахтах',
   			bodyStyle: 'background-color: #dfe8f6; padding: 2px;',
   			items: TotMineInfoGrid
    	}],
		listeners: {
			tabchange: function(parent, panel){				if (panel.title == 'Сводная'){
					Ext.getCmp('mineinfo').body.update('<h2>Сводная информация по шахтам</h2>' +
					'<p>В таблице представлена сводная информация по наличию ресурсов в шахтах.</p>' +
					'<p>Клик на заголовке колонки производит сортировку по соответствующему ресурсу, ' +
					'а так же смену порядка сортировки.</p>' +
					'<p>Двойной клик на сводной по шахте открывает подробности о шахте.</p>');
				}else{
					var mine = panel.id.split('-');					updateMineInfo(mine[0]);				}
			}
		}
});

function updateMineInfo(mid){
	for (i in MineData){
		if (MineData[i][0] == mid){			var index = i;
			break;		}
	}
	msg = '<div class="bc">Шахта: ' + MineData[index][2] + '<br>Владелец: ' + MineData[index][3] + '&nbsp;' +
		MineData[index][1] + '<br>Размещение: ' + MineData[index][4] + '</div><table id="calcres">';
	msg += '<tr><th colspan=2>Лицензия</th></tr><tr><td class="head" width=40%>На день, сер</td><td>' + MineData[index][5] + '</td></tr>';
	msg += '<tr><td class="head">На неделю, сер</td><td>' + MineData[index][6] + '</td></tr>';
	msg += '<tr><td class="head">Примечание</td><td>' + MineData[index][7] + '</td></tr>';
	msg += '<tr><th colspan=2>Комиссия</th></tr><tr><td class="head">Обычно, %</td><td>' + MineData[index][8] + '</td></tr>';
	msg += '<tr><td class="head">День шахтёра, %</td><td>' + MineData[index][9] + '</td></tr>';
	msg += '<tr><td class="head">Примечание</td><td>' + MineData[index][10] + '</td></tr>';
	msg += '<tr><th colspan=2>Строитель</th></tr><tr><td class="head">Доступ</td><td>' + MineData[index][11] + '</td></tr>';
	msg += '<tr><td class="head">За подход, сер</td><td>' + MineData[index][12] + '</td></tr>';
	msg += '<tr><td class="head">За доску, сер</td><td>' + MineData[index][13] + '</td></tr>';
	msg += '<tr><td class="head">За бревно, сер</td><td>' + MineData[index][14] + '</td></tr>';
	msg += '<tr><td class="head">Примечание</td><td>' + MineData[index][15] + '</td></tr>';
	msg += '<tr><th colspan=2>Землекоп</th></tr><tr><td class="head">Доступ</td><td>' + MineData[index][16] + '</td></tr>';
	msg += '<tr><td class="head">За куб, сер</td><td>' + MineData[index][17] + '</td></tr>';
	msg += '<tr><td class="head">Примечание</td><td>' + MineData[index][18] + '</td></tr>';
	msg += '<tr><th colspan=2>Конфликты</th></tr><tr><td colspan=2>' + MineData[index][19] + '</td></tr>';
	msg += '<tr><th colspan=2>Правила</th></tr><tr><td colspan=2>' + MineData[index][20] + '</td></tr>';
	msg += '<tr><th colspan=2>По всем вопросам</th></tr><tr><td colspan=2>';
	if (MineData[index][21] != undefined){
		var links = MineData[index][21].split(',');
		for (i = 0; i < links.length; i++){			msg += '<a target="_blank" href="http://www.ereality.ru/~' + links[i] + '">' + links[i] + '</a> ';		}
	}
	msg += '</td></tr>';
	msg += '</table>';
	Ext.getCmp('mineinfo').body.update(msg);
};

var MineGTab = [{		id: 'mineinfo',
		region: 'east',
		layout: 'fit',
		title: 'Информация',
		width: 300,
		collapsible: true,
		autoScroll: true,
		margins: '2 2 2 0',
		cmargins: '2 2 2 0',
		bodyStyle: 'background-color: #dfe8f6; padding: 2px;',
		html: ''
	},{
		id: 'minemap',
		region: 'center',
		layout: 'fit',
		border: false,
		margins: '2 2 2 2',
		items: MineTab
	}
];
