Module:Infobox body of water tracking
From Chalo Chatu, Zambia online encyclopedia
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 .. end if isblank(args['coords']) and (isblank(args['latd']) or isblank(args['longd'])) then cats = cats .. end if (args[1]) then cats = cats .. 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 .. 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['latitude']) then else unknown_parameters = unknown_parameters + 1 end if isblank(args['longitude']) 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 isblank(args['elevation_reference']) 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 .. end
if (unknown_parameters > 0) then cats = cats .. end return cats
end
return p