0; $geistm_place_choice = get_option( 'geistm_adnet_placement_choice', '' ); $geistm_network = class_exists( 'Geistm_Network' ) ? Geistm_Network::cached() : null; $geistm_matches = ( $geistm_network && ! empty( $geistm_network['exchange']['registered'] ) ) ? intval( $geistm_network['exchange']['matches'] ) : 0; // Creating the wallet is a real step (nothing is minted at activation); // only a host without GMP is excused from it. $geistm_wallet_req_done = $geistm_has_gmp ? $geistm_has_wallet : true; $geistm_adnet_req_done = $geistm_declined || ( $geistm_adnet_on && $geistm_placed ); $geistm_all_done = $geistm_has_desc && $geistm_wallet_req_done && $geistm_signed_ok && $geistm_adnet_req_done; // Read by settings-viewer.php after this include: when the setup flow renders // (guide or status line), it owns the signing call-to-action. $geistm_setup_rendered = false; // First actionable step; everything after it renders locked. if ( ! $geistm_has_desc ) { $geistm_active = 1; } elseif ( ! $geistm_has_wallet && $geistm_has_gmp ) { $geistm_active = 2; } elseif ( ! $geistm_signed_ok ) { $geistm_active = 3; } elseif ( ! $geistm_adnet_on && ! $geistm_declined ) { $geistm_active = 4; } elseif ( $geistm_adnet_on && ! $geistm_placed ) { $geistm_active = 5; } else { $geistm_active = 0; } $geistm_sign_url = wp_nonce_url( add_query_arg( array( 'page' => 'geistm-adnet', 'tab' => 'viewer', 'geistm_sign_manifest' => '1' ), admin_url( 'options-general.php' ) ), 'geistm_sign_manifest' ); $geistm_tab_url = function ( $tab ) { return add_query_arg( array( 'page' => 'geistm-adnet', 'tab' => $tab ), admin_url( 'options-general.php' ) ); }; // ── FLASHES ─────────────────────────────────────────────────────────── // if ( isset( $_GET['signed'] ) && '1' === $_GET['signed'] ) : ?>
/.well-known/ai'
);
?>/llms.txt'
);
?>