def group_show(context, data_dict): ''' Warning: This API request is deprecated. Please use the equivalent one on version 3 of the API: http://iatiregistry.org/api/action/organization_show ''' return get_core.organization_show(context, data_dict)
def get_external_id(self, context): metadata = context['package'].as_dict() ckan_url = metadata['ckan_url'] log.info('minting %s' % ckan_url) try: org = organization_show(context, {'id':metadata['owner_org']})['title'] except: org = metadata['owner_org'] metadata = {'_target': ckan_url, 'datacite.creator': metadata['author'], 'datacite.title': metadata['title'], 'datacite.publisher': org, 'datacite.publicationyear': str(datetime.datetime.now().year), 'datacite.resourcetype': 'Dataset'} anvl = "\n".join("%s: %s" % (escape(name), escape(value)) for name, value in metadata.items()).encode("UTF-8") namespace = config.get('ckanext.ezid.namespace') username = config.get('ckanext.ezid.username') password = config.get('ckanext.ezid.password') api_url = 'https://ezid.cdlib.org/shoulder/%s' % namespace r = requests.post(api_url, data = anvl, headers = {'Content-Type':'text/plain; charset=UTF-8'}, auth = (username, password)) log.info('EZID reply: %s' % r.text) if 'success' in r.text: doi = re.search('success: doi:(.+?) \|.+', r.text).group(1) return "http://dx.doi.org/%s" % doi return r.text
def scheming_organization_show(context, data_dict): """ adjust contents of image_display_url """ result_dict = organization_show(context, data_dict) image_url = result_dict.get('image_url', '') organization_name = result_dict.get('name', None) if organization_name and not image_url.startswith( ('http', 'https')) and len(image_url) > 0: result_dict['image_display_url'] = url_for_static( 'uploads/organization/{0}/{1}'.format( organization_name, result_dict.get('image_url')), qualified=True) return result_dict
def organization_show(context, data_dict): """ Add historical publisher ids :param context: :param data_dict: :return: """ result = get_core.organization_show(context, data_dict) if asbool(data_dict.get('show_historical_publisher_names', "false")): historical_pub_ids = iati_model.IATIRedirects.extract_redirects( publisher_name=result['name']) result['historical_publisher_names'] = [ dict(x) for x in historical_pub_ids ] return result
def reject(self, id, *args, **kwargs): # check access and state _raise_not_authz_or_not_pending(id) # send rejection email org_dict = get_core.organization_show({'model': model}, {'id': id}) mail_data_container_update_to_user({}, org_dict, event='rejection') # call organization_purge delete_core.organization_purge({'model': model}, {'id': id}) # show flash message and redirect toolkit.h.flash_error('Data container "{}" rejected'.format( org_dict['title'])) toolkit.redirect_to('data-container_index')
def publisher_show(context, data_dict): '''Shows publisher details. Based on group_show, but has parent group, as well as the child groups. May raise NotFound or NotAuthorized. ''' group_dict = organization_show(context, data_dict) model = context['model'] id = get_or_bust(data_dict, 'id') group = model.Group.get(id) parent_groups = group.get_parent_groups(type='organization') group_dict['parent_group'] = {'id': parent_groups[0].id, 'name': parent_groups[0].name} \ if parent_groups else None return group_dict
def organization_show(context, data_dict): """Limit packages returned with organizations""" context.update({'limits': {'packages': 2}}) return core_get.organization_show(context, data_dict)
def organization_show(context, data_dict): context.update({'limits': {'packages': 2}}) return core_get.organization_show(context, data_dict)
def dgu_organization_show(context, data_dict): data_dict['include_users'] = False return remove_pii(organization_show(context, data_dict))