function getElement(evt) {
    var element = Event.element(evt);
    return element ? element : evt;
}

function getClassNames(element) {
    if(element && element.className) {
        return $A(element.className.split(" "));
    }
    return $A({}); // Array vazio
}


/** MODAL */
function openDialog(params) {

    var height = params["height"] || 200;
    var width = params["width"] || 200;
    var title = params["title"] || "Untitled";
    var id = params["id"] || "modalId";
    var cssClass = params["cssclass"] || "simple_grey";
    var urlSet = params["url"] || "";
    var kind = params["kind"] || "Dialog";
    var method = params["method"] || 'get';
    var closable = params["closable"] || true;
    var minimizable = params["minimizable"] || false;
    var resizable = params["resizable"] || false;
    var maximizable = params["maximizable"] || false;
    var scrollable = params["scrollable"] || false;
    var draggable = params["draggable"] || true;
    var buttonClass = params["buttonClass"] || "button";
    var elementButton = params["button"]; //menuButton;
	var modal = params["modal"] || false; //menuButton;className: "dialog",  
    var divContent = params["divcontent"];

    if(kind == "Dialog") {
        // DIALOG
        // alert    confirm    info

        Dialog.info({
                     url: urlSet,
                     options: { method: method }
                    },
                     /*"Test of confirm panel, check out debug window after closing it.", */
                    {
                     className: cssClass,
                     title: title,
                     width: width,
                     height: height,
                     id: id,
                     showEffect: Element.show,
                     hideEffect: Element.hide,
                     draggable: draggable,
                     closable: closable,
                     buttonClass: buttonClass,
                     minimizable: minimizable,
                     maximizable: maximizable,
                     scrollable: scrollable,
					 //className: className,
                     resizable: resizable
                    });
					//alert(kind);

    } else if(kind == "Menu") {

        /*$('expand').style.width = '100%';
        $('expand').style.height = '100%';
        $('expand').style.position = 'absolute';
        $('expand').style.zIndex = '100';
        $('expand').style.top = '93px';
        $('expand').style.display = 'block';
        Event.observe($('expand'), 'click', clickoutClose, false);
*/

        Windows.closeAll();

        var win = new Window({
                              className: cssClass,
                              title: title,
                              width: width,
                              height: height,
                              id: id,
                              buttonClass: buttonClass,
                              minimizable: minimizable,
                              maximizable: maximizable,
                              resizable: resizable,
                              showEffect: Element.show,
                              hideEffect: Element.hide,
                              destroyOnClose: true,
							  //className: className,
                              recenterAuto: false
                             });

        var elementWindow = $(divContent);
        if(elementWindow) {
            var divId = elementWindow.id;

            elementWindow.style.display = 'block';
            //win.setContent(divId, false, false);
           /* win.showCenter();
            win.setZIndex(200);

            win.setLocation(94, win.getLocation().left.replace(/[^\.\D*]/g, ''));
*/
            var ancestorsElement = elementWindow.ancestors();
            var descendantsElement = elementWindow.descendants();
/*
            Event.observe(elementWindow, 'mouseover', mouseoverSubmenu, false);
            Event.observe($(id), 'mouseover', mouseoutClose, false);
*/
            //actionClose = elementWindow;
        }
		
		win.setAjaxContent(urlSet);
		
		win.showCenter(modal);
		win.setZIndex(200);
		//win.setLocation(94, win.getLocation().left.replace(/[^\.\D*]/g, ''));
		
    } else {
        // WINDOW
        Windows.closeAll();
        var win = new Window({
                              className: cssClass,
                              title: title,
                              width: width,
                              height: height,
                              id: id,
                              showEffect: Element.show,
                              hideEffect: Element.hide,
                              //effectOptions: 'none',
                              destroyOnClose: true,
                              recenterAuto:false,
                              draggable: draggable,
                              closable: closable,
                              buttonClass: buttonClass,
                              minimizable: minimizable,
                              maximizable: maximizable,
                              scrollable: scrollable,
                              resizable: resizable
                             });
        win.setAjaxContent(urlSet);
        win.showCenter();
    }

    oncloseObserver = {
        onClose: function(eventName, win) {
            Windows.removeObserver(this);
        }
    }

    Windows.addObserver(oncloseObserver);

}
/** // MODAL */

