Hu go - изменить переменную на странице в соответствии с предыдущей посещенной страницей - PullRequest
0 голосов
/ 19 июня 2020

Я работаю на Hu go. Вот моя проблема: у меня есть несколько страниц, которые ссылаются на одну и ту же страницу формы регистрации. Эта страница формы регистрации позволяет отправить пользователю электронное письмо со ссылкой на видео. Но в зависимости от страницы перед страницей формы регистрации он отправит электронное письмо с другой ссылкой видео.

Например:

page A -->  page register form --> mail: video A
page B -->  page register form --> mail: video B
page C -->  page register form --> mail: video C

Вот мой код для формы, это шорткод которые я могу повторно использовать на другой странице:

left-title-right-form. html

<div class="row align-items-center" id="sc-lead-magnet-bg-row">
   <div class="col-md-12 col-lg-6 col-12" id="sc-lead-magnet-image">
      <h1 style="color:white;">{{ .Get "big_title"}}</h1>
      <p style="color:white;">{{ .Get "top_subtitle"}}</p>
   </div>
   <div class="col-md-12 col-lg-6 col-12 pt-3">
      <div class="border rounded p-3 bg-white">
         <h2>{{.Get "title_copy"}}</h2>
         <form name="myForm"
            class="h-100 rounded"
            id="submit_request_form"
            enctype="multipart/form-data"
            onsubmit="return submitClick();">
            <div class="form-group">
               <input type='hidden' name='ticket_form_id' value='number'>
               <input type='hidden' name='ticket_queue_id' value='number2'>
               <input type='hidden' name='title' value='{{.Get "title_ticket"}}'>
               <input type='hidden' id='description' name='description' value='default'>
               <label for="id_name">First and last name:</label>
               <input type="text" autofocus
                  class="form-control" id="id_name" name="user_name"
                  required>
            </div>
            <div class="form-group">
               <label for="id_email">Email address:</label>
               <input type="email" id="id_email" name="user_email" class="form-control" required>
               <small class="form-text text-muted">We'll never share your email with anyone else.</small>
            </div>
            <label for="id_company">Organization:</label>
            <input type="company" id="id_company" name="user_company" class="form-control">
            <button type="submit" class="btn btn-danger mt-3">&nbsp;Watch&nbsp;now&nbsp;<i class="fas fa-arrow-right"></i></button>
            <!-- Modal -->
            <div class="modal fade" id="exampleModal" tabindex="-1" role="dialog"
               aria-labelledby="exampleModalLabel" aria-hidden="true">
               <div class="modal-dialog" role="document">
                  <div class="modal-content">
                     <div class="modal-header">
                        <h5 class="modal-title" id="exampleModalLabel">One last step</h5>
                        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                        <span aria-hidden="true">&times;</span>
                        </button>
                     </div>
                     <div class="modal-body">
                        <p>
                           An email is on its way with a link to the video.
                        </p>
                     </div>
                     <div class="modal-footer">
                        <a href="/" class="btn btn-success active"
                           role="button" aria-pressed="true">I can't wait</a>
                     </div>
                  </div>
               </div>
            </div>
         </form>
      </div>
   </div>
</div>
<script>
   // function showModal() {
   //     document.getElementById('exampleModal').modal('show');
   // }
   function submitClick() {
       if (formValidation() == true) {
           event.preventDefault();
           const xhr = new XMLHttpRequest();
           xhr.open('POST', 'form_url');
           xhr.setRequestHeader('Content-Type', 'multipart/form-data');
           xhr.onload = function() {
               if (xhr.status != 201) {
               alert('Request failed.  Returned status of ' + xhr.status);
               }
           };
           var name = document.getElementById('id_name').value;
           var email = document.getElementById('id_email').value;
           var company = document.getElementById('id_company').value;
           xhr.send(encodeURI('ticket_form_id=number&ticket_queue_id=number2&title={{.Get "title_ticket"}}&description=' + name + '\n' + email + '\n' + 'Company(optional): ' + company + '\n' + name + ', the {{.Get "title_ticket_document"}} you requested \n {{.Get "link_requested"}} \n -------- \n Dear ' + name + ',\n \n We are glad you visited us to request the {{.Get "title_ticket_document"}}. We think you will find this valuable.'));
           $('#exampleModal').modal('show');
           return true;
       } else {
           return false;
       }
   }
   function formValidation() {
   
       if (document.myForm.user_name.value == "") {
         alert("Please fill in your Name!");
         return false;
       }
   
       // Validate length of the Name LastName
       else if ((document.myForm.user_name.value.length) > 50) {
         alert("The name is too long!");
         return false;
       }
   
       // Validate emails
       else if (!/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(myForm.user_email.value)) //Regular expressions to validate email
       {
         alert("Enter Valid Email Address!");
         return false;
       }
   
       return true;
   }
</script>

Вот моя форма регистрации страницы с реализацией шорткод:

Регистр-форма папки:

index.md

{{< left-title-right-form
big_title="Automating Customer Engagement"
top_subtitle="Register now to watch the recording"
title_copy="Share details to watch"
title_ticket="Previous webinar video"
title_ticket_document="Previous Webinar Video"
link_requested="https://forms.gle/THctZkEkmo9GWf176"
>}}

Ссылка, которую я хочу изменить, находится в переменной "link_requested". Но я не знаю, как сообщить моему приложению, что если вы перейдете со страницы A в форме регистрации, вы получите электронное письмо с "link_requested" на видео A. Тот же принцип для видео B, C ...

...