Plugin Directory

Changeset 1343467


Ignore:
Timestamp:
02/04/2016 07:21:02 PM (10 years ago)
Author:
mystat
Message:

Added new beta version 3.4

Location:
wp-mystat
Files:
50 added
5 edited

Legend:

Unmodified
Added
Removed
  • wp-mystat/tags/3.3/lib/geolocation.class.php

    r1334409 r1343467  
    373373   * @var array
    374374   */
    375   private static $columns = [
    376       self::COUNTRY_CODE         => [8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8],
    377       self::COUNTRY_NAME         => [8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8],
    378       self::REGION_NAME          => [0, 0, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12],
    379       self::CITY_NAME            => [0, 0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16],
    380       self::LATITUDE             => [0, 0, 0, 0, 20, 20, 0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20],
    381       self::LONGITUDE            => [0, 0, 0, 0, 24, 24, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24],
    382       self::ISP                  => [0, 12, 0, 20, 0, 28, 20, 28, 0, 32, 0, 36, 0, 36, 0, 36, 0, 36, 28, 36, 0, 36, 28, 36],
    383       self::DOMAIN_NAME          => [0, 0, 0, 0, 0, 0, 24, 32, 0, 36, 0, 40, 0, 40, 0, 40, 0, 40, 32, 40, 0, 40, 32, 40],
    384       self::ZIP_CODE             => [0, 0, 0, 0, 0, 0, 0, 0, 28, 28, 28, 28, 0, 28, 28, 28, 0, 28, 0, 28, 28, 28, 0, 28],
    385       self::TIME_ZONE            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 28, 32, 32, 32, 28, 32, 0, 32, 32, 32, 0, 32],
    386       self::NET_SPEED            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 44, 0, 44, 32, 44, 0, 44, 0, 44, 0, 44],
    387       self::IDD_CODE             => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 48, 0, 48, 0, 48, 36, 48, 0, 48],
    388       self::AREA_CODE            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 52, 0, 52, 0, 52, 40, 52, 0, 52],
    389       self::WEATHER_STATION_CODE => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 56, 0, 56, 0, 56, 0, 56],
    390       self::WEATHER_STATION_NAME => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 60, 0, 60, 0, 60, 0, 60],
    391       self::MCC                  => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 64, 0, 64, 36, 64],
    392       self::MNC                  => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 68, 0, 68, 40, 68],
    393       self::MOBILE_CARRIER_NAME  => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 72, 0, 72, 44, 72],
    394       self::ELEVATION            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 76, 0, 76],
    395       self::USAGE_TYPE           => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 80],
    396   ];
     375  private static $columns = Array(
     376      self::COUNTRY_CODE         => Array(8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8),
     377      self::COUNTRY_NAME         => Array(8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8),
     378      self::REGION_NAME          => Array(0, 0, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12),
     379      self::CITY_NAME            => Array(0, 0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16),
     380      self::LATITUDE             => Array(0, 0, 0, 0, 20, 20, 0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20),
     381      self::LONGITUDE            => Array(0, 0, 0, 0, 24, 24, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24),
     382      self::ISP                  => Array(0, 12, 0, 20, 0, 28, 20, 28, 0, 32, 0, 36, 0, 36, 0, 36, 0, 36, 28, 36, 0, 36, 28, 36),
     383      self::DOMAIN_NAME          => Array(0, 0, 0, 0, 0, 0, 24, 32, 0, 36, 0, 40, 0, 40, 0, 40, 0, 40, 32, 40, 0, 40, 32, 40),
     384      self::ZIP_CODE             => Array(0, 0, 0, 0, 0, 0, 0, 0, 28, 28, 28, 28, 0, 28, 28, 28, 0, 28, 0, 28, 28, 28, 0, 28),
     385      self::TIME_ZONE            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 28, 32, 32, 32, 28, 32, 0, 32, 32, 32, 0, 32),
     386      self::NET_SPEED            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 44, 0, 44, 32, 44, 0, 44, 0, 44, 0, 44),
     387      self::IDD_CODE             => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 48, 0, 48, 0, 48, 36, 48, 0, 48),
     388      self::AREA_CODE            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 52, 0, 52, 0, 52, 40, 52, 0, 52),
     389      self::WEATHER_STATION_CODE => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 56, 0, 56, 0, 56, 0, 56),
     390      self::WEATHER_STATION_NAME => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 60, 0, 60, 0, 60, 0, 60),
     391      self::MCC                  => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 64, 0, 64, 36, 64),
     392      self::MNC                  => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 68, 0, 68, 40, 68),
     393      self::MOBILE_CARRIER_NAME  => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 72, 0, 72, 44, 72),
     394      self::ELEVATION            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 76, 0, 76),
     395      self::USAGE_TYPE           => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 80),
     396  );
    397397
    398398  /**
     
    403403   * @var array
    404404   */
    405   private static $names = [
     405  private static $names = Array(
    406406      self::COUNTRY_CODE         => 'countryCode',
    407407      self::COUNTRY_NAME         => 'countryName',
     
    427427      self::IP_VERSION           => 'ipVersion',
    428428      self::IP_NUMBER            => 'ipNumber',
    429   ];
     429  );
    430430
    431431  /**
     
    434434   * @var array
    435435   */
    436   private static $databases = [
     436  private static $databases = Array(
    437437      // IPv4 databases
    438438      'IP-COUNTRY-REGION-CITY-LATITUDE-LONGITUDE-ZIPCODE-TIMEZONE-ISP-DOMAIN-NETSPEED-AREACODE-WEATHER-MOBILE-ELEVATION-USAGETYPE',
     
    485485      'IPV6-COUNTRY-ISP',
    486486      'IPV6-COUNTRY',
    487   ];
     487  );
    488488
    489489  /**
     
    494494   * @var array
    495495   */
    496   private static $buffer = [];
     496  private static $buffer = Array();
    497497
    498498  /**
     
    560560   * @var array
    561561   */
    562   private $columnWidth = [];
     562  private $columnWidth = Array();
    563563
    564564  /**
     
    568568   * @var array
    569569   */
    570   private $offset = [];
     570  private $offset = Array();
    571571
    572572  /**
     
    576576   * @var array
    577577   */
    578   private $ipCount = [];
     578  private $ipCount = Array();
    579579
    580580  /**
     
    584584   * @var array
    585585   */
    586   private $ipBase = [];
     586  private $ipBase = Array();
    587587
    588588  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     
    951951  private static function ipVersionAndNumber($ip) {
    952952    if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {
    953       return [4, sprintf('%u', ip2long($ip))];
     953      return Array(4, sprintf('%u', ip2long($ip)));
    954954    } elseif (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {
    955955      $result = 0;
     
    959959      }
    960960
    961       return [6, $result];
     961      return Array(6, $result);
    962962    } else {
    963963      // Invalid IP address, return falses
    964       return [false, false];
     964      return Array(false, false);
    965965    }
    966966  }
     
    10461046  private function readFloat($pos) {
    10471047    // Unpack a float's size worth of data
    1048     return unpack('f', $this->read($pos - 1, self::$floatSize))[1];
     1048    $var = unpack('f', $this->read($pos - 1, self::$floatSize));
     1049    return $var[1];
    10491050  }
    10501051
     
    10701071  private function readWord($pos) {
    10711072    // Unpack a long's worth of data
    1072     return self::wrap32(unpack('V', $this->read($pos - 1, 4))[1]);
     1073    $var = unpack('V', $this->read($pos - 1, 4));
     1074    return self::wrap32($var[1]);
    10731075  }
    10741076
     
    10821084  private function readByte($pos) {
    10831085    // Unpack a byte's worth of data
    1084     return self::wrap8(unpack('C', $this->read($pos - 1, 1))[1]);
     1086    $var = unpack('C', $this->read($pos - 1, 1));
     1087    return self::wrap8($var[1]);
    10851088  }
    10861089
     
    11131116    }
    11141117
    1115     return [$countryName, $countryCode];
     1118    return Array($countryName, $countryCode);
    11161119  }
    11171120
     
    11791182      $longitude = $this->readFloat($pointer + self::$columns[self::LONGITUDE][$this->type]);
    11801183    }
    1181     return [$latitude, $longitude];
     1184    return Array($latitude, $longitude);
    11821185  }
    11831186
     
    13081311      $areaCode = $this->readString($pointer + self::$columns[self::AREA_CODE][$this->type]);
    13091312    }
    1310     return [$iddCode, $areaCode];
     1313    return Array($iddCode, $areaCode);
    13111314  }
    13121315
     
    13321335      $weatherStationCode = $this->readString($pointer + self::$columns[self::WEATHER_STATION_CODE][$this->type]);
    13331336    }
    1334     return [$weatherStationName, $weatherStationCode];
     1337    return Array($weatherStationName, $weatherStationCode);
    13351338  }
    13361339
     
    13591362      $mobileCarrierName = $this->readString($pointer + self::$columns[self::MOBILE_CARRIER_NAME][$this->type]);
    13601363    }
    1361     return [$mcc, $mnc, $mobileCarrierName];
     1364    return Array($mcc, $mnc, $mobileCarrierName);
    13621365  }
    13631366
     
    15101513            }));
    15111514    if ($asNames) {
    1512       $return = [];
     1515      $return = Array();
    15131516      foreach ($result as $field) {
    15141517        $return[] = self::$names[$field];
     
    15781581
    15791582    // maintain a list of already retrieved fields to avoid doing it twice
    1580     $done    = [
     1583    $done    = Array(
    15811584        self::COUNTRY_CODE                => false,
    15821585        self::COUNTRY_NAME                => false,
     
    16091612        self::IP_VERSION                  => false,
    16101613        self::IP_NUMBER                   => false,
    1611     ];
     1614    );
    16121615    // results are empty to begin with
    1613     $results = [];
     1616    $results = Array();
    16141617
    16151618    // treat each field in turn
     
    16631666        case self::COUNTRY_CODE:
    16641667          if (!$done[self::COUNTRY_CODE]) {
    1665             $results[self::COUNTRY_CODE] = $this->readCountryNameAndCode($pointer)[1];
     1668            $var = $this->readCountryNameAndCode($pointer);
     1669            $results[self::COUNTRY_CODE] = $var[1];
    16661670            $done[self::COUNTRY_CODE]    = true;
    16671671          }
     
    16691673        case self::COUNTRY_NAME:
    16701674          if (!$done[self::COUNTRY_CODE]) {
    1671             $results[self::COUNTRY_CODE] = $this->readCountryNameAndCode($pointer)[0];
     1675            $var = $this->readCountryNameAndCode($pointer);
     1676            $results[self::COUNTRY_CODE] = $var[0];
    16721677            $done[self::COUNTRY_CODE]    = true;
    16731678          }
     
    16871692        case self::LATITUDE:
    16881693          if (!$done[self::LATITUDE]) {
    1689             $results[self::LATITUDE] = $this->readLatitudeAndLongitude($pointer)[0];
     1694            $var = $this->readLatitudeAndLongitude($pointer);
     1695            $results[self::LATITUDE] = $var[0];
    16901696            $done[self::LATITUDE]    = true;
    16911697          }
     
    16931699        case self::LONGITUDE:
    16941700          if (!$done[self::LONGITUDE]) {
    1695             $results[self::LONGITUDE] = $this->readLatitudeAndLongitude($pointer)[1];
     1701            $var = $this->readLatitudeAndLongitude($pointer);
     1702            $results[self::LONGITUDE] = $var[1];
    16961703            $done[self::LONGITUDE]    = true;
    16971704          }
     
    17291736        case self::IDD_CODE:
    17301737          if (!$done[self::IDD_CODE]) {
    1731             $results[self::IDD_CODE] = $this->readIddAndAreaCodes($pointer)[0];
     1738            $var = $this->readIddAndAreaCodes($pointer);
     1739            $results[self::IDD_CODE] = $var[0];
    17321740            $done[self::IDD_CODE]    = true;
    17331741          }
     
    17351743        case self::AREA_CODE:
    17361744          if (!$done[self::AREA_CODE]) {
    1737             $results[self::AREA_CODE] = $this->readIddAndAreaCodes($pointer)[1];
     1745            $var = $this->readIddAndAreaCodes($pointer);
     1746            $results[self::AREA_CODE] = $var[1];
    17381747            $done[self::AREA_CODE]    = true;
    17391748          }
     
    17411750        case self::WEATHER_STATION_CODE:
    17421751          if (!$done[self::WEATHER_STATION_CODE]) {
    1743             $results[self::WEATHER_STATION_CODE] = $this->readWeatherStationNameAndCode($pointer)[1];
     1752            $var = $this->readWeatherStationNameAndCode($pointer);
     1753            $results[self::WEATHER_STATION_CODE] = $var[1];
    17441754            $done[self::WEATHER_STATION_CODE]    = true;
    17451755          }
     
    17471757        case self::WEATHER_STATION_NAME:
    17481758          if (!$done[self::WEATHER_STATION_NAME]) {
    1749             $results[self::WEATHER_STATION_NAME] = $this->readWeatherStationNameAndCode($pointer)[0];
     1759            $var = $this->readWeatherStationNameAndCode($pointer);
     1760            $results[self::WEATHER_STATION_NAME] = $var[0];
    17501761            $done[self::WEATHER_STATION_NAME]    = true;
    17511762          }
     
    17531764        case self::MCC:
    17541765          if (!$done[self::MCC]) {
    1755             $results[self::MCC] = $this->readMccMncAndMobileCarrierName($pointer)[0];
     1766            $var = $this->readMccMncAndMobileCarrierName($pointer);
     1767            $results[self::MCC] = $var[0];
    17561768            $done[self::MCC]    = true;
    17571769          }
     
    17591771        case self::MNC:
    17601772          if (!$done[self::MNC]) {
    1761             $results[self::MNC] = $this->readMccMncAndMobileCarrierName($pointer)[1];
     1773            $var = $this->readMccMncAndMobileCarrierName($pointer);
     1774            $results[self::MNC] = $var[1];
    17621775            $done[self::MNC]    = true;
    17631776          }
     
    17651778        case self::MOBILE_CARRIER_NAME:
    17661779          if (!$done[self::MOBILE_CARRIER_NAME]) {
    1767             $results[self::MOBILE_CARRIER_NAME] = $this->readMccMncAndMobileCarrierName($pointer)[2];
     1780            $var = $this->readMccMncAndMobileCarrierName($pointer);
     1781            $results[self::MOBILE_CARRIER_NAME] = $var[2];
    17681782            $done[self::MOBILE_CARRIER_NAME]    = true;
    17691783          }
     
    18111825      if ($asNamed) {
    18121826        // apply translations if needed
    1813         $return = [];
     1827        $return = Array();
    18141828        foreach ($results as $key => $val) {
    18151829          if (array_key_exists($key, static::$names)) {
     
    18251839    } else {
    18261840      // return a single value
    1827       return array_values($results)[0];
     1841      $var = array_values($results);
     1842      return $var[0];
    18281843    }
    18291844  }
  • wp-mystat/trunk/driver/wordpress.class.php

    r1334409 r1343467  
    7070    add_filter('manage_sites_action_links', Array($this,'addMenuInSiteListFull'),10,2);
    7171    add_action('admin_bar_menu',Array($this,'addMenuInBar'),20);
     72    $dir = plugins_url('',dirname(__FILE__));
     73    $dir = preg_split('/\//',trim($dir));
     74    $dir = array_pop($dir);
     75    add_action('in_plugin_update_message-'.$dir.'/mystat.php',Array($this,'updateInPluginList'));
    7276  }
    7377
     
    470474  }
    471475
    472   public function installPlugin($networkwide){
     476  public function installPlugin($networkwide=false){
    473477    global $wpdb;
    474478    if(function_exists('is_multisite') && is_multisite()){
     
    562566    $this->context->updateDefinition(false);
    563567    if($redirect){
    564       wp_safe_redirect($this->getRedirectUri());
     568      if(!($error = $this->context->isIntallCorrect(false) and sizeof($error)>0)){
     569        wp_safe_redirect($this->getRedirectUri());
     570      }
    565571    }
    566572  }
     
    630636  public function addMenu(){
    631637    add_menu_page($this->__('My Statistics'),$this->__('My Statistics'),$this->getOption('mystataccess','update_plugins'),'statistics.html',Array($this,'setOpenPage'),'dashicons-chart-bar','2.000123');
     638  }
     639
     640  public function updateInPluginList(){
     641    echo '<div id="mystat_up_div"></div><script>jQuery("#mystat_up_div").parent().children(".update-link").removeClass("update-link");</script>';
    632642  }
    633643
  • wp-mystat/trunk/index.php

    r1334409 r1343467  
    11<?php
    22if(!defined('MYSTAT_VERSION')){
    3   define('MYSTAT_VERSION','3.3');
     3  define('MYSTAT_VERSION','3.4b');
    44}
    55require_once(dirname(__FILE__).'/lib/mystat.class.php');
  • wp-mystat/trunk/lib/geolocation.class.php

    r1334409 r1343467  
    373373   * @var array
    374374   */
    375   private static $columns = [
    376       self::COUNTRY_CODE         => [8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8],
    377       self::COUNTRY_NAME         => [8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8],
    378       self::REGION_NAME          => [0, 0, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12],
    379       self::CITY_NAME            => [0, 0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16],
    380       self::LATITUDE             => [0, 0, 0, 0, 20, 20, 0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20],
    381       self::LONGITUDE            => [0, 0, 0, 0, 24, 24, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24],
    382       self::ISP                  => [0, 12, 0, 20, 0, 28, 20, 28, 0, 32, 0, 36, 0, 36, 0, 36, 0, 36, 28, 36, 0, 36, 28, 36],
    383       self::DOMAIN_NAME          => [0, 0, 0, 0, 0, 0, 24, 32, 0, 36, 0, 40, 0, 40, 0, 40, 0, 40, 32, 40, 0, 40, 32, 40],
    384       self::ZIP_CODE             => [0, 0, 0, 0, 0, 0, 0, 0, 28, 28, 28, 28, 0, 28, 28, 28, 0, 28, 0, 28, 28, 28, 0, 28],
    385       self::TIME_ZONE            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 28, 32, 32, 32, 28, 32, 0, 32, 32, 32, 0, 32],
    386       self::NET_SPEED            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 44, 0, 44, 32, 44, 0, 44, 0, 44, 0, 44],
    387       self::IDD_CODE             => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 48, 0, 48, 0, 48, 36, 48, 0, 48],
    388       self::AREA_CODE            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 52, 0, 52, 0, 52, 40, 52, 0, 52],
    389       self::WEATHER_STATION_CODE => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 56, 0, 56, 0, 56, 0, 56],
    390       self::WEATHER_STATION_NAME => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 60, 0, 60, 0, 60, 0, 60],
    391       self::MCC                  => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 64, 0, 64, 36, 64],
    392       self::MNC                  => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 68, 0, 68, 40, 68],
    393       self::MOBILE_CARRIER_NAME  => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 72, 0, 72, 44, 72],
    394       self::ELEVATION            => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 76, 0, 76],
    395       self::USAGE_TYPE           => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 80],
    396   ];
     375  private static $columns = Array(
     376      self::COUNTRY_CODE         => Array(8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8),
     377      self::COUNTRY_NAME         => Array(8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8),
     378      self::REGION_NAME          => Array(0, 0, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12),
     379      self::CITY_NAME            => Array(0, 0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16),
     380      self::LATITUDE             => Array(0, 0, 0, 0, 20, 20, 0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20),
     381      self::LONGITUDE            => Array(0, 0, 0, 0, 24, 24, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24),
     382      self::ISP                  => Array(0, 12, 0, 20, 0, 28, 20, 28, 0, 32, 0, 36, 0, 36, 0, 36, 0, 36, 28, 36, 0, 36, 28, 36),
     383      self::DOMAIN_NAME          => Array(0, 0, 0, 0, 0, 0, 24, 32, 0, 36, 0, 40, 0, 40, 0, 40, 0, 40, 32, 40, 0, 40, 32, 40),
     384      self::ZIP_CODE             => Array(0, 0, 0, 0, 0, 0, 0, 0, 28, 28, 28, 28, 0, 28, 28, 28, 0, 28, 0, 28, 28, 28, 0, 28),
     385      self::TIME_ZONE            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 28, 32, 32, 32, 28, 32, 0, 32, 32, 32, 0, 32),
     386      self::NET_SPEED            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 44, 0, 44, 32, 44, 0, 44, 0, 44, 0, 44),
     387      self::IDD_CODE             => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 48, 0, 48, 0, 48, 36, 48, 0, 48),
     388      self::AREA_CODE            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 52, 0, 52, 0, 52, 40, 52, 0, 52),
     389      self::WEATHER_STATION_CODE => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 56, 0, 56, 0, 56, 0, 56),
     390      self::WEATHER_STATION_NAME => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 60, 0, 60, 0, 60, 0, 60),
     391      self::MCC                  => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 64, 0, 64, 36, 64),
     392      self::MNC                  => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 68, 0, 68, 40, 68),
     393      self::MOBILE_CARRIER_NAME  => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 72, 0, 72, 44, 72),
     394      self::ELEVATION            => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 76, 0, 76),
     395      self::USAGE_TYPE           => Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 80),
     396  );
    397397
    398398  /**
     
    403403   * @var array
    404404   */
    405   private static $names = [
     405  private static $names = Array(
    406406      self::COUNTRY_CODE         => 'countryCode',
    407407      self::COUNTRY_NAME         => 'countryName',
     
    427427      self::IP_VERSION           => 'ipVersion',
    428428      self::IP_NUMBER            => 'ipNumber',
    429   ];
     429  );
    430430
    431431  /**
     
    434434   * @var array
    435435   */
    436   private static $databases = [
     436  private static $databases = Array(
    437437      // IPv4 databases
    438438      'IP-COUNTRY-REGION-CITY-LATITUDE-LONGITUDE-ZIPCODE-TIMEZONE-ISP-DOMAIN-NETSPEED-AREACODE-WEATHER-MOBILE-ELEVATION-USAGETYPE',
     
    485485      'IPV6-COUNTRY-ISP',
    486486      'IPV6-COUNTRY',
    487   ];
     487  );
    488488
    489489  /**
     
    494494   * @var array
    495495   */
    496   private static $buffer = [];
     496  private static $buffer = Array();
    497497
    498498  /**
     
    560560   * @var array
    561561   */
    562   private $columnWidth = [];
     562  private $columnWidth = Array();
    563563
    564564  /**
     
    568568   * @var array
    569569   */
    570   private $offset = [];
     570  private $offset = Array();
    571571
    572572  /**
     
    576576   * @var array
    577577   */
    578   private $ipCount = [];
     578  private $ipCount = Array();
    579579
    580580  /**
     
    584584   * @var array
    585585   */
    586   private $ipBase = [];
     586  private $ipBase = Array();
    587587
    588588  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     
    951951  private static function ipVersionAndNumber($ip) {
    952952    if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {
    953       return [4, sprintf('%u', ip2long($ip))];
     953      return Array(4, sprintf('%u', ip2long($ip)));
    954954    } elseif (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {
    955955      $result = 0;
     
    959959      }
    960960
    961       return [6, $result];
     961      return Array(6, $result);
    962962    } else {
    963963      // Invalid IP address, return falses
    964       return [false, false];
     964      return Array(false, false);
    965965    }
    966966  }
     
    10461046  private function readFloat($pos) {
    10471047    // Unpack a float's size worth of data
    1048     return unpack('f', $this->read($pos - 1, self::$floatSize))[1];
     1048    $var = unpack('f', $this->read($pos - 1, self::$floatSize));
     1049    return $var[1];
    10491050  }
    10501051
     
    10701071  private function readWord($pos) {
    10711072    // Unpack a long's worth of data
    1072     return self::wrap32(unpack('V', $this->read($pos - 1, 4))[1]);
     1073    $var = unpack('V', $this->read($pos - 1, 4));
     1074    return self::wrap32($var[1]);
    10731075  }
    10741076
     
    10821084  private function readByte($pos) {
    10831085    // Unpack a byte's worth of data
    1084     return self::wrap8(unpack('C', $this->read($pos - 1, 1))[1]);
     1086    $var = unpack('C', $this->read($pos - 1, 1));
     1087    return self::wrap8($var[1]);
    10851088  }
    10861089
     
    11131116    }
    11141117
    1115     return [$countryName, $countryCode];
     1118    return Array($countryName, $countryCode);
    11161119  }
    11171120
     
    11791182      $longitude = $this->readFloat($pointer + self::$columns[self::LONGITUDE][$this->type]);
    11801183    }
    1181     return [$latitude, $longitude];
     1184    return Array($latitude, $longitude);
    11821185  }
    11831186
     
    13081311      $areaCode = $this->readString($pointer + self::$columns[self::AREA_CODE][$this->type]);
    13091312    }
    1310     return [$iddCode, $areaCode];
     1313    return Array($iddCode, $areaCode);
    13111314  }
    13121315
     
    13321335      $weatherStationCode = $this->readString($pointer + self::$columns[self::WEATHER_STATION_CODE][$this->type]);
    13331336    }
    1334     return [$weatherStationName, $weatherStationCode];
     1337    return Array($weatherStationName, $weatherStationCode);
    13351338  }
    13361339
     
    13591362      $mobileCarrierName = $this->readString($pointer + self::$columns[self::MOBILE_CARRIER_NAME][$this->type]);
    13601363    }
    1361     return [$mcc, $mnc, $mobileCarrierName];
     1364    return Array($mcc, $mnc, $mobileCarrierName);
    13621365  }
    13631366
     
    15101513            }));
    15111514    if ($asNames) {
    1512       $return = [];
     1515      $return = Array();
    15131516      foreach ($result as $field) {
    15141517        $return[] = self::$names[$field];
     
    15781581
    15791582    // maintain a list of already retrieved fields to avoid doing it twice
    1580     $done    = [
     1583    $done    = Array(
    15811584        self::COUNTRY_CODE                => false,
    15821585        self::COUNTRY_NAME                => false,
     
    16091612        self::IP_VERSION                  => false,
    16101613        self::IP_NUMBER                   => false,
    1611     ];
     1614    );
    16121615    // results are empty to begin with
    1613     $results = [];
     1616    $results = Array();
    16141617
    16151618    // treat each field in turn
     
    16631666        case self::COUNTRY_CODE:
    16641667          if (!$done[self::COUNTRY_CODE]) {
    1665             $results[self::COUNTRY_CODE] = $this->readCountryNameAndCode($pointer)[1];
     1668            $var = $this->readCountryNameAndCode($pointer);
     1669            $results[self::COUNTRY_CODE] = $var[1];
    16661670            $done[self::COUNTRY_CODE]    = true;
    16671671          }
     
    16691673        case self::COUNTRY_NAME:
    16701674          if (!$done[self::COUNTRY_CODE]) {
    1671             $results[self::COUNTRY_CODE] = $this->readCountryNameAndCode($pointer)[0];
     1675            $var = $this->readCountryNameAndCode($pointer);
     1676            $results[self::COUNTRY_CODE] = $var[0];
    16721677            $done[self::COUNTRY_CODE]    = true;
    16731678          }
     
    16871692        case self::LATITUDE:
    16881693          if (!$done[self::LATITUDE]) {
    1689             $results[self::LATITUDE] = $this->readLatitudeAndLongitude($pointer)[0];
     1694            $var = $this->readLatitudeAndLongitude($pointer);
     1695            $results[self::LATITUDE] = $var[0];
    16901696            $done[self::LATITUDE]    = true;
    16911697          }
     
    16931699        case self::LONGITUDE:
    16941700          if (!$done[self::LONGITUDE]) {
    1695             $results[self::LONGITUDE] = $this->readLatitudeAndLongitude($pointer)[1];
     1701            $var = $this->readLatitudeAndLongitude($pointer);
     1702            $results[self::LONGITUDE] = $var[1];
    16961703            $done[self::LONGITUDE]    = true;
    16971704          }
     
    17291736        case self::IDD_CODE:
    17301737          if (!$done[self::IDD_CODE]) {
    1731             $results[self::IDD_CODE] = $this->readIddAndAreaCodes($pointer)[0];
     1738            $var = $this->readIddAndAreaCodes($pointer);
     1739            $results[self::IDD_CODE] = $var[0];
    17321740            $done[self::IDD_CODE]    = true;
    17331741          }
     
    17351743        case self::AREA_CODE:
    17361744          if (!$done[self::AREA_CODE]) {
    1737             $results[self::AREA_CODE] = $this->readIddAndAreaCodes($pointer)[1];
     1745            $var = $this->readIddAndAreaCodes($pointer);
     1746            $results[self::AREA_CODE] = $var[1];
    17381747            $done[self::AREA_CODE]    = true;
    17391748          }
     
    17411750        case self::WEATHER_STATION_CODE:
    17421751          if (!$done[self::WEATHER_STATION_CODE]) {
    1743             $results[self::WEATHER_STATION_CODE] = $this->readWeatherStationNameAndCode($pointer)[1];
     1752            $var = $this->readWeatherStationNameAndCode($pointer);
     1753            $results[self::WEATHER_STATION_CODE] = $var[1];
    17441754            $done[self::WEATHER_STATION_CODE]    = true;
    17451755          }
     
    17471757        case self::WEATHER_STATION_NAME:
    17481758          if (!$done[self::WEATHER_STATION_NAME]) {
    1749             $results[self::WEATHER_STATION_NAME] = $this->readWeatherStationNameAndCode($pointer)[0];
     1759            $var = $this->readWeatherStationNameAndCode($pointer);
     1760            $results[self::WEATHER_STATION_NAME] = $var[0];
    17501761            $done[self::WEATHER_STATION_NAME]    = true;
    17511762          }
     
    17531764        case self::MCC:
    17541765          if (!$done[self::MCC]) {
    1755             $results[self::MCC] = $this->readMccMncAndMobileCarrierName($pointer)[0];
     1766            $var = $this->readMccMncAndMobileCarrierName($pointer);
     1767            $results[self::MCC] = $var[0];
    17561768            $done[self::MCC]    = true;
    17571769          }
     
    17591771        case self::MNC:
    17601772          if (!$done[self::MNC]) {
    1761             $results[self::MNC] = $this->readMccMncAndMobileCarrierName($pointer)[1];
     1773            $var = $this->readMccMncAndMobileCarrierName($pointer);
     1774            $results[self::MNC] = $var[1];
    17621775            $done[self::MNC]    = true;
    17631776          }
     
    17651778        case self::MOBILE_CARRIER_NAME:
    17661779          if (!$done[self::MOBILE_CARRIER_NAME]) {
    1767             $results[self::MOBILE_CARRIER_NAME] = $this->readMccMncAndMobileCarrierName($pointer)[2];
     1780            $var = $this->readMccMncAndMobileCarrierName($pointer);
     1781            $results[self::MOBILE_CARRIER_NAME] = $var[2];
    17681782            $done[self::MOBILE_CARRIER_NAME]    = true;
    17691783          }
     
    18111825      if ($asNamed) {
    18121826        // apply translations if needed
    1813         $return = [];
     1827        $return = Array();
    18141828        foreach ($results as $key => $val) {
    18151829          if (array_key_exists($key, static::$names)) {
     
    18251839    } else {
    18261840      // return a single value
    1827       return array_values($results)[0];
     1841      $var = array_values($results);
     1842      return $var[0];
    18281843    }
    18291844  }
  • wp-mystat/trunk/mystat.php

    r1334409 r1343467  
    44Plugin URI: http://my-stat.com
    55Description: Site Visitor Statistics
    6 Version: 3.3
     6Version: 3.4b
    77Author: Smyshlaev Evgeniy
    88Author URI: http://hide.com.ua
Note: See TracChangeset for help on using the changeset viewer.