=== Noon Quran Schools Manager ===
Contributors: kouiderbounama
Donate link: https://github.com/kouiderbounama
Tags: quran, hifz, attendance, islamic, Quran Schools Manager
Requires at least: 5.8
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Manage Quran schools and hifz circles: students, attendance, memorization, finance, and parent access.

== Description ==

Noon Quran Schools Manager is a translation-ready WordPress plugin for tahfez centers.

* Students, parents, and teachers
* Daily attendance and recitation tracking
* Memorization plans, golden record (khatm/ijazah), and student files
* Exams, reports, and statistics
* Fees, payments, salaries, income and expenses
* Motivation points and printable certificates
* Parent, student, and teacher portals (shortcodes)
* CSV export, CSV import, and JSON backup/restore

English is the source language: every interface string goes through gettext (Text Domain: noon-quran-schools-manager, Domain Path: /languages), so the plugin follows the site locale automatically, including right-to-left locales.

Database values are stored as locale-independent keys (numeric surah numbers, status keys such as `excellent` or `present`), while the interface always shows translated labels. Existing Arabic installs are upgraded automatically on activation/update.

The admin interface uses the center name and logo from Settings, and supports the Cairo font for right-to-left locales.

== Installation ==

1. Upload the folder to /wp-content/plugins/
2. Activate the plugin (tables and data migrations run automatically)
3. Open the Quran Schools menu and complete Settings

== Frequently Asked Questions ==

= Which locales are supported? =

Any locale with a translation installed. English is the fallback source language.

= Will activating the plugin change my existing data? =

No. Recitations that stored surah names, and localized grade/relation/specialization values, are converted to canonical keys automatically. The demo backup in `assets/qsm-demo-backup.json` uses the same canonical values.

= Does it need the intl PHP extension? =

No. It is used for accurate Umm al-Qura Hijri dates when available; without it the plugin falls back to an approximate tabular Hijri calendar.

== Changelog ==

= 1.0.4 =
* English-first, translation-ready interface with automatic LTR/RTL support
* Canonical stored values: numeric surahs, grade/attendance/plan/status keys
* Automatic migration of localized values (surah names, relations, specializations, grades)
* Shared label helpers, translated JavaScript via wp.i18n, and a Cairo font for RTL locales
* Umm al-Qura Hijri dates via the intl extension, with a tabular fallback
* CSV export includes readable surah names alongside the numeric columns
* Converted every screen (golden record, points, certificates, import included) to gettext strings
* Fixed legacy `wp_qsm_*` table prefixes when restoring a JSON backup
* Teacher account creation now uses the shared WordPress account helper
* Uninstall removes every plugin table, option, migration flag, and role
* Removed the duplicate parent portal bootstrap call

= 1.0.3 =
* Only a site administrator can create WordPress accounts or assign the supervisor role
* Remove activation error_log and prefix uninstall globals
* Cast and escape database IDs and option values before output
* Text domain matches the plugin slug: noon-quran-schools-manager
* Prefixes, options, roles, shortcodes, and tables use noonqsm (4+ characters)
* Removed the legacy qsm_ migration and old shortcodes
* Escaped admin and portal output
* Sidebar stays usable on short desktop screens without a visible scrollbar

= 1.0.2 =
* Enqueue print/card/certificate CSS, sanitize export/backup nonces, escape card initial, remove load_plugin_textdomain, lower admin menu position

= 1.0.1 =
* Distinct Plugin URI (repository) and Author URI (profile)

= 1.0.0 =
* First public release for WordPress.org
* Author: Kouider Bounama (https://github.com/kouiderbounama)