function popupHierarchy(frameId, framePopupId, serializedId, buttonId, autoPostBackId, clientPicked) {
    var frame = document.getElementById(frameId);
    var serialized = document.getElementById(serializedId);
    var button = document.getElementById(buttonId);
    var autoPostBack = document.getElementById(autoPostBackId);
    var framePopup = document.getElementById(framePopupId);
    serialized.setText = function(text) {
        if (text) button.innerHTML = text;
    }
    serialized.clientPicked = clientPicked;
    serialized.cancelCallBack = function() {
        framePopup.style.display = 'none';
        frame.contentWindow.document.location = frame.contentWindow.document.location + "&z=0";
    }
    serialized.acceptCallBack = function(serializedValue, text) {
        serialized.value = serializedValue;
        serialized.setText(text);
        if (serialized.clientPicked) serialized.clientPicked();
        serialized.cancelCallBack();
        if (autoPostBack) autoPostBack.click();
    };
    framePopup.style.display = 'block';
    setTimeout(function() {
        var frameDoc = frame.contentWindow.document;
        frameDoc.getElementById('SerializedDesigner').value = serialized.value;
        frameDoc.getElementById('ParentInputId').value = serializedId;
        frameDoc.getElementById('Opened').click();
    }, 30);
}

function openHint(hintId, millisPerFrame, duration) {
	var fadee = document.getElementById(hintId);
	if (!setOpacity || !fadee) return;
	setOpacity(fadee, 0);
	fadee.style.display = 'block';
	setOpacity(fadee, 0);
	var value = 0;
	var fadeIn = function() {
		value += 25;
		setOpacity(fadee, value);
		if (value >= 100) {
			if (duration > 0) setTimeout(fadeOut, duration * 1000);
		} else {
			setTimeout(fadeIn, millisPerFrame);
		}		
	}
	var fadeOut = function() {
		value -= 10;
		setOpacity(fadee, value);
		if (value > 0) {
			setTimeout(fadeOut, millisPerFrame);
		} else {
			fadee.style.display = 'none';
		}
	}
	fadeIn();
}
function closeHint(hintId, millisPerFrame) {
	var fadee = document.getElementById(hintId);
	if (!fadee) return;
	var value = 100;
	var fadeOut = function() {
		value -= 10;
		setOpacity(fadee, value);
		if (value > 0) {
			setTimeout(fadeOut, millisPerFrame);
		} else {
			fadee.style.display = 'none';
		}
	}
	fadeOut();
}
function setOpacity(obj, val) {
	if (val > 100) val = 100;
	if (val < 0) val = 0;
	if (obj && obj.style) {
		obj.style.opacity = (val * 1.0) / 100.0;
		obj.style.MozOpacity = (val * 1.0) / 100.0;
		obj.style.filter = "alpha(opacity=" + val + ")";
	}
}

var preserveLoginFailures = 0;
var preserveLostVisible = false;
function preserveLogin(applicationPath, hintId, lostHintId) {
	if (preserveLogin[hintId]) {
		var req = null;
		if (window.XMLHttpRequest) {
			req = new XMLHttpRequest();
		} else if (window.ActiveXObject) {
			req = new ActiveXObject("Microsoft.XMLHTTP");
		}
		if (req != null && req) {
			preserveLoginFailures++;
			if (preserveLoginFailures >= 5 && !preserveLostVisible) {
				openHint(lostHintId, 60, -1);
				preserveLostVisible = true;
			}
			req.onreadystatechange = function() {
				if (req.readyState == 4) {
					if (req.status == 200 && req.responseText == "LoggedIn") {
						preserveLoginFailures = 0;
						preserveLostVisible = false;
						closeHint(lostHintId, 60);
						openHint(hintId, 60, 1);
					} else if (req.status == 200) {
						preserveLoginFailures = 5;
						if (!preserveLostVisible) {
							openHint(lostHintId, 60, -1);
							preserveLostVisible = true;
						}
					} else {
						preserveLoginFailures++;
					}
				}
			};
			req.open("GET", applicationPath + "/Core/LoginStatus.aspx", true);
			req.send(null);
		}
	}
	preserveLogin[hintId] = true;
	setTimeout(function() {preserveLogin(applicationPath, hintId, lostHintId)}, 60000);
}

