function deleteConfirm(deletepage_url, header, bodyText) {
    // Delete with confirmation
    var handleYes = function() {
        location.href = location.href = eval('\"' + deletepage_url + '\"');


    };
    var handleNo = function() {
        this.hide();


    };
    var confirmDelete = new YAHOO.widget.SimpleDialog("myAlert", {
        width: "300px",
        effect: {
            effect: YAHOO.widget.ContainerEffect.FADE,
            duration: 0.25
        },
        fixedcenter: true,
        modal: true,
        underlay: 'shadow',
        draggable: false,
        buttons: [{
            text: "YES",
            handler: handleYes,
            isDefault: true
        },
        {
            text: "NO",
            handler: handleNo,
            isDefault: true
        }]

    });

    confirmDelete.setHeader('' + header + '');
    confirmDelete.setBody('' + bodyText + '');
    confirmDelete.render(document.body);


}

function alter_layout(num) {
	if (num == 1) {
		document.getElementById('studio_fieldset').style.display = '';
		document.getElementById('house_fieldset').style.display = '';
		document.getElementById('basic_fields').style.display = '';
		document.getElementById('location_right').style.display = '';
	} else if (num == 2) {
		document.getElementById('studio_fieldset').style.display = '';
		document.getElementById('basic_fields').style.display = '';
		document.getElementById('house_fieldset').style.display = 'none';
		document.getElementById('location_right').style.display = '';	
	} else if (num == 3) {
		document.getElementById('studio_fieldset').style.display = 'none';
		document.getElementById('house_fieldset').style.display = 'none';
		document.getElementById('basic_fields').style.display = 'none';
		document.getElementById('location_right').style.display = 'none';	
	}
}

function wait(elem) {
	document.getElementById(elem).innerHTML = "Please wait...";
}
function done(elem) {
	document.getElementById(elem).innerHTML = 'Save Changes';
}

function showHide(id) {
    var state = document.getElementById(id).style.display;
    if (state == 'none') {
        document.getElementById(id).style.display = '';

    } else {
        document.getElementById(id).style.display = 'none';

    }

}

function myAlert(header, bodyText) {
    // Thank you function
    var handleOk = function() {
        this.hide();


    };

    var thankYou = new YAHOO.widget.SimpleDialog("myAlert", {
        width: "450px",
        effect: {
            effect: YAHOO.widget.ContainerEffect.FADE,
            duration: 0.25
        },
        fixedcenter: true,
        modal: true,
        underlay: 'shadow',
        draggable: false,
        buttons: [{
            text: "OK",
            handler: handleOk,
            isDefault: true
        }]

    });

    thankYou.setHeader('' + header + '');
    thankYou.setBody('' + bodyText + '');
    thankYou.render(document.body);


}

function helpEmail(origin, browser, senderID) {
    var header = "Report a problem";
    var body = '<form action="/help/send_email.php" id="gethelp" name="gethelp" method="post"><input type="hidden" name="id" value="' + senderID + '"/><input type="hidden" name="browser" value="' + browser + '"/><input type="hidden" name="origin" value="' + origin + '"/>Artelier has just launched, and we\'re sure there will be some problems we\'ve not ironed out yet.  Please let us know about any problems you\'re having with the site and we\'ll fix it as soon as we can.<br /><br /><textarea name="problem"></textarea><br /><br /></form>';



    var handleSubmit = function() {
        this.submit();

    };

    var handleCancel = function() {
        this.cancel();

    };

    var handleSuccess = function(o) {
        myAlert("Alert", o.responseText);

    }
    var handleFailure = function(o) {
        myAlert("Error", "Unable to send messaage");

    }

    var myDialog = new YAHOO.widget.Dialog("myAlert", {
        width: "450px",
        effect: {
            effect: YAHOO.widget.ContainerEffect.FADE,
            duration: 0.25
        },
        fixedcenter: true,
        modal: true,
        underlay: 'shadow',
        draggable: false,
        buttons: [{
            text: "Send",
            handler: handleSubmit,
            isDefault: true
        },
        {
            text: "Cancel",
            handler: handleCancel
        }]

    });


    myDialog.callback = {
        success: handleSuccess,
        failure: handleFailure
    };

    myDialog.setHeader('' + header + '');
    myDialog.setBody('' + body + '');
    myDialog.render(document.body);


}


function proceed(header, bodyText, where) {
    // Thank you function
    var handleOk = function() {

        this.hide();
        window.location = '' + where + '';


    };

    var thankYou = new YAHOO.widget.SimpleDialog("myAlert", {
        width: "300px",
        effect: {
            effect: YAHOO.widget.ContainerEffect.FADE,
            duration: 0.25
        },
        fixedcenter: true,
        modal: true,
        underlay: 'shadow',
        draggable: false,
        buttons: [{
            text: "OK",
            handler: handleOk,
            isDefault: true
        }]

    });

    thankYou.setHeader('' + header + '');
    thankYou.setBody('' + bodyText + '');
    thankYou.render(document.body);


}


function showPic(whichpic) {
    document.getElementById('placeholder').src = whichpic.href;
    document.getElementById('placeholder').title = whichpic.title;
    document.getElementById('desc').innerHTML = whichpic.title;
    document.getElementById('image_posted').innerHTML = whichpic.name;
    return false;

}

// BOF YUI function
function postCall(url) {
    var sUrl = url;
    var callback = {
        success: function(o) {
            var text = o.responseText.split('<br />');
            myAlert('Complete', '' + text[0] + '');
            document.getElementById(text[1]).innerHTML = '<?php echo _(cms(104)) ?>';

        },
        failure: function(o) {
            alert("There was an error.");
            //FAILURE

        }

    }

    var transaction = YAHOO.util.Connect.asyncRequest('GET', sUrl, callback, null);

}




function approve(url, elem_id) {
    var sUrl = url;
    var callback = {
        success: function(o) {
            document.getElementById('appr_main').innerHTML = o.responseText;
            document.getElementById('appr_menu').innerHTML = o.responseText;
            //myAlert('Complete', 'User approved');
            document.getElementById('app' + elem_id).innerHTML = 'User approved';

        },
        failure: function(o) {
            alert("Error");
            //FAILURE

        }

    }

    var transaction = YAHOO.util.Connect.asyncRequest('GET', sUrl, callback, null);

}

function deny(url, elem_id) {
    var sUrl = url;
    var callback = {
        success: function(o) {
            document.getElementById('appr_main').innerHTML = o.responseText;
            document.getElementById('appr_menu').innerHTML = o.responseText;
            myAlert('Complete', 'User denied');
            document.getElementById('app' + elem_id).innerHTML = 'User denied';

        },
        failure: function(o) {
            alert("Error");
            //FAILURE

        }

    }

    var transaction = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, null);

}

// EOf YUI function
// BOF AJAX confirm yes/no
function ajaxConfirm(file_loc, elem_id, header, bodyText) {
    // Delete with confirmation
    var handleYes = function() {
        ajax(file_loc, elem_id);
        this.hide();


    };
    var handleNo = function() {
        this.hide();


    };
    var confirmDelete = new YAHOO.widget.SimpleDialog("myAlert", {
        width: "450px",
        effect: {
            effect: YAHOO.widget.ContainerEffect.FADE,
            duration: 0.25
        },
        fixedcenter: true,
        modal: true,
        underlay: 'shadow',
        draggable: false,
        buttons: [{
            text: "YES",
            handler: handleYes,
            isDefault: true
        },
        {
            text: "NO",
            handler: handleNo,
            isDefault: true
        }]

    });

    confirmDelete.setHeader('' + header + '');
    confirmDelete.setBody('' + bodyText + '');
    confirmDelete.render(document.body);


}

// EOF AJAX confirm yes/no
function display()
 {
    var elemProperty;

    for (var i = 0; i <= arguments.length - 1; i++)
    {
        if (typeof(arguments[i]) == 'boolean') continue;

        elemProperty = document.getElementById(arguments[i]).style;

        if (typeof(arguments[i + 1]) == 'boolean')
        elemProperty.display = (arguments[i + 1] == true) ? 'block': 'none';
        else
        elemProperty.display = (elemProperty.display == 'block') ? 'none': 'block';

    }

}
//Multiple display by Bread from zymic.com for all your

/* 
	Clean Form Validation was written from scratch by Marc Grabanski
	http://marcgrabanski.com
*/

