Warning: Undefined property: stdClass::$guests_is_enabled in /home/oovoir/push.conecto.ir/themes/altum/views/partials/announcements.php on line 5 Warning: Undefined property: stdClass::$users_is_enabled in /home/oovoir/push.conecto.ir/themes/altum/views/partials/announcements.php on line 5

دکمه سفارشی

اگر می‌خواهید یک دکمه اشتراک/لغو اشتراک سفارشی با طراحی خودتان ادغام کنید، می‌توانید.

اینها ویژگی‌های پیکسل در معرض دید هستند که می‌توانید در کد JS خود برای یکپارچه‌سازی سفارشی استفاده کنید:

await conectopush.get_subscription_status();
await conectopush.subscribe();
await conectopush.unsubscribe();

در اینجا یک نمونه کد یکپارچه‌سازی است که از این توابع JS سفارشی استفاده می‌کند:

<span id="pusher_loading">Loading status...</span>
<a href="#" id="pusher_subscribe" style="display: none;">Subscribe ✅</a>
<a href="#" id="pusher_unsubscribe" style="display: none;">Unsubscribe ❌</a>

<script defer>
    let initiate_pusher_script = async () => {
        if(typeof pusher !== 'undefined') {
            clearInterval(pusher_is_loaded_interval);

            /* Get status of subscription */
            let status = await conectopush.get_subscription_status();

            /* Remove loading message */
            document.querySelector('#pusher_loading').style.display = 'none';

            /* Display subscribe or unsubscribe button based on the current subscription status */
            if(status) {
                document.querySelector('#pusher_unsubscribe').style.display = 'block';
                document.querySelector('#pusher_subscribe').style.display = 'none';
            } else {
                document.querySelector('#pusher_unsubscribe').style.display = 'none';
                document.querySelector('#pusher_subscribe').style.display = 'block';
            }
        }
    }

    let pusher_is_loaded_interval = setInterval(initiate_pusher_script, 100);

    /* Attach simple subscribe event */
    document.querySelector(`#pusher_subscribe`) && document.querySelector(`#pusher_subscribe`).addEventListener('click', async event => {
        event.preventDefault();
        await conectopush.subscribe(event);
        initiate_pusher_script();
    });

    /* Attach simple unsubscribe event */
    document.querySelector(`#pusher_unsubscribe`) && document.querySelector(`#pusher_unsubscribe`).addEventListener('click', async event => {
        event.preventDefault();
        await conectopush.unsubscribe(event);
        initiate_pusher_script();
    });
</script>