'; $out .= '
Value Layer — Ğ1 balance and capacity signals.
'; $out .= ''; $out .= 'The Value Layer and the Ğ1 Wallet are optional. '; $out .= 'Ğ1 is a libre currency independent of fiat, used for valuing and bartering surplus capacity among private individuals. '; $out .= 'The Civic Infrastructure implements it for participants who choose to engage in that economy. '; $out .= 'It is not required for participation in the diagnostic record system.'; $out .= '
'; $out .= cry01_render_balance_display(); $out .= cry01_render_signal_board($association_slug, $access); if ($access === 'participant') { $signal_url = z_root() . '/cry01/' . cry01_h($association_slug) . '/signal'; $out .= 'Balance not yet loaded. Unlock your Ğ1 wallet and use Manage to refresh.
'; } else { $out .= '' . cry01_h($balance) . '
'; if ($pubkey) { $out .= '' . cry01_h(substr($pubkey, 0, 16) . '...') . '
'; } if ($refreshed) { $stale = cry01_cache_is_stale() ? ' stale' : ''; $out .= 'Last refreshed: ' . cry01_h($refreshed) . $stale . '
'; } } $out .= 'No signals posted yet.
'; $out .= 'Describe what you are offering or seeking, denominated in Ğ1.
'; // Wallet session note — replaced by g1wallet integration once built. $out .= 'SASE participants who have registered a Ğ1 public key and are eligible for web of trust certification.
'; $out .= 'No candidates registered yet.
'; $out .= '' . ($has_rpc ? '✓' : '✗') . ' Duniter RPC endpoint: '; $out .= $has_rpc ? 'configured' : 'missing'; $out .= '
'; $out .= 'Your Ğ1 public key comes from your Ğ1 Wallet session — not from config. '; $out .= 'Unlock your wallet at Ğ1 Wallet, then return here to refresh.
'; $out .= 'Last refreshed: ' . cry01_h($refreshed) . $stale . '
'; if ($cached_key) { $out .= 'Cached key: ' . cry01_h(substr($cached_key, 0, 16) . '...') . '
'; } } else { $out .= 'Cache has not been populated yet.
'; } $out .= '