mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-12-09 19:18:22 +01:00
Clean code to avoid duplicate js code
This commit is contained in:
@@ -1485,12 +1485,12 @@ jQuery(document).ready(function() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Code to set tooltip on search field
|
// Code to set tooltip on search field
|
||||||
jQuery('table.liste tr.liste_titre_filter td.liste_titre input[name^="search"][type=text]:not(".maxwidthdate")').attr('title', '<?php echo dol_escape_js($langs->transnoentities("SearchSyntaxTooltipForStringOrNum")) ?>');
|
jQuery('table.liste tr.liste_titre_filter td.liste_titre input[name^="search"][type=text]:not(".maxwidthdate")').attr('title', '<?php echo dol_escape_js($langs->transnoentities("SearchSyntaxTooltipForStringOrNum")) ?>');
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
jQuery(document).ready(function() {
|
// Code to toggle dropdown components
|
||||||
jQuery(document).on("click", ".butAction.dropdown-toggle", function(event) {
|
jQuery(document).on("click", ".butAction.dropdown-toggle", function(event) {
|
||||||
console.log("Click on .butAction.dropdown-toggle");
|
console.log("Click on .butAction.dropdown-toggle");
|
||||||
let parentHolder = jQuery(event.target).parent();
|
let parentHolder = jQuery(event.target).parent();
|
||||||
@@ -1514,23 +1514,24 @@ jQuery(document).ready(function() {
|
|||||||
let viewportBottom = $(window).scrollTop() + $(window).height();
|
let viewportBottom = $(window).scrollTop() + $(window).height();
|
||||||
|
|
||||||
// Change dropdown Up/Down orientation if dropdown is close to bottom viewport
|
// Change dropdown Up/Down orientation if dropdown is close to bottom viewport
|
||||||
if(parentHolder.hasClass('open')
|
if (parentHolder.hasClass('open')
|
||||||
&& dropDownContentBottom > viewportBottom // Check bottom of dropdown is behind viewport
|
&& dropDownContentBottom > viewportBottom // Check bottom of dropdown is behind viewport
|
||||||
&& dropDownContentTop - dropDownContentHeight > 0 // check if set dropdown to --up will not go over the top of document
|
&& dropDownContentTop - dropDownContentHeight > 0 // check if set dropdown to --up will not go over the top of document
|
||||||
){
|
) {
|
||||||
parentHolder.addClass("--up");
|
parentHolder.addClass("--up");
|
||||||
}else{
|
} else {
|
||||||
parentHolder.removeClass("--up");
|
parentHolder.removeClass("--up");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Change dropdown left/right offset if dropdown is close to left viewport
|
// Change dropdown left/right offset if dropdown is close to left viewport
|
||||||
if(parentHolder.hasClass('open') && dropDownContentLeft < 0){
|
if (parentHolder.hasClass('open') && dropDownContentLeft < 0) {
|
||||||
parentHolder.addClass("--left");
|
parentHolder.addClass("--left");
|
||||||
}else{
|
} else {
|
||||||
parentHolder.removeClass("--left");
|
parentHolder.removeClass("--left");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
// Close drop down
|
// Close drop down
|
||||||
jQuery(document).on("click", function(event) {
|
jQuery(document).on("click", function(event) {
|
||||||
// search if click was outside drop down
|
// search if click was outside drop down
|
||||||
@@ -1543,9 +1544,39 @@ jQuery(document).ready(function() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
// Code to manage the js for combo list with dependencies (called by extrafields_view.tpl.php)
|
||||||
|
function showOptions(child_list, parent_list) {
|
||||||
|
var val = $("select[name="+parent_list+"]").val();
|
||||||
|
var parentVal = parent_list + ":" + val;
|
||||||
|
if(val > 0) {
|
||||||
|
$("select[name=\""+child_list+"\"] option[parent]").hide();
|
||||||
|
$("select[name=\""+child_list+"\"] option[parent=\""+parentVal+"\"]").show();
|
||||||
|
} else {
|
||||||
|
$("select[name=\""+child_list+"\"] option").show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function setListDependencies() {
|
||||||
|
console.log("setListDependencies");
|
||||||
|
jQuery("select option[parent]").parent().each(function() {
|
||||||
|
var child_list = $(this).attr("name");
|
||||||
|
var parent = $(this).find("option[parent]:first").attr("parent");
|
||||||
|
var infos = parent.split(":");
|
||||||
|
var parent_list = infos[0];
|
||||||
|
showOptions(child_list, parent_list);
|
||||||
|
|
||||||
|
/* Activate the handler to call showOptions on each future change */
|
||||||
|
$("select[name=\""+parent_list+"\"]").change(function() {
|
||||||
|
showOptions(child_list, parent_list);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
if (!getDolGlobalString('MAIN_DISABLE_SELECT2_FOCUS_PROTECTION') && !defined('DISABLE_SELECT2_FOCUS_PROTECTION')) {
|
if (!getDolGlobalString('MAIN_DISABLE_SELECT2_FOCUS_PROTECTION') && !defined('DISABLE_SELECT2_FOCUS_PROTECTION')) {
|
||||||
?>
|
?>
|
||||||
|
|||||||
@@ -317,31 +317,6 @@ if (empty($reshook) && !empty($object->table_element) && isset($extrafields->att
|
|||||||
print '
|
print '
|
||||||
<script>
|
<script>
|
||||||
jQuery(document).ready(function() {
|
jQuery(document).ready(function() {
|
||||||
function showOptions(child_list, parent_list)
|
|
||||||
{
|
|
||||||
var val = $("select[name="+parent_list+"]").val();
|
|
||||||
var parentVal = parent_list + ":" + val;
|
|
||||||
if(val > 0) {
|
|
||||||
$("select[name=\""+child_list+"\"] option[parent]").hide();
|
|
||||||
$("select[name=\""+child_list+"\"] option[parent=\""+parentVal+"\"]").show();
|
|
||||||
} else {
|
|
||||||
$("select[name=\""+child_list+"\"] option").show();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
function setListDependencies() {
|
|
||||||
jQuery("select option[parent]").parent().each(function() {
|
|
||||||
var child_list = $(this).attr("name");
|
|
||||||
var parent = $(this).find("option[parent]:first").attr("parent");
|
|
||||||
var infos = parent.split(":");
|
|
||||||
var parent_list = infos[0];
|
|
||||||
showOptions(child_list, parent_list);
|
|
||||||
|
|
||||||
/* Activate the handler to call showOptions on each future change */
|
|
||||||
$("select[name=\""+parent_list+"\"]").change(function() {
|
|
||||||
showOptions(child_list, parent_list);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
setListDependencies();
|
setListDependencies();
|
||||||
});
|
});
|
||||||
</script>'."\n";
|
</script>'."\n";
|
||||||
|
|||||||
Reference in New Issue
Block a user