Files
kokken/scripts
Alex Polo cbc1e31440 feat: Add address column and booking extras to bookings table
- Implemented a script to add an 'address' column to the 'bookings' table if it doesn't exist.
- Created a script to add 'include_service', 'include_cleanup', and 'total_price' columns to the 'bookings' table.
- Set up a 'users' table with an admin user and password hashing using bcrypt.
- Developed login and logout API routes with JWT authentication.
- Created a login page with form handling and error display.
- Designed a profile page for Christian Wärme showcasing skills and experience.
- Added a logout button component for admin interface.
- Implemented tests for login functionality and visual calendar layout.
2025-11-07 10:58:19 +01:00
..

Run database migrations in this repo

This repository includes a small, idempotent migration to add a featured column to the menus table.

Script

  • scripts/add-featured-column.mjs — checks information_schema and adds featured TINYINT(1) NOT NULL DEFAULT 0 if missing.

How to run

From the project root, set your DB connection environment variables and run the script. Example (zsh):

export DB_HOST=localhost
export DB_USER=root
export DB_PASSWORD='your-password'
export DB_NAME=warme

# run the migration
node scripts/add-featured-column.mjs

If the script can't connect, confirm your environment variables and that the MySQL/MariaDB server is reachable from this machine.

SQL alternative

If you prefer to run SQL directly in your DB client, run:

SELECT COUNT(*) AS cnt
FROM information_schema.columns
WHERE table_schema = 'your_db_name' AND table_name = 'menus' AND column_name = 'featured';

-- If cnt = 0
ALTER TABLE menus ADD COLUMN featured TINYINT(1) NOT NULL DEFAULT 0;
UPDATE menus SET featured = 0 WHERE featured IS NULL;

Verification

After running, check with:

mysql -h "$DB_HOST" -u "$DB_USER" -p"$DB_PASSWORD" -D "$DB_NAME" -e "DESCRIBE menus;"

Notes

  • The migration is idempotent — running it multiple times is safe.
  • I can't run it from CI/this environment without database credentials. Run it locally on your machine or on a host that can reach the DB.