Recherches récentes
Pas de recherche récente

Kevin Witt
Adhésion le 16 avr. 2021
·
Dernière activité le 29 oct. 2021
Suivis
0
Abonnés
0
Activité totale
11
Votes
0
Abonnements
8
APERÇU DES ACTIVITÉS
BADGES
ARTICLES
PUBLICATIONS
COMMENTAIRES DE LA COMMUNAUTÉ
COMMENTAIRES SUR L’ARTICLE
APERÇU DES ACTIVITÉS
Dernière activité effectuée par Kevin Witt
Kevin Witt a ajouté un commentaire,
A big thank-you to @..., you saved me allot of time with this.
Afficher le commentaire · Publication le 21 oct. 2019 · Kevin Witt
0
Abonnés
0
Votes
0
Commentaire
Kevin Witt a ajouté un commentaire,
Sure, a configured as per the article (Except I didn't hide the checkbox at this point so I can see what is happening).
I have a drop-down that determines if the attachment is required, with the options "Attachment not required" and "Attachment required".
The error I see in the console is:
The HC is in my sandbox: https://unifydemo1508140682.zendesk.com
The form is called "Attachment Test".
My JS is as follows:
// Callback function to execute when mutations in form attachments or dropdown are observed:
// clear or select Attachment checkbox according to dropdown
var mutationObservedForm = function (mutationsList) {
mutationsList.forEach(function (mutation) {
if (mutation.type == 'childList') {
setFormAttachmentCheckbox();
}
});
};
// Define some variables for requiring form attachments
var attachmentCheckboxField = 'request_custom_fields_360003651537';
var attachmentCheckboxId = '#' + attachmentCheckboxField;
var attachmentErrorNotification = 'Report must be attached';
var formDropdownClass = '.request_custom_fields_360003651357';
var formObserveMutationOptions = { childList: true, subtree: true };
// Clear or select checkbox according to dropdown and attachments:
// Set Attachment checkbox if no attachments required, or if attachments are required and at least one is uploaded, otherwise clear it
function setFormAttachmentCheckbox() {
if (isFormAttachmentRequired()) {
if ($('#request-attachments-pool .upload-item').length) {
selectCheckbox(attachmentCheckboxId);
}
else {
clearCheckbox(attachmentCheckboxId);
}
}
else {
selectCheckbox(attachmentCheckboxId);
}
}
// Return true if dropdown option 'ABCD' is selected
function isFormAttachmentRequired() {
return $(formDropdownClass + ' a.nesty-input').attr('aria-expanded') &&
$(formDropdownClass + ' a.nesty-input').text() === 'Attachment required';
}
// Select checkbox
function selectCheckbox(eltselector) {
$(eltselector).prop('checked', true);
}
// Clear checkbox
function clearCheckbox(eltselector) {
$(eltselector).prop('checked', false);
}
// If attachment checkbox field exists, select it,
// and watch for changes to attachments and dropdown
if ($(attachmentCheckboxId).length) {
selectCheckbox(attachmentCheckboxId);
startObserveMutations('#request-attachments-pool', formObserveMutationOptions, mutationObservedForm);
startObserveMutations(formDropdownClass, formObserveMutationOptions, mutationObservedForm);
}
// Adjust attachment error notification
var attachmentErrorElt = $('.' + attachmentCheckboxField + ' .notification-error');
if (attachmentErrorElt.length) {
attachmentErrorElt.text(attachmentErrorNotification);
}
Afficher le commentaire · Publication le 17 oct. 2019 · Kevin Witt
0
Abonnés
0
Votes
0
Commentaire
Kevin Witt a ajouté un commentaire,
Great article, but I am having problems with the js. I get the following error in console "startObserveMutations is not defined".
Am I missing something?
Afficher le commentaire · Publication le 17 oct. 2019 · Kevin Witt
0
Abonnés
0
Votes
0
Commentaire