function openNestedEditPage(iframeId, holderId, btnUniqueId, url) {
    var iframe = document.getElementById(iframeId);
    var holder = document.getElementById(holderId);
    iframe.src = url;
    holder.style.display = "block";
    window.nestedPageSaved = function() {
        holder.style.display = "none";    
        iframe.src = 'javascript:""';
        __doPostBack(btnUniqueId, '');
    }
}

function confirmEditorSourceModeSwitch(sourcecheck) {
    var sourceMode = sourcecheck.checked;
    var confirmDialog = "Locking this content into source mode will disable access to the Normal/WYSIWYG editor for this content for all users.\r\nAre you sure?";
    if (!sourceMode) {
        confirmDialog = "Are you sure you want unlock and enable the WYSIWYG editor for this content?\r\nDoing so could break your site if you don't know what you're doing.";
    }
    var agree = confirm(confirmDialog);

    if (agree) {
        //setTimeout(__doPostBack('PermanentSourceMode_Click', ''), 0);
        return true;
    }
    else {
        return false;
    }
}

/*
	Please note: the following function are not specific to BuildPage or editing in general and
	should be considered for move to a new common.js file that is loaded on every page.
	----------------------------------------------------------------------------------
*/
	function addLoadEvent(func){
		var oldonload = window.onload;
		if (typeof window.onload != 'function'){
			window.onload = func;
		} 
		else{
			window.onload = function(){
			oldonload();
			func();
			}
		}
	}
	
	function deleteCookie(name){
		var tmp = "";
		var dt = new Date();
		tmp += name + "=;";
		tmp += " expires=" + new Date(dt.setMonth(dt.getMonth() - 1)).toGMTString();
		document.cookie = tmp;
	}
	
	function setCookie(name, value){
		deleteCookie(name);
		var tmp = "";
		var dt = new Date();
		tmp += name + "=" + value + ";";
		tmp += " expires=" + new Date(dt.setMonth(dt.getMonth() + 1)).toGMTString();
		document.cookie = tmp;
	}
	
	function getCookie(name){
		var str = "";
		if (document.cookie){
		var ary = document.cookie.split(";");
		for (var i=0; i < ary.length; i++){
			var ary2 = ary[i].split("=");
			if (name == ary2[0]){
				if (ary2.length < 2)
					str = "";
				else
					str = unescape(ary2[1]);
				}
			}
		}
		return str;
	}


function cmsSetConfirmationDialog(controlClientId, okText, cancelText) {
    $(function() {
        var buttons = {};
        buttons[okText] = function() {
            window.onbeforeunload = null;
            var elem = document.getElementById(controlClientId);
            if (elem.href) {
                window.location = elem.href;
            } else if (elem.click) {
                elem.click();
            }
            elem.dialogIsOpen = false;
            $(this).dialog('close');
        };
        buttons[cancelText] = function() {
            var elem = document.getElementById(controlClientId);
            elem.dialogIsOpen = false;
            $(this).dialog('close');
        };
        $('#dialog' + controlClientId).dialog({
            autoOpen: false,
            draggable: true,
            resizable: false,
            modal: true,
            width: 400,
            overlay: {
                backgroundColor: '#000',
                opacity: 0.9
            },
            buttons: buttons,
            beforeclose: function() {
                var elem = document.getElementById(controlClientId);
                elem.dialogIsOpen = false;
            },
            open:  function() {
                $('div.ui-dialog button').each(function() {
                  $(this).addClass("cms-dialog-button-" + $(this).text().replace(/[^a-z0-9]+/ig, '-').toLowerCase());
                });
            },
        });
    });
}

