﻿function AutoCompleteItem(label, value)
{
    var self = this;
    //

    self.label = label;
    self.value = value;
    self.valorInformado = null;
    self.isSelectable = true;
    self.cssClass = null;
    self.cssClassItemSelecionado = null;
    self.index = null;
    self.menu = null;
    //
    
    var _dom;

    self.render = function()
    {
        var div = XUtils.createElement('div');
        
        div.className = self.cssClass;
        
        if (!self.isSelectable)
            div.style.cursor = "default";

        /*
        var vI = self.valorInformado.toLowerCase().replace(',', ', ');
	    var x = vI.indexOf(',  ');
        while (x != -1)
        {
	        vI = vI.replace(',  ', ', ');
	        x = vI.indexOf(',  ');
	    }
	    */

        // Deixar em negrito o texto digitado
	    var val = self.label;
	    var st = val.toLowerCase().indexOf(self.valorInformado.toLowerCase());
	    var resultado = '';
		
	    if (st != -1)
	        resultado = val.substring(0, st) + "<strong>" + val.substring(st, st+self.valorInformado.length) + "</strong>" + val.substring(st+self.valorInformado.length);
        else
            resultado = val;

        div.innerHTML = resultado;
            
        if (self.isSelectable)
        {
            div.onmouseover = self.onMouseOver;
            div.onclick = self.onClick;
        }
        
        _dom = div;
            
        return _dom;
            
        if (self.valorInformado == self.label)
        {
            self.menu.onMenuItemClick(self.index);
            return null;
        }
    }
        
	self.highlight = function() 
	{
	    if (_dom != null)
	    {
	        _dom.className = self.cssClassItemSelecionado;
	    }
    } 

    self.unhighlight = function()
    {
        if (_dom != null)
        {
            _dom.className = self.cssClass;
        }
    }

	self.getDOM = function()
	{
	    return _dom;
    }

	self.onMouseOver = function()
	{
	    self.menu.onMenuItemMouseOver(self.index);
    }

	self.onClick = function()
	{
        self.menu.onMenuItemClick(self.index);
    }
}

if(typeof(Sys) !== "undefined") Sys.Application.notifyScriptLoaded();