1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 11:42:08 +00:00

write the osm-idx correctls

This commit is contained in:
George Hunt 2019-04-10 01:47:18 +01:00
parent 145c7ad160
commit 78abe48ac1

View file

@ -44,24 +44,28 @@ def main():
print(installed_maps) print(installed_maps)
write_osm_vector_idx(installed_maps) write_osm_vector_idx(installed_maps)
# For installed regions, check that a menu def exists, and it's on home page
for fname in installed_maps: for fname in installed_maps:
region = extract_region_from_filename(fname) region = extract_region_from_filename(fname)
print('checking for %s region'%region) print('checking for %s region'%region)
if region != 'maplist': if region == 'maplist': # it is the splash page, display only if no others
item = map_catalog['regions'][region]
menu_ref = item['perma_ref']
else:
menu_ref = 'en-map_test' menu_ref = 'en-map_test'
item = { "perma_ref" : "en-map_test" } item = { "perma_ref" : "en-map_test" }
if region != 'maplist' and not (region in map_menu_def_list): if len(installed_maps) == 1:
print('creating menu def for %s'%item['perma_ref']) menus.update_menu_json(menu_ref)
create_menu_def(region,item['perma_ref'] + '.json') return
else:
item = map_catalog['regions'][region]
menu_ref = item['perma_ref']
if not (region in map_menu_def_list):
print('creating menu def for %s'%item['perma_ref'])
create_menu_def(region,item['perma_ref'] + '.json')
if fetch_menu_json_value('autoupdate_menu'): if fetch_menu_json_value('autoupdate_menu'):
print('fetch_menu returned %s'%fetch_menu_json_value('autoupdate_menu')) print('autoudate of menu items is enabled:%s. Adding %s'%(\
# add this new menu def to home page fetch_menu_json_value('autoupdate_menu'),region,))
print('calling to insert %s.json'%menu_ref) # verify this menu def is on home page
menus.update_menu_json(menu_ref) menus.update_menu_json(menu_ref)
print('fetch_menu returned %s'%fetch_menu_json_value('autoupdate_menu'))
def get_map_catalog(): def get_map_catalog():
global map_catalog global map_catalog
@ -104,22 +108,20 @@ def get_installed_regions():
def write_osm_vector_idx(installed_maps): def write_osm_vector_idx(installed_maps):
map_dict ={} map_dict ={}
map_dict['regions'] = {}
idx_dict = {} idx_dict = {}
for fname in installed_maps: for fname in installed_maps:
region = extract_region_from_filename(fname) region = extract_region_from_filename(fname)
if map == 'maplist': continue # not a real region if map == 'maplist': continue # not a real region
data_dict = map_catalog['regions'].get(region,'') map_dict = map_catalog['regions'].get(region,'')
map_dict['regions'][region] = data_dict if map_dict == '': continue
if data_dict == '': continue
# Create the idx file in format required bo js-menu system # Create the idx file in format required bo js-menu system
idx_dict[region] = {} idx_dict[region] = {}
idx_dict[region]['file_name'] = os.path.basename(map_dict[region][:-4]) idx_dict[region]['file_name'] = os.path.basename(map_dict['url'][:-4])
idx_dict[region]['menu_item'] = map_dict[region]['perma_ref'] idx_dict[region]['menu_item'] = map_dict['perma_ref']
idx_dict[region]['size'] = map_dict[region]['size'] idx_dict[region]['size'] = map_dict['size']
idx_dict[region]['zim_date'] = map_dict[region]['date'] idx_dict[region]['date'] = map_dict['date']
idx_dict[region]['language'] = map_dict[region]['perma_ref'][:2] idx_dict[region]['language'] = map_dict['perma_ref'][:2]
with open(osm_vector_idx_dir + '/osm-vector-idx.json','w') as idx: with open(osm_vector_idx_dir + '/osm-vector-idx.json','w') as idx:
idx.write(json.dumps(idx_dict,indent=2)) idx.write(json.dumps(idx_dict,indent=2))