/***************************************************************************
 *
 *   File      : /js/action.js
 *   Date      : Thursday, December 19, 2008
 *   Version   : 1.0
 *   Copyright : (C) 2008 AC Creations
 *   Email     : juan@ac-creations.com
 *
 ***************************************************************************
 * localize
 ***************************************************************************/

var current = {
    page:       false,
    network:    false,
    channel:    false,
    view:       false,
    show:       false,
    pagination: false,
    query:      false,
    init: function(pageId, networkId, channelId, viewId, showId, paginationId) {
        if (!document.getElementById || !$(pageId) || !$(networkId) || !$(channelId) || !$(viewId) || !$(showId) || !$(paginationId)) return;
        current.page = $(pageId).value;
        current.network = $(networkId).value;
        current.channel = $(channelId).value;
        current.view = $(viewId).value;
        current.show = $(showId).value;
        current.pagination = $(paginationId).value;
    },
    urlQuery: function() {
        if (current.page == '' && current.show == '' ) {
            current.query = 'page=latest';
        } else if (current.page != '' && current.show != '') {
            current.query = 'page=' + current.page + '&show=' + current.show;
        } else if (current.page != '' && current.show == '' && current.network == '' && current.channel == '') {
            if ((current.page == 'browse' || current.page == 'most-popular') && current.pagination != '' ) {
                current.query = 'page=' + current.page + '&p=' + current.pagination;
            } else {
                if (current.view != '') {
                    current.query = 'page=' + current.page + '&view=' + current.view;
                } else {
                    current.query = 'page=' + current.page;                    
                }
            }
        } else if (current.page != '' && current.show == '' && current.network != '' && current.channel == '') {
            if (current.page == 'browse' || current.page == 'most-popular' && current.pagination != '') {
                current.query = 'page=' + current.page + '&network=' + current.network + '&p=' + current.pagination;
            } else {
                if (current.view != '') {
                    current.query = 'page=' + current.page + '&network=' + current.network + '&view=' + current.view;
                } else {
                    current.query = 'page=' + current.page + '&network=' + current.network;                    
                }
            }
        } else if (current.page != '' && current.show == '' && current.network != '' && current.channel != '') {
            if ((current.page = 'browse' || current.page == 'most-popular') && current.pagination != '') {
                current.query = 'page=' + current.page + '&network=' + current.network + '&channel=' + current.channel + '&p=' + current.pagination;
            } else {
                if (current.view != '') {
                    current.query = 'page=' + current.page + '&network=' + current.network + '&channel=' + current.channel + '&view=' + current.view;
                } else {
                    current.query = 'page=' + current.page + '&network=' + current.network + '&channel=' + current.channel;
                }
            }
        } else { return; }
        return current.query;
    }
};

/* Channel Select ********************************************************************************/

