var _profile  = new Object();


_profile.viewGiftBanner = function(id) {
	if(id == undefined) return;
	dojo.forEach(dojo.query(".giftBanner"),
	function(d){
		d.style.display = (d.id == 'giftBanner'+id)? "block" : "none";
	});
}

_profile.showGiftInfo = function(object, title, from, message) {
    if(this.hideGiftTimeout) {
        clearTimeout(this.hideGiftTimeout);
    }
    var g = document.getElementById('giftCloud');
    if(!g) { return; }

    var t = g.getElementsByTagName('tr');

    for(var a = 0; a<t.length; a++) {
        if(t[a].className=='gift') { var giftTr = t[a]; }
        if(t[a].className=='from') { var fromTr = t[a]; }
        if(t[a].className=='txt') { var txtTr = t[a]; }
    }

    g.style.visibility='hidden';
    g.style.display='block';

    if(title && giftTr) {
        giftTr.getElementsByTagName('td')[0].innerHTML=title;
    }

    if(from) {
        fromTr.getElementsByTagName('td')[0].innerHTML=from;
        txtTr.style.display='';
        txtTr.getElementsByTagName('td')[0].innerHTML=message;
    } else {
        fromTr.getElementsByTagName('td')[0].innerHTML='<i>Anonim</i>';
        txtTr.style.display='none';
    }

    var op = _layout.positionToElement(object, g.offsetParent);

    g.style.left=op[0]+'px';
    g.style.top=0-g.offsetHeight+40+'px';
    g.style.visibility='visible';
}

_profile.hideGiftInfo = function() {
    this.hideGiftTimeout = setTimeout('_profile.hideGiftDiv()', 100);
}

_profile.hideGiftDiv = function() {
    var g = document.getElementById('giftCloud');
    if(!g) { return; }
    g.style.display='none';
}

_profile.clearHideGiftInfo = function() {
    clearTimeout(this.hideGiftTimeout);
}

_profile.showViewersInfo = function(object, id, nick, age, location, status) {
    if(this.hideViewerTimeout) {
        clearTimeout(this.hideViewerTimeout);
    }
    var v = document.getElementById('viewerCloud');
    if(!v) { return; }

    v.style.visibility='hidden';
    v.style.display='block';

    v.style.left=0;
    v.style.top=0;

    var an = v.getElementsByTagName('a');

    var img = object.getElementsByTagName('img')[0].src.replace('_s.', '_b.');
    var clName = object.className;
    var link = '/profile/'+nick+'/'+id;
    
    an[0].getElementsByTagName('img')[0].src=img;
    an[0].className=clName;
    an[0].href=object.href;
    

    var p = v.getElementsByTagName('p');
    p[0].innerHTML= nick;
    p[1].getElementsByTagName('span')[0].innerHTML = age;
    p[2].getElementsByTagName('span')[0].innerHTML = location;
    p[3].getElementsByTagName('span')[0].innerHTML = status;

    var d = v.getElementsByTagName('div');

    for(var a = 0; a<d.length; a++) {
        if(d[a].className=="arr") {
            var arr = d[a];
            break;
        }
    }

    var op = _layout.positionToElement(object, object.offsetParent);

    //alert(op[1] + ' ' + object.offsetParent.className);

    var l = op[0]-10;
    var t = op[1]-v.offsetHeight;

    if(l+v.offsetWidth>v.offsetParent.offsetWidth) {
        l=v.offsetParent.offsetWidth-v.offsetWidth;
    }
        

    v.style.left=l+'px';
    v.style.top=t+'px';

    var al = op[0]-l;

    arr.style.left=al+'px';

    v.style.visibility='visible';
}

_profile.hideViewersInfo = function() {
    this.hideViewerTimeout = setTimeout('_profile.hideViewersDiv()', 100);
}

_profile.hideViewersDiv = function() {
    var v = document.getElementById('viewerCloud');
    if(!v) { return; }

    v.style.display='none';
}

_profile.clearHideViewerInfo = function() {
    clearTimeout(this.hideViewerTimeout);
}


_profile.showSetSound = function(object) {
    if(this.setSoundShow) {
        this.hideSetSound();
        return;
    } else {
        if(this.editProfileShow) {
            this.hideEditProfile();
        }
    }

    var s = document.getElementById('setSound');
    if(!s) { return; }

    s.style.left=0;
    s.style.top=0;

    s.style.visibility='hidden';
    s.style.display='block';

    var t = object.offsetTop+object.offsetHeight;

    var parent = object.offsetParent.offsetParent;

    var op = _layout.positionToElement(object, parent);

    var l = op[0];

    if(l+s.offsetWidth>parent.offsetWidth) {
        l=parent.offsetWidth-s.offsetWidth;
    }

    s.style.left=l+'px';
    s.style.top=t+'px';
    
    s.style.visibility='visible';
    this.setSoundShow=1;
}

_profile.hideSetSound = function() {
    var s = document.getElementById('setSound');
    if(!s) { return; }
    s.style.display='none';
    this.setSoundShow=null;
}

_profile.showActionsCloud = function(object, count, text) {
    var c = document.getElementById('actionsCloud');
    if(!c) { return; }

    var h = c.getElementsByTagName('h3')[0];
    var p = c.getElementsByTagName('p')[0];

    h.innerHTML = count;
    p.innerHTML = text;

    c.style.visibility='hidden';
    c.style.display='block';

    c.style.top=-(c.offsetHeight)+'px';
    c.style.left=object.offsetLeft-10+'px';

    c.style.visibility='visible';
}

