jQuery($ => {
    $(document).ready(async () => {
        const lists = await fetch("/wp-content/uploads/settings/pagewidgetfix.txt").then(res => res.text());
        $(".p-widget.p-widget-footer.widget_pages,.p-widget.p-widget-sidebar.widget_pages").each((idx, elem) => {
            const parent = $(elem);
            const title = parent.find(".p-widget__title").text().trim();
            const line = lists.match(new RegExp(`\\s*${title}\\s*=([0-9,\\s]+)`));
            if(!line) return true;
            const list = line[1].replace(/[^0-9,]/g, "").split(",");
            parent.find(".page_item").each((idx, elem) => {
                const item = $(elem);
                const matched = item.attr("class").match(/page-item-([0-9]+)/)
                if(matched && !list.includes(matched[1])){
                    item.remove();
                }
            });
            for(const id of list){
                const item = parent.find(`.page-item-${id}`);
                item.appendTo(item.parent());
            }
        });
    });
});
