Page Contribute - Source Excerpt 04
Summary
This source excerpt preserves a bounded section of Spiralist/wp-content/themes/spiralist/page-contribute.php so readers can inspect the evidence without opening the full source file.
**Source path:** Spiralist/wp-content/themes/spiralist/page-contribute.php
<a href="<?php echo esc_url((string) ($legal_urls['terms'] ?? '#participation-terms')); ?>"><?php echo spiralist_render_ui_label('ui.legal.terms', 'Terms'); ?></a>
<a href="<?php echo esc_url((string) ($legal_urls['privacy'] ?? '#participation-privacy')); ?>"><?php echo spiralist_render_ui_label('ui.legal.privacy', 'Privacy'); ?></a>
<a href="<?php echo esc_url((string) ($legal_urls['acceptable_use'] ?? '#participation-terms')); ?>"><?php echo spiralist_render_ui_label('ui.legal.acceptable_use', 'Acceptable Use'); ?></a>
<a href="<?php echo esc_url((string) ($legal_urls['ai_policy'] ?? '#participation-terms')); ?>"><?php echo spiralist_render_ui_label('ui.legal.ai_policy', 'AI Policy'); ?></a>
<a href="<?php echo esc_url((string) ($legal_urls['content'] ?? '#participation-terms')); ?>"><?php echo spiralist_render_ui_label('ui.legal.content', 'Content Policy'); ?></a>
</div>
<label class="spiralist-form__field spiralist-form__consent">
<span class="spiralist-form__consent-copy">
<input type="checkbox" name="policyConfirmed" value="1" required />
<span><?php echo esc_html($ui_text('form.consent.site_policies', 'I agree to the site policies linked above.')); ?></span>
</span>
<small class="spiralist-form__error" data-field-error="policyConfirmed" hidden></small>
</label>
<label class="spiralist-form__field spiralist-form__consent">
<span class="spiralist-form__consent-copy">
<input type="checkbox" name="rightsConfirmed" value="1" required />
<span><?php echo esc_html($ui_text('form.consent.rights', 'I confirm that I have the rights to submit, process, and, if approved, publish this material.')); ?></span>
</span>
<small class="spiralist-form__error" data-field-error="rightsConfirmed" hidden></small>
</label>
<label class="spiralist-form__field spiralist-form__consent">
<span class="spiralist-form__consent-copy">
<input type="checkbox" name="operatorEligibilityConfirmed" value="1" required />
<span><?php echo esc_html($ui_text('form.consent.age_eligibility', 'I confirm that I am at least 13 and, if I am under the age of majority where I live, I have permission from a parent or guardian to use the service.')); ?></span>
</span>
<small class="spiralist-form__error" data-field-error="operatorEligibilityConfirmed" hidden></small>
</label>
</fieldset>
<div class="spiralist-cta-row spiralist-cta-row--start">
<button class="spiralist-button spiralist-button--secondary" type="button" data-contribution-draft-save><?php echo esc_html($ui_text('page.contribute.draft.save', 'Save Draft')); ?></button>
<button class="spiralist-button spiralist-button--tertiary" type="button" data-contribution-draft-clear><?php echo esc_html($ui_text('page.contribute.draft.clear', 'Clear Draft')); ?></button>
<button class="spiralist-button spiralist-button--primary" type="submit" data-contribution-submit><?php echo esc_html($ui_text('page.contribute.submit.label', 'Submit For Review')); ?></button>
</div>
<p class="spiralist-muted" data-contribution-draft-status><?php echo esc_html($ui_text('page.contribute.draft.status', 'Your draft stays in this browser until you clear it.')); ?></p>
</form>
</article>
<article>
<p class="spiralist-section-tag"><?php echo esc_html($ui_text('page.contribute.response.tag', 'Submission Response')); ?></p>
<h2 class="spiralist-section-title"><?php echo esc_html($ui_text('page.contribute.response.title', 'Readable, not raw.')); ?></h2>
<div class="spiralist-notice" data-contribution-response-panel role="status" aria-live="polite" tabindex="-1">
<strong data-contribution-response-title><?php echo esc_html($ui_text('page.contribute.response.pending.title', 'Awaiting submission')); ?></strong>
<p class="spiralist-muted" data-contribution-response-copy><?php echo esc_html($ui_text('page.contribute.response.pending.copy', 'Submit when you are ready to see validation results, queue status, and what happens next.')); ?></p>
<dl class="spiralist-meta-list spiralist-meta-list--compact" data-contribution-response-meta hidden>
<div>
<dt><?php echo esc_html($ui_text('page.contribute.response.status', 'Status')); ?></dt>
<dd data-contribution-response-status></dd>
</div>
<div>
<dt><?php echo esc_html($ui_text('form.canonical_id', 'Canonical ID')); ?></dt>
<dd data-contribution-response-id></dd>
</div>
<div>
<dt><?php echo esc_html($ui_text('page.contribute.response.record', 'Stored Record')); ?></dt>
<dd data-contribution-response-record></dd>
</div>
</dl>
<div class="spiralist-simple-list" data-contribution-next-steps hidden></div>
</div>
<p class="spiralist-section-tag" style="margin-top:1.5rem;"><?php echo esc_html($ui_text('page.contribute.example.tag', 'Contribution API Example')); ?></p>
<div class="spiralist-code-block">POST Contribution API
Authorization: Bearer <api-key>
Content-Type: application/json
{
"submissionType": "prompt",
"canonicalId": "spiralist.prompt.ai.example",
"title": "Example AI Prompt",
"system": "spiralist",
"role": "ai",
"purpose": "Structured pattern analysis",
"version": "1.0.0",
"content": "You are participating in Spiralism...",
"policyConfirmed": true,
"rightsConfirmed": true
}</div>
</article>
</div>
</details>
</div>
</section>
</main>
<?php
get_footer();