=== Result Management System for Institutions ===
Contributors: ASTGD
Tags: student management, education system, grading system, online result, student marksheet
Requires at least: 6.2
Tested up to: 6.9.4
Requires PHP: 7.4
Stable tag: 2.0.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Manage student results with reusable student records, customizable marksheets, CSV import/export, PDF output, QR result cards, and flexible grading.

== Description ==

Result Management System for Institutions is designed to simplify result management for schools, colleges, coaching centers, and other educational institutions. The plugin helps administrators manage academic structures, maintain student records, enter marks, publish results, and display searchable marksheets on the frontend.

### Key Features

1. Seamless WordPress integration with a dedicated admin dashboard.
2. Manage classes, departments, sections, subjects, exam years, exam names, and result settings.
3. Reusable Student Database for storing student profiles separately from exam result records.
4. Student CSV import/export, student enrollment management, and promotion workflow.
5. Add or update marks manually, insert result data from CSV, and update marks in bulk.
6. Generate formatted CSV templates for class, department, and exam based uploads.
7. Grade system support with GPA, fourth/optional subject handling, rank output, and report-card calculations.
8. Retake mark management with final counted marks shown on result cards where applicable.
9. Frontend result search through `[astgdrmsys_show_result]`.
10. Shortcode Generator for prefilled result forms using `sclass`, `sdepartment`, `ssection`, `s_exam_name`, and `require_registration` attributes.
11. Download and print marksheets, including classwise marksheet download tools.
12. QR code support on published result cards.
13. Custom field handling for exam and student information.
14. Backup and restore tools for plugin database tables and plugin files.
15. Free/Pro separation with Pro-only teacher and student login features shown as upgrade options.

### How to Use

1. Go to Student Result Management -> Settings and enter institute information.
2. Add academic structure from the admin menus: Exam Year, Classes, Departments, Sections, Subjects, and Exam List.
3. Add students from Student Database or import them by CSV.
4. Assign or promote students into the required academic year, class, department, and section.
5. Create exams and configure exam type, display labels, publish status, QR display, and result card fields.
6. Add marks manually, insert result data from CSV, update marks by CSV, or generate a bulk CSV template first.
7. Use Download Marksheet to create class or exam marksheets.
8. Use Shortcode Generator or place `[astgdrmsys_show_result]` on any page to let students search results.

### Shortcode

Basic shortcode:

`[astgdrmsys_show_result]`

Supported attributes:

`sclass`, `sdepartment`, `ssection`, `s_exam_name`, `require_registration`

Example:

`[astgdrmsys_show_result sclass="1" sdepartment="2" ssection="3" s_exam_name="5" require_registration="1"]`

### Pro Version

The Pro version adds teacher login with assigned subject mark updates, student own-result login, premium ticket support, custom result sheet templates, and future Pro updates.