function cmsConfirmationDialogClick(controlClientId) {
    var elem = document.getElementById(controlClientId);
    if(elem.dialogIsOpen){return true;}
    elem.dialogIsOpen = true;
    var dialog = $('#dialog' + controlClientId);
    dialog.css('display', 'block');
    dialog.dialog('open');
    return false;
}

function cmsWebServiceError(error)
{
    var stackTrace = error.get_stackTrace();
    var message = error.get_message();
    var statusCode = error.get_statusCode();
    var exceptionType = error.get_exceptionType();
    var timedout = error.get_timedOut();

    alert(statusCode + " " + exceptionType + ": " + message + "\r\n" + stackTrace);
}

function selectTemplateView(classSelected, viewSelected) {
    NR.CMS.Core.Services.Preferences.SetTemplateView(viewSelected, function() { }, cmsWebServiceError);
    document.getElementById("nrTemplatesHolder").className = classSelected;
}

function cmsPagePickerInit(containerId, textboxId, labelId, showListClientId, showListUniqueId, defaultText) {
    var textbox = document.getElementById(textboxId);
    var label = document.getElementById(labelId);
    
    var closeFinder = function() {
        if (!textbox.finderOpen) return;
        textbox.finderOpen = false;

        getFinderWrapper().hide('fast');
        textbox.blur();
    }

    var getFinder = function() {
        return $("#"+containerId+" > div.cms-page-picker-popup > div > div.ui-finder div.ui-finder-content > ul");
    }
    var getFinderWrapper = function() {
        return $("#"+containerId+" > div.cms-page-picker-popup > div > div.ui-finder");
    }
    var isFinderPresent = function() {
        if (getFinder().length) {
            return true;
        } else {
            return false;
        }
    }
    
    var openFinder = function() {

        var doOpen = function() {
            if (textbox.finderOpen) return;
            textbox.finderOpen = true;
            
            getFinderWrapper().show('fast');
            visualSelect(false, false);
        }
        if (isFinderPresent()) {
            doOpen();
        } else {
            Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function() {
                var finder = $("#"+containerId+" > div.cms-page-picker-popup > div > ul");
                if (finder.length) {
                    finder.finder({
                        onItemSelect: function(listItem) {			
                            onSelect(listItem, true);
	                        return false;
                        },
                        onFolderSelect: function(listItem) {
                            onSelect(listItem, false);
                        },
                        toolbarActions: function() {
                            return '<a class="ui-finder-button" href="#" role="button">\
                <span class="ui-icon ui-icon-closethick">close</span>\
                </a>';
                        },
                    });
                    getFinderWrapper().hide();
                    textbox = document.getElementById(textboxId);
                    label = document.getElementById(labelId);
                    textbox.finderOpen = false;
                    textbox.prior = null;
                    textbox.selectHappened = false;
                    textbox.visualSelectMode = null;
                }
                doOpen();
            });
            document.getElementById(showListClientId).value = true;
            __doPostBack(showListUniqueId, '');
        }
    }

    var onSelect = function(listItem, isItem) {
        var anchor = $('a', listItem);
        var pageId = anchor.attr('href').substring(1);

        var closeIt = (textbox.value == pageId) || isItem;

        if (textbox.visualSelectMode) {
            if (textbox.value != pageId) return;
            if (textbox.visualSelectMode == 'open') closeIt = false;
            textbox.visualSelectMode = null;
        }

        textbox.selectHappened = true;
        textbox.prior = pageId;
        textbox.value = pageId;
        label.innerHTML = anchor.html();
        $(label).children('.ui-icon').remove();
        
        if (closeIt) {
            closeFinder();
        } else {
            textbox.focus();
            textbox.select();
        }
    };
    var syncFromTextBox = function(closeOnFail) {
        if (textbox.value == textbox.prior) {
            if (closeOnFail) closeFinder();
            return;
        }
        
        if (textbox.value == '') {
            textbox.prior = '';
            label.innerHTML = defaultText;
            if (closeOnFail) closeFinder();
            return;
        }
        
        if (!/[1-9][0-9]*/.test(textbox.value)) {
            if (!/[1-9][0-9]*/.test(textbox.prior)) textbox.value = '';
            else textbox.value = textbox.prior;
            if (closeOnFail) closeFinder();
            return;
        }
        
        visualSelect(true, closeOnFail);
    };
    var visualSelect = function(closeOnSuccess, closeOnFail) {
        if (!textbox.value || (!/[1-9][0-9]*/.test(textbox.value))) return;
        NR.CMS.Core.Services.PageInfo.GetParentIds(textbox.value, function(result) {
            if (result) {
                textbox.visualSelectMode = closeOnSuccess ? 'close' : 'open';
                textbox.prior = textbox.value;
                getFinder().finder('select', result.split(/,/));
            } else {
                textbox.value = textbox.prior;
                if (closeOnFail) closeFinder();
            }
        }, cmsWebServiceError);
    };
    $(textbox).bind("focus", function() {
        textbox.select();
        openFinder();
    });
    $(textbox).bind("blur", function() {
        textbox.selectHappened = false;
        setTimeout(function() {
            if (!textbox.selectHappened) {
                syncFromTextBox(true);
            }
        }, 1000);
    });
    
    $(textbox).bind("keypress", function(e) {
        if (e.keyCode == 13) {
            syncFromTextBox(false);
            return false;
        }
    });
}

