diff --git a/openbis-ipad/ipad-example-data/ipad-ui-ylab/1/dss/reporting-plugins/ipad-read-service-v1/ipad_read.py b/openbis-ipad/ipad-example-data/ipad-ui-ylab/1/dss/reporting-plugins/ipad-read-service-v1/ipad_read.py index 25fba2d911b432f24f6a72bb525ad032096835f9..9a7c38707aebeac325a0540989ef262b713d803b 100644 --- a/openbis-ipad/ipad-example-data/ipad-ui-ylab/1/dss/reporting-plugins/ipad-read-service-v1/ipad_read.py +++ b/openbis-ipad/ipad-example-data/ipad-ui-ylab/1/dss/reporting-plugins/ipad-read-service-v1/ipad_read.py @@ -270,190 +270,36 @@ def properties_for_entity(entity, property_definitions, prop_names_set): def marquee_image_spec_for_url(image_url): return { 'MARQUEE' : { 'URL' : image_url } } -def navigation_layer(oligos, antibodies, chemicals, protocols, medias, pcrs, buffers, plasmids, yeasts, bacterias, enzymes, westernBlottings): - oligo_dict = {} - oligo_dict["SUMMARY_HEADER"] = "oligo" - oligo_dict["SUMMARY"] = "Oligos in YeastLab" - oligo_dict['PERM_ID'] = "OLIGO" - refcon_oligo = {} - refcon_oligo['code'] = "OLIGO" - refcon_oligo['entityKind'] = 'NAVIGATION' - refcon_oligo['entityType'] = 'NAVIGATION' - oligo_dict['REFCON'] = json_encoded_value(refcon_oligo) - oligo_dict['CATEGORY'] = None - children = [oligo.getPermId() for oligo in oligos] - oligo_dict['CHILDREN'] = json_encoded_value(children) - oligo_dict['PROPERTIES'] = json_encoded_value([]) - oligo_dict['ROOT_LEVEL'] = True - - - antibody_dict = {} - antibody_dict["SUMMARY_HEADER"] = "antibody" - antibody_dict["SUMMARY"] = "Antibodies in YeastLab" - antibody_dict['PERM_ID'] = "ANTIBODY" - refcon_antibody = {} - refcon_antibody['code'] = "ANTIBODY" - refcon_antibody['entityKind'] = 'NAVIGATION' - refcon_antibody['entityType'] = 'NAVIGATION' - antibody_dict['REFCON'] = json_encoded_value(refcon_antibody) - antibody_dict['CATEGORY'] = None - children = [antibody.getPermId() for antibody in antibodies] - antibody_dict['CHILDREN'] = json_encoded_value(children) - antibody_dict['PROPERTIES'] = json_encoded_value([]) - antibody_dict['ROOT_LEVEL'] = True - chemical_dict = {} - - chemical_dict["SUMMARY_HEADER"] = "chemical" - chemical_dict["SUMMARY"] = "Chemicals in YeastLab" - chemical_dict['PERM_ID'] = "CHEMICAL" - refcon_chemical = {} - refcon_chemical['code'] = "CHEMICAL" - refcon_chemical['entityKind'] = 'NAVIGATION' - refcon_chemical['entityType'] = 'NAVIGATION' - chemical_dict['REFCON'] = json_encoded_value(refcon_chemical) - chemical_dict['CATEGORY'] = None - children = [chemical.getPermId() for chemical in chemicals] - chemical_dict['CHILDREN'] = json_encoded_value(children) - chemical_dict['PROPERTIES'] = json_encoded_value([]) - chemical_dict['ROOT_LEVEL'] = True - - protocol_dict = {} - protocol_dict["SUMMARY_HEADER"] = "protocol" - protocol_dict["SUMMARY"] = "Protocols in YeastLab" - protocol_dict['PERM_ID'] = "GENERAL_PROTOCOL" - refcon_protocol = {} - refcon_protocol['code'] = "GENERAL_PROTOCOL" - refcon_protocol['entityKind'] = 'NAVIGATION' - refcon_protocol['entityType'] = 'NAVIGATION' - protocol_dict['REFCON'] = json_encoded_value(refcon_protocol) - protocol_dict['CATEGORY'] = None - children = [protocol.getPermId() for protocol in protocols] - protocol_dict['CHILDREN'] = json_encoded_value(children) - protocol_dict['PROPERTIES'] = json_encoded_value([]) - protocol_dict['ROOT_LEVEL'] = True - - media_dict = {} - media_dict["SUMMARY_HEADER"] = "media" - media_dict["SUMMARY"] = "Medias in YeastLab" - media_dict['PERM_ID'] = "MEDIA" - refcon_media = {} - refcon_media['code'] = "MEDIA" - refcon_media['entityKind'] = 'NAVIGATION' - refcon_media['entityType'] = 'NAVIGATION' - media_dict['REFCON'] = json_encoded_value(refcon_media) - media_dict['CATEGORY'] = None - children = [media.getPermId() for media in medias] - media_dict['CHILDREN'] = json_encoded_value(children) - media_dict['PROPERTIES'] = json_encoded_value([]) - media_dict['ROOT_LEVEL'] = True - - pcr_dict = {} - pcr_dict["SUMMARY_HEADER"] = "pcr" - pcr_dict["SUMMARY"] = "PCR in YeastLab" - pcr_dict['PERM_ID'] = "PCR" - refcon_pcr = {} - refcon_pcr['code'] = "PCR" - refcon_pcr['entityKind'] = 'NAVIGATION' - refcon_pcr['entityType'] = 'NAVIGATION' - pcr_dict['REFCON'] = json_encoded_value(refcon_pcr) - pcr_dict['CATEGORY'] = None - children = [pcr.getPermId() for pcr in pcrs] - pcr_dict['CHILDREN'] = json_encoded_value(children) - pcr_dict['PROPERTIES'] = json_encoded_value([]) - pcr_dict['ROOT_LEVEL'] = True - - buffer_dict = {} - buffer_dict["SUMMARY_HEADER"] = "buffer" - buffer_dict["SUMMARY"] = "Solution Buffers in YeastLab" - buffer_dict['PERM_ID'] = "SOLUTIONS_BUFFERS" - refcon_buffer = {} - refcon_buffer['code'] = "SOLUTIONS_BUFFERS" - refcon_buffer['entityKind'] = 'NAVIGATION' - refcon_buffer['entityType'] = 'NAVIGATION' - buffer_dict['REFCON'] = json_encoded_value(refcon_buffer) - buffer_dict['CATEGORY'] = None - children = [buffer.getPermId() for buffer in buffers] - buffer_dict['CHILDREN'] = json_encoded_value(children) - buffer_dict['PROPERTIES'] = json_encoded_value([]) - buffer_dict['ROOT_LEVEL'] = True - - plasmid_dict = {} - plasmid_dict["SUMMARY_HEADER"] = "plasmid" - plasmid_dict["SUMMARY"] = "Plasmids in YeastLab" - plasmid_dict['PERM_ID'] = "PLASMID" - refcon_plasmid = {} - refcon_plasmid['code'] = "PLASMID" - refcon_plasmid['entityKind'] = 'NAVIGATION' - refcon_plasmid['entityType'] = 'NAVIGATION' - plasmid_dict['REFCON'] = json_encoded_value(refcon_plasmid) - plasmid_dict['CATEGORY'] = None - children = [plasmid.getPermId() for plasmid in plasmids] - plasmid_dict['CHILDREN'] = json_encoded_value(children) - plasmid_dict['PROPERTIES'] = json_encoded_value([]) - plasmid_dict['ROOT_LEVEL'] = True - - yeast_dict = {} - yeast_dict["SUMMARY_HEADER"] = "yeast" - yeast_dict["SUMMARY"] = "Yeasts in YeastLab" - yeast_dict['PERM_ID'] = "YEAST" - refcon_yeast = {} - refcon_yeast['code'] = "YEAST" - refcon_yeast['entityKind'] = 'NAVIGATION' - refcon_yeast['entityType'] = 'NAVIGATION' - yeast_dict['REFCON'] = json_encoded_value(refcon_yeast) - yeast_dict['CATEGORY'] = None - children = [yeast.getPermId() for yeast in yeasts] - yeast_dict['CHILDREN'] = json_encoded_value(children) - yeast_dict['PROPERTIES'] = json_encoded_value([]) - yeast_dict['ROOT_LEVEL'] = True - - - bacteria_dict = {} - bacteria_dict["SUMMARY_HEADER"] = "bacteria" - bacteria_dict["SUMMARY"] = "Bacteria in YeastLab" - bacteria_dict['PERM_ID'] = "BACTERIA" - refcon_bacteria = {} - refcon_bacteria['code'] = "BACTERIA" - refcon_bacteria['entityKind'] = 'NAVIGATION' - refcon_bacteria['entityType'] = 'NAVIGATION' - bacteria_dict['REFCON'] = json_encoded_value(refcon_bacteria) - bacteria_dict['CATEGORY'] = None - children = [bacteria.getPermId() for bacteria in bacterias] - bacteria_dict['CHILDREN'] = json_encoded_value(children) - bacteria_dict['PROPERTIES'] = json_encoded_value([]) - bacteria_dict['ROOT_LEVEL'] = True - - enzyme_dict = {} - enzyme_dict["SUMMARY_HEADER"] = "enzyme" - enzyme_dict["SUMMARY"] = "Enzymes in YeastLab" - enzyme_dict['PERM_ID'] = "ENZYME" - refcon_enzyme = {} - refcon_enzyme['code'] = "ENZYME" - refcon_enzyme['entityKind'] = 'NAVIGATION' - refcon_enzyme['entityType'] = 'NAVIGATION' - enzyme_dict['REFCON'] = json_encoded_value(refcon_enzyme) - enzyme_dict['CATEGORY'] = None - children = [enzyme.getPermId() for enzyme in enzymes] - enzyme_dict['CHILDREN'] = json_encoded_value(children) - enzyme_dict['PROPERTIES'] = json_encoded_value([]) - enzyme_dict['ROOT_LEVEL'] = True - - - westernBlotting_dict = {} - westernBlotting_dict["SUMMARY_HEADER"] = "western blotting" - westernBlotting_dict["SUMMARY"] = "Western Blotting in YeastLab" - westernBlotting_dict['PERM_ID'] = "WESTERN_BLOTTING" - refcon_westernBlotting = {} - refcon_westernBlotting['code'] = "WESTERN_BLOTTING" - refcon_westernBlotting['entityKind'] = 'NAVIGATION' - refcon_westernBlotting['entityType'] = 'NAVIGATION' - westernBlotting_dict['REFCON'] = json_encoded_value(refcon_westernBlotting) - westernBlotting_dict['CATEGORY'] = None - children = [westernBlotting.getPermId() for westernBlotting in westernBlottings] - westernBlotting_dict['CHILDREN'] = json_encoded_value(children) - westernBlotting_dict['PROPERTIES'] = json_encoded_value([]) - westernBlotting_dict['ROOT_LEVEL'] = True +def navigation_layer_simple(summary_header, summary, code, children): + nav_dict = {} + nav_dict["SUMMARY_HEADER"] = summary_header + nav_dict["SUMMARY"] = summary + nav_dict['PERM_ID'] = code + refcon_nav = {} + refcon_nav['code'] = code + refcon_nav['entityKind'] = 'NAVIGATION' + refcon_nav['entityType'] = 'NAVIGATION' + nav_dict['REFCON'] = json_encoded_value(refcon_nav) + nav_dict['CATEGORY'] = None + children_permids = [entity.getPermId() for entity in children] + nav_dict['CHILDREN'] = json_encoded_value(children_permids) + nav_dict['PROPERTIES'] = json_encoded_value([]) + nav_dict['ROOT_LEVEL'] = True + return nav_dict +def navigation_layer(oligos, antibodies, chemicals, protocols, medias, pcrs, buffers, plasmids, yeasts, bacterias, enzymes, westernBlottings): + oligo_dict = navigation_layer_simple("oligo", "Oligos in YeastLab", "OLIGO", oligos) + antibody_dict = navigation_layer_simple("antibody", "Antibodies in YeastLab", "ANTIBODY", antibodies) + chemical_dict = navigation_layer_simple("chemical", "Chemicals in YeastLab", "CHEMICAL", chemicals) + protocol_dict = navigation_layer_simple("protocol", "Protocols in YeastLab", "GENERAL_PROTOCOL", protocols) + media_dict = navigation_layer_simple("media", "Medias in YeastLab", "MEDIA", medias) + pcr_dict = navigation_layer_simple("pcr", "PCR in YeastLab", "PCR", pcrs) + buffer_dict = navigation_layer_simple("buffer", "Solution Buffers in YeastLab", "SOLUTIONS_BUFFERS", buffers) + plasmid_dict = navigation_layer_simple("plasmid", "Plasmids in YeastLab", "PLASMID", plasmids) + yeast_dict = navigation_layer_simple("yeast", "Yeasts in YeastLab", "YEAST", yeasts) + bacteria_dict = navigation_layer_simple("bacteria", "Bacteria in YeastLab", "BACTERIA", bacterias) + enzyme_dict = navigation_layer_simple("enzyme", "Enzymes in YeastLab", "ENZYME", enzymes) + westernBlotting_dict = navigation_layer_simple("western blotting", "Western Blotting in YeastLab", "WESTERN_BLOTTING", westernBlottings) return [oligo_dict, antibody_dict, chemical_dict, protocol_dict, media_dict, pcr_dict, buffer_dict, plasmid_dict, yeast_dict, bacteria_dict, enzyme_dict, westernBlotting_dict] def sample_to_dict_with_props(sample, want_props):