Plugin Directory

Changeset 3319014


Ignore:
Timestamp:
06/28/2025 02:53:40 AM (9 months ago)
Author:
quyle91
Message:

Adminz new release date 28/06/2025 9:53:34,64

Location:
administrator-z/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • administrator-z/trunk/administrator-z.php

    r3318141 r3319014  
    77 * Author: quyle91
    88 * Author URI: http://quyle91.net
    9  * Version: 2025.06.26
     9 * Version: 2025.06.28
    1010 * License: GPL2
    1111 * Text Domain: administrator-z
  • administrator-z/trunk/assets/js/adminz.js

    r3318141 r3319014  
    9797        adminz_wpcf7_toggle = (element) => {
    9898            console.log('adminz_wpcf7_toggle');
    99             const hiddenFields = element.querySelectorAll('.wpcf7-form-control.hidden');
    100             const primaryField = element.querySelector('.wpcf7-form-control:not(.hidden)');
    101 
     99
     100            const hiddenContainers = element.querySelectorAll('.hidden'); // div.hidden
     101            const primaryField = element.querySelector('.primary_field'); // field hiển thị chính
     102
     103            // Bước 1: Lấy tất cả input nằm trong div.hidden
     104            const extraFields = Array.from(hiddenContainers)
     105                .map(container => container.querySelector('.wpcf7-form-control'))
     106                .filter(Boolean); // bỏ qua nếu không có field
     107
     108            // Bước 2: Gộp các giá trị từ extraFields và gán vào primaryField
    102109            const handleHiddenFields = () => {
    103                 const values = Array.from(hiddenFields)
     110                const values = extraFields
    104111                    .map(field => field.value.trim())
    105112                    .filter(value => value !== '');
     
    107114                const mergedValue = values.join(' - ');
    108115
    109                 // Nếu là input type text (hoặc tương tự), bạn có thể set value
    110116                if (primaryField.tagName === 'INPUT' || primaryField.tagName === 'TEXTAREA') {
    111117                    primaryField.value = mergedValue;
     
    113119            };
    114120
    115             hiddenFields.forEach(field => {
     121            // Bước 3: Lắng nghe thay đổi từ các field còn lại
     122            extraFields.forEach(field => {
    116123                field.addEventListener('input', handleHiddenFields);
    117124            });
    118125
     126            // Bước 4: Khi click vào primary_field thì hiện các field ẩn, ẩn chính nó
    119127            primaryField.addEventListener('click', () => {
    120 
    121                 hiddenFields.forEach(field => {
    122                     field.classList.remove('hidden');
     128                hiddenContainers.forEach(container => {
     129                    container.classList.remove('hidden');
    123130                });
    124131
    125                 if(hiddenFields[0]){
    126                     hiddenFields[0].focus();
    127                 }
    128 
    129                 primaryField.classList.add('hidden');
     132                if (extraFields[0]) {
     133                    extraFields[0].focus();
     134                }
     135
     136                // primaryField.classList.add('hidden');
    130137            });
    131138        };
  • administrator-z/trunk/src/Controller/Wpcf7.php

    r3318141 r3319014  
    340340                echo adminz_toggle_button(__('Guid'), ".xxxxxxxxxxxx1");
    341341                $value = '<div class="adminz_wpcf7_toggle">
    342                     [date date-244 class:hidden]
    343                     [date date-245 class:hidden]
    344                     [text text-266 placeholder "Select dates"]
     342                    <div class="hidden">[date date-244]</div>
     343                    <div class="hidden">[date date-245]</div>
     344                    [text text-266 class:primary_field placeholder "Select dates"]
    345345                </div>';
    346346                echo '<br>';
Note: See TracChangeset for help on using the changeset viewer.