function CDocuments() {this.bodyText = false;};

CDocuments.prototype.rangeTable = function (table, idDoc, prop)
{

	var result = [];
	for (var i=0;i<table.rows.length;i++)
	{
		if ( table.rows[i][prop] == idDoc )
		{
			result[result.length] = table.rows[i];
		}
	}
	
	return result;
}


CDocuments.prototype.GetDocs = function (idMenu, idDoc, pageNumber, pageSize)
{
	pageNumber--;
	
	var SoR = new CSoapRequest(WebServiceUrlPath + "/ws/cust_leopizzo/WsGetDocuments.asmx", "GetDocuments", "requestMsg");
	var theQueryObject = {idMenu:idMenu, idDoc:idDoc, bodyText: this.bodyText};

	if (SoR.sendRequestObject(theQueryObject) == true)
	{
	
		var objResponse = new Object();
		var response = CXmlDeserializer.Deserialize(null, SoR.responseNode.node());
		var start = pageNumber * pageSize;
		var end = start + pageSize;

		response.documents.TotalRecordCount = response.documents.rows.length;
		response.documents.rows = response.documents.rows.slice(start, end);
		for (var rc=0;rc<response.documents.rows.length;rc++)
		{
			if(response.documents.rows[rc]["SOMMARIO"]!=null)
				response.documents.rows[rc]["SOMMARIO"] = unescapeString(response.documents.rows[rc]["SOMMARIO"]).replace(/\r\n/gi,'<br>').replace(/\n/gi,'<br>');
			if(response.documents.rows[rc]["TESTO"]!=null)
				response.documents.rows[rc]["TESTO"] = unescapeString(response.documents.rows[rc]["TESTO"]).replace(/\r\n/gi,'<br>').replace(/\n/gi,'<br>');
			response.documents.rows[rc]["Images"] = this.rangeTable(response.images, response.documents.rows[rc]["IDDOC"], "IDDOC");
			response.documents.rows[rc]["Files"] = this.rangeTable(response.files, response.documents.rows[rc]["IDDOC"], "IDDOC");
			response.documents.rows[rc]["RelatedDoc"] = this.rangeTable(response.relateddocs, response.documents.rows[rc]["IDDOC"], "IDDOCSOURCE");
			response.documents.rows[rc]["Links"] = this.rangeTable(response.links, response.documents.rows[rc]["IDDOC"], "IDDOC");
		}
		
	}
	
	delete response.images;
	delete response.files;
	delete response.relateddocs;	
	
	return response.documents;
	
}

CDocuments.prototype.GetDocsRelated = function (idDoc, pageNumber, pageSize)
{
	pageNumber--;
	
	var SoR = new CSoapRequest(WebServiceUrlPath + "/ws/cust_leopizzo/WsGetDocumentsRelated.asmx", "GetDocumentsRelated", "requestMsg");
	var theQueryObject = {idDoc:idDoc, bodyText: this.bodyText, idMenu: -1};

	if (SoR.sendRequestObject(theQueryObject) == true)
	{
	
		var objResponse = new Object();
		var response = CXmlDeserializer.Deserialize(null, SoR.responseNode.node());
		var start = pageNumber * pageSize;
		var end = start + pageSize;

		response.documents.TotalRecordCount = response.documents.rows.length;
		response.documents.rows = response.documents.rows.slice(start, end);
		for (var rc=0;rc<response.documents.rows.length;rc++)
		{
			if(response.documents.rows[rc]["SOMMARIO"]!=null)
				response.documents.rows[rc]["SOMMARIO"] = unescapeString(response.documents.rows[rc]["SOMMARIO"]).replace(/\r\n/gi,'<br>').replace(/\n/gi,'<br>');
			if(response.documents.rows[rc]["TESTO"]!=null)
				response.documents.rows[rc]["TESTO"] = unescapeString(response.documents.rows[rc]["TESTO"]).replace(/\r\n/gi,'<br>').replace(/\n/gi,'<br>');
			response.documents.rows[rc]["RelatedDoc"] = this.rangeTable(response.relateddocs, response.documents.rows[rc]["IDDOC"], "IDDOCSOURCE");
			response.documents.rows[rc]["Images"] = this.rangeTable(response.images, response.documents.rows[rc]["IDDOC"], "IDDOC");
		}
		
	}
	
	delete response.images;
	delete response.relateddocs;	
	
	return response.documents;
	
}
