From: Jens Frank Date: Sun, 10 Apr 2005 21:27:42 +0000 (+0000) Subject: BUG#1849 - Count images as used if they are put into a category (site pref) X-Git-Tag: 1.5.0alpha1~306 X-Git-Url: http://git.cyclocoop.org///%22%40url%40//%22?a=commitdiff_plain;h=07f1e74d6da1309c2200f1b7c40d4fa6487d3488;p=lhc%2Fweb%2Fwiklou.git BUG#1849 - Count images as used if they are put into a category (site pref) --- diff --git a/includes/DefaultSettings.php b/includes/DefaultSettings.php index 1082492451..61a72aabcc 100644 --- a/includes/DefaultSettings.php +++ b/includes/DefaultSettings.php @@ -1218,6 +1218,12 @@ $wgDisabledActions = array(); */ $wgEnableSorbs = true; +/** + * On Special:Unusedimages, consider images "used", if they are put + * into a category. Default (false) is not to count those as used. + */ +$wgCountCategorizedImagesAsUsed = false; + } else { die(); } diff --git a/includes/SpecialUnusedimages.php b/includes/SpecialUnusedimages.php index 3b7459f71f..24262aa781 100644 --- a/includes/SpecialUnusedimages.php +++ b/includes/SpecialUnusedimages.php @@ -24,11 +24,24 @@ class UnusedimagesPage extends QueryPage { 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 ) {