function isSyndicated() { return false; }
function getSQL() {
+ global $wgCountCategorizedImagesAsUsed;
$dbr =& wfGetDB( DB_SLAVE );
- extract( $dbr->tableNames( 'image','imagelinks' ) );
- return 'SELECT img_name as title, img_user, img_user_text, img_timestamp as value, img_description' .
- ' FROM '.$image.' LEFT JOIN '.$imagelinks.' ON img_name=il_to WHERE il_to IS NULL ';
+ if ( $wgCountCategorizedImagesAsUsed ) {
+ extract( $dbr->tableNames( 'cur', 'image', 'imagelinks', 'categorylinks' ) );
+
+ return 'SELECT img_name as title, img_user, img_user_text, img_timestamp as value, img_description
+ FROM ((('.$cur.' AS I LEFT JOIN '.$categorylinks.' AS L ON I.cur_id = L.cl_from)
+ LEFT JOIN '.$imagelinks.' AS P ON I.cur_title = P.il_to)
+ INNER JOIN '.$image.' AS G ON I.cur_title = G.img_name)
+ WHERE I.cur_namespace = '.NS_IMAGE.' AND L.cl_from IS NULL AND P.il_to IS NULL';
+ }
+ else {
+ extract( $dbr->tableNames( 'image','imagelinks' ) );
+
+ return 'SELECT img_name as title, img_user, img_user_text, img_timestamp as value, img_description' .
+ ' FROM '.$image.' LEFT JOIN '.$imagelinks.' ON img_name=il_to WHERE il_to IS NULL ';
+ }
}
function formatResult( $skin, $result ) {