_profile.hideActionsCloud = function() {
    var c = document.getElementById('actionsCloud');
    if(!c) { return; }

    c.style.display='none';
}

_profile.showEditProfile = function(object) {

    if(this.editProfileShow) {
        var s = document.getElementById('editProfile');
        if(s.selectedObject==object) {
            this.hideEditProfile();
            return;
        }
    } else {
        if(this.setSoundShow) {
            this.hideSetSound();
        }
    }

    var s = document.getElementById('editProfile');
    dojo.byId('addinfo').style.display="block";
    if(!s) { return; }

    jsfl.writeFlashEditor();
    
    s.style.left=0;
    s.style.top=0;

    s.style.visibility='hidden';
    s.style.display='block';

        var t = object.offsetTop+object.offsetHeight;

        var parent = object.offsetParent.offsetParent;

        var op = _layout.positionToElement(object, parent);

        var l = op[0];

        if(l+s.offsetWidth>parent.offsetWidth) {
            l=parent.offsetWidth-s.offsetWidth;
        }

    s.style.left=l+'px';
    s.style.top=t+'px';

    s.style.visibility='visible';

    s.selecedObject = object;

    this.editProfileShow=1;
}

_profile.hideEditProfile = function() {
    var s = document.getElementById('editProfile');
    if(!s) { return; }
    s.style.display='none';
    s.selectedObject=null;
    this.editProfileShow=null;
}

_profile.showEditBox = function(object) {
    if(this.editProfileShow) {
        var s = document.getElementById('editProfile');
        if(s.selectedObject==object) {
            this.hideEditProfile();
            return;
        }
    } else {
        if(this.setSoundShow) {
            this.hideSetSound();
        }
    }

    var s = document.getElementById('editProfile');
    dojo.byId('addinfo').style.display="none";
    if(!s) { return; }

    s.style.left=0;
    s.style.top=0;

    s.style.visibility='hidden';
    s.style.display='block';

    var parent = object;

    while(parent = parent.parentNode) {
        if(parent.className.indexOf('mnFr')>-1) {
            break;
        }
    }

    var c = _layout.positionToElement(parent, null);
    var pc = _layout.positionToElement(s.offsetParent, null);

    var l = 0;
    var t = 0;

    if(c[0]-100<pc[0]) {
        l = parent.offsetWidth;
        t = c[1]-pc[1];
    }

    if(c[0]>pc[0]) {
        l = c[0]-pc[0]-s.offsetWidth;
        t = c[1]-pc[1];
    }

    if(parent.offsetWidth==s.offsetParent.offsetWidth) {
        var op = _layout.positionToElement(object, null);
        t = c[1]-pc[1]+object.offsetHeight+10;
        l = c[0]-pc[0]+(op[0]-c[0]);
        var wdC = document.getElementById('wdCheck');

        if(l + s.offsetWidth + pc[0] > wdC.offsetWidth) {
            l = wdC.offsetWidth - s.offsetWidth - pc[0] - 10;
        }
    }

    s.style.left = l + 'px';
    s.style.top = t +'px';

    s.style.visibility='visible';
    s.selectedObject=object;
    this.editProfileShow=1;
}

_profile.showPresentation = function(object, type) {
    var p = document.getElementById('presentationParsed');
    var h = document.getElementById('presentation_html');
    document.getElementById('presGuestMode').style.display='none';

    var a = p.parentNode.getElementsByTagName('a');

    for(var b = 0; b<a.length; b++) {
        if(a[b].className.indexOf('tab')>-1) {
            a[b].className="tab";
        }
    }

    object.className=object.className+" selected";
    
    if(type=="preview") {
        p.style.display='block';
        h.style.display='none';
    }
    if(type=="html") {
        p.style.display='none';
        h.style.display='block';
    }
}

_profile.checkDescription = function(object) {
    if(typeof(object)=="string") {
        object = document.getElementById(object);
        _profile.descriptionDiv = object;
    }
    if(object.scrollWidth > object.offsetWidth) {
        _profile.descriptionTimeout = setTimeout('_profile.scrollDescription(1)', 2000);
    }
}

_profile.scrollDescription = function(direction) {
    if(_profile.descriptionDiv) {
        if(direction) {
            _profile.descriptionInterval = setInterval('_profile.scrollingDescription('+direction+')', 40);
        } else {
            _profile.descriptionInterval = setInterval('_profile.scrollingDescription('+direction+')', 40);
        }
    }
}

_profile.scrollingDescription = function(direction) {
    var pd = _profile.descriptionDiv
    if(direction) {
        pd.scrollLeft += 1;
        if(pd.scrollLeft+pd.offsetWidth >= pd.scrollWidth) {
            clearInterval(_profile.descriptionInterval);
            _profile.descriptionTimeout = setTimeout('_profile.scrollDescription(0)', 2000);
        }
    } else {
        pd.scrollLeft -= 1;
        if(pd.scrollLeft==0) {
            clearInterval(_profile.descriptionInterval);
            _profile.descriptionTimeout = setTimeout('_profile.scrollDescription(1)', 2000);
        }
    }
    
}