Template: JS function optimizations, add support for bulk delete select-all checkbox.
This commit is contained in:
@@ -2485,6 +2485,22 @@ $default_login = ($_REQUEST['login'] == 'default') ? true : false;
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* EDIT ********************************************************************************/
|
||||||
|
|
||||||
|
td.edit_delete_checkbox_all {
|
||||||
|
text-align: center;
|
||||||
|
width: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.edit_delete_checkbox_all input[type=checkbox] {
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-top: -2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.edit_delete_checkbox_all > span:nth-child(2) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
/* CURSORS ***********************************************************************/
|
/* CURSORS ***********************************************************************/
|
||||||
|
|
||||||
.cursor-default { cursor: default; }
|
.cursor-default { cursor: default; }
|
||||||
|
|||||||
+38
-20
@@ -422,24 +422,10 @@ echo "<script language='JavaScript' type='text/javascript' src='<!--{project_pat
|
|||||||
|
|
||||||
//list functions
|
//list functions
|
||||||
function list_all_toggle(modifier) {
|
function list_all_toggle(modifier) {
|
||||||
var inputs = document.getElementsByTagName('input');
|
var checkboxes = (modifier !== undefined) ? document.getElementsByClassName('checkbox_'+modifier) : document.querySelectorAll("input[type='checkbox']");
|
||||||
if (modifier !== undefined) {
|
var checkbox_checked = document.getElementById('checkbox_all' + (modifier !== undefined ? '_'+modifier : '')).checked;
|
||||||
var checkbox_checked = document.getElementById('checkbox_all_'+modifier).checked;
|
for (var i = 0, max = checkboxes.length; i < max; i++) {
|
||||||
}
|
checkboxes[i].checked = checkbox_checked;
|
||||||
else {
|
|
||||||
var checkbox_checked = document.getElementById('checkbox_all').checked;
|
|
||||||
}
|
|
||||||
for (var i = 0, max = inputs.length; i < max; i++) {
|
|
||||||
if (modifier !== undefined) {
|
|
||||||
if (inputs[i].type === 'checkbox' && inputs[i].className === 'checkbox_'+modifier) {
|
|
||||||
inputs[i].checked = checkbox_checked;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
if (inputs[i].type === 'checkbox') {
|
|
||||||
inputs[i].checked = checkbox_checked;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (document.getElementById('btn_check_all') && document.getElementById('btn_check_none')) {
|
if (document.getElementById('btn_check_all') && document.getElementById('btn_check_none')) {
|
||||||
if (checkbox_checked) {
|
if (checkbox_checked) {
|
||||||
@@ -486,17 +472,49 @@ echo "<script language='JavaScript' type='text/javascript' src='<!--{project_pat
|
|||||||
document.getElementById('btn_search').style.display = '';
|
document.getElementById('btn_search').style.display = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
function edit_delete_action() {
|
function edit_all_toggle(modifier) {
|
||||||
|
var checkboxes = document.getElementsByClassName('checkbox_'+modifier);
|
||||||
|
var checkbox_checked = document.getElementById('checkbox_all_'+modifier).checked;
|
||||||
|
if (document.getElementById('btn_delete') && checkboxes.length > 0) {
|
||||||
|
for (var i = 0; i < checkboxes.length; ++i) {
|
||||||
|
checkboxes[i].checked = checkbox_checked;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
document.getElementById('btn_delete').value = checkbox_checked ? '' : 'delete';
|
||||||
|
}
|
||||||
|
|
||||||
|
function edit_delete_action(modifier) {
|
||||||
var checkboxes = document.getElementsByClassName('chk_delete');
|
var checkboxes = document.getElementsByClassName('chk_delete');
|
||||||
if (document.getElementById('btn_delete') && checkboxes.length > 0) {
|
if (document.getElementById('btn_delete') && checkboxes.length > 0) {
|
||||||
var checkbox_checked = false;
|
var checkbox_checked = false;
|
||||||
for (var i = 0; i < checkboxes.length; ++i) {
|
for (var i = 0; i < checkboxes.length; ++i) {
|
||||||
if (checkboxes[i].checked) { checkbox_checked = true; }
|
if (checkboxes[i].checked) {
|
||||||
|
checkbox_checked = true;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (document.getElementById('checkbox_all'+(modifier !== undefined ? '_'+modifier : ''))) {
|
||||||
|
document.getElementById('checkbox_all'+(modifier !== undefined ? '_'+modifier : '')).checked = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
document.getElementById('btn_delete').value = checkbox_checked ? '' : 'delete';
|
document.getElementById('btn_delete').value = checkbox_checked ? '' : 'delete';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function swap_display(a_id, b_id, display_value) {
|
||||||
|
display_value = display_value !== undefined ? display_value : 'inline-block';
|
||||||
|
a = document.getElementById(a_id);
|
||||||
|
b = document.getElementById(b_id);
|
||||||
|
if (window.getComputedStyle(a).display === 'none') {
|
||||||
|
a.style.display = display_value;
|
||||||
|
b.style.display = 'none';
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
a.style.display = 'none';
|
||||||
|
b.style.display = display_value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function modal_close() {
|
function modal_close() {
|
||||||
document.location.href='#';
|
document.location.href='#';
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user