Changes

Jump to navigation Jump to search
no edit summary
Line 1: Line 1:  +
// Modified from [https://www.wikidata.org/wiki/MediaWiki:Gadget-EasyQuery.js]
 +
 
$( function () {
 
$( function () {
 
     if ( mw.config.get( 'wgNamespaceNumber' ) !== 120 ) {
 
     if ( mw.config.get( 'wgNamespaceNumber' ) !== 120 ) {
Line 5: Line 7:     
     function createPopupAndAddIcon( element, url, title, label ) {
 
     function createPopupAndAddIcon( element, url, title, label ) {
       mw.loader.using( [ 'oojs-ui-core', 'oojs-ui-widgets' ] ).then( function () {
+
       mw.loader.using( [ 'oojs-ui-core', 'oojs-ui-widgets', 'oojs-ui.styles.icons-interactions' ] ).then( function () {
 
         var searchIcon = new OO.ui.IconWidget( {
 
         var searchIcon = new OO.ui.IconWidget( {
 
           icon: 'ellipsis',
 
           icon: 'ellipsis',
Line 53: Line 55:  
     var $title = $( '.wikibase-title' ),
 
     var $title = $( '.wikibase-title' ),
 
       id = $title.find( '.wikibase-title-id' ).text().replace( /[()]/g, '' ),
 
       id = $title.find( '.wikibase-title-id' ).text().replace( /[()]/g, '' ),
       url = '#%23defaultView%3AGraph%0ASELECT%20%3Fnode%20%3FnodeLabel%20%3FnodeImage%20%3FchildNode%20%3FchildNodeLabel%20%3FchildNodeImage%20%3Frgb%20WHERE%20%7B%0A%20%20%7B%0A%20%20%20%20BIND%28wd%3A'
+
     
   + id + '%20AS%20%3Fnode%29%0A%20%20%20%20%3Fnode%20%3Fp%20%3Fi.%0A%20%20%20%20OPTIONAL%20%7B%20%3Fnode%20wdt%3AP18%20%3FnodeImage.%20%7D%0A%20%20%20%20%3FchildNode%20%3Fx%20%3Fp.%0A%20%20%20%20%3FchildNode%20rdf%3Atype%20wikibase%3AProperty.%0A%20%20%20%20FILTER%28STRSTARTS%28STR%28%3Fi%29%2C%20%22http%3A%2F%2Fwiki.personaldata.io%2Fentity%2FQ%22%29%29%0A%20%20%20%20FILTER%28STRSTARTS%28STR%28%3FchildNode%29%2C%20%22http%3A%2F%2Fwiki.personaldata.io%2Fentity%2FP%22%29%29%0A%20%20%7D%0A%20%20UNION%0A%20%20%7B%0A%20%20%20%20BIND%28%22EFFBD8%22%20AS%20%3Frgb%29%0A%20%20%20%20wd%3A'
+
     
   + id + '%20%3Fp%20%3FchildNode.%0A%20%20%20%20OPTIONAL%20%7B%20%3FchildNode%20wdt%3AP18%20%3FchildNodeImage.%20%7D%0A%20%20%20%20%3Fnode%20%3Fx%20%3Fp.%0A%20%20%20%20%3Fnode%20rdf%3Atype%20wikibase%3AProperty.%0A%20%20%20%20FILTER%28STRSTARTS%28STR%28%3FchildNode%29%2C%20%22http%3A%2F%2Fwiki.personaldata.io%2Fentity%2FQ%22%29%29%0A%20%20%7D%0A%20%20OPTIONAL%20%7B%0A%20%20%20%20%3Fnode%20wdt%3AP18%20%3FnodeImage.%0A%20%20%20%20%3FchildNode%20wdt%3AP18%20%3FchildNodeImage.%0A%20%20%7D%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22' + mw.config.get( 'wgUserLanguage' ) + '%22.%20%7D%0A%7D';
+
       url = '#%23defaultView%3AGraph%0APREFIX%20pdio%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fentity%2F%3E%0APREFIX%20pdiot%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2Fdirect%2F%3E%0APREFIX%20pdiop%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2F%3E%0APREFIX%20pdiops%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2Fstatement%2F%3E%0APREFIX%20pdiopq%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2Fqualifier%2F%3E%0A%0ASELECT%20%3Fnode%20%3FnodeLabel%20%3FchildNode%20%3FchildNodeLabel%20%3Frgb%20WHERE%20%7B%0A%20%20%7B%0A%20%20%20%20BIND%28pdio%3A'
 +
   + id + '%20AS%20%3Fnode%29%0A%20%20%20%20%3Fnode%20%3Fp%20%3Fi.%0A%20%20%20%20%3FchildNode%20%3Fx%20%3Fp.%0A%20%20%20%20%3FchildNode%20rdf%3Atype%20wikibase%3AProperty.%0A%20%20%20%20FILTER%28STRSTARTS%28STR%28%3Fi%29%2C%20%22https%3A%2F%2Fwiki.personaldata.io%2Fentity%2FQ%22%29%29%0A%20%20%20%20FILTER%28STRSTARTS%28STR%28%3FchildNode%29%2C%20%22https%3A%2F%2Fwiki.personaldata.io%2Fentity%2FP%22%29%29%0A%20%20%7D%0A%20%20UNION%0A%20%20%7B%0A%20%20%20%20BIND%28%22EFFBD8%22%20AS%20%3Frgb%29%0A%20%20%20%20pdio%3A'
 +
   + id + '%20%3Fp%20%3FchildNode.%0A%20%20%20%20%3Fnode%20%3Fx%20%3Fp.%0A%20%20%20%20%3Fnode%20rdf%3Atype%20wikibase%3AProperty.%0A%20%20%20%20FILTER%28STRSTARTS%28STR%28%3FchildNode%29%2C%20%22https%3A%2F%2Fwiki.personaldata.io%2Fentity%2FQ%22%29%29%0A%20%20%7D%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22' + mw.config.get( 'wgUserLanguage' ) + '%22.%20%7D%0A%7D';
 
     createPopupAndAddIcon( $title.find( '.wikibase-title-id' ), url, 'Click to see graph', 'Entity Graph');
 
     createPopupAndAddIcon( $title.find( '.wikibase-title-id' ), url, 'Click to see graph', 'Entity Graph');
   Line 101: Line 105:  
                   qid = amount;
 
                   qid = amount;
 
                 } else {
 
                 } else {
 +
  qLabel = $( this ).text();
 
                   qid = '"' + qLabel + '"';
 
                   qid = '"' + qLabel + '"';
 
                 }
 
                 }
Line 106: Line 111:  
             }
 
             }
 
           } else {
 
           } else {
             qid = 'wd:' + qid;
+
             qid = 'pdio:' + qid.replace("Item:","");
 
           }
 
           }
 
           if ( qid ) {
 
           if ( qid ) {
            // console.log(qid);
+
         
             var url = '#SELECT%20%3Fitem%20%3Flabel%20%3F_image%20WHERE%20%7B%0A%20%20%3Fitem%20wdt%3A' + pidTemp + '%20' + qid + '.%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%0A%20%20%20%20bd%3AserviceParam%20wikibase%3Alanguage%20%22' + mw.config.get( 'wgUserLanguage' ) + '%22%20.%20%0A%20%20%20%20%3Fitem%20rdfs%3Alabel%20%3Flabel%0A%20%20%7D%0A%20%20%0AOPTIONAL%20%7B%20%3Fitem%20wdt%3AP18%20%3F_image.%20%7D%0A%7D%0ALIMIT%20100';
+
             var url = '#PREFIX%20pdio%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fentity%2F%3E%0APREFIX%20pdiot%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2Fdirect%2F%3E%0APREFIX%20pdiop%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2F%3E%0APREFIX%20pdiops%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2Fstatement%2F%3E%0APREFIX%20pdiopq%3A%20%3Chttps%3A%2F%2Fwiki.personaldata.io%2Fprop%2Fqualifier%2F%3E%0A%0ASELECT%20%3Fitem%20%3FitemLabel%20WHERE%20%7B%0A%20%20%3Fitem%20pdiot%3A' + pidTemp + '%20' + qid + '.%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%0A%20%20%20%20bd%3AserviceParam%20wikibase%3Alanguage%20%22' + mw.config.get( 'wgUserLanguage' ) + '%22%20.%20%0A%20%20%7D%0A%20%20%0A%7D%0ALIMIT%20100';
 
             createPopupAndAddIcon( $( this ).siblings( '.wikibase-snakview-indicators' ), url, 'More "' + pLabelTemp + '" "'+ qLabel + '"', '"' + pLabelTemp + '" "'+ qLabel + '"' );
 
             createPopupAndAddIcon( $( this ).siblings( '.wikibase-snakview-indicators' ), url, 'More "' + pLabelTemp + '" "'+ qLabel + '"', '"' + pLabelTemp + '" "'+ qLabel + '"' );
 
           }
 
           }

Navigation menu