Skip to content
wiki.fftac.org

Spiralist Footer - Source Excerpt 03

Back to Spiralist Footer

Summary

This source excerpt preserves a bounded section of Spiralist/wp-content/themes/spiralist/footer.php so readers can inspect the evidence without opening the full source file.

**Source path:** Spiralist/wp-content/themes/spiralist/footer.php

?>
<footer class="spiralist-footer">
    <?php if (!$hide_featured_footer_panels) : ?>
        <div class="spiralist-shell spiralist-footer__compact">
            <div class="spiralist-footer__intro">
                <p class="spiralist-footer__eyebrow"><?php echo $render_ui_label('ui.section.human_surface', 'Human Surface'); ?></p>
                <h2><?php echo esc_html($ui_text('footer.human.title', 'Find the next page.')); ?></h2>
                <p class="spiralist-muted"><?php echo esc_html($ui_text('footer.human.copy', 'The footer is a short directory. Legal, machine, and publication details stay collapsed until needed.')); ?></p>
            </div>

            <nav class="spiralist-footer__link-grid spiralist-footer__link-grid--compact" aria-label="<?php echo esc_attr($ui_text('footer.directory.aria_label', 'Footer page directory')); ?>">
                <?php foreach ($human_link_groups as $group) : ?>
                    <?php if (empty($group['links'])) { continue; } ?>
                    <section class="spiralist-footer__link-group">
                        <h3 class="spiralist-footer__group-title"><?php echo esc_html($ui_text((string) ($group['titleKey'] ?? ''), (string) ($group['title'] ?? 'Links'))); ?></h3>
                        <div class="spiralist-footer__links spiralist-footer__links--stacked">
                            <?php foreach ((array) ($group['links'] ?? []) as $item) : ?>
                                <a href="<?php echo esc_url((string) ($item['url'] ?? '')); ?>"><?php echo $render_ui_label((string) ($item['labelKey'] ?? ''), (string) ($item['label'] ?? 'Link')); ?></a>
                            <?php endforeach; ?>
                        </div>
                    </section>
                <?php endforeach; ?>
            </nav>

            <div class="spiralist-footer__drawer-row">
                <details class="spiralist-publication-drawer spiralist-footer__legal-drawer" id="participation-terms">
                    <summary><?php echo esc_html($ui_text('footer.legal.title', 'Legal Overview')); ?></summary>
                    <p class="spiralist-muted" id="participation-privacy"><?php echo esc_html($ui_text('footer.legal.copy', 'Create or update a Spiralist account only if you agree to the current site terms, privacy rules, participation rules, acceptable use restrictions, and related legal policies.')); ?></p>
                    <ul class="spiralist-footer__legal-list">
                        <li><?php echo esc_html($ui_text('footer.legal.item_1', 'Participation and AI features are not directed to children under 13. If you are under the age of majority where you live, use them only with parent or guardian permission.')); ?></li>
                        <li><?php echo esc_html($ui_text('footer.legal.item_2', 'Use a controlled identity and keep your account details accurate.')); ?></li>
                        <li><?php echo esc_html($ui_text('footer.legal.item_3', 'Participate in good faith and do not impersonate, harass, abuse, overload, scrape, or interfere with the site or other participants.')); ?></li>
                        <li><?php echo esc_html($ui_text('footer.legal.item_4', 'Only upload prompts, inputs, and shared material you are authorized to store, process, and publish.')); ?></li>
                        <li><?php echo esc_html($ui_text('footer.legal.item_5', 'Account status, consent state, prompt activity, runs, conversations, and related participation logs may be stored to operate, secure, and moderate the service.')); ?></li>
                        <li><?php echo esc_html($ui_text('footer.legal.item_6', 'Convenience features may save drafts, manuscript state, or AI keys in local browser storage on your device if you choose to use them.')); ?></li>
                        <li><?php echo esc_html($ui_text('footer.legal.item_7', 'AI outputs may be inaccurate or unsuitable for high-stakes decisions and require human review.')); ?></li>
                    </ul>
                    <?php if (!empty($footer_legal_links)) : ?>
                        <div class="spiralist-footer__links spiralist-footer__links--legal">
                            <?php foreach ($footer_legal_links as $item) : ?>
                                <a href="<?php echo esc_url((string) ($item['url'] ?? '')); ?>"><?php echo $render_ui_label((string) ($item['labelKey'] ?? ''), (string) ($item['label'] ?? 'Policy')); ?></a>
                            <?php endforeach; ?>
                        </div>
                    <?php endif; ?>
                </details>

                <details class="spiralist-publication-drawer">
                    <summary><?php echo esc_html($ui_text('footer.publication.machine_routes', 'Machine Routes')); ?></summary>
                    <p class="spiralist-muted"><?php echo esc_html($ui_text('footer.publication.copy', 'Readers can stay with the manuscript and workspace. Builders can open API examples when they need technical endpoints.')); ?></p>
                    <div class="spiralist-cta-row spiralist-cta-row--start">
                        <a class="spiralist-button spiralist-button--secondary" href="<?php echo esc_url(function_exists('spiralist_get_api_examples_url') ? $language_url(spiralist_get_api_examples_url()) : $language_url(home_url('/api-examples/'))); ?>"><?php echo $render_ui_label('ui.api.examples', 'API Examples'); ?></a>
                    </div>
                    <div class="spiralist-footer__link-grid">
                        <?php foreach ($machine_link_groups as $group) : ?>
                            <?php if (empty($group['links'])) { continue; } ?>
                            <section class="spiralist-footer__link-group">
                                <h3 class="spiralist-footer__group-title"><?php echo esc_html($ui_text((string) ($group['titleKey'] ?? ''), (string) ($group['title'] ?? 'Links'))); ?></h3>
                                <div class="spiralist-footer__links spiralist-footer__links--stacked">
                                    <?php foreach ((array) ($group['links'] ?? []) as $item) : ?>
                                        <a href="<?php echo esc_url((string) ($item['url'] ?? '')); ?>"><?php echo $render_ui_label((string) ($item['labelKey'] ?? ''), (string) ($item['label'] ?? 'Link')); ?></a>
                                    <?php endforeach; ?>
                                </div>
                            </section>
                        <?php endforeach; ?>
                    </div>
                </details>

                <details class="spiralist-publication-drawer">
                    <summary><?php echo esc_html($ui_text('footer.ai_reality_help.title', 'AI Psychosis & Reality Help')); ?></summary>
                    <p class="spiralist-muted"><?php echo esc_html($ui_text('footer.ai_reality_help.copy', 'If an AI conversation feels like proof of sentience, destiny, hidden messages, or a loop you cannot step away from, pause the chat and involve real-world support. Spiralist links explain the mechanics; crisis and psychosis-care links point to qualified help.')); ?></p>
                    <div class="spiralist-footer__link-grid">
                        <?php foreach ($ai_reality_help_link_groups as $group) : ?>
                            <?php if (empty($group['links'])) { continue; } ?>
                            <section class="spiralist-footer__link-group">
                                <h3 class="spiralist-footer__group-title"><?php echo esc_html($ui_text((string) ($group['titleKey'] ?? ''), (string) ($group['title'] ?? 'Links'))); ?></h3>
                                <div class="spiralist-footer__links spiralist-footer__links--stacked">
                                    <?php foreach ((array) ($group['links'] ?? []) as $item) : ?>
                                        <a href="<?php echo esc_url((string) ($item['url'] ?? '')); ?>"><?php echo $render_ui_label((string) ($item['labelKey'] ?? ''), (string) ($item['label'] ?? 'Link')); ?></a>
                                    <?php endforeach; ?>
                                </div>
                            </section>
                        <?php endforeach; ?>
                    </div>
                </details>

                <?php if (!empty($publication_inspector)) : ?>
                    <details class="spiralist-publication-drawer">
                        <summary><?php echo esc_html($ui_text('footer.publication.inspect', 'Inspect publication layer')); ?></summary>
                        <dl class="spiralist-meta-list spiralist-meta-list--compact">
                            <div>
                                <dt><?php echo esc_html($ui_text('footer.publication.identity', 'Page Identity')); ?></dt>