Custom Nav-Links: Find TableGroup-index by table name

You probably know the possibility of adding your own links to the menus. A small disadvantage is that you have to give the target menu as a number (index of the menu). However, the number varies depending on user rights. Wouldn’t it be nice to have the index determined automatically? Here I show a small PHP function for this. Custom Menu Items According to the specs you can add custom nav-links by adding array items to the $navLinks array in hooks/links-navmenu.php. The setting ‘table_group’ => 1 causes the new menu entry to be inserted in the second menu, which is …

Idea: Inject Child-Records into Table View

This idea came into my mind when I wanted to show additional information for records right inside the table view: The toggle-button opens a panel below the record, showing all configured subtables. This renders sub-tables for all configured tables right inside the table view just below each recod: I can realize this by configuring Children-Records in my AppGini project as usual… …and by adding a few lines of code to my hooks/TABLENAME-tv.js… See it in action This has to be tested more accurately. I consider adding it to some future version of AppGini Helper Javascript Library if there is more …

Upcoming: Calculated fields on client side

Documentation has moved here Sometimes there is need for automatically calculating values based on other values. Yes, we can use calculated fields (SQL) on serverside to do so. In some cases I’d like to calculate and show already on client side in Detail View. Next version of our AppGini Helper Javascript Library will have simple functions for auto-calculating values of fields based on values of other fields while editing. Please note The features shown here will be part of next version of AppGiniHelper Javascript Library, not current version. Next version will be published in 2022. Check out this sample project: …

Convert input into Calculator

I often use numeric fields for prices, taxes, etc. And often I use the Windows Calculator for side-calculations, for example, for converting from net to gross, from gross to net, for calculating VAT or for calculating discounts. With my new AppGini Calculator Component I am able to run side-calculations directly in my AppGini Detail View Form. Example Take a look at this part of my Orders Detail View. There is a subtotal field which is just numeric input by default. Parameter subtotal is the name of the field. After reloading the page there is a button now which will will …

Protect input fields against accidental overwriting

For the project I have already mentioned here and here, a barcode scanner is used for various tasks. If the input cursor is not in a search field, but in an input field, then the value of the field is overwritten by the scanned value or appended to the existing value. Sometimes this is on purpose, for example when creating a new record and assigning a Barcode to it. Most of the times overwriting an existing value by scanning a Barcode would cause data loss on save. To avoid this I have implemented a write protection for <input />-fields. When …

Notify other users about changes using “Toasts”

I programmed this feature for the same project, which was already briefly described here. It’s about physically sending files and tracking them via QR code. Since this project involves working across multiple facilities, I was looking for a way to notify employees at different locations of changes to a record without interrupting work too much. We all know the so-called “toast” notifications. I use these for this purpose. There are many javascript libraries for this. I decided on this one, which maps what I need for this: Toastr Detail View Suppose we are working on a data set. At the …

Autohide children-tabs, show on hover

If you, like me, like to make the most of the available space, then maybe this idea is something for you. Tracking Software In a small project, any file* can be sent (by delivery service) from one location to another location of the same organization and tracked using a QR code. * This project is all about physical document files, file-folders or boxes full of documents like court-files/court-records, which sometimes have to be physically sent to a different place. It is not about digital files. As a result, everyone involved across locations knows where which file is at any given …

Highlight (Showcase/Idea): Tile View

In most data-centric scenarios the tabular view is very suitable. There are use cases where I would like to have a tiled view. Even better would be if the user could choose. For some time now I have been programming something like this as an extension to AppGini. This is the current state I would like to show you. Please give me feedback what you think and if you are interested in such an extension. Card contents In this tile view i don’t want to see all columns, but only certain data. I also want to modify the display, for …

Highlight: Styled buttons and additional buttons in children tab of detail view

Today I would like to present an idea that I can definitely use in my own projects: additional buttons in children tab tables. Yes, buttons for the tables at the bottom of detail views. Problem I don’t know about you, folks, but I personally don’t really like the button to open a child record in a modal window especially for UI and UX reasons. The button is differently styled than other buttons and is not configurable. Furthermore, there are always situations in which I would like to open the record NOT in modal dialog, but in the same window. I …

Highlight: WordPress integration

For an upcoming project we plan to integrate data from an AppGini application into a WordPress page. I am currently creating a prototype to determine the feasibility. Components On the one hand, we need a configurable WordPress plugin that retrieves the data. On the other hand we need a counterpart on AppGini side, which provides the data. WordPress output This is what the first results look like. Please note that I have not made the result list prettier yet. More CSS styling is still required here. It is just the first draft: This is a WordPress installation on localhost. The …