Macrotone Blogs

Macrotone blogs upon Joomla, our products and other matters.

Blogs upon Company products and events.

IP Mapping and Google Maps

We have recently been notified of a problem where the Maps generated by our IP Mapping using the Google Maps API were never completing.

Viewing the Java console log we could see that there were reported problems as follows:

Blocked loading mixed active content "http://maps.googleapis.com/maps/api/js?v=3&key=xxxxxxxxxxxxxxxxxxx"[Learn More] https://www.zzzzzzzz.com/ip-maps-and-visitors">ip-maps-and-visitors
JQMIGRATE: Migrate is installed, version 1.4.1 https://d2sznybf8qa7e0.cloudfront.net/media/jui/js/jquery-migrate.min.js:2:542">jquery-migrate.min.js:2:542
Blocked loading mixed active content "http://maps.googleapis.com/maps/api/js?v=3&key=xxxxxxxxxxxxx"[Learn More] https://www.zzzzzzzz/ip-maps-and-visitors">ip-maps-and-visitors
Loading failed for the <script> with source “http://maps.googleapis.com/maps/api/js?v=3&key=xxxxxxxxxxxxx”. https://www.zzzzzzzz.com/ip-maps-and-visitors:61:1">ip-maps-and-visitors:61:1
 ReferenceError: google is not defined[Learn More] https://www.zzzzzzzz.com/ip-maps-and-visitors:94:11">ip-maps-and-visitors:94:11
 
Where xxxxxxxx is the specified API key, and zzzzzzzz is the web site which reported the problem, which we have masked for security problems.
 
This seemed to be a situation of a site using https yet the code still using http for the internal addresses, and further investigation revealed that this was indeed the case.

However in looking further we discovered a few further interesting aspects of the use of the Maps API which are worthy of mentioning.

The first is that in line with many cloud computing providers, the Google Maps API moved to a pay-as-you-go pricing structure on 11th June 2018.

The newly-named Google Maps Platform was brought under the Google Cloud umbrella and consists of three core products: Maps (for delivering customised dynamic maps, Street Views and 360° views), Routes (directions and traffic) and Places (location names, addresses, reviews etc). Each has its own pricing structure.

More importantly the new pricing strategy employed by Google for their Maps Platform is a freemium one – all users get to make $200-worth of API calls for free each month.  Thjs means that one has to use an API Key and register a billing account, even if you never are going to pay.  Even if your usage falls well within the free $200 credit, you still have to create an account and provide Google with billing details to keep using the APIs.  It should be possible to set up a usage cap, but we have been unable to do this yet, until the 'free' time expires.

It is also important to add some restriction on the API key to secure it. We found this web page How to Fix “This page didn’t load Google Maps correctly” Error.

This proved very useful in setting up an API Key, although we did encounter some problems setting up the HTTP referrers, in getting them to 'take'.

The fix involved us modifying the code in two php files located in the Jooma/modules/mod_ipmapping_mapper directory. These files named 'mod_ipmapping_mapper.php' and 'minify_js.php', were modified to change the internal http prefix to https and this resolved the coding problem.   The latter file is probably the more important to change. The official fix will be included in the next schedued release.

Goodbye 2015, Hello 2016

roadmap

The year 2015 is now gone and it was time to look at how well we met our 2015 Roadmap

We set out 5 specific items that we wished to address as follows:

  • New component release (or two) based upon in-house Joomla developments.
    • 100% We think we achieved this by releasing both Rialto: our Certified Advertisement component and Kbase: our Knowledge base component
  • On-going development of components adding new features/improvements as identified.
    • 100% We continued to release updates of our components throughout the year, so consider this a success as well..
  • Content & layout on Macrotone Consulting  website needs review, fix typos, better layout, etc.
    • 100% Using our Kbase component we restructured our web site articles to use the new component. That is not to say there is not more that could have been achieved but overall it was successful.
  • Update our JED entries reflecting the new format.
    • 0% This one we still have to achieve, so we will carry this one over to the new year. 
  • Remove any component releases, and code in existing components not specifically for Joomla 3, as Joomla 2x is no longer supported.
    • 75% Partial as a number of our customers continue to use Joomla 2.5 which made it difficult to remove ‘old’ code. However most have been updated and the remainder will be completed in the next few months.  Joomla 2.5 is of course 12 months out of support so it is not unreasonable to not be able to support it any longer.

So we hope to achieve the following in 2016

  • New component release based upon current in-house Joomla developments.
  • On-going development of components adding new features/improvements as identified.
  • Update our JED entries reflecting the new format.
  • Complete removal of component releases, and code in existing components not specifically for Joomla 3, as Joomla 2x is no longer supported.
  • Joomla 3.5 supported component versions.
Go To Top

Joomla! Debug Console

Session

Profile Information

Memory Usage

Database Queries