MediaViki:Get-my-ip.js

Qeyd: Dəyişiklikləri yayımladıqdan sonra etdiyiniz dəyişikliklərin görünməsi üçün brauzerinizin keşinin təmizlənməsi lazım ola bilər.

  • Firefox / Safari: Reload düyməsinə basılı tutarkən Shift düyməsinə basın, və ya Ctrl+F5 və ya Ctrl+R (Mac üçün ⌘-R )
  • Google Chrome: Ctrl-Shift-R (Mac üçün ⌘-Shift-R)
  • Edge: Ctrl düyməsini basılı tutarkən Refresh düyməsinə basın, və ya sadəcə Ctrl+F5.
mw.hook( "wikipage.content" ).add( function( element ) {
    element.find( ".get-my-ip-hide" ).hide();
    mw.loader.using( "mediawiki.util", function() {
        $.get( mw.util.wikiScript( "api"), {
            "action": "query",
            "meta": "userinfo",
            "callback": "",
            "format": "json",
            "formatversion": "2"
        } ).then( function ( data ) {
            if( data.substring( 0, 5 ) === "/**/(" ) {
                var json = JSON.parse( data.substring( 5, data.length - 1 ) );
                if( json && json.query && json.query.userinfo && json.query.userinfo.name && json.query.userinfo.anon ) {
                    element.find( ".get-my-ip-target" ).text( json.query.userinfo.name );
                } else {
                    element.find( ".get-my-ip-target" ).text( "ERROR" );
                    console.error( "Get-my-ip.js: ERROR - malformed API response detected. Response: ", json );
                }
            } else {
                element.find( ".get-my-ip-target" ).text( "ERROR" );
                console.error( "Get-my-ip.js: ERROR - API response had no opening comment. Response: ", data );
            }
        } );
    } );
} );