﻿function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}


function Eventi() {
    this.Children = new Array();
    this.load = function(xmlfragment) {

 
        
        var parser = new DOMParser();
        // XML DOM object
        var xmlObject = parser.parseFromString(xmlfragment, "text/xml");
        var xml = $(xmlObject);
        if (xml.find('parsererror').length > 0 || $.browser.msie) {

 //           xml = $(xmlfragment);
        }
        this.Children = new Array();
        var me = this;
        xml.find('Evento').each(function() {
            var t = new Evento();
			if(this){
				t.load(this);
				me.Children.push(t);
			}
        });
    };
  
}



function Evento() {

    this.Immagine = '';
    this.Data = '';
    this.Titolo = '';
    this.Note = '';
    this.Abstract = '';
    this.Url = '';
   
    
    this.load = function(xmlfragment) {
        var xml = $(xmlfragment);
        for (var pr in this) {
            if (typeof (this[pr]) != 'function') {
                var value = xml.find(pr).text();
                var type = typeof (this[pr]);
                if (value != undefined || value != '') {
                    switch (type) {
                        default:
                            this[pr] = trim(value,' ');
                            break;
                    }
                }
            }
        }
    
    }
    
    

}
