I’ve scoured the forums and can’t seem to find anyone who has asked this question. Typically, a report card for a student includes previous quarter’s grades. Yet when I build a report, all I see are a single quarter’s grade for the class. I’d also like to know where to get started with customizing how the reports looks, outside of the template builder.
Our report cards look very texty and bland, and I’d like to try to recreate that.
I suppose I’ll also throw my hat in to the ring of people who would like to see a way to directly import a category of markbook grades in to the Report module. Even if I could create a special column in my markbook that is named something specific, and then my report searches for that exact entry. At least that way my teachers could enter in the final quarter grade with all of the information in front of them.
Thank you for all your hard work! I’m hoping to convince the administration here to move off of RenWeb and into Gibbon.
Hi Qualitymix, welcome to the Gibbon community!
The initial templates included in the Reports module are fairly simple and currently don’t include displaying multiple sets of grades. What we’ve discovered is that there’s rarely a typical report card, almost every school has their own needs and requirements. For this reason, the templating system was designed to be as flexible as possible, so that people can edit the templates to suit their schools needs. It does require some HTML and Twig templating syntax, but it’s still much easier than editing PHP code.
The best way to get started editing templates is to go into the Manage Assets section of the Template Builder, then duplicate an existing template and edit it. Be sure to visit the Twig docs for more info on the template syntax. There is a preview button when editing the template to see what it looks like. It’s best to have your system set to Development mode when working on templates, as this will disable the caching system. Otherwise, you may need to clear the report template cache in System Admin > Cache Manager (v21) for your changes to be visible in any generated PDFs.
We do eventually hope to have more example templates and more documentation about this process. Our capacity is limited and currently focused on refactoring some areas of the codebase, but it’s something we’re certainly aware of and working towards.
Here’s a link to a previous post about adding markbook grades to the report card: Mark book to Report Cards. It would be possible to code a system like you’ve suggested, but its currently beyond our capacity. If it’s something you’re interested in developing, or finding developers to create it, we’re happy to offer pointers to help ensure it’s a change that would be mergeable into the core.
Thank you for your response!
I’m moderately familiar with PHP, and can learn quickly. Not at all familiar with Twig. I see you link to Twig stuff in your site. Is it just HTML, twig, and php? Or is there anything else involved?
The report templates are HTML and Twig, with PHP only required if you were extending it to write your own data source (but there’s a lot built-in). In Manage Assets there is a basic interface for editing templates, so no extra editors or ftp access required.
Is there an API somewhere that lists the different built-in data sources that can be accessed?
There isn’t necessarily an API, but something like this would be handy to add. In the modules/Reports/src/Sources folder you can find all the available data sources, and each one contains a schema at the top which shows the data structure available (which is also used for generating fake data in the template builder). Also, in Settings there is a debug mode, this enables an inspector in two places: at the top of the HTML view of the template builder there will be an expandable view of the data structure, and in the Generate Reports section there will be an Inspect action to look at the actual data for a student’s report.
As a note, I’ve added a help page to v22 with a list of data sources and their schema: https://github.com/GibbonEdu/core/pull/1288