﻿var sweepPlaceId = "sweepPlace1293478172";

/* Presunie dany DOM uzol na docasne ulozisko (kde bude neviditelny)
 * @param id    ID uzla
 */
function sweepNode(id) 
{
    var s = document.getElementById(sweepPlaceId);
    if (!s) {
        s = document.createElement('div');
        s.id = sweepPlaceId;
        s.className = "x-hidden";
        document.body.appendChild(s);
    }
	s.appendChild(document.getElementById(id));
}

/* Odoberie dany ExtJs prvok z doterajsieho kontajnera (ak existuje)
 * @param itemId         ID prvku, ktory sa mat odobrat.
 * @param autoDestroy    ak je true: item sa odstrani z DOM
 */
function removeFromOwnerCt(itemId, autoDestroy)
{
    var item = Ext.getCmp(itemId);
    if (item)
        if (typeof item.ownerCt != 'undefined') 
            item.ownerCt.remove(item, autoDestroy); 
}

/* Zaradi dany objekt do ExtJs kontajnera s danym ID.
 * @param item         Objekt, ktory sa ma pridat. Moze byt urceny napr. odkazom na existujuci ("Ext.getCmp(existingId)") alebo ako "new Ext.Panel({config...})"
 * @param ownerCtId    ID existujuceho ExtJs kontajnera
 */
function addToOwnerCt(item, ownerCtId) 
{
    var ct = Ext.getCmp(ownerCtId);
    if (ct) 
    {
        ct.add(item);
        var topmost = ct;
        while (typeof topmost.ownerCt != 'undefined')
            topmost = topmost.ownerCt;
        topmost.doLayout();      // TODO: experimentovat s parametrom shallow=true/false; defaultne spravanie vola doLayout rekurzivne pre podradene formulare
    }
    else
        alert("[DEBUG] AControlAdapter.js/addToOwnerCt: Ext.Container " + ownerCtId + " neexistuje!");
}

if(typeof(Sys)!=="undefined")Sys.Application.notifyScriptLoaded();