|
332 | 332 | * Initialize group toggles
|
333 | 333 | */
|
334 | 334 | function initGroupToggles() {
|
335 |
| - // Toggle group content visibility |
336 |
| - $(document).on('click', '.stl-toggle-group', function(e) { |
337 |
| - e.preventDefault(); |
338 |
| - |
339 |
| - var groupId = $(this).data('group-id'); |
340 |
| - var $content = $('#group-content-' + groupId); |
| 335 | + // Clean up any existing handlers |
| 336 | + $('.stl-toggle-group').off('click'); |
| 337 | + |
| 338 | + // Set up toggle buttons with click handler |
| 339 | + $('.stl-toggle-group').each(function() { |
341 | 340 | var $button = $(this);
|
342 |
| - |
343 |
| - if ($content.is(':visible')) { |
344 |
| - $content.slideUp(200); |
345 |
| - $button.text(stl_admin.i18n.show_details || 'Show Details'); |
346 |
| - } else { |
347 |
| - $content.slideDown(200); |
348 |
| - $button.text(stl_admin.i18n.hide_details || 'Hide Details'); |
349 |
| - } |
| 341 | + var groupId = $button.data('group-id'); |
| 342 | + var $content = $('#group-content-' + groupId); |
| 343 | + |
| 344 | + // Make sure content starts hidden |
| 345 | + $content.hide(); |
| 346 | + |
| 347 | + // Set initial state |
| 348 | + $button.attr('data-state', 'closed'); |
| 349 | + |
| 350 | + // Add click handler |
| 351 | + $button.on('click', function(e) { |
| 352 | + e.preventDefault(); |
| 353 | + e.stopPropagation(); |
| 354 | + |
| 355 | + // Toggle based on current state |
| 356 | + if ($button.attr('data-state') === 'closed') { |
| 357 | + $content.show(); |
| 358 | + $button.text(stl_admin.i18n.hide_details || 'Hide Details'); |
| 359 | + $button.attr('data-state', 'open'); |
| 360 | + } else { |
| 361 | + $content.hide(); |
| 362 | + $button.text(stl_admin.i18n.show_details || 'Show Details'); |
| 363 | + $button.attr('data-state', 'closed'); |
| 364 | + } |
| 365 | + |
| 366 | + return false; |
| 367 | + }); |
350 | 368 | });
|
351 | 369 | }
|
352 | 370 |
|
|
0 commit comments