list.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. // Licensed Materials - Property of IBM
  2. //
  3. // IBM Cognos Products: ps
  4. //
  5. // (C) Copyright IBM Corp. 2005, 2011
  6. //
  7. // US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  8. // Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
  9. // Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
  10. // -- Checkes/Unchecks a list of checkboxes in a list
  11. var thisListForm;
  12. function setCheck(state, formObj, prefix) {
  13. var checkedState = (state == true);
  14. thisListForm = document.forms[formObj];
  15. if (thisListForm) {
  16. var elementCount = thisListForm.length;
  17. var eleI;
  18. for (var i = 0; i < elementCount; i++) {
  19. eleI = thisListForm.elements[i];
  20. if (eleI.name && eleI.name.indexOf(prefix) == 0) {
  21. eleI.checked = checkedState;
  22. }
  23. }
  24. }
  25. }
  26. // -- Checkes/Unchecks a list of checkboxes in a list
  27. function toggleChecks(control, prefix, formObjIn) {
  28. var formObj;
  29. if (!formObjIn) {
  30. formObj = 'pform';
  31. } else {
  32. formObj = formObjIn;
  33. }
  34. thisListForm = document.forms[formObj];
  35. if (thisListForm) {
  36. var elementCount = thisListForm.length;
  37. var eleI;
  38. for (var i = 0; i < elementCount; i++) {
  39. eleI = thisListForm.elements[i];
  40. if (eleI.type == 'checkbox' && eleI.name && eleI.name.indexOf(prefix) == 0) {
  41. eleI.checked = control;
  42. }
  43. }
  44. }
  45. }
  46. // -- Checks or unchecks the control checkbox if all list entries are selected or when one entry checkbox unselected when all list checkboxes were selected.
  47. function resetControlCheck(formObj, idObj, cbName) {
  48. thisListForm = document.forms[formObj];
  49. if (thisListForm) {
  50. var allSet = true;
  51. var elementCount = thisListForm.length;
  52. var eleI;
  53. for (var i = 0; i < elementCount; i++) {
  54. eleI = thisListForm.elements[i];
  55. if (eleI.type && eleI.type == 'checkbox' && eleI.name && eleI.name.indexOf(cbName) == 0 && eleI.checked == false) {
  56. allSet = false;
  57. break;
  58. }
  59. }
  60. if (allSet) {
  61. thisListForm[idObj].checked = true;
  62. } else {
  63. thisListForm[idObj].checked = false;
  64. }
  65. }
  66. }
  67. // -- Determines if at least one item is checked in a list.
  68. function isEmptySelection(formObj, prefix) {
  69. thisListForm = document.forms[formObj];
  70. var elementCount = thisListForm.length;
  71. var bEmpty = true;
  72. for (var i = 0; i < elementCount; i++) {
  73. if (thisListForm.elements[i].name.indexOf(prefix) == 0 && thisListForm.elements[i].checked) {
  74. bEmpty = false;
  75. break;
  76. }
  77. }
  78. return bEmpty;
  79. }
  80. // -- Returns the number of items checked in a list.
  81. function selectionCount(formObj, prefix) {
  82. thisListForm = document.forms[formObj];
  83. var len = 0;
  84. var elementCount = thisListForm.length;
  85. for (var i = 0; i < elementCount; i++) {
  86. if (thisListForm.elements[i].name.indexOf(prefix) == 0 && thisListForm.elements[i].checked) {
  87. len++;
  88. }
  89. }
  90. return len;
  91. }