var cleanValidator = {
    init: function(settings) {
        this.settings = settings;
        this.form = document.getElementById(this.settings["formId"]);
        formInputs = this.form.getElementsByTagName("input");

        // change color of inputs on focus
        for (i = 0; i < formInputs.length; i++)
        {
            if (formInputs[i].getAttribute("type") != "submit") {
                input = formInputs[i];
                input.style.background = settings["inputColors"][0];
                input.onblur = function() {
                    this.style.background = settings["inputColors"][0];

                }
                input.onfocus = function() {
                    this.style.background = settings["inputColors"][1];

                }

            }

        };
        this.form.onsubmit = function() {
            error = cleanValidator.validate();
            if (error.length < 1) {
                return true;

            } else {
                cleanValidator.printError(error);
                return false;

            }

        };

    },
    validate: function() {
        error = '';
        validationTypes = new Array("isRequired", "isEmail", "isNumeric");
        for (n = 0; n < validationTypes.length; n++) {
            var x = this.settings[validationTypes[n]];
            if (x != null) {
                for (i = 0; i < x.length; i++)
                {
                    inputField = document.getElementById(x[i]);
                    switch (validationTypes[n]) {
                        case "isRequired":
                        valid = !isRequired(inputField.value);
                        errorMsg = "is a required field<br />";
                        break;
                        case "isEmail":
                        valid = isEmail(inputField.value);
                        errorMsg = "is an invalid email address.";
                        break;
                        case "isNumeric":
                        valid = isNumeric(inputField.value);
                        errorMsg = "can only be a number.";
                        break;

                    }
                    if (!valid) {
                        error += "* " + x[i] + " " + errorMsg + "\n";
                        inputField.style.background = this.settings["errorColors"][0];
                        //inputField.style.border = "1px solid "+this.settings["errorColors"][1];

                    } else {
                        inputField.style.background = this.settings["inputColors"][0];
                        //inputField.style.border = '1px solid';

                    }

                }

            }

        }
        return error;

    },
    printError: function(error) {
        myAlert('Error', error);

    }

};

// returns true if the string is not empty
function isRequired(str) {
    return (str == null) || (str.length == 0);

}
// returns true if the string is a valid email
function isEmail(str) {
    if (isRequired(str)) return false;
    var re = /^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$/i
    return re.test(str);

}
// returns true if the string only contains characters 0-9 and is not null
function isNumeric(str) {
    if (isRequired(str)) return false;
    var re = /[\D]/g
    if (re.test(str)) return false;
    return true;

}

// Google maps
function update_location(id, lat_lng, address) {

    var sUrl = '/user_functions/map_location.php?id=' + id + '&lat_lng=' + lat_lng + '&address=' + address;
    var callback = {
        success: function(o) {
            myAlert('Complete', 'Your location info has been updated');

        },
        failure: function(o) {
            alert("Error");
            //FAILURE

        }

    }
    var transaction = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, null);

}




function partnerEmail(pid) {
    var header = "Send Message";
    var body = '<form action="/user_functions/partner_email.php" id="gethelp" name="gethelp" method="post"><input type="hidden" name="id" value="' + pid + '"/><label>Your Name<br /><input type="text" name="name" /></label><br /><label>Email Address<br /><input type="text" name="email" /></label><br /><label>Subject<br /><input type="text" name="subject" /></label><br /><label>Message<br /><textarea name="message"></textarea></label><br /><br /></form>';

    var handleSubmit = function() {
        this.submit();
    };
    var handleCancel = function() {
        this.cancel();
    };
    var handleSuccess = function(o) {
        myAlert("Alert", o.responseText);
    }
    var handleFailure = function(o) {
        myAlert("Error", "Unable to send messaage");
    }
    var myDialog = new YAHOO.widget.Dialog("myAlert", {
        width: "450px",
        effect: {
            effect: YAHOO.widget.ContainerEffect.FADE,
            duration: 0.25
        },
        fixedcenter: true,
        modal: true,
        underlay: 'shadow',
        draggable: false,
        buttons: [{
            text: "Send",
            handler: handleSubmit,
            isDefault: true
        },
        {
            text: "Cancel",
            handler: handleCancel
        }]

    });


    myDialog.callback = {
        success: handleSuccess,
        failure: handleFailure
    };

    myDialog.setHeader('' + header + '');
    myDialog.setBody('' + body + '');
    myDialog.render(document.body);


}

function bookmark(yid, tid) {

    var sUrl = '/user_functions/bookmark.php?yid=' + yid + '&tid=' + tid;
    var callback = {
        success: function(o) {
			var response = o.responseText.split('<br />');
            myAlert(response[0], response[1]);
        },
        failure: function(o) {
            alert("Error");
            //FAILURE
        }
    }
    var transaction = YAHOO.util.Connect.asyncRequest('GET', sUrl, callback, null);

}
