0

PHP を使用して Web サイトに EchoSign API を統合しましたが、コールバック情報に行き詰まりました。

私はウィジェットを作成してユーザーに表示しています。ユーザーがボタンをクリックしてドキュメントが署名された後、ドキュメントが署名されているかどうかにかかわらず、ユーザーを次のステップに移動できるように結果を返す必要があります。

以下は私のコードです:

require_once($_SERVER["DOCUMENT_ROOT"]."setup.php");

global $result_sign;

    $recipient_email = $_SESSION['EchoSign_Email_Document'];

    $md5pdf_echosign = md5($_SESSION['EchoSign_Email_Document']) . ".pdf";

    $filepath = $_SERVER["DOCUMENT_ROOT"].'/path_to_file/'.$md5pdf_echosign;
    $file = EchoSign\Info\FileInfo::createFromFile($filepath);
    $widget = new EchoSign\Info\WidgetCreationInfo('Agreement', $file);
    $personalization = new EchoSign\Info\WidgetPersonalizationInfo($recipient_email);

    try{
        $result_sign = $api->createPersonalEmbeddedWidget($widget, $personalization);
    }catch(Exception $e){
        print '<h3>An exception occurred:</h3>';
        var_dump($e);
    }

このように結果を表示します

echo $result_sign->{'embeddedWidgetCreationResult'}->javascript;

次のように AJAX を使用してファイルを呼び出します。

$('#echosign_id').html('my_ecosign_file.php');

どんな助けにも感謝します。

ユーザーがドキュメントに署名した後、ドキュメントが署名されていることを確認し、署名されているかどうかを確認して、ユーザーを次のステップに移動させたいと考えています。

私のJS:

function FormSubmitBindStep4(){
    $('#FormID input#input_id').unbind('click').bind('click', function(){


        var obj = $(this);
        $('.prior_dark_form_preloader').remove();
        obj.hide();
        $('.prior_form_error_input').removeClass('prior_form_error_input');
        $('#terms_1-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#terms_2-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#3-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#4-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#5-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#6-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#7-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#confirmation_1-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#confirmation_2-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#confirmation_3-styler .jq-checkbox__div.error_input').removeClass('form_error_input');
        $('#confirmation_4-styler .jq-checkbox__div.error_input').removeClass('form_error_input');

        $('<img src="/preloader.GIF" class="prior_dark_form_preloader"/>').insertAfter(obj);

        $(document).scrollTop(0, 1000);

       if (actualStep < 4){
           actualStep = 4;
       }

        $.ajax ({
            type: "POST",
            url: "/form_step_4.php",
            data: { json: createJsonFromForm('FormIDStepValidation') }
        }).done(function(data) {
            $('.prior_dark_form_preloader').remove();

            if (data == true){

                $('#FormID').html('<iframe scrolling="no" src="/EchoSign.php" width="1150px" height="715px">',function(){

                });

            }else{
                console.log("step 4", "incorrect");
                obj.show();
                $('.prior_form_error_input_anchor_php').remove();

                var errors = jQuery.parseJSON(data);
                for(error in errors){
                    Step1Validation(error, true, errors);
                    Step2Validation(error, true, errors);
                    Step4Validation(error, false, errors);
                }
                $( 'input' ).click(function() {
                    $(".input_anchor_php").hide();
                });
            }
        });
        return false;
    });
}

ありがとう。

4

0 に答える 0