Files
MokoSuiteStoreLocator/CLAUDE.md
T
Jonathan Miller e26d0ed400
Generic: Repo Health / Site Health (push) Has been skipped
Generic: Repo Health / Access control (push) Successful in 2s
Generic: Repo Health / Access control (pull_request) Successful in 3s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 8s
Joomla: Extension CI / Release Readiness Check (pull_request) Failing after 7s
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Successful in 9s
Generic: Project CI / Lint & Validate (pull_request) Successful in 34s
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Successful in 2s
Universal: Workflow Sync Trigger / Sync workflows to live repos (pull_request) Failing after 3s
Universal: Build & Release / Build & Release Pipeline (pull_request) Failing after 10s
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Project CI / Tests (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
fix: code review fixes, Joomla 5/6 compat, XSS prevention
Security:
- Fix stored XSS in Leaflet popup — HTML-escape loc.title/address/phone
- Use HTMLHelper::_('content.prepare') for description output

Joomla 5/6 compatibility:
- Bump PHP minimum to 8.2, Joomla minimum to 5.0.0
- script.php implements InstallerScriptInterface with typed signatures
- Restore updateservers and dlid in package manifest
- Update all manifest creationDates to 2026-06-23

Code quality:
- Replace hard-coded English errors with Text::_() language strings
- Add COM_MOKOJOOMSTORELOCATOR_ERROR_* language keys
- Use Text::_() for Locations list toolbar title
- Import missing Text class in LocationTable and Locations HtmlView

Documentation:
- Update CLAUDE.md: MokoSuite naming, source/ paths, PHP 8.2, namespace
- Update README: Joomla 5/6, PHP 8.2+, MySQL 8.0+

Authored-by: Moko Consulting
2026-06-23 11:08:46 -05:00

2.5 KiB

CLAUDE.md

This file provides guidance to Claude Code when working with this repository.

Project Overview

MokoSuiteStoreLocator -- A Joomla 5/6 package providing a store locator listing component with coordinating map and search modules.

Field Value
Platform joomla
Extension type package (component + modules)
Element pkg_mokosuitestorelocator
Language PHP
Default branch main
License GPL-3.0-or-later
Wiki MokoSuiteStoreLocator Wiki
Standards MokoStandards

Package Contents

Extension Type Element
Store Locator Component component com_mokosuitestorelocator
Store Locator Map module (site) mod_mokosuitestorelocator_map
Store Locator Search module (site) mod_mokosuitestorelocator_search

Common Commands

composer install  # Install PHP dev dependencies

Architecture

This is a Joomla package. Key layout:

  • source/pkg_mokosuitestorelocator.xml -- package manifest
  • source/script.php -- package install/upgrade/uninstall script
  • source/packages/com_mokosuitestorelocator/ -- main component
    • admin/ -- admin MVC (controllers, models, views, forms, tables, SQL)
    • site/ -- frontend MVC (controllers, models, views, templates)
    • mokosuitestorelocator.xml -- component manifest
  • source/packages/mod_mokosuitestorelocator_map/ -- map display module
  • source/packages/mod_mokosuitestorelocator_search/ -- search/filter module

Database Table

#__mokosuitestorelocator_locations -- stores location data including coordinates, address, contact info, and business hours.

Rules

  • Workflow directory: .mokogitea/ (not .gitea/ or .github/)

  • Never commit .claude/, .mcp.json, TODO.md, or *.min.css/*.min.js

  • Attribution: use Authored-by: Moko Consulting in commits

  • Branch strategy: develop on dev/, merge to main for release

  • Wiki: documentation lives in the Gitea wiki, not in docs/ files

  • Standards: this repo follows MokoStandards

  • PHP minimum: 8.2

  • Joomla minimum: 5.0

  • Joomla table operations: always use bind() -> check() -> store(), never save()

  • Namespace: Moko\Component\MokoSuiteStoreLocator for the component