# Miss Belding Scholarship Fundraiser Sponsor Portal

This is a simple yearly program book ad and supporter portal for local businesses, families, and community members. It is intentionally static, so it can be hosted almost anywhere and it does not store PayPal or payment information.

## What To Change Each Year

Use `admin.html` for local editing. Contestants and ad options are managed from lists that open edit windows, so yearly updates do not require editing code.

- `campaignYear`: set the new fundraiser year.
- `campaignName`: update the campaign title if it changes.
- `heroImage`: update the yearly header photo path.
- `goal` and `raisedOffline`: update campaign totals.
- Program book deadline: update the countdown date and deadline message.
- PayPal links: paste the matching PayPal link inside each program book option.
- Contact page link: update the public contact link if the Miss Belding site changes.
- Program book options: adjust ad sizes, supporter listing prices, benefits, and the PayPal link for each amount.
- Contestants: replace the sample contestants with the current year's contestants.
- `previousYear`: update last year's goal, amount raised, summary, and sponsor list.

## Admin Portal

Open `admin.html` to use the local admin editor.

Default local password: `MissB2026!!`

This password is only for the local/static prototype because it lives in `data/campaign.js`. Before publishing a real public admin portal, connect it to secure hosting with server-side login and a database.

The current admin page can:

- update the yearly campaign goal and raised amount
- update contestants
- update program book ad options
- update PayPal links for each program book option
- update the yearly header image path
- add last year's results and sponsors
- publish changes to the live site
- export a new `campaign.js` file for publishing

After the Google Apps Script publishing upgrade is deployed, Netlify only needs to be re-uploaded when the site's code or design changes. Normal content edits can be made in Admin Access and sent live with `Publish to Live Site`.

## Payment Setup

The safest simple setup is to use hosted checkout links:

- PayPal: create a donation or checkout link in the PayPal account that should receive funds.
This page redirects sponsors to PayPal. That keeps sensitive payment details off this site.

## Google Order Collection

The project includes a Google Apps Script connector in `google-apps-script/`.

It sends order details to the Google Sheet, saves uploaded artwork in the Google Drive year folder, emails Miss Belding, and then sends the sponsor to PayPal.

## Suggested Workflow

1. A contestant visits a business and opens this page on a phone or tablet.
2. The business chooses a full-page ad, half-page ad, quarter-page ad, or supporter listing.
3. The contestant selects their name, enters the business contact details and ad/listing wording, then taps `Continue to Payment`.
4. The sponsor can select an artwork, photo, logo, or PDF file so the file name is included with the order summary.
5. The sponsor completes payment through PayPal.
6. The contestant or sponsor can use `Email Summary` so the fundraiser team has the pledge details and artwork file name.
7. The fundraiser team uses `admin.html` to update totals and sponsor recognition.

## Files

- `index.html`: page structure.
- `styles.css`: visual design.
- `app.js`: page behavior.
- `admin.html`: local admin editor.
- `admin.js`: admin editor behavior.
- `data/campaign.js`: yearly fundraiser data.
- `assets/header-picture.avif`: current header image.
- `assets/miss-belding-logo.avif`: current logo.

## Important Notes

Before accepting live payments, confirm the account owner, nonprofit/tax treatment, refund policy, and reporting needs with the fundraiser treasurer or board. Payment providers change fees and rules, so verify the current terms before publishing the live links.

The local static prototype can show an artwork upload field and include the selected file name in the order summary, but it cannot securely transmit or store uploaded files by itself. A live website should connect this form to secure hosting, a form service, or a database/storage backend for actual artwork collection.
