var currentTab='members';

window.addEvent('load', function(){
    var gAboutL=$('gAbout');
    if(gAboutL!=null) {
        gAboutL.addEvent('click', function(e){
            var showDiv=$('gAboutD');
            if(showDiv!=null) {
                if(showDiv.getStyle('display')=='none') {
                    $$('.jshide').each(function(el){el.setStyle('display', 'none')});
                    showDiv.setStyle('display', 'block');
                    var gAboutSize=gAboutL.getSize();
                    var gAboutPos=gAboutL.getPosition();
                    var showDivSize=showDiv.getSize();
                    var sDx=gAboutPos.x-(showDivSize.x/2);
                    var sDy=gAboutPos.y+15;
                    showDiv.setStyle('top', sDy);
                    showDiv.setStyle('left', sDx);

                }
                else {
                    showDiv.setStyle('display', 'none');
                }
            }
        });

    }

    var gRuleL=$('gRule');
    if(gRuleL!=null) {
        gRuleL.addEvent('click', function(e){
            var showDiv=$('gRuleD');
            if(showDiv!=null) {
                if(showDiv.getStyle('display')=='none') {
                    $$('.jshide').each(function(el){el.setStyle('display', 'none')});
                    showDiv.setStyle('display', 'block');
                    var gRuleSize=gRuleL.getSize();
                    var gRulePos=gRuleL.getPosition();
                    var showDivSize=showDiv.getSize();
                    var sDx=gRulePos.x-(showDivSize.x/2);
                    var sDy=gRulePos.y+15;
                    showDiv.setStyle('top', sDy);
                    showDiv.setStyle('left', sDx);

                }
                else {
                    showDiv.setStyle('display', 'none');
                }
            }
        });

    }


    $$('.desc').each(function(el){
        el.addEvent('focus', function(){
            var desc=$(el.getAttribute('id')+'desc');
            desc.setStyle('display', '');
            desc.setStyle('z-index', '10');
            desc.setStyle('position', 'absolute');
            var left=0;
            if(desc.getProperty('descleft')==null)
            {
                left=desc.getStyle('left').toInt()+10;
                desc.setProperty('descleft', left);
            }
            else
            {
                left=desc.getProperty('descleft');
            }
            desc.setStyle('left', left);
        });    
        el.addEvent('blur', function(){
            var desc=$(el.getAttribute('id')+'desc');
            desc.setStyle('display', 'none');
            desc.setStyle('z-index', '');
            desc.setStyle('position', '');
        }); 
    });

    $$('.descsel').each(function(el){
        el.addEvent('change', function(){
            var desc=$(el.getAttribute('id') + el.value);
            if(desc==null)
            {
                return;
            }
            $$('.' + el.getAttribute('id')).each(function(eel){
                eel.setStyle('display', 'none');
            });
            desc.setStyle('display', '');
            desc.setStyle('z-index', '1');
            desc.setStyle('position', 'absolute');
            var left=0;
            if(desc.getProperty('descleft')==null)
            {
                left=desc.getStyle('left').toInt()+10;
                desc.setProperty('descleft', left);
            }
            else
            {
                left=desc.getProperty('descleft');
            }
            desc.setStyle('left', left);
        });    
    });
    
    var groupName=$('gname');
    if (groupName!=null){
        groupName.addEvent('change', function(){
            if(this.value!='' && this.value!=this.getProperty('startvalue')){
                var jsonRequest = new Request.JSON({url: "/ajax/groups/groupExists", onSuccess: function(ret){
                    if(ret.result==1) {
                        var gname=$('gnameerr');
                        gname.setStyle('display', '');
                        gname.setStyle('z-index', '1');
                        gname.setStyle('position', 'absolute');
                        var left=0;
                        if(gname.getProperty('descleft')==null)
                        {
                            left=gname.getStyle('left').toInt()+10;
                            gname.setProperty('descleft', left);
                        }
                        else
                        {
                            left=gname.getProperty('descleft');
                        }
                        gname.setStyle('left', left);
                        var n=$('gname');
                        n.setProperty('oldvalue', n.value);
                    }
                    else {
                        $('gnameerr').setStyle('display', 'none');
                    }
                }}).post({'group': this.value});
            }
        });
        groupName.addEvent('focus', function(){
            $('gnameerr').setStyle('display', 'none');
        });
        groupName.addEvent('blur', function(){
            var gname=$('gnameerr');
            if(this.getProperty('oldvalue')==null || (this.getProperty('oldvalue')!=this.value && this.value!=this.getProperty('startvalue'))){
                gname.setStyle('display', 'none');
            }
            else {
                gname.setStyle('display', '');
            }
        });

    }
 
    $$('.ftablink').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=el.getProperty('gu');
            var groupId=uTable.getProperty('gi');
            //uTable.load('/ajax/groups/' + groupId + '/admin?gu=' + gu);
            var path='/ajax/groups/' + groupId + '/admin?gu=' + gu;
            var jsonRequest = new Request.JSON({
                url: path, 
                onSuccess: function(res){
                    uTable.set('html', res.data);

                    try{
                        $('membersCnt').innerHTML="(" + res.membersCnt + ")";
                        $('moderatorsCnt').innerHTML="(" + res.moderatorsCnt + ")";
                        $('bannedCnt').innerHTML="(" + res.bannedCnt + ")";
                        $('deletedCnt').innerHTML="(" + res.deletedCnt + ")";
                        $('waitCnt').innerHTML="(" + res.waitCnt + ")";
                    }
                    catch(e) {

                    }
                    finishProcess();
                },
                onError : function(res) {
                    finishProcess();
                }
            });
            startProcess();
            jsonRequest.get();
            $$('.ftablink').each(function(el2){
                el2.removeClass('curr');
            });
            $$('.jshide').each(function(el2){
                el2.setStyle('display', 'none');
            });
            $$('.' + gu).each(function(el2){
                el2.setStyle('display', '');
            });
            el.addClass('curr');
            currentTab=gu;
            return false;
        });

    });
    //select all
    $$('.fselall').each(function(el){
        el.addEvent('click', function(){
            $$('.fcbox').each(function(ch){
                ch.setProperty('checked', 1);   
            });
        });
    });
    //deselect all
    $$('.fdeselall').each(function(el){
        el.addEvent('click', function(){
            $$('.fcbox').each(function(ch){
                ch.removeProperty('checked');
            });
        });
    });
    //show div for write message
    var sendFromAdminPage=false;
    $$('.fmess').each(function(el){
        el.addEvent('click', function(){
            var groupMessO=$('groupMess');
            var disp=groupMessO.getStyle('display');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }
            if(groupMessO!=null) {
                if(disp=="none") {
                    var size=this.getSize();
                    var pos=this.getPosition();
                    groupMessO.setStyle('display', 'block');
                    var pupSize=groupMessO.getSize();
                    groupMessO.setStyle('left', pos.x+size.x/2-pupSize.x/2);
                    groupMessO.setStyle('top', pos.y+10);
                }
                else {
                    groupMessO.setStyle('display', 'none');
                }
                sendFromAdminPage=true;
            }
            return false;
        });
    });
    //make users moderator
     $$('.fmod').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=$('uform').getProperty('gu');
            var groupId=uTable.getProperty('gi');
            var uForm=$('uform');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?add=moderator&gu=' + gu + '&curr=' + currentTab, 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    uTable.set('html', resp.data);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    if(resp.message) {
                        logMessage(resp.message);
                    }
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            uForm.send();
            return false;
        });
    });

     $$('.fmodrm').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=$('uform').getProperty('gu');
            var groupId=uTable.getProperty('gi');
            var uForm=$('uform');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?del=moderator&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    uTable.set('html', resp.data);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    logMessage(resp.message);
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            uForm.send();
            return false;
        });
    });


    //make users administartor
    $$('.fadmin').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=$('uform').getProperty('gu');
            var groupId=uTable.getProperty('gi');
            var uForm=$('uform');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }
            if(!confirm(BM_ADM_MESS))
            {
                return false;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?add=admin&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    uTable.set('html', resp.data);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    logMessage(resp.message);
                    location="/groups/" + groupId;
                    finishProcess();

                },
                onError: function(res){
                    var resp=JSON.decode(res);
                    logMessage(resp.message);
                    location="/groups/" + groupId;
                    finishProcess();
                }
            });
            startProcess();
            uForm.send();
            return false;
        });
    });    
    //ban user
    $$('.fban').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=$('uform').getProperty('gu');
            var groupId=uTable.getProperty('gi');
            var uForm=$('uform');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?add=ban&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    uTable.innerHTML=resp.data;
                    logMessage(resp.message);
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            uForm.send();
            return false;
        });
    });

    $$('.fbanrm').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=$('uform').getProperty('gu');
            var groupId=uTable.getProperty('gi');
            var uForm=$('uform');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?del=ban&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    uTable.set('html', resp.data);
                    logMessage(resp.message);
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            uForm.send();
            return false;
        });
    });



    //delete user
    $$('.fdel').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=$('uform').getProperty('gu');
            var groupId=uTable.getProperty('gi');
            var uForm=$('uform');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?add=del&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    uTable.set('html', resp.data);
                    logMessage(resp.message);
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            uForm.send();
            return false;
        });
    });   

    $$('.fdelrm').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var gu=$('uform').getProperty('gu');
            var groupId=uTable.getProperty('gi');
            var uForm=$('uform');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?del=del&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    uTable.set('html', resp.data);
                    logMessage(resp.message);
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            uForm.send();
            return false;
        });
    });   


    //approve user
    $$('.fapprove').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var uForm=$('uform');
            var gu=uForm.getProperty('gu');
            var groupId=uTable.getProperty('gi');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?add=approve&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    uTable.set('html', resp.data);
                    logMessage(resp.message);
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            //uTable.load('/ajax/groups/' + groupId + '/admin?add=approve&gu=' + gu).post($('uform'));
            uForm.send();
            return false;
        });
    });

    $$('.fnapprove').each(function(el){
        el.addEvent('click', function(){
            var uTable=$('utable');
            var uForm=$('uform');
            var gu=uForm.getProperty('gu');
            var groupId=uTable.getProperty('gi');
            if(!isCheckUser())
            {
                alert(BM_MESS_NOTSELECT);
                return;
            }

            uForm.set('send', {url: '/ajax/groups/' + groupId + '/admin?del=approve&gu=' + gu + '&curr=' + currentTab , 
                method: 'post', 
                onComplete: function(res){
                    var resp=JSON.decode(res);
                    $('membersCnt').innerHTML="(" + resp.membersCnt + ")";
                    $('moderatorsCnt').innerHTML="(" + resp.moderatorsCnt + ")";
                    $('bannedCnt').innerHTML="(" + resp.bannedCnt + ")";
                    $('deletedCnt').innerHTML="(" + resp.deletedCnt + ")";
                    $('waitCnt').innerHTML="(" + resp.waitCnt + ")";
                    uTable.set('html', resp.data);
                    logMessage(resp.message);
                    finishProcess();
                },
                onError: function(res){
                    finishProcess();
                }
            });
            startProcess();
            //uTable.load('/ajax/groups/' + groupId + '/admin?add=approve&gu=' + gu).post($('uform'));
            uForm.send();
            return false;
        });
    });


    var popArtNext=$('popArtNext');
    if(popArtNext!=null)
    {
        popArtNext.addEvent('click', function(){
            var t=$('topArt');
            var p=t.getProperty('page');
            var max=t.getProperty('maxpage');
            if(p==max)
            {
                return;
            }

            p++;
            if(p>max)
            {
                p=max;
            }
            t.load('/ajax/groups/poparts?p=' + p);
            t.set('page', p);
            if(p>0 && p<max)
            {
                $('popArtPrev').set('class', 'img_prednl');
                $('popArtNext').set('class', 'img_slednl');
            }
            else if(p==0)
            {
                $('popArtPrev').set('class', 'img_predn');
                $('popArtNext').set('class', 'img_slednl');
            }
            else
            {
                $('popArtNext').set('class', 'img_sledn');
                $('popArtPrev').set('class', 'img_prednl');
            }
        });
    }
  

    var popArtPrev=$('popArtPrev');
    if(popArtPrev!=null)
    {
        $('popArtPrev').addEvent('click', function(){
            var t=$('topArt');
            var p=t.get('page');
            var max=t.get('maxpage');
            if(p==0)
            {
                return;
            }
            p--;
            if(p<0)
            {
                p=0;
            }
            t.load('/ajax/groups/poparts?p=' + p);
            t.set('page', p);
            if(p>0 && p<max)
            {
                $('popArtPrev').set('class', 'img_prednl');
                $('popArtNext').set('class', 'img_slednl');
            }
            else if(p==0)
            {
                $('popArtPrev').set('class', 'img_predn');
                $('popArtNext').set('class', 'img_slednl');
            }
            else
            {
                $('popArtNext').set('class', 'img_sledn');
                $('popArtPrev').set('class', 'img_prednl');
            }
        });
    }

    var filterUser=$('filterUser');
    if(filterUser!=null){
        filterUser.addEvent('keyup', function(){
            var filter=this.value.toLowerCase();
            if(filter.length<3 && filter.length>0){
                return false;
            }
            else if(filter.length==0){
                $$('.ffilterTr').each(function(elt){
                    elt.setStyle('display', '');
                });
                return false;
            }
            $$('.ffilterU').each(function(elf){
                var tmp=elf.getParent().getParent();
                if(elf.innerHTML.toLowerCase().indexOf(filter)==-1){
                    tmp.setStyle('display', 'none')
                }
                else{
                    tmp.setStyle('display', '')
                }
                tmp=null;
            });
        });
    }

    var groupSendMessAllO=$('groupSendMessAll');
    if(groupSendMessAllO!=null) {
        groupSendMessAllO.addEvent('click', function(){
            var groupMessO=$('groupMess');
            var disp=groupMessO.getStyle('display');
            if(groupMessO!=null) {
                if(disp=="none") {
                    var size=groupSendMessAllO.getSize();
                    var pos=groupSendMessAllO.getPosition();
                    groupMessO.setStyle('display', 'block');
                    var pupSize=groupMessO.getSize();
                    groupMessO.setStyle('left', pos.x+size.x/2-pupSize.x/2);
                    groupMessO.setStyle('top', pos.y+10);
                }
                else {
                    groupMessO.setStyle('display', 'none');
                }
            }
        });
    }

    var groupClossMessO=$('groupCloseMess');
    if(groupClossMessO!=null) {
        groupClossMessO.addEvent('click', function(){
            var groupMessO=$('groupMess');
            if(groupMessO!=null) {
                groupMessO.setStyle('display', 'none');
            }
            return false;
        });
    }
    //groupMessHide
    var groupMessHide=$('groupMessHide');
    if(groupMessHide!=null) {
        groupMessHide.addEvent('click', function(){
            var groupMessO=$('groupMess');
            if(groupMessO!=null) {
                groupMessO.setStyle('display', 'none');
            }
            return false;
        });
    }
    
    var groupMessSend=$('groupMessSend');
    if(groupMessSend!=null) {
        groupMessSend.addEvent('click', function(){
            var groupMessTxt=$('groupMessTxt');
            if(groupMessTxt!=null) {
                if(groupMessTxt.value!='') {
                    var postVars={u:[]};
                    if(sendFromAdminPage) {
                        $$('.fcbox').each(function(el){
                            if(el.getProperty('checked')) {
                                postVars['u'].push(el.getProperty('id'));
                            }
                        });
                    }
                    postVars.txt=groupMessTxt.value;
                    var path="/ajax/groups/message/" + GROUP_ID;
                    if(typeof(ARTICLE_OWNER_ID)!='undefined') {
                        path+='/'+ARTICLE_OWNER_ID;
                    }
                    var jsonRequest = new Request.JSON({url: path, onSuccess: function(ret){
                       var groupMess=$('groupMess');
                        if(ret.result=='1') {
                           var messageLog=$('messageLog');
                           var messageLogTxt=$('messageLogText');
                           if(groupMess!=null) {
                                groupMess.setStyle('display', 'none');
                           }
                           if(messageLog!=null && messageLogTxt!=null) {
                                messageLogTxt.innerHTML=ret.data;
                                messageLog.setStyle('display', 'block');
                                messLogHideId=setTimeout('hideMessLog()',6000);
                           }
                        }
                        else {
                           var messageLog=$('messageLogRed');
                           var messageLogTxt=$('messageLogText');
                           if(groupMess!=null) {
                                groupMess.setStyle('display', 'none');
                           }
                           if(messageLog!=null && messageLogTxt!=null) {
                                messageLogTxt.innerHTML=ret.data;
                                messageLog.setStyle('display', 'block');
                                messLogHideId=setTimeout('hideMessLogRed()',6000);
                           }

                        }
                    }}).post(postVars);
                }
                else {
                    var err=$('Messenger_cc_message_error_container');
                    if(err!=null) {
                        err.setStyle('display', 'block');
                    }
                }
            }
            return false;
        });
    }

    var groupCloseMessError=$('groupCloseMessError');
    if(groupCloseMessError!=null) {
        groupCloseMessError.addEvent('click', function(){
            var err=$('Messenger_cc_message_error_container');
            err.setStyle('display', 'none');
            return false;
        });
        
    }
});

function isCheckUser() {
    var isChecked=false;
    $$('.fcbox').each(function(ch){
        if(!isChecked && ch.getProperty('checked')){
            isChecked=true
        }
    });
    return isChecked;
}
