
function editorContent(bInitial) {

    try {
        if (bInitial)
            return $telerik.radControls[2].get_initialContent(); //editor
        else
            return $telerik.radControls[2].get_html(true);  //editor
    } catch (e) {

    try {
        if (bInitial)
            return editor.get_initialContent();
        else
            return editor.get_html(true);
    } catch (e) {
        isTelerik = false;
        return "";
    }

    }
}

function assignInitialValuesForMonitorChanges() {
	var max = (monitorChangesValues.length - 1);
	var elem;
	for (var i = 0; i <= max; i++) {
		elem = $get(monitorChangesIDs[i]);
		if (elem) if (elem.type == 'checkbox' || elem.type == 'radio')
			monitorChangesValues[i] = elem.checked;
		else monitorChangesValues[i] = elem.value;
	}
}

var isDirty = false;
var isTelerik = false;

function hasPageChanged() {

	var max = (monitorChangesValues.length - 1);
	var elem;

    var rtText = "";
    var rtNew = "";

    if (isTelerik) {

        rtText = editorContent(true).toLowerCase(); ;
        rtNew = editorContent(false).toLowerCase(); ;
        
    }
    
    if (isTelerik) {
	    if (rtText != rtNew) { return true; }
	}

	if (max == 0 && monitorChangesValues[0] == undefined) return false;

	for (var i = 0; i <= max; i++) {

		elem = $get(monitorChangesIDs[i]);
		if (elem) {
			if (!elem.disabled) {
				if (elem.type == 'checkbox' || elem.type == 'radio') {
					if (elem.checked != monitorChangesValues[i]) { return true; }

				} else if (elem.value != monitorChangesValues[i]) {	
					return true;
				}
			}
		}
	}
	return false;
}

// confirmhideandpass
function confirmSetDirty() {
    if (isDirty || hasPageChanged()) {
        $get("isAutoSave").value = "dirty";
        return true;
    }
    else {
        return false;
    }
}

function confirmAskSetDirty() {
    if (isDirty || hasPageChanged()) {
		var answer = newConfirm('Question','Do you want to save changes?',1,1,0);
		if (answer) {
			$get("isAutoSave").value = "dirty";
		} else {
			$get("isAutoSave").value = "";
		}
	}
	else {
		$get("isAutoSave").value = "";
	}
}

// confirmclosenew
function confirmSetUrl(url) {

	if (isDirty) {
		promptUser(url);
	}
	else {
		if (hasPageChanged()) {
			promptUser(url);
		}
	}
}

function promptUser(url)
{
	// if we are logged out exit
	if (l_iSecondsCountDown == 0) { return; }

	var answer = newConfirm('Question','Do you want to save changes?',1,1,0);

	if (answer) {
		$get("isAutoSave").value = url;
		__doPostBack('','');
	}

	event.returnValue = !answer;
}

function promptUserMessage(url, msg)
{
	// if we are logged out exit
	if (l_iSecondsCountDown == 0) { return; }

	var answer = newConfirm('Question',msg,1,1,0);

	if (answer) {
		$get("isAutoSave").value = url;
		__doPostBack('','');
	}

	event.returnValue = !answer;
}

function DisableButtons() {
    if (!Sys.WebForms.PageRequestManager._instance._postBackSettings.async) {

        var sRegisteredPostBackControls = Sys.WebForms.PageRequestManager._instance._postBackControlIDs;

        for (var i = 0; i < sRegisteredPostBackControls.length; i++) {
            if (sRegisteredPostBackControls[i] == Sys.WebForms.PageRequestManager._instance._activeElement.name)
                return true;
        }

        self.setTimeout("DisableButtonsGo()", 100);

    }
    return true;
}

function DisableButtonsGo() {
	var allSelectElements = document.getElementsByTagName("input");
	
	for(var i=0; i < allSelectElements.length; i++ ){
	    if (allSelectElements[i].type == "submit")
	        allSelectElements[i].disabled = "true";	
	}
}