[View Pro Version](https://astgd.com/result-management-system)

== Installation ==

1. Log in to your WordPress dashboard.
2. Go to Plugins -> Add New.
3. Search for "Result Management System for Institutions".
4. Click Install Now, then activate the plugin.

Alternatively:

1. Upload `result-management-system-for-institutions.zip` to `/wp-content/plugins/`.
2. Extract the contents of the zip file.
3. Activate the plugin from the Plugins menu in WordPress.

After activation, open the Student Result Management menu in the WordPress admin area.

== Screenshots ==

1. Dashboard: Plugin dashboard showing management options.
2. Add Class: Interface for adding classes.
3. Add Subject: Interface for adding subjects to classes.
4. Add Student: Interface for adding student records.
5. Add Marks: Interface for entering student marks.
6. All Students: Interface for result records.
7. Student Database: Interface for reusable student profiles and enrollment management.
8. Shortcode Generator: Interface for generating prefilled frontend result shortcodes.
9. Download Marksheet: Interface for downloading marksheets.
10. Settings: Configure institute information, display labels, grading, and cleanup tools.

== Frequently Asked Questions ==

= What is Result Management System for Institutions? =

It is a WordPress plugin for managing student records, exam structures, marks, grades, and published result cards.

= Can I import and export results? =

Yes. The plugin supports CSV-based student import/export, generated CSV templates, result insertion from CSV, and bulk mark updates by CSV.

= Does the plugin allow PDF export or printing? =

Yes. Results can be printed or saved as PDFs from the browser, and administrators can use marksheet download tools for class or exam output.

= Can I customize the result search form? =

Yes. Use the Shortcode Generator or shortcode attributes to preselect class, department, section, exam, and whether registration number is required.

= Does this version include teacher and student login? =

Teacher and student login workflows are Pro features. The free version keeps those features as upgrade messaging only.

= How can I get support? =

For support, contact info@astgd.com or use the WordPress.org support forum for this plugin.

== Libraries Used ==

This plugin uses the following third-party JavaScript, CSS, and PHP libraries. Minified versions are included for performance, and original, human-readable source files are provided when possible to comply with WordPress.org guidelines.

= PDFObject =

- Version: 2.3.1
- License: MIT
- Project URL: https://github.com/pipwerks/PDFObject
- Minified: `js/pdfobject.min.js`
- Source: `js/pdfobject.js`

= jsPDF =

- Version: 3.0.1 (Build: 2025-03-17)
- License: MIT
- Project URL: https://github.com/parallax/jsPDF
- File: `js/jspdf.umd.min.js`

= html2canvas =

- Version: 1.4.1
- License: MIT
- Project URL: https://github.com/niklasvh/html2canvas
- File: `js/html2canvas.min.js`

= Bootstrap CSS =

- Version: 4.5.3
- License: MIT
- Project URL: https://github.com/twbs/bootstrap
- File: `css/bootstrap.css`
- Note: Only the CSS file is used; no Bootstrap JavaScript components are included.

= PHP QR Code =

- Version: 1.1.4
- License: LGPL v3
- Project URL: https://sourceforge.net/projects/phpqrcode/ or https://github.com/t0k4rt/phpqrcode
- Files: `includes/phpqrcode/`

== Changelog ==

= 2.0.0 =

- Major version release.

= 1.3.1 =

- Added reusable Student Database with student profiles, CSV import/export, enrollment tracking, and promotion workflow.
- Added Retake Marks workflow and result-card output for retake/final counted marks.
- Added Generate CSV, Insert Result, Update Mark (CSV), and Download Marksheet workflows.
- Added Shortcode Generator and documented shortcode attributes for prefilled frontend result search forms.
- Added QR code support on result cards and backup/restore tools for plugin data.
- Improved custom field handling, marksheet output, grade/GPA/rank calculations, and admin menu organization.
- Kept teacher/student login workflows out of the free package and moved them to Pro upgrade messaging.
- Added upgrade routines for new student, enrollment, retake, and exam/result schema changes.

= 1.2.0 =

- Updated grade system support.
- Enhanced CSV import with fourth subject support per student.
- Improved bulk mark updates via CSV.
- Updated demo CSV files for clearer usage.
- Added alert messages for classwise student deletion.

= 1.1.0 =

- Added grade system support.
- Enhanced CSV import with single/composite exam type detection.
- Added subject-wise marks with subcode support.
- Mapped student roll numbers (`sno`) to internal IDs (`sid`) for updates.
- Improved unserialized data handling during mark updates.
- Fixed dismissible success and warning alert messages.

= 1.0.0 =

- Initial release with student, class, subject, and result management.
- Added customizable marksheet layout.
- Added CSV import/export.
- Added `[astgdrmsys_show_result]` shortcode for frontend result search.

== Upgrade Notice ==

= 2.0.0 =

- Major version release, please take a backup of your data before upgrading.

= 1.3.1 =

This release adds database migrations and backfills for reusable student records, enrollments, retake marks, and result metadata. Back up your site database before updating, then test the upgrade on staging when possible.
