/* Источник данных для списка вендоров */
function BuildVendors() {  // global common_url, vendorid_var, COMPANY_VAR
	var autoRefreshTimer = 9; // в секундах
	var refresh_tick = autoRefreshTimer;
	//var bla_var = document.getElementById('id_bla_var').value;
//	var bla_var = "Примечание:расчет цены выполнен с 5% скидкой<br>для заказов с этого сайта. Читайте подробнее о<br>ценообразовани такси на странице <a href=''>цены такси Киева</a>";
	var bla_var = "Примечание:расчет цены выполнен со скидкой<br> для заказов с этого сайта. Читайте подробнее <br>о ценообразовани такси на странице <a href='http://www.edinoe-taxi.com/sayt/samoe-deshevoe-taksi-kieva-2.html'>цены такси Киева</a>";

	var dsVendors = new Ext.data.Store({
		proxy: new Ext.data.ScriptTagProxy({
			url: common_url + 'action.php?action=const_getvendors&vendorid=' + vendorid_var
		}),
		reader: new Ext.data.JsonReader({
			root: 'vendors',
			totalProperty: 'totalCount',
			id: 'id',
			fields: ['id', 'name', 'phone', 'price', 'prim']
		}),
		remoteSort: true,
		autoLoad: true
	});
	dsVendors.setDefaultSort('id', 'asc');
	dsVendors.load({
		params: {
			start: 0,
			limit: 30
		}
	});

	gridVendors = new Ext.grid.GridPanel({
		autoHeight: true,
		autoWidth: true,
		hidden: COMPANY_VAR != 1,
		title: 'Игнорировать такси компании',
		store: dsVendors,
		stripeRows: true,
   		frame: true,
		//cm: cmVendors,
		tbar: [
			new Ext.TabsButton({
				id: 'start_calc_prices_button',
				text: 'Рассчитать',
				handler: function() {
					premessage_id = -1;
					submit.fireEvent('click', submit, 1);
				}
			}),
			new Ext.TabsButton({
				id: 'stop_calc_prices_button',
				text: 'Стоп',
				disabled: true,
				handler: function() {
					stop_price = true;
					Ext.getCmp('start_calc_prices_button').enable();
					Ext.getCmp('stop_calc_prices_button').disable();
				}
			})
		],
		trackMouseOver: false,
		animCollapse: false,
		/*selModel: new Ext.grid.RowSelectionModel({
			singleSelect: false
		}),*/
		sm: sm = new Ext.grid.CheckboxSelectionModel(),
		cm: cmVendors = new Ext.grid.ColumnModel([
				sm,
				/*{id: 'id', header: "ID", dataIndex: 'id', width: 20, sortable: true},*/
				{id: 'name', header: "Название", dataIndex: 'name', width: 40, sortable: true},
				/*{id: 'phone', header: "Телефон", dataIndex: 'phone', width: 70, sortable: false},*/
				{id: 'price', header: "Цена", dataIndex: 'price', width: 20, sortable: false, renderer:function(value) {return value ? value+' грн':''}
				},
				{id: 'prim', header: "Примечание", dataIndex: 'prim', width: 40, sortable: false}
		]),
		bbar: tb_buttons2 = new Ext.Toolbar({
			hidden: false,
			items: [new Ext.Toolbar.TextItem({
				css: 'display: none;',
				text: bla_var
			})]
		}),

		viewConfig: {
			forceFit: true,
			enableRowBody: true,
			showPreview: true
		}
	});

	gridVendors.getList = function() {
		if ((COMPANY_VAR == 1) && (gridVendors.selModel.getSelections().length != 0)) {
			var ignored_vendors_data=gridVendors.selModel.getSelections();
			var ignored_vendors=new Array();
			for(i=0; i<ignored_vendors_data.length; i++) {
				ignored_vendors[i]=ignored_vendors_data[i].data.id;
			}
			ignored_vendors+='';
		} else ignored_vendors='';
		return ignored_vendors;
	}

	gridVendors.CheckPrices = function() {
		if (stop_price) {			gridVendors.setTitle('Игнорировать такси компании');
			return;
		}

		if (premessage_id) {

			if (refresh_tick>=9) refresh_tick=9;

			var text_rol = '|||||||||';
			var text_len = 9;

			text_var = text_rol.substr(1, text_len - ((100 / 10, 0) + 1) * refresh_tick);

			if (refresh_tick == 0) text_var = "";

			gridVendors.setTitle('Идёт расчет ' + text_var);

			if (refresh_tick == 0) {
				gridVendors.store.proxy.url = common_url + 'action.php?action=const_getvendors&vendorid=' + vendorid_var + '&premessage_id='+premessage_id;
				gridVendors.store.reload();
				refresh_tick =9;
			}

			refresh_tick = refresh_tick-1;

		}
		setTimeout(gridVendors.CheckPrices, 1000);
	}

}