Hiding a ticket form on the 'submit a request' page

Answered

14 Comments

  • Ifra Saqlain
    Community Moderator
    Most Engaged Community Member of The Year - 2021

    Hi Dawn Anderson,

    Just follow the steps below:

    1). Copy the below script code paste it into script.js file.

    var tagsToRemove = ['360000674612'];  //special form ID

    function removeTagsWeDontWant() {
    $('.nesty-panel').on('DOMNodeInserted', function(e){
    for(var i in tagsToRemove) {
    $('li#' + tagsToRemove[i]).remove();
    }
    });
    };
    removeTagsWeDontWant();

     

    Screenshot for the same:

     

    Make sure you have added the jQuery Library into document_head.hbs file.

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

     

    Screenshot for the same:

     

    2). The form ID inside the array - var tagsToRemove = ['360000674612']; 

    360000674612 - it's my form ID, you need to remove this and add your special form ID.

    special form ID - Form you want to hide from the dropdown  list.

     

    Hope it work for you, if any issue let me know :)

     

    Thanks

    Team Diziana

    0
  • Dawn Anderson

    Hi @...

    Have followed your steps but the form is still present in the drop down list?

     

    0
  • Ifra Saqlain
    Community Moderator
    Most Engaged Community Member of The Year - 2021

    It's working perfectly for me.

    Can you share the public URL of your HC after setting your working theme live?

     

    0
  • Dawn Anderson

    Of course, https://support.vivaladiva.com/hc/en-gb

     

     

    0
  • Dawn Anderson

    When I added the code, it didn't remove the form but it removed the hero image & search bar from the help centre? Had to remove it as we need these features to be visible.

    0
  • Ifra Saqlain
    Community Moderator
    Most Engaged Community Member of The Year - 2021

    Hi,

    Fix the below error and then apply my code that would work.

     

     

    Code has an issue.

     

     

     

     

    0
  • Dawn Anderson

    Hi @...

    Should I just remove that section from the code? Not sure what it does?

    0
  • Ifra Saqlain
    Community Moderator
    Most Engaged Community Member of The Year - 2021

    Yes you can remove it and then try and let me know :) so I'll find out the way for buggy setTimeOut();

    but first remove that buggy function and try for the ticket code.

     

     

    0
  • Dawn Anderson

    hI @...

    I tried what you suggested but am now getting the below error:

    When I remove that line from the document head the hero image comes back. Just tried the code and I don't need it in document head - just the bit in the code is hiding it on the page :)

    Thanks for your help, got there in the end :)

    0
  • Patrick Lieu

    Ifra Saqlain - thank you this is great!

    Could I confirm this is how would we do this for multiple forms?

    var tagsToRemove = ['FORM1ID', 'FROM2ID'];  //special form ID

    function removeTagsWeDontWant() {
    $('.nesty-panel').on('DOMNodeInserted', function(e){
    for(var i in tagsToRemove) {
    $('li#' + tagsToRemove[i]).remove();
    }
    });
    };
    removeTagsWeDontWant();
    0
  • Ifra Saqlain
    Community Moderator
    Most Engaged Community Member of The Year - 2021

    Yes, you can as you shared the array code, just add the ticket IDs inside the array.

    0
  • Alaya Team

    Hi Ifra Saqlain<

    Would appreciate some help with how to accomplish this in our help center

    var tagsToRemove = ['360000674612'];  //special form ID

    function removeTagsWeDontWant() {
    $('.nesty-panel').on('DOMNodeInserted', function(e){
    for(var i in tagsToRemove) {
    $('li#' + tagsToRemove[i]).remove();
    }
    });
    };
    removeTagsWeDontWant();


    Is this all I need to add and would this be added under script.js?

    1
  • Ifra Saqlain
    Community Moderator
    Most Engaged Community Member of The Year - 2021

    Hello Alaya Team

    Yes, the code mentioned above would be add on script.js file at the bottom area but under the DOM function, please see the provided screenshot to reach the point easily.

     

    document.addEventListener('DOMContentLoaded', function() {  // It's the DOM function
    // Key map
    var ENTER = 13;
    var ESCAPE = 27;
    var SPACE = 32;
    var UP = 38;
    var DOWN = 40;
    var TAB = 9

    ....................

    YOUR CODE WHICH IS ALREADY ADDED
    ....................







    //Code for some specific ticket forms -- Start

    var tagsToRemove = ['360000674612']; //special form ID

    function removeTagsWeDontWant() {
    $('.nesty-panel').on('DOMNodeInserted', function(e){
    for(var i in tagsToRemove) {
    $('li#' + tagsToRemove[i]).remove();
    }
    });
    };
    removeTagsWeDontWant();

    // End






    });

    Screenshot:

     

    If any confusion, do let me know :)

    Thanks

    Ifra Saqlain

    0
  • Ifra Saqlain
    Community Moderator
    Most Engaged Community Member of The Year - 2021

    I think you are using jQuery so you can add script code like this:

    $(document).ready(function (){

    //Code for some specific ticket forms -- Start

    var tagsToRemove = ['TICKET-FORM-ID-1', 'TICKET-FORM-ID-2', 'TICKET-FORM-ID-3']; //special form ID

    function removeTagsWeDontWant() {
    $('.nesty-panel').on('DOMNodeInserted', function(e){
    for(var i in tagsToRemove) {
    $('li#' + tagsToRemove[i]).remove();
    }
    });
    };
    removeTagsWeDontWant();

    // End

    });

     

    Only copy the above code and paste it at the bottom/last after all code on script.js file.

     

    Screenshot for the same:

     

    Replace the IDs with your ticket ID: var tagsToRemove = ['TICKET-FORM-ID-1', 'TICKET-FORM-ID-2', 'TICKET-FORM-ID-3']; 

    and do nothing else.

     

     

    You will get the ticket-form-ids in the searchbar:

     

    You see the numbers are your ticket ID, same as you can get other ticket IDs.

     

     

    Press the dropdown bar and select the ticket:

     

    After that, when your selected ticket would be appear on the window you can see the ticket ID in the search-bar.

     

     

     

    Note: If you write custom code using jQuery then please write under the DOM else your code won't work properly or throwing error.

    $(document).ready (function (){

    // Your custom code here

     

    });

     

     

    Hope it work for you.

    1

Please sign in to leave a comment.

Powered by Zendesk