﻿//string message = "sdfsdkjfnnfsdn";
//string format = "<script type='text/javascript'>window.parent.postMessage('{0}', '{1}')</script>";
//string text = string.Format(format, message, Request.UrlReferrer.OriginalString);
//return new ContentResult() { Content = text };


//<a onclick="PostAjax.SendPostRequest('http://quoteapp.local/QuotingAgentDashboard/deletefile', 'hhhhhh', action)"> Uiiiiiiiiii </a>
//<script type="text/javascript">
//    function action(text) {
//        alert("ddddd    " + text);
//    }
//</script>

PostAjax = function() {
}

PostAjax.GetRequestDiv = function () 
{
    var divId = "RSdivRequest";
    var domElement = document.getElementById(divId);
    if (!domElement) {
        domElement = document.createElement('div');
        domElement.setAttribute("id", divId);
        PostAjax.SetStyle(domElement, "display:none");
        document.body.appendChild(domElement);
    }
    return domElement;
};
PostAjax.SetStyle = function (element, styleText) {
    if (element.style.setAttribute)
        element.style.setAttribute("cssText", styleText);
    else
        element.setAttribute("style", styleText);
};

PostAjax.GetIframe = function () {
    var div = this.GetRequestDiv();
    var frameId = "RSIiframe";
    var frame = '<iframe id="' + frameId + '"></iframe>';
    div.innerHTML = frame;
    return document.getElementById(frameId);
};

PostAjax.SendPostRequest = function (url, formId, action) {
    var frameRequest = this.GetIframe();
    var win = frameRequest.contentWindow;
    var form = document.getElementById(formId);
    var form2 = form.cloneNode(true);

    var input = document.createElement("input");
    input.setAttribute("name", "UrlReferrer");
    input.setAttribute("value", document.location.href);
    input.setAttribute("type", "hide");
    form2.appendChild(input);

    form2.setAttribute("id", "PostFom");
    form2.setAttribute("action", url);
    if (win.document.body) {
        win.document.body.appendChild(form2);
    }
    else {
        win.document.appendChild(form2);
    }
    var textarea, item;
    var textareaArray = form.getElementsByTagName('textarea');
    var textareaArray2 = form2.getElementsByTagName('textarea');
    for (var i = 0; i < textareaArray.length; i++) {
        textareaArray2[i].value = textareaArray[i].value;
    }

    var selectArray = form.getElementsByTagName('select');
    var selectArray2 = form2.getElementsByTagName('select');
    for (var i = 0; i < selectArray.length; i++) {
        selectArray2[i].value = selectArray[i].value;
    }

    //var html = form.innerHTML;
    //var form = "<form id='PostFom' action='" + url + "' method='post'>" + html + "</form>";
    //win.document.write(form);
    var PostFom = win.document.getElementById("PostFom");
    PostAjax.action = action;
    PostFom.submit();
};

PostAjax.receiveMessage = function (event) {
    var temp = event.data;
    PostAjax.action(temp);
    //alert(temp);
};

PostAjax.AddEvent = function (obj, eventType, fn) {
    var that = this;
    var tempFunction = function (e) { fn.call(that, e); };
    if (obj.addEventListener) {
        obj.addEventListener(eventType, tempFunction, false);
        return true;
    } else if (obj.attachEvent) {
        var r = obj.attachEvent("on" + eventType, tempFunction);
        return r;
    } else {
        return false;
    }
};

PostAjax.AddEvent(window, 'message', PostAjax.receiveMessage);


