You are here

public static function Ip2locationBinDb::products in Smart IP 8.3

Same name and namespace in other branches
  1. 8.4 modules/smart_ip_ip2location_bin_db/src/Ip2locationBinDb.php \Drupal\smart_ip_ip2location_bin_db\Ip2locationBinDb::products()

IP2Location product code/name look-up table.

Parameters

string $version: Type of subscription: licensed or lite version.

string $edition: IP2Location product ID.

Return value

mixed Returns the product name if product code is supplied and return all products list if no product code.

2 calls to Ip2locationBinDb::products()
DatabaseFileUtility::getFilename in modules/smart_ip_ip2location_bin_db/src/DatabaseFileUtility.php
Get IP2Location binary database filename.
SmartIpEventSubscriber::formSettings in modules/smart_ip_ip2location_bin_db/src/EventSubscriber/SmartIpEventSubscriber.php
Add the form elements of this Smart IP data source to main admin settings page of Smart IP.

File

modules/smart_ip_ip2location_bin_db/src/Ip2locationBinDb.php, line 94
Contains \Drupal\smart_ip_ip2location_bin_db\Ip2locationBinDb.

Class

Ip2locationBinDb

Namespace

Drupal\smart_ip_ip2location_bin_db

Code

public static function products($version = self::LITE_VERSION, $edition = '') {
  if ($version == self::LINCENSED_VERSION) {
    $products = [
      'DB1' => 'Country',
      'DB2' => 'Country-ISP',
      'DB3' => 'Country-Region-City',
      'DB4' => 'Country-Region-City-ISP',
      'DB5' => 'Country-Region-City-Latitude-Longitude',
      'DB6' => 'Country-Region-City-Latitude-Longitude-ISP',
      'DB7' => 'Country-Region-City-ISP-Domain',
      'DB8' => 'Country-Region-City-Latitude-Longitude-ISP-Domain',
      'DB9' => 'Country-Region-City-Latitude-Longitude-ZIPCode',
      'DB10' => 'Country-Region-City-Latitude-Longitude-ZIPCode-ISP-Domain',
      'DB11' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone',
      'DB12' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-ISP-Domain',
      'DB13' => 'Country-Region-City-Latitude-Longitude-TimeZone-NetSpeed',
      'DB14' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-ISP-Domain-NetSpeed',
      'DB15' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-AreaCode',
      'DB16' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-ISP-Domain-NetSpeed-AreaCode',
      'DB17' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-NetSpeed-Weather',
      'DB18' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-ISP-Domain-NetSpeed-AreaCode-Weather',
      'DB19' => 'Country-Region-City-Latitude-Longitude-ISP-Domain-Mobile',
      'DB20' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-ISP-Domain-NetSpeed-AreaCode-Weather-Mobile',
      'DB21' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-AreaCode-Elevation',
      'DB22' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-ISP-Domain-NetSpeed-AreaCode-Weather-Mobile-Elevation',
      'DB23' => 'Country-Region-City-Latitude-Longitude-ISP-Domain-Mobile-UsageType',
      'DB24' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone-ISP-Domain-NetSpeed-AreaCode-Weather-Mobile-Elevation-UsageType',
    ];
  }
  else {
    $products = [
      'DB1' => 'Country',
      'DB3' => 'Country-Region-City',
      'DB5' => 'Country-Region-City-Latitude-Longitude',
      'DB9' => 'Country-Region-City-Latitude-Longitude-ZIPCode',
      'DB11' => 'Country-Region-City-Latitude-Longitude-ZIPCode-TimeZone',
    ];
  }
  if (!empty($edition)) {
    return $products[$edition];
  }
  else {
    return $products;
  }
}