User:PerfektesChaos/js/externalLinkProblem/query

query is a dependant sub-module of externalLinkProblem.js.

Provide data to be displayed by /gui on content pages. This code will ask by generated URL and react when answer arrives.

Mechanism

  • A tool is supposed to answer a query with project dbname and pageid with database results of observed URL with problems.
    • The query might be applied via interactive form, too, which should resolve current page names as well.
    • Since collection of observations will be done over months and request could happen a year later, the database will be organized by pageid rather than by page title, which could have been changed meanwhile.
  • Results can be called by a certain URL. One output mode might be something like js-mw which means JavaScript in MediaWiki context. That should generate a snippet as shown below.
    • If any results found, the problems component is expected to deliver detailed information. If no problems known, this should be missing or set to false. Details of the problems array are listed on /gui page.

Snippet

( function ( mw ) {
   var problems = [
      { url: "http://example.com/unavailable.html" }
      // etc. etc.
                  ];
   mw.hook( "externalLinkProblem/query.answer" ).fire( problems );
}( window.mediaWiki ) );
  • The answer has to provide text/javascript MIME type.
  • A JSON object could be provided as another output mode.
    • This is safer and reduced to a pure data object which is not executable.
    • However, the wmflabs.org is deliberately separated from domains like wikipedia.org to avoid malicious effects. By same origin policy etc. JSON won’t be accepted.
    • An executable snippet as described below might be necessary to cross domain borders, if CORS was not established.
    • The application has to show open source code to make clear that no undesired statements are embedded into the answer.

Codes

Source code
ResourceLoader
  • ext.gadget.externalLinkProblem/query
Namespaces
  • any content (nsn ≥ 0)
mw.libs externalLinkProblem

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.