User:Technical 13/SandBox/Gadget-BugStatusUpdate.js's theme is one that has captivated humanity's attention over the years. Since time immemorial,
User:Technical 13/SandBox/Gadget-BugStatusUpdate.js has been a cause for reflection, debate and study. Its influence extends to different areas of life, affecting society, science, culture, history and politics, among others. In this article, we will explore the many facets of
User:Technical 13/SandBox/Gadget-BugStatusUpdate.js, analyzing its impact on today's world and its relevance in the development of humanity. From its origins to its evolution today, we will immerse ourselves in a fascinating journey through the history and present of
User:Technical 13/SandBox/Gadget-BugStatusUpdate.js.
/*
* Bug Status Update Gadget
* Author: Donald Fortier (User:Technical_13)
* * Based on original code:
* ** Author: Rob Moen (robm)
* ** Source: ]
* Description:
* Finds and updates bug status templates on a page.
* Makes 1 JSONP request to Bugzilla JSON RPC api.
*/
(function($){
var ids = , target = 'https://bugzilla.wikimedia.org/jsonrpc.cgi';
// // Ugly way to compose the request parameters. Though, bugzilla is happy with it.
var getParams = function ( ids ) {
return 'method=Bug.get&id=158¶ms=,"include_fields":}]';
};
// // Get the bug id numbers on the page
$( '.mw-trackedTemplate' ).each( function() {
var title = $( this ).find( 'a' ).attr( 'title' );
ids.push( title.split( ':' ) );
});
// // Do not query if no ids were found
if ( !ids.length ) {
return;
}
// Make jsonp request
$.ajax({
url: target,
dataType: 'jsonp',
data: getParams( ids ),
success: function ( data ) {
var color = {
"RESOLVED": "green",
"CRITICAL": "red"
},
statusProps = {
'font-weight': 'bold',
'font-size': '1.5em',
'text-transform': 'uppercase'
};
if ( data.result.bugs ) {
for( var b in data.result.bugs ) {
// //find the right bug to update
var $item = $( '.mw-trackedTemplate' ).find( 'a.id + '"]' );
var title = $( '.trakbug-' + data.result.bugs.id );
if( title ) {
title.text( data.result.bugs.summary );
}
if( $item ) {
// // Find child, if it exists.
$status = $item
.parent()
.next( 'p' )
.children( 'span' );
// //create the status element if it does not exist
if( $status.length === 0 ){
$item
.parent()
.parent()
.append(
$( '<p />' ).append(
$( '<span />' ).css( statusProps )
.text( 'Status' )
)
);
}
// // Udpate the status element.
$item
.parent()
.next( 'p' )
.children( 'span' )
.css( 'color', color.status] || '#333333' )
.text( data.result.bugs.status );
$status = null;
}
}
}
}// End of success:
});
})(jQuery);