Module:Infobox body of water tracking
Appearance
![]() | This module is rated as ready for general use. It has reached a mature form and is thought to be relatively bug-free and ready for use wherever appropriate. It is ready to mention on help pages and other Wikipedia resources as an option for new users to learn. To reduce server load and bad output, it should be improved by sandbox testing rather than repeated trial-and-error editing. |
![]() | This module is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
This module is used by Template:Infobox body of water.
Usage
{{#invoke:Infobox body of water tracking|tracking}}
Tracking/maintenance categories
- Category:Wikipedia infobox body of water articles needing maintenance (3)
- Category:Articles using infobox body of water without coordinates (134)
- Category:Articles using infobox body of water without image (7,470)
- Category:Articles using infobox body of water without alt (9,311)
- Category:Articles using infobox body of water without pushpin_map (949)
- Category:Articles using infobox body of water without pushpin_map_alt (10,630)
- Category:Articles using infobox body of water without image_bathymetry (18,021)
- Category:Articles using infobox body of water without alt_bathymetry (482)
- Category:Articles using infobox body of water with mapframe (122)
- Category:Pages using infobox body of water with a non-automatically converted dimension (24)
- Category:Pages using infobox body of water with duplicate parameters (4)
- Category:Pages using infobox body of water with unknown parameters (0)
local p = {}
function p.tracking(frame)
function isblank( val )
return (val == nil) or val:match('^[%s]*$')
end
local cats = ''
local args = frame:getParent().args
if (isblank(args['image']) and isblank(args['image_lake']) and isblank(args['image_ocean'])
and isblank(args['image_Ocean']) and isblank(args['image_bay']) ) then
cats = cats .. '[[Category:Wikipedia infobox body of water articles without image]]'
end
if isblank(args['coords']) and (isblank(args['latd']) or isblank(args['longd'])) then
cats = cats .. '[[Category:Wikipedia infobox body of water articles without coordinates]]'
end
if (args[1]) then
cats = cats .. '[[Category:Wikipedia infobox body of water articles needing maintenance]]'
end
local duplicate_parameters = 0
local unknown_parameters = 0
if (args['catchment_km2'] and args ['catchment']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['length_km'] and args['length']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['width_km'] and args['width']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['area_km2'] and args['area']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['depth_m'] and args['depth']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['max-depth_m'] and args['max-depth']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['volume_km3'] and args['volume']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['shore_km'] and args['shore']) then
duplicate_parameters = duplicate_parameters + 1
end
if (args['elevation_m'] and args['elevation']) then
duplicate_parameters = duplicate_parameters + 1
end
if ( (args['image'] and 1 or 0) + (args['image_lake'] and 1 or 0)
+ (args['image_ocean'] and 1 or 0) + (args['image_Ocean'] and 1 or 0)
+ (args['image_bay'] and 1 or 0) > 1 ) then
duplicate_parameters = duplicate_parameters + 1
end
if ( (args['name'] and 1 or 0) + (args['lake_name'] and 1 or 0)
+ (args['ocean_name'] and 1 or 0) + (args['Ocean_name'] and 1 or 0)
+ (args['bay_name'] and 1 or 0) > 1 ) then
duplicate_parameters = duplicate_parameters + 1
end
if (duplicate_parameters > 0) then
cats = cats .. '[[Category:Wikipedia infobox body of water articles using duplicate parameters]]'
end
local deprecated_parameters = 0
if (args['catchment'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['length'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['width'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['area'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['depth'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['max-depth'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['volume'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['shore'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if (args['elevation'] or ''):match('^[%s]*[0-9\.,]+[^%s]*$') then
deprecated_parameters = deprecated_parameters + 1
end
if isblank(args['shore_m']) then
else
unknown_parameters = unknown_parameters + 1
end
if isblank(args['code']) then
else
unknown_parameters = unknown_parameters + 1
end
if isblank(args['map_type']) then
else
unknown_parameters = unknown_parameters + 1
end
if (args['elevation_ref'] or ''):match('^[%s]*[A-Z%-]+[^%s]*$') then
unknown_parameters = unknown_parameters + 1
end
if (deprecated_parameters > 0) then
cats = cats .. '[[Category:Wikipedia infobox body of water articles using deprecated parameters]]'
end
if (unknown_parameters > 0) then
cats = cats .. '[[Category:Pages using infobox body of water articles using unsupported parameters]]'
end
return cats
end
return p