function cmsUrlPickerShow(containerClientId, btnHiddenId, btnHiddenUid, hiddenId, textBoxId, checkBoxHiddenId, checkBoxId,
                          originalHiddenId) {
    var dialog = $('#' + containerClientId);
    var buttons = {};
    var checkbox = document.getElementById(checkBoxId);
    var orig = $('#' + originalHiddenId).val();
    if (document.getElementById(textBoxId)) {
        buttons['Set URL'] = function() {
            $('#' + hiddenId).val($('#' + textBoxId).val());
            if (checkbox) $('#' + checkBoxHiddenId).val(checkbox.checked);
            $('#' + btnHiddenId).val(1 + parseInt('0' + $('#' + btnHiddenId).val()));
            __doPostBack(btnHiddenUid, '');
            $(this).dialog('close');
        };
        buttons['Cancel'] =  function() {$(this).dialog('close')};
    } else {
        buttons['Ok'] = function() {$(this).dialog('close')};
    }
    dialog.dialog({
        autoOpen: true,
        buttons: buttons,
        draggable: true,
        resizable: false,
        modal: true,
        width: '600px',
        overlay: {
            backgroundColor: '#000',
            opacity: 0.9
        },
        open: function() {
            $('#' + textBoxId).val($('#' + hiddenId).val());
            if (checkbox) checkbox.checked = $('#' + checkBoxHiddenId).val();
            $('#' + textBoxId).keypress(function() {
                setTimeout(function() {
                    if ($('#' + textBoxId).val() != orig) {
                        $('.cms-url-picker-redirect').show();
                    } else {
                        $('.cms-url-picker-redirect').hide();
                    }
                }, 10);
            }).keypress();
            $('.cms-url-click.to-change').click(function() {
                $('.cms-url-picker-url.url-default .label').text('Default:');
                $('.cms-url-picker-url.url-entry').show();
                $('#' + textBoxId).focus();
                $(this).hide();
                $('.cms-url-click.to-reset').show();
            });
            $('.cms-url-click.to-reset').click(function() {
                $('.cms-url-picker-url.url-default .label').text('Url:');
                $('.cms-url-picker-url.url-entry').hide();
                $('#' + textBoxId).val('').keypress();
                $(this).hide();
                $('.cms-url-click.to-change').show();
            });
            $($('#' + textBoxId).val() ? '.cms-url-click.to-change' : '.cms-url-click.to-reset').click();
            
            $('div.ui-dialog button').each(function() {
                  $(this).addClass("cms-dialog-button-" + $(this).text().replace(/[^a-z0-9]+/ig, '-').toLowerCase());
                });
        },
        close: function() {
            $('#' + containerClientId).dialog('destroy');
            setTimeout(function() {
                $('#' + containerClientId).remove();
            }, 10);
        },
    });
}

