Aylink Bypass

Aylink sitesinde bekleme süresini atlayarak direkt link erişimi sağlar

Você precisará instalar uma extensão como Tampermonkey, Greasemonkey ou Violentmonkey para instalar este script.

You will need to install an extension such as Tampermonkey to install this script.

Você precisará instalar uma extensão como Tampermonkey ou Violentmonkey para instalar este script.

Você precisará instalar uma extensão como Tampermonkey ou Userscripts para instalar este script.

Você precisará instalar uma extensão como o Tampermonkey para instalar este script.

Você precisará instalar um gerenciador de scripts de usuário para instalar este script.

(Eu já tenho um gerenciador de scripts de usuário, me deixe instalá-lo!)

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

(Eu já possuo um gerenciador de estilos de usuário, me deixar fazer a instalação!)

// ==UserScript==
// @name         Aylink Bypass
// @name:tr      Aylink Bypass
// @name:en      Aylink Bypass
// @namespace    https://memoryhackers.org/members/durmuk.1871708/
// @version      1.0
// @description  Aylink sitesinde bekleme süresini atlayarak direkt link erişimi sağlar
// @description:tr  Aylink sitesinde bekleme süresini atlayarak direkt link erişimi sağlar
// @description:en  Bypasses the countdown timer on Aylink to provide direct link access
// @author       Durmuş Karaca
// @license      MIT
// @match        *://*.aylink.co/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    function waitForElement(selector) {
        return new Promise(resolve => {
            if (document.querySelector(selector)) {
                return resolve(document.querySelector(selector));
            }

            const observer = new MutationObserver(mutations => {
                if (document.querySelector(selector)) {
                    observer.disconnect();
                    resolve(document.querySelector(selector));
                }
            });

            observer.observe(document.body, {
                childList: true,
                subtree: true
            });
        });
    }

    async function skipCountdown() {
        try {
            // Countdown elementini bekle
            const countdownElement = await waitForElement('.countdown');
            
            if (countdownElement) {
                // Bypass butonunu oluştur
                const bypassButton = document.createElement('div');
                bypassButton.className = 'text-center p-2';
                bypassButton.innerHTML = `
                    <button class="btn btn-warning btn-lg fs-6 text-decoration-none col-12">
                        <strong>Bypassed Link</strong> 
                        <i class="fa fa-spinner fa-spin" aria-hidden="true"></i>
                    </button>
                `;
                
                // Bypass butonunu countdown'dan önce ekle
                countdownElement.parentNode.insertBefore(bypassButton, countdownElement);
                
                // Gerekli class'ları ekle ve AJAX isteğini tetikle
                setTimeout(() => {
                    // Countdown'u gizle
                    const timeElement = countdownElement.querySelector('.time');
                    if (timeElement) {
                        timeElement.style.display = 'none';
                    }

                    // Complete elementini göster
                    const completeElement = countdownElement.querySelector('.complete');
                    if (completeElement) {
                        completeElement.style.display = 'block';
                    }

                    // Gerekli class'ları ekle
                    const goButton = completeElement.querySelector('.btn');
                    if (goButton) {
                        goButton.classList.add('btn-go');
                    }

                    const goLink = document.querySelector('#go-link');
                    if (goLink) {
                        goLink.classList.add('go-link');
                    }

                    // Otomatik olarak butona tıkla
                    setTimeout(() => {
                        const btnGo = document.querySelector('.btn-go');
                        if (btnGo) {
                            btnGo.click();
                        }
                    }, 100);

                    // Bypass butonunu güncelle
                    bypassButton.innerHTML = `
                        <button class="btn btn-success btn-lg fs-6 text-decoration-none col-12">
                            <strong>Link Hazırlanıyor</strong> 
                            <i class="fa fa-check" aria-hidden="true"></i>
                        </button>
                    `;
                }, 500);
            }
        } catch (error) {
            console.log('Element bulunamadı veya bir hata oluştu:', error);
        }
    }

    // Sayfa yüklendiğinde çalıştır
    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', skipCountdown);
    } else {
        skipCountdown();
    }
})();