How to handle many-to-many relations in AppGini

Many-to-many relations (also known as N:M relations) is a way of describing the relationship between two entities/tables where each one could have, or own, or be related to, many items of the other. To clarify this, let’s use the example from WikiPedia, books and authors. An author can write one or more books, and a […]

Using full-text searches with AppGini apps

I recently received a very interesting question from an AppGini user regarding implementing full-text searches in AppGini apps. The user had a table containing millions of records, and normal search operations on a text field took too long (about 1.5 minutes according to the user). When he tried adding a full-text index on that field, […]

Fixing issues when trying to import CSV data to your AppGini app

Importing CSV data to AppGini is pretty easy using the CSV import page in the admin area. However, if the CSV file is mal-formatted, it might be partially imported, or not at all. A pretty easy way to check and validate your CSV file if it’s not importing correctly is to upload it to CSVLint. […]

How to hide columns in table view based on user group?

I got a question from an AppGini user on how to hide specific columns in the table view based on the user group. This blog post explains how to do this through hooks. As an example, we’ll modify the orders table of the Northwind demo to hide the ‘Customer’ column for ‘Suppliers’ and ‘anonymous’ groups, […]

Overwriting AppGini functions, allowing admin group members to access the admin area

You might already know that AppGini applications can be extended through hooks. Hooks allow you to intercept certain events, like when a user submits a new record to be inserted into a table, or when a record has been updated, .. etc. The great benefit of using hooks is that you write them once, and […]

Moving an AppGini application to a new server

So, you have an AppGini-generated application that is up and running on your server. You then decided you want to move it to a new server. May be because you found a better hosting service, or you’re upgrading the server, or for any other reason. This is a simple checklist of the steps you should […]

Make it mandatory for new users to agree to terms and conditions before signing up

I got a question from an AppGini user on how to make it a requirement for users to check an ‘I agree’ box when they sign up to AppGini — possibly as part of GDPR compliance, or to agree to some other terms and conditions. We do plan to add support for this as part […]

Displaying count of child records on the tab title

AppGini supports displaying a list of child records in the detail view of the parent record. For example, here is the detail view of an employee record from the online Northwind demo: (Ignore the weird cartoons for now!) So … It would be nice if the count of subordinates is displayed on the ‘Subordinates’ tab, […]

Retrieve a list of users who haven’t made any activity in the last x months

I just got an interesting question from an AppGini user: Is there an SQL query that I can run manually in PhpMyAdmin that will show me a list of all users that haven’t logged into AppGini for the last 6 months please? Even if it is using one of the date fields in the membership_users […]

Hiding the nicedit component from a page

AppGini uses nicedit Javascript component for displaying rich text areas, where users can enter formatted input. You might wish to hide/show the rich editor in an AppGini page, or in one of your custom pages. This can be done using JavaScript code. To hide nicedit components in a page:

To show nicedit components:

[…]