var channelSelect = {
    myConn: null,
    control: false,
    target: false,
    server: false,
    channel: false,
    init: function(controlId, targetId, hserver, hchannel) {
        if (!document.getElementById || !document.getElementsByTagName || !$(controlId) || !$(targetId) || !$(hserver) || !$(hchannel)) return;
        channelSelect.control = $(controlId);
        channelSelect.target = $(targetId);
        channelSelect.server = $(hserver).value;
        channelSelect.channel = $(hchannel).value;

        if (channelSelect.control.value != '' && (channelSelect.target.value != '' || channelSelect.target.value == '')) {
            channelSelect.target.disabled = false;
            channelSelect.getServerId(channelSelect.control.value);
            addEvent(channelSelect.control, 'change',
            function() {
                if (this.value != '') {
                    channelSelect.target.disabled = false;
                    channelSelect.getServerId(this.value);
                } else {
                    channelSelect.target.disabled = true;
                }
            });
        } else {
            channelSelect.target.disabled = true;
            addEvent(channelSelect.control, 'change',
            function() {
                if (this.value != '') {
                    channelSelect.target.disabled = false;
                    channelSelect.getServerId(this.value);
                } else {
                    channelSelect.target.disabled = true;
                }
            });
        }
    },
    getServerId: function(id) {
        channelSelect.myConn = new XHConn();
        channelSelect.target.innerHTML = '';
        var fnWhenDone = function(oXML) {
            channelSelect.options = eval('(' + oXML.responseText + ')');
            
            for ( var i = 0; i < channelSelect.options.length; i++ ) {
                channelSelect.optionEl = document.createElement('option');
                channelSelect.optionEl.value = channelSelect.options[i].id;
                if (channelSelect.options[i].selected == true) channelSelect.optionEl.setAttribute('selected', 'selected');
                channelSelect.optionEl.appendChild(document.createTextNode(channelSelect.options[i].name));
                channelSelect.target.appendChild(channelSelect.optionEl);
            }
        };
        channelSelect.myConn.connect('/pages/channelselect.php', 'POST', 'serverid=' + id + '&hserver=' + channelSelect.server + '&hchannel=' + channelSelect.channel, fnWhenDone);
        delete channelSelect.myConn;
    }
};

/* Vote ********************************************************************************************/

var vote = {
    myConn: null,
    body:   false,
    links:  false,
    init: function() {
        if (!document.getElementById || !document.getElementsByTagName || !$('listing')) return;
        vote.body    = $('listing');
        vote.links   = vote.body.getElementsByTagName('a');
        
        for (var i = 0; i < vote.links.length; i++) {
            vote.links[i].onclick = function() {
                if (HasClass(this, 'v-up') || HasClass(this, 'v-down')) vote.qid = this.getAttribute('rel');
                if (HasClass(this, 'v-up')) {
                    vote.process(vote.qid, 'up');
                    vote.down = this.parentNode.previousSibling.firstChild;
                    vote.reload(this, vote.down);
                    return false;
                } else if (HasClass(this, 'v-down')) {
                    vote.process(vote.qid, 'down');
                    vote.up = this.parentNode.nextSibling.firstChild;
                    vote.reload(vote.up, this);
                    return false;
                }
                return true;
            };
        }
    },
    process: function(id, vtype) {
        vote.myConn = new XHConn();
        if (vtype == 'up') {
            var fnWhenDone = function() {
                vote.updateRank('vr' + id, 'up');
            };
            vote.myConn.connect('/pages/vote.php', 'GET', 'type=up&id=' + id + '&ajax=true', fnWhenDone);
            delete vote.myConn;
        } else if (vtype == 'down') {
            var fnWhenDone = function() {
                vote.updateRank('vr' + id, 'down');    
            };
            vote.myConn.connect('/pages/vote.php', 'GET', 'type=down&id=' + id + '&ajax=true', fnWhenDone);
            delete vote.myConn;
        } else { return; }
    },
    updateRank: function(id, vtype) {
        vote.rankBody = $(id);
        vote.rank = vote.rankBody.childNodes[1].firstChild.data * 1;
        if (vtype == 'up'  ) {
            vote.rankBody.childNodes[1].innerHTML = vote.rank + 1;
        }
        else if (vtype == 'down') {
            vote.rankBody.childNodes[1].innerHTML = vote.rank - 1;
        }
        vote.init();
    },
    reload: function(upLink, downLink) {
        vote.upSpan = document.createElement('span');
        AddClass(vote.upSpan, 'v-up');
        vote.upSpan.setAttribute('title', 'vote +1');
        vote.upSpan.appendChild(document.createTextNode('vote +1'));

        vote.vupLi = upLink.parentNode;
        vote.vupLi.removeChild(upLink);
        vote.vupLi.appendChild(vote.upSpan);

        vote.downSpan = document.createElement('span');
        AddClass(vote.downSpan, 'v-down');
        vote.downSpan.setAttribute('title', 'vote -1');
        vote.downSpan.appendChild(document.createTextNode('vote -1'));

        vote.vdownLi = downLink.parentNode;
        vote.vdownLi.removeChild(downLink);
        vote.vdownLi.appendChild(vote.downSpan);
    }
};

