EchoSign - Решение для обратного звонка
Я интегрировал EchoSign API в веб-сайт, используя PHP, и я застрял с информацией обратного вызова.
Я создаю виджет и показываю его пользователю, и я хочу, чтобы после того, как пользователь нажал кнопку, и документ был подписан, мне нужно вернуть результат, так как документ подписан или нет, чтобы я мог переместить пользователя на следующий шаг.
Ниже мой код:
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; }); }
Благодарю.