kartik-v/yii2-ipinfo

An IP address information display widget for Yii 2.0 with country flag and geo position info.

Installs: 11 651

Dependents: 3

Suggesters: 0

Stars: 22

Watchers: 3

Forks: 12

Open Issues: 0

Type:yii2-extension

v2.0.2 2019-10-07 15:07 UTC

README

Stable Version Unstable Version License Total Downloads Monthly Downloads Daily Downloads

An IP address information display widget for Yii framework 2.0 with ability to display country flag and geo position info. This is based on the HTTP API from ip-api.com to parse IP address details. The plugin also uses the yii2-popover-x extension by Krajee and the yii2-httpclient yiisoft extension for fetching and displaying IP details via a popover, and the yii2-icons extension by Krajee for displaying the flag icons.

Features

  • Ability to display the flag for a IP address.
  • Implement Yii2 HTTP Client to process IP API info fetch. The 1.0 AJAX based API query will be eliminated and replaced with the Yii2 server based HTTP Client. This will ensure it works both for HTTPS and HTTP and also use yii2 caching.
  • Implement Yii2 Cache component to cache/store IP data. If Cache component is not defined no caching will be performed.
  • Implement Yii2 DetailView widget to render the IP Information Details table. The layout of attributes and formats can therefore be customized as per user need.
  • Ability to display geo position details for the IP address.
  • Ability to use your own API if needed
  • Ability to render IP details inline instead of popover.
  • Ability to configure fields rendered and also control the layout with templates.
  • Use yii2-popover-x extension features to control popover placements and styles.
  • Use flag icons from yii2-icons to render country wise high resolution flags of any size.
  • Uses Yii i18N translations to generate locale specific data.

Note: Check the composer.json for this extension's requirements and dependencies. Read this web tip /wiki on setting the minimum-stability settings for your application's composer.json.

Demo

You can see detailed documentation and examples on usage of the extension.

Installation

The preferred way to install this extension is through composer.

Note: Check the composer.json for this extension's requirements and dependencies. Read this web tip /wiki on setting the minimum-stability settings for your application's composer.json.

Either run

$ php composer.phar require kartik-v/yii2-ipinfo "@dev"

or add

"kartik-v/yii2-ipinfo": "@dev"

to the require section of your composer.json file.

Usage

IpInfo

use kartik\ipinfo\IpInfo;

echo IpInfo::widget([
    'ip' => '12.23.155.123',
    /**
     * optionally setup more options
     * refer docs for all options
     */
    // 'showFlag' => true,
    // 'showPopover' => true,
    // 'popoverOptions' => [],
    // 'flagWrapperOptions' => []
    // 'flagOptions' => []
]);

License

yii2-ipinfo is released under the BSD-3-Clause License. See the bundled LICENSE.md for details.