function cmsLocationPickerShow(containerClientId, pagePath, hiddenId, hiddenUid, titleHiddenId, titleTextBoxId) {
    var dialog = $('#' + containerClientId);
    var parentId;
    var beforeId = "";
    var afterId = "";
    var buttons = {};
    
    buttons[dialog.attr('title')] = function() {
        $('#' + hiddenId).val(parentId + "," + beforeId + "," + afterId);
        $('#' + titleHiddenId).val($('#' + containerClientId + ' :text').val());
        __doPostBack(hiddenUid, '');
    };
    buttons['Cancel'] = function() {$(this).dialog('close');};
    dialog.dialog({
        autoOpen: false,
        buttons: buttons,
        draggable: true,
        resizable: false,
        modal: true,
        width: 700,
        overlay: {
            backgroundColor: '#000',
            opacity: 0.9
        },
        beforeclose: function() {
            $('#' + containerClientId + ' .ui-finder-column > div.ui-finder-content > ul.cms-page-location-insertable').sortable('destroy');
            $('#' + containerClientId + " > ul").finder('destroy');
        },
        close: function() {
            $('#' + containerClientId).dialog('destroy');
            setTimeout(function() {
                $('#' + containerClientId).remove();
            }, 10);
        },
        open: function() {
            $('div.ui-dialog button').each(function() {
                  $(this).addClass("cms-dialog-button-" + $(this).text().replace(/[^a-z0-9]+/ig, '-').toLowerCase());
            });
        },
    });
    var finder = $('#' + containerClientId + " > ul");
    var textbox = $('#' + titleTextBoxId);
    var lastColumn;
    var activeItem;
    var findSiblings = function() {
        if (activeItem) {
            beforeId = '';
            afterId = '';
            var beforeSibling = activeItem.next();
            if (beforeSibling.size()) {
                beforeId = $('a', beforeSibling).attr('href').substring(1);
            }
            var afterSibling = activeItem.prev();
            if (afterSibling.size()) {
                afterId = $('a', afterSibling).attr('href').substring(1);
            }
        }
    };
    var setName = function() {
        if (!activeItem) return;
        var enabled = activeItem.closest('ul').is('.cms-page-location-insertable');
        if (textbox.size()) {
            activeItem.find('span.cms-page-location-name').text(textbox.val() || 'New Page');
            if (!textbox.val()) enabled = false;
        }
        var goButton = dialog.parents('.ui-dialog:first').find('.ui-dialog-buttonpane button:first');
        if (enabled) {
            goButton.removeAttr('disabled');
            goButton.removeClass('ui-state-disabled');
        } else {
            goButton.attr('disabled', 'disabled');
            goButton.addClass('ui-state-disabled');
        }
    };
    var refresh = function() {
        if (lastColumn) lastColumn.sortable('destroy');
        lastColumn = $('#' + containerClientId + ' .ui-finder-column:last > div.ui-finder-content > ul');
        var columnImpl = lastColumn.closest('.ui-finder-column');
        var newActive = $('#' + containerClientId + ' .ui-finder .ui-finder-column:last > div.ui-finder-content > ul > .ui-finder-list-item.cms-page-location-active');
        if (newActive.size()) {
            if (activeItem && activeItem.get(0) != newActive.get(0)) activeItem.remove();
            activeItem = newActive;
        } else if (activeItem) {
            activeItem.remove();
            activeItem.appendTo(lastColumn);
            
            // This function is basically stolen and heavily, heavily stripped down from Finder's
            // adjustWidth function. The original plan was simply to call that, but it didn't have the
            // desired results. This seems to do what we need.
            setTimeout(function() {
    		    var columns = $('#' + containerClientId + ' .ui-finder-column:visible');
			    var width = 0;
				columns.css('right','auto');
        		columns.each(function() {
			        $(this)
				        .width('auto')
			        // Explicitly setting the width of the column fixes some issues in IE.
			        // The 20px padding is needed for Webkit browsers (don't know why)
				        .width( $(this).outerWidth() + 20 );
				    var left = width + 'px';
        			width += $(this).width();
        			$(this).css('left', left);
        	    });
        	    $('#' + containerClientId + ' .ui-finder-container').width(width);
        	}, 1);
        }
        if (lastColumn.is('.cms-page-location-insertable') && !lastColumn.is('.cms-page-location-hidden')) {
            lastColumn.sortable({
                tolerance: 'pointer',
                cancel: 'li:not(.cms-page-location-active)',
                axis: 'y',
                update: findSiblings,
            });
        }
        setName();
        findSiblings();
        
        columnImpl.scrollTo(activeItem);
    }
    finder.finder({
        onItemSelect: function(listItem) {
            refresh();
            return false;
        },
        onFolderSelect: function(listItem) {
            parentId = $('a', listItem).attr('href').substring(1);
            if (!activeItem) return;
            setTimeout(function() {
                refresh();
            }, 100);
        },
    });
    setTimeout(function() {
        dialog.dialog('open');
        setName();
        textbox.bind("keypress", function() {
            setTimeout(setName, 1);
        });
        setTimeout(function() {
            finder.finder('select', pagePath.split(/,/));
        }, 100);
    }, 500);
}

