We have discussed the topic of making a beautiful login page in this post. What if we can take it to the next level automatically changing the login page background once a day? It is easier than you think. We are going to use of Reddit forums where people post pictures of our beautiful planet. There are communities there for every taste: cute animal pictures, wallpapers, abandoned buildings, astronomy pictures so you can find something that fits your website theme. Here is how the sample…Continue Reading “Dynamic login page background”

Master-details is a very useful feature but the details table may clutter the UI. We have seen projects where people have more than a dozen details tables and it would be useful if we can hide some that are not relevant to the current master table record.

Let us take a look at this completely artificial example. A typical setup with Orders table as a master and Order Details, Employees, and Customers as details. We would like to hide the Employees table tab when OrderID is more than 10300.

Continue Reading "Hiding details table tab on the fly"

A PHPRunner application can use the browser Geolocation API to request the user’s current latitude and longitude. Those coordinates can then be passed to the server and used for features such as nearby results, maps, service-area checks or location-aware filtering.

The basic flow is:

  1. Request the user’s location in JavaScript.
  2. Read the latitude and longitude returned by the browser.
  3. Send those values to the server.
  4. Store or use the coordinates in the PHPRunner application.

Before you start

Browser geolocation requires the user’s permission. The browser may display a prompt asking whether the user wants to share their location, and your application should continue to work if permission is denied.

Geolocation also requires a secure context. In production, the application should be served over HTTPS. Browsers generally allow geolocation on localhost for development as well.

The accuracy of the returned coordinates depends on the user’s device and environment. A phone with GPS may provide a very accurate location, while a desktop computer may return a less precise estimate based on Wi-Fi or other available information.

Continue Reading "Get a User’s Geolocation in a PHPRunner Web Application"

In the current world situation, all countries track new and existing cases of COVID-19. Some countries provide an API to access the latest data. Here is an API provided by Hong Kong’s department of health. Today we will learn how to display this data in our own application. Applies to version 10.4 of PHPRunner, ASPRunner.NET and ASPRunnerPro.

Creating the REST View

1. Lets see how we can display data for March 2020. We added a filter for ‘As of date’ field to show data that contains ’03/2020′ in this field (they use UK date format). Click ‘Get result’ and we will see both API query string and the data it returns.

2. Now, lets take a look at the URL:

https://api.data.gov.hk/v2/filter?q=%7B%22resource%22%3A%22http%3A%2F%2Fwww.chp.gov.hk%2Ffiles%2Fmisc%2Flatest_situation_of_reported_cases_wuhan_eng.csv%22%2C%22section%22%3A1%2C%22format%22%3A%22json%22%2C%22filters%22%3A%5B%5B1%2C%22ct%22%2C%5B%2203%2F2020%22%5D%5D%5D%7D

We can paste it to the web browser and get the same results in JSON fomat. Now it is the time to create a REST connection. The https://api.data.gov.hk/v2/ part of the URL is the main connection URL.

Continue Reading "Working with third-party REST API"

Version 10.4 is here!

Trial version download links

This update is free of charge for those who purchased or upgraded less than one year ago. To find new version download links and registration keys proceed to the control panel and find it under ‘My purchases’. There will be a ‘Reg info’ link next to your latest purchase.

The two most important features in this update are our own REST API and also the consumption of data, provided by third-party APIs. Consumption of third party data turned out to be the most difficult task and took more time than we expected, hence the delay. On the plus side, we now able to work with any data, not just something that comes as a result of the SQL query. And this also helped us implement a few minor but frequently requested features like OR search or data filtering in charts.

Continue Reading "Version 10.4"

Autofill is a handy feature that allows quickly fill multiple fields after lookup wizard selection. However, it only works based on a single lookup wizard selection. In this article, we will show a more advanced example of implementing a custom Autofill based on two field selection.

field1 – first lookup wizard
field2 – second lookup wizard
field3 – field to be filled after field2 selection
table1 – lookup table where autofill data is coming from

Create a field event based on ‘editing’ for field2.

Continue Reading "Autofill based on two fields selection"

When we added a new record and returned back to the List page that new record may not be clearly visible on the page. Depending on what page we on, what sort or is applied, how many records are on the page – we may simply be on the wrong page. This can be useful when, for instance, you are transferring a large amount of data from paper to the database and this kind of visual indication can be helpful to keep track of the process.

In this article, we will show you a technique that does the following. After the new record is added we find out which page it belongs to, redirect the user to that page, highlight the record and also scroll the page if the record is below the fold.

Continue Reading "Making new record visible on the List page"