/* Popup *******************************************************************************************/

var popup = {
    myConn: null,
    body: false,
    pagebody: false,
    control: false,
    init: function(controlId, popupType) {
        if (!document.getElementById ||
            !document.getElementsByTagName ||
            !$(controlId)) return;
        popup.control = $(controlId);
        popup.control.onclick = function() {
            popup.loadContent(popupType);
            return false;
        }
    },
    buildPopup: function(type, action) {
        popup.body = document.getElementsByTagName('body')[0];
        popup.pagebody = $('pagebody');
        popup.overlay = document.createElement('div');
        popup.overlay.setAttribute('id', 'overlay');
        popup.overlay.style.height = popup.body.clientHeight + 'px';
        popup.overlay.appendChild(document.createTextNode(''));
        popup.popupDiv = document.createElement('div');
        popup.popupDiv.setAttribute('id', 'popup');
        if (type == 'register') {
            popup.popupHeader = document.createElement('h2');
            popup.popupHeader.setAttribute('id', 'register-header');
            popup.popupHeader.appendChild(document.createTextNode('Registration :'));
            popup.popupDiv.appendChild(popup.popupHeader);
            popup.popupUL = document.createElement('ul');
            popup.popupLI1 = document.createElement('li');
            popup.popupLI1.setAttribute('id', 'popup-nav-channel');
            popup.popupLI1.appendChild(document.createTextNode('IRC Channel'));
            popup.popupLI2 = document.createElement('li');
            popup.popupLI2.setAttribute('id', 'popup-nav-network');
            popup.popupLI2.appendChild(document.createTextNode('IRC Network'));
            popup.popupDiv.appendChild(popup.popupUL);
            popup.popupUL.appendChild(popup.popupLI1);
            popup.popupUL.appendChild(popup.popupLI2);
        } else if (type == 'feedback') {
            popup.popupHeader = document.createElement('h2');
            popup.popupHeader.setAttribute('id', 'feedback-header');
            popup.popupHeader.appendChild(document.createTextNode('Feedback :'));
            popup.popupDiv.appendChild(popup.popupHeader);
            popup.popupUL = document.createElement('ul');
            popup.popupLI1 = document.createElement('li');
            popup.popupLI1.setAttribute('id', 'popup-nav-feedback');
            popup.popupLI1.appendChild(document.createTextNode('Feedback'));
            popup.popupDiv.appendChild(popup.popupUL);
            popup.popupUL.appendChild(popup.popupLI1);
        } else if (type == 'qnetworks' || type == 'qchannels' || type == 'qquotes') {
            popup.popupHeader = document.createElement('h2');
            if (type == 'qnetworks') popup.popupHeader.setAttribute('id', 'qnetwork-header'); popup.popupHeader.appendChild(document.createTextNode('Networks'));
            if (type == 'qchannels') popup.popupHeader.setAttribute('id', 'qchannel-header'); popup.popupHeader.appendChild(document.createTextNode('Channels'));
            if (type == 'qquotes'  ) popup.popupHeader.setAttribute('id', 'qquotes-header' ); popup.popupHeader.appendChild(document.createTextNode('Quotes')); 
            popup.popupDiv.appendChild(popup.popupHeader);
            popup.popupUL = document.createElement('ul');
            popup.popupLI = document.createElement('li');
            if (action == 'edit') {
                if (type == 'qnetworks') popup.popupLI.setAttribute('id', 'popup-nav-nedit');
                if (type == 'qchannels') popup.popupLI.setAttribute('id', 'popup-nav-cedit');
                if (type == 'qquotes'  ) popup.popupLI.setAttribute('id', 'popup-nav-qedit');
                popup.popupLI.appendChild(document.createTextNode('Edit'));
            } else if (action == 'reject') {
                if (type == 'qnetworks') popup.popupLI.setAttribute('id', 'popup-nav-nreject');
                if (type == 'qchannels') popup.popupLI.setAttribute('id', 'popup-nav-creject');
                if (type == 'qquotes'  ) popup.popupLI.setAttribute('id', 'popup-nav-qreject');
                popup.popupLI.appendChild(document.createTextNode('Reject'));
            } else { return; }
            popup.popupDiv.appendChild(popup.popupUL)
            popup.popupUL.appendChild(popup.popupLI);
        } else { return; }
        popup.popupContentDiv = document.createElement('div');
        popup.popupContentDiv.setAttribute('id', 'popup-content');
        popup.confirmationDiv = document.createElement('div');
        popup.confirmationDiv.setAttribute('id', 'popup-confirmation');
        popup.confirmationDiv.style.display = 'none';
        popup.popupDiv.appendChild(popup.popupContentDiv);
        popup.popupDiv.appendChild(popup.confirmationDiv);
        popup.body.appendChild(popup.overlay);
        popup.body.appendChild(popup.popupDiv);
    },
    loadContent: function(type, action) {
        if (!$('popup')) {
            popup.buildPopup(type, action);
            popup.target = $('popup-content');
            popup.targetConfirmation = $('popup-confirmation');
            if (type == 'register') {
                popup.channelTab = $('popup-nav-channel');
                popup.networkTab = $('popup-nav-network');
                popup.channelTab.onclick = function() {
                    KillClass(popup.networkTab, 'selected');
                    popup.popupContent('register', 'channel', 'load');
                }
                popup.networkTab.onclick = function() {
                    KillClass(popup.channelTab, 'selected');
                    popup.popupContent('register', 'network', 'load');
                }
                popup.popupContent('register', 'channel', 'load');
            } else if (type == 'feedback') {
                popup.popupContent('feedback', null, 'load');
            } else if (type == 'qnetworks' || type == 'qchannels' || type == 'qquotes') {
                queue.popupContent(type, action, popup.target, 'load');
            }
               
            popup.overlay.onclick = function() {
                popup.killPopup();
            }
        }
    },
    popupContent: function(type, show, action) {
        popup.myConn = new XHConn();
        if (action == 'load') {
            if ( type == 'register') {
                if (show == 'channel') { 
                    AddClass(popup.channelTab, 'selected');
                    var fnWhenDone = function(oXML) {
                        popup.target.innerHTML = oXML.responseText;
                        toggle('regchannelheader');
                        popup.sendBtn = $('regChannelBtn');
                        popup.sendBtn.onclick = function() {
                            popup.getFormValues('channelForm', 'regChannelBtn', 'channelErrChk');
                            popup.popupContent('register', 'channel', 'send');
                            return false;
                        }
                        popup.loadConfirmation('register', 'channel');
                        popup.cancelButton();
                        inputFocus.init();
                        alignPopup.init();
                    };
                    popup.myConn.connect('/pages/regchannel.php', 'POST', '', fnWhenDone);
                    delete popup.myConn;
                } else if (show == 'network') {
                    AddClass(popup.networkTab, 'selected');
                    var fnWhenDone = function(oXML) {
                        popup.target.innerHTML = oXML.responseText;
                        toggle('regnetworkheader');
                        popup.sendBtn = $('regNetworkBtn');
                        popup.sendBtn.onclick = function() {
                            popup.getFormValues('networkForm', 'regNetworkBtn', 'networkErrChk');
                            popup.popupContent('register', 'network', 'send');
                            return false;
                        }
                        popup.loadConfirmation('register', 'network');
                        popup.cancelButton();
                        inputFocus.init();
                        alignPopup.init();
                    };
                    popup.myConn.connect('/pages/regnetwork.php', 'POST', '', fnWhenDone);
                    delete popup.myConn;
                }
            } else if (type == 'feedback') {
                var fnWhenDone = function(oXML) {
                    popup.target.innerHTML = oXML.responseText;
                    toggle('feedbackheader');
                    popup.sendBtn = $('sFeedbackBtn');
                    popup.sendBtn.onclick = function() {
                        popup.getFormValues('feedbackForm', 'sFeedbackBtn', 'feedbackErrChk');
                        popup.popupContent('feedback', null, 'send');
                        return false;
                    }
                    popup.loadConfirmation('feedback', 'feedback');
                    popup.cancelButton();
                    inputFocus.init();
                    alignPopup.init();
                };
                popup.myConn.connect('/pages/feedback.php', 'POST', '', fnWhenDone);
                delete popup.myConn;
            }
        } else if (action == 'send') {
            if (type == 'register') {
                if (show == 'channel') {
                    AddClass(popup.channelTab, 'selected');
                    var fnWhenDone = function(oXML) {
                        popup.target.innerHTML = oXML.responseText;
                        popup.errorChk = $('channelErrChk');
                        if (popup.errorChk.value == 'false') {
                            toggle('popup-content');
                            toggle('popup-confirmation');
                        } else { 
                            popup.setFormValues('channel', 'load', 'regChannelBtn', 'channelErrChk');
                            toggle('regchannelheader');
                            popup.sendBtn = $('regChannelBtn');
                            popup.sendBtn.onclick = function() {
                                popup.getFormValues('channelForm', 'regChannelBtn', 'channelErrChk');
                                popup.popupContent('register', 'channel', 'send');
                                return false;
                            }
                            popup.cancelButton();
                            inputFocus.init();
                        }
                    };
                    popup.myConn.connect('/pages/regchannel.php', 'POST', popup.setFormValues('channel', 'send'), fnWhenDone);
                    delete popup.myConn;
                } else if (show == 'network') {
                    AddClass(popup.networkTab, 'selected');
                    var fnWhenDone = function(oXML) {
                        popup.target.innerHTML = oXML.responseText;
                        popup.errorChk = $('networkErrChk');
                        if ( popup.errorChk.value == 'false') {
                            toggle('popup-content');
                            toggle('popup-confirmation');
                        } else {
                            popup.setFormValues('network', 'load', 'regNetworkBtn', 'networkErrChk');
                            toggle('regnetworkheader');
                            popup.sendBtn = $('regNetworkBtn');
                            popup.sendBtn.onclick = function() {
                                popup.getFormValues('networkForm', 'regNetworkBtn', 'networkErrChk');
                                popup.popupContent('register', 'network', 'send');
                                return false;
                            }
                            popup.cancelButton();
                            inputFocus.init();
                        }
                    };
                    popup.myConn.connect('/pages/regnetwork.php', 'POST', popup.setFormValues('network', 'send'), fnWhenDone);
                    delete popup.myConn;
                }
            } else if (type == 'feedback') {
                var fnWhenDone = function(oXML) {
                    popup.target.innerHTML = oXML.responseText;
                    popup.errorChk = $('feedbackErrChk');
                    if ( popup.errorChk.value == 'false') {
                        toggle('popup-content');
                        toggle('popup-confirmation');
                    } else {
                        popup.setFormValues('feedback', 'load', 'sFeedbackBtn', 'feedbackErrChk');
                        toggle('feedbackheader');
                        popup.sendBtn = $('sFeedbackBtn');
                        popup.sendBtn.onclick = function() {
                            popup.getFormValues('feedbackForm', 'sFeedbackBtn', 'feedbackErrChk');
                            popup.popupContent('feeback', null, 'send');
                            return false;
                        }
                        popup.cancelButton();
                        inputFocus.init();
                    }
                };
                popup.myConn.connect('/pages/feedback.php', 'POST', popup.setFormValues('feedback', 'send' ), fnWhenDone);
                delete popup.myConn;
            }
        }
    },
    loadConfirmation: function(type, show) {
        popup.myConn = new XHConn;
        var fnWhenDone = function(oXML) {
            popup.targetConfirmation.innerHTML = oXML.responseText;
            if (type == 'register') {
                if (show == 'channel') { popup.yesBtn = $('confirmRegChYes'); } else { popup.yesBtn = $('confirmRegNtYes'); }
                    popup.yesBtn.onclick = function() {
                        popup.remFormValues();
                        if (show == 'channel') {
                            toggle('regchannelheader');
                            popup.popupContent('register', 'channel', 'load');
                        } else {
                            toggle('regnetworkheader');
                            popup.popupContent('register', 'network', 'load');
                        }
                        toggle('popup-content');
                        toggle('popup-confirmation');
                        popup.cancelButton();
                        inputFocus.init();
                        return false;
                    }
                if (show == 'channel') { popup.noBtn = $('confirmRegChNo'); } else { popup.noBtn = $('confirmRegNtNo'); }
                    popup.noBtn.onclick = function() {
                        popup.remFormValues('channel')
                        popup.killPopup();
                        return false;
                    }
            } else if (type == "feedback") {
                popup.closeBtn = $('feedbackClose');
                popup.closeBtn.onclick = function() {
                    popup.remFormValues();
                    popup.killPopup();
                    return false;
                }
            }
        };
        popup.myConn.connect('/pages/confirmation.php', 'GET', 'show=' + show, fnWhenDone);
        delete popup.myConn;
    },
    cancelButton: function() {
        popup.cancelBtn = document.createElement('button');
        popup.cancelBtn.setAttribute('id', 'cancelBtn');
        popup.cancelBtn.appendChild(document.createTextNode('Cancel'));
        AddClass(popup.cancelBtn, 'button');
        var buttonDiv = getElementsByClass('regbuttons');
            buttonDiv[0].appendChild(popup.cancelBtn);
        popup.cancelBtn.onclick = function() {
            popup.killPopup();
            return false;
        }
    },
    getFormValues: function(formId, btnId, errorChkId) {
        popup.form = $(formId);
        popup.formInput = popup.form.getElementsByTagName('input');
        popup.formInputId = [], popup.formInputValues = [];
        popup.formSelect = popup.form.getElementsByTagName('select');
        popup.formSelectId = [], popup.formSelectValues = [];
        popup.formTextarea = popup.form.getElementsByTagName('textarea');
        popup.formTextareaId = [], popup.formTextareaValues = [];
        
        for ( var i = 0; i < popup.formInput.length; i++ ) {
            if ( popup.formInput[i].getAttribute('id') != ( btnId || errorChkId )) {
                popup.formInputId[i] = popup.formInput[i].getAttribute('id');
                popup.formInputValues[i] = popup.formInput[i].value;
            }
        }
        
        for ( var i = 0; i < popup.formSelect.length; i++ ) {
            popup.formSelectId[i] = popup.formSelect[i].getAttribute('id');
            popup.formSelectValues[i] = popup.formSelect[i].value;
        }
        
        for ( var i = 0; i < popup.formTextarea.length; i++ ) {
            popup.formTextareaId = popup.formTextarea[i].getAttribute('id');
            popup.formTextareaValues[i] = popup.formTextarea[i].value.split("\+").join("%2B");
        }
        
    },
    setFormValues: function(type, action, btnId, errorChkId) {
        if (action == 'load') {
            for ( var i = 0; i < popup.formInput.length; i++ ) {
                if ( popup.formInput[i].getAttribute('id') != ( btnId || errorChkId )) {
                    if ($(popup.formInputId[i]) != null) $(popup.formInputId[i]).value = popup.formInputValues[i];
                }
            }
            for ( var i = 0; i < popup.formSelect.length; i++ ) {
                if ($(popup.formSelectId[i]) != null) $(popup.formSelectId[i]).value = popup.formSelectValues[i];
            }
            for ( var i = 0; i < popup.formTextarea.length; i++ ) {
                if ($(popup.formTextareaId[i]) != null) $(popup.formTextareaId[i]).value = popup.formTextareaValues[i];
            }
        } else if (action == 'send') {
            if (type == 'channel') popup.myConnVars       = 'regchannel=Register&rchemail=' + popup.formInputValues[0] + '&rchemailconfirm=' + popup.formInputValues[1] + '&rchnetwork=' + popup.formSelectValues[0] + '&rchname=' + popup.formInputValues[2] + '&rchurl=' + popup.formInputValues[3] + '&popup=true';
            if (type == 'network') popup.myConnVars       = 'regnetwork=Register&rntemail=' + popup.formInputValues[0] + '&rntemailconfirm=' + popup.formInputValues[1] + '&rntname=' + popup.formInputValues[2] + '&rntseu=' + popup.formInputValues[3] + '&rntsus=' + popup.formInputValues[4] + '&rntsca=' + popup.formInputValues[5] + '&rntsglobal=' + popup.formInputValues[6] + '&rnturl=' + popup.formInputValues[7] + '&popup=true';
            if (type == 'quoteEdit') popup.myConnVars     = 'editquote=Edit&qauthor=' + popup.formSelectValues[0] + '&qnetwork=' + popup.formSelectValues[1] + '&qchannel=' + popup.formSelectValues[2] + '&quote=' + popup.formTextareaValues[0] + '&popup=true'; 
            if (type == 'networkEdit') popup.myConnVars   = 'editnetwork=Edit&ntname=' + popup.formInputValues[0] + '&ntseu=' + popup.formInputValues[1] + '&ntsus=' + popup.formInputValues[2] + '&ntsca=' + popup.formInputValues[3] + '&ntsglobal=' + popup.formInputValues[4] + '&nturl=' + popup.formInputValues[5] + '&popup=true';
            if (type == 'channelEdit') popup.myConnVars   = 'editchannel=Edit&chnetwork=' + popup.formSelectValues[0] + '&chname=' + popup.formInputValues[0] + '&churl=' + popup.formInputValues[1] + '&popup=true';
            if (type == 'quoteReject') popup.myConnVars   = 'rejectquote=Reject&popup=true';
            if (type == 'networkReject') popup.myConnVars = 'rejectnetwork=Reject&reason=' + popup.formTextareaValues[0] + '&popup=true';
            if (type == 'channelReject') popup.myConnVars = 'rejectchannel=Reject&reason=' + popup.formTextareaValues[0] + '&popup=true';
            if (type == 'feedback') popup.myConnVars      = 'feedback=Send&fbemail=' + popup.formInputValues[0] + '&fbemailconfirm=' + popup.formInputValues[1] + '&fbmessage=' + popup.formTextareaValues[0] + '&popup=true';
            
            return popup.myConnVars;
        }
    },
    remFormValues: function() {
        delete popup.formInputValues;
        delete popup.formSelectValues;
        delete popup.formTextareaValues;
    },
    killPopup: function() {
        var tr = popup.pagebody.getElementsByTagName('tr');
        for ( var i = 0; i < tr.length; i++ ) { if( HasClass(tr[i], 'ruled')) KillClass(tr[i], 'ruled'); }
        
        popup.body.removeChild(popup.popupDiv);
        popup.body.removeChild(popup.overlay);
    }
};

addEvent(window, 'load',
function() {
    current.init('ircq_page', 'ircq_network', 'ircq_channel', 'ircq_view', 'ircq_show', 'ircq_pagination');
    vote.init();
    channelSelect.init('qserver', 'qchannel', 'hserver', 'hchannel');
    popup.init('regbutton', 'register');
    popup.init('feedbackbutton', 'feedback');
});