function cmsUpdatePageTitles(titleTextId, navTextId, tagTextId, navCheckId, tagCheckId, allowTitleId, allowNavId, allowTagId, navCheckLabel, titleCheckLabel){
    var title = $('#' + titleTextId);
    var nav = $('#' + navTextId);
    var tag = $('#' + tagTextId);
    var navCheck = document.getElementById(navCheckId);
    var tagCheck = document.getElementById(tagCheckId);
    var navCheckWrapper = $('#' + navCheckId);
    var tagCheckWrapper = $('#' + tagCheckId);
    var navLabel = $('#' + navCheckLabel);
    var tagLabel = $('#' + titleCheckLabel);
    var allowTitle = document.getElementById(allowTitleId);
    var allowNavWrapper = $('#' + allowNavId);
    var allowNav = document.getElementById(allowNavId);
    var allowTagWrapper = $('#' + allowTagId);
    var allowTag = document.getElementById(allowTagId);
    
    if (!navCheck.checked){
        nav.attr('disabled', 'disabled');
        nav.addClass('cms-ui-disabled');
        allowNavWrapper.attr('disabled', 'disabled');
        allowNavWrapper.addClass('cms-ui-disabled');
        navCheckWrapper.addClass('cms-ui-disabled');
        navLabel.addClass('cms-ui-disabled');
        allowNav.checked = allowTitle.checked;
    }
    if (!tagCheck.checked){
        tag.attr('disabled', 'disabled');
        tag.addClass('cms-ui-disabled');
        allowTagWrapper.attr('disabled', 'disabled');
        allowTagWrapper.addClass('cms-ui-disabled');
        tagCheckWrapper.addClass('cms-ui-disabled');
        tagLabel.addClass('cms-ui-disabled');
        allowTag.checked = allowTitle.checked;
    }
    
    
    title.bind("keypress", function() {
        if (!navCheck.checked) setTimeout( function() { nav.val(title.val()); }, 1);
        if (!tagCheck.checked) setTimeout( function() { tag.val(title.val()); }, 1);
    });
    
    $(navCheck).bind("click", function() {
        setTimeout (function() {
            if (navCheck.checked) {
                nav.removeAttr('disabled');
                nav.removeClass('cms-ui-disabled');
                allowNavWrapper.removeAttr('disabled');
                navCheckWrapper.removeClass('cms-ui-disabled');
                allowNavWrapper.removeClass('cms-ui-disabled');
                navLabel.removeClass('cms-ui-disabled');
            }
            else {
                nav.attr('disabled', 'disabled');
                nav.addClass('cms-ui-disabled');
                allowNavWrapper.attr('disabled', 'disabled');
                allowNavWrapper.addClass('cms-ui-disabled');
                navCheckWrapper.addClass('cms-ui-disabled');
                navLabel.addClass('cms-ui-disabled');
                nav.val(title.val());
                allowNav.checked = allowTitle.checked;
            }
        }, 10);
     });
     
     $(tagCheck).bind("click", function() {
        setTimeout (function() {
            if (tagCheck.checked) {
                tag.removeAttr('disabled');
                tag.removeClass('cms-ui-disabled');
                tagCheckWrapper.removeClass('cms-ui-disabled');
                allowTagWrapper.removeAttr('disabled');
                allowTagWrapper.removeClass('cms-ui-disabled');
                tagLabel.removeClass('cms-ui-disabled');
            }
            else {
                tag.attr('disabled', 'disabled');
                tag.addClass('cms-ui-disabled');
                allowTagWrapper.attr('disabled', 'disabled');
                allowTagWrapper.addClass('cms-ui-disabled');
                tagCheckWrapper.addClass('cms-ui-disabled');
                tagLabel.addClass('cms-ui-disabled');
                tag.val(title.val());
                allowTag.checked = allowTitle.checked;
            }
        }, 10);
     });
     
     $(allowTitle).bind("click", function() {
        setTimeout (function() {
            if (!navCheck.checked) setTimeout( function() { allowNav.checked = allowTitle.checked; }, 10);
            if (!tagCheck.checked) setTimeout( function() { allowTag.checked = allowTitle.checked; }, 10);
        }, 10);
     });
}

