function createRowsArray (table) {
  var rows = new Array();
	for (var r1 = 1; r1 < table.rows.length; r1++)
	  rows[r1-1] = table.rows[r1];
  return rows;
}

function insertSortedRows(table, rows) {
  if (document.all) var rowsCopy = new Array(rows.length)
  for (var r = 0; r < rows.length; r++) {
    if (document.all) rowsCopy[r] = rows[r].cloneNode(true);
    table.deleteRow(rows[r].rowIndex);
  }
  var tableSection = table.tBodies[0];
  for (var r = 0; r < rows.length; r++) {
    var row = document.all ? rowsCopy[r] : rows[r];
    tableSection.appendChild(row);
  }
}

function sortTable (table, sortFun) {
  var rows = createRowsArray(table);
  if (rows.length > 0) {
    rows.sort(sortFun);
    insertSortedRows(table, rows);
  }
}

function sortRowsAlpha (row1 , row2) {
  var column = sortRowsAlpha.col;
  var cell1 = row1.cells[column].innerText;
  var cell2 = row2.cells[column].innerText;
  return cell1 < cell2 ? - 1 : (cell1 == cell2 ? 0 : 1);
}

function sortRowsNume (row1 , row2) {
  var column = sortRowsNume.col;
  var cell1 = parseInt(row1.cells[column].innerText,10);
  var cell2 = parseInt(row2.cells[column].innerText,10);
  return cell1 < cell2 ? - 1 : (cell1 == cell2 ? 0 : 1);
}

function transDate(d)
{
var d1=d.split(" ");
var d2=d1[0].split("/");
var now   = new Date();
var year  = now.getYear();
var month = now.getMonth();
var date  = now.getDate();
var hh    = now.getHours();
var mm    = now.getMinutes();
var ss    = now.getSeconds();
	
	if (d1.length>1) 
	{
		var d3=d1[1].split(".");
		year  = parseInt(d2[2],10);
		month = parseInt(d2[1],10);
		date  = parseInt(d2[0],10);
		hh    = parseInt(d3[0],10);
		mm    = parseInt(d3[1],10);
		ss    = parseInt(d3[2],10);
		
		var rd= new Date(year,month,date,hh,mm,ss);
		return rd.getTime();
	}
	else
	{
		year  = parseInt(d2[2],10);
		month = parseInt(d2[1],10);
		date  = parseInt(d2[0],10);
		var rd = new Date(year,month,date);
		return rd.getTime();
	}
}

function transEuro(d)
{
var d1 = d.substr(2); // toglie simbolo euro
	d1 = d1.replace(/\./,"");
	d1 = d1.replace(/\,/,".");
	return parseFloat(d1);
}

function sortRowsDate (row1 , row2) {
  var column = sortRowsDate.col;
  var cell1 = transDate(row1.cells[column].innerText);
  var cell2 = transDate(row2.cells[column].innerText);
  return cell1 < cell2 ? - 1 : (cell1 == cell2 ? 0 : 1);
}

function sortRowsEuro (row1 , row2) {
  var column = sortRowsEuro.col;
  var cell1 = transEuro(row1.cells[column].innerText);
  var cell2 = transEuro(row2.cells[column].innerText);
  return cell1 > cell2 ? - 1 : (cell1 == cell2 ? 0 : 1);
}

