﻿function editInPlace(fieldname, type) {
    var contentID = $("#" + fieldname).attr("contentID");
    var channelID = $("#" + fieldname).attr("channelID");
    var lang = $("#" + fieldname).attr("lang");
    
    $("#" + fieldname).closest('a').removeAttr('href');
    
    if (type == 'html') {
        CKEDITOR.replace(fieldname);
    }
    else {

        var modeRead = $("#" + fieldname).attr("readMode");
        var modeEdit = $("#" + fieldname).attr("editMode");

        if (modeEdit == "false") {
            $("#" + fieldname).css('background-color', '#FFFF99');
            $("#" + fieldname).attr("readMode", "false");
            $("#" + fieldname).attr("editMode", "true");
            $("#" + fieldname).attr("contentEditable", "true");
            $("#" + fieldname).focus();
        }
        
    }
    
    var cancelBt = "<img src=\"/edit/image/cancel.png\" onclick=\"cancelEditInPlace(event, '" + fieldname + "', '"+type+"');\" border='0'/>";
    var saveBt = "<img src=\"/edit/image/save.png\" onclick=\"saveEditInPlace(event, '" + fieldname + "', '" + type + "');\" border='0'/>";
    $("#" + fieldname + "_options").html("&#160;&#160;" + saveBt + "&#160;&#160;" + cancelBt);
}

function cancelEditInPlace(event, fieldname, type) {
    ie8SafePreventEvent(event);
    if (type == 'html') {
        var codeeditor = "CKEDITOR.instances." + fieldname + ".destroy();";
        eval(codeeditor);
    }
        $("#" + fieldname).css('background-color', '');
        $("#" + fieldname + "_options").html("");
        $("#" + fieldname).attr("contenteditable", "false");
    
    return false;
}

function encHTML(str) {
    str = str.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
    return str;
};

function saveEditInPlace(event, fieldname, type) {
    ie8SafePreventEvent(event);

    if (type == 'html') 
    {
        var codeeditor = "CKEDITOR.instances." + fieldname + ".destroy();";
        eval(codeeditor);
    }
    
    
    
        $.post("/EDIT/Service.aspx?jsoncallback=?",
				{
				    "action": "saveField",
				    "channelID": $("#" + fieldname).attr("channelID"),
				    "contentID": $("#" + fieldname).attr("contentID"),
				    "lang": $("#" + fieldname).attr("lang"),
				    "type": type,
				    "fieldName": $("#" + fieldname).attr("name"),
				    "fieldValue": encHTML($("#" + fieldname).html())
				},
				saveFieldResponse,
				"json"
		);

				$("#" + fieldname + "_options").html("A Actualizar..");
    
}

function saveFieldResponse(json) {
    
    $("#" + json.fieldname).css('background-color', '');
    $("#" + json.fieldname + "_options").html("");
    $("#" + json.fieldname).attr("contenteditable", "false");
    

    if (json.Result == "Update Ok") {
        $("#" + json.fieldname + "_options").attr("class", "feedbackOK");
    }
    else {
        $("#" + json.fieldname + "_options").attr("class", "feedbackKO");
    }
    $("#" + json.fieldname + "_options").html(json.Result);
    var func = "$('#" + json.fieldname + "_options').html('');$('#" + json.fieldname + "_options').attr('class', '')";
    setTimeout(func, 2000);
    return true;

}


function ie8SafePreventEvent(e) {
    if (e.preventDefault) { e.preventDefault() }
    

    e.returnValue = false;
    
}