function cmsSetUrl(urlCheckId, urlTextId, startingText){
    var urlCheck = document.getElementById(urlCheckId);
    var urlText = $('#' + urlTextId);
    
    if (!urlCheck.checked){
        urlText.attr('disabled', 'disabled');
        urlText.addClass('cms-ui-disabled');
    }
    
    $(urlCheck).bind("click", function() {
        setTimeout (function() {
            if (urlCheck.checked) {
                urlText.removeAttr('disabled');
                urlText.removeClass('cms-ui-disabled');
                urlText.val(startingText);
            }
            else {
                urlText.attr('disabled', 'disabled');
                urlText.addClass('cms-ui-disabled');
                urlText.val('');
             }
        }, 10);
     });
}

function cmsSetDeleteVersions(deleteCheckId, deleteTextId){
    var deleteCheck = document.getElementById(deleteCheckId);
    var deleteText = $('#' + deleteTextId);
    
    if (!deleteCheck.checked){
        deleteText.attr('disabled', 'disabled');
        deleteText.addClass('cms-ui-disabled');
    }
    
    $(deleteCheck).bind("click", function() {
        setTimeout (function() {
            if (deleteCheck.checked) {
                deleteText.removeAttr('disabled');
                deleteText.removeClass('cms-ui-disabled');
            }
            else {
                urlText.attr('disabled', 'disabled');
                deleteText.addClass('cms-ui-disabled');
             }
        }, 10);
     });
}

function cmsTabFunctionInit(callingId, totalTabs, baseDivId, baseTabId, position) {
    alert('new, position = ' + position)
    for (i = 1; i <= totalTabs; i++) {
        
        var tab = $('#' + baseTabId + i);
        var div = $('#' + baseDivId + i);
        if (position == i) {
            tab.addClass('nr-event-admin-tabSelected');
            div.show();
        }
        else {
            tab.removeClass('nr-event-admin-tabSelected');
            div.hide();
        }
        var thisI = i;
        alert('setting it to ' + thisI);
        tab.bind("click", function() { cmsTabFunction(callingId, totalTabs, baseDivId, baseTabId, thisI); });
    }
}


