Panel/docs/modules/website.md

96 lines
2.9 KiB
Markdown

# Website
Workspace reference: [`GSP-WORKSPACE.md`](../../../GSP-WORKSPACE.md)
## Purpose
Public Gameservers.World sales, documentation, and customer-entry website.
## Runtime Location
- Canonical public site: `Panel/modules/website/`
- Billing catalog and order flow: `Panel/modules/billing/`
- Legacy compatibility site: `Website/`
## Design Rules
- Public pages must load without fatal errors when billing config is missing
- Path and URL handling must be centralized
- Panel and login URLs must be configuration-driven
- Documentation must be readable without depending on billing database access
- Catalog pages may degrade gracefully when billing data is unavailable
## Helpers
The website module centralizes these helpers in `includes/bootstrap.php`:
- `website_url()`
- `website_asset()`
- `panel_url()`
- `login_url()`
- `billing_url()`
- `documentation_url()`
## Billing Interaction
The website does not include the billing config loader directly. It reads panel or billing DB values safely, uses them only when needed, and avoids public fatal errors tied to missing config files.
## Deployment
Recommended:
1. `DocumentRoot` -> `Panel/modules/website`
2. Apache `Alias /billing` -> `Panel/modules/billing`
3. Configure:
- `public_base_url`
- `billing_base_url`
- `panel_url`
- `login_url`
## Key Public Pages
- `index.php`
- `serverlist.php`
- `docs.php`
- `pricing.php`
- `locations.php`
- `support.php`
- `login.php`
## Pricing and Platform Reference
- Internal workbook: `pricing/gameservers_world_pricing_catalog.xlsx`
- Public summary config: `Panel/modules/website/config/pricing.php`
- Optional overrides: `Panel/modules/website/config/config.php` and `config.local.php`
The website uses a compact public pricing summary instead of parsing the workbook at runtime. Pricing and platform wording should stay centralized so homepage, server catalog, and pricing pages remain consistent.
Public pricing rules:
- standard hosting starts at `$0.50` per slot
- selected legacy servers can start around `$4` per month
- most standard plans use a `16`-slot minimum
- fixed-cap games may differ
- custom development is quoted separately
Platform rules:
- hardware details are secondary website information
- customization, legacy-game support, backups, monitored capacity, and developer-backed help remain the main sales points
- example host specifications should be updated in the central config rather than scattered across templates
## Runlevel Systems Project Request Integration
- Services config: `Panel/modules/website/config/services.php`
- Shared footer branding: `Panel/modules/website/includes/footer.php`
- Homepage CTA: `Panel/modules/website/pages/home.php`
Current project request URL:
- `https://runlevelsystems.com/start-project.php`
Branding rules:
- official company name: `Runlevel Systems`
- official company URL: `https://runlevelsystems.com/`
- website pages should distinguish ordinary support from separately scoped project work