Ejemplo n.º 1
0
def set_document_permissions(m, perm_spec):
	from anzsm.payment.utils import setResourceLicenseAgreement
	from anzsm.payment.utils import setPaymentOptions
	setResourceLicenseAgreement ( m , perm_spec)
	setPaymentOptions (m, perm_spec)
	if "authenticated" in perm_spec:
		m.set_gen_level(AUTHENTICATED_USERS, perm_spec['authenticated'])
	if "anonymous" in perm_spec:
		m.set_gen_level(ANONYMOUS_USERS, perm_spec['anonymous'])
	users = [n for (n, p) in perm_spec['users']]
	m.get_user_levels().exclude(user__username__in = users + [m.owner]).delete()
	for username, level in perm_spec['users']:
		user = User.objects.get(username=username)
		m.set_user_level(user, level)
Ejemplo n.º 2
0
def set_document_permissions(m, perm_spec):
    from anzsm.payment.utils import setResourceLicenseAgreement, setResourceViewMode
    from anzsm.payment.utils import setPaymentOptions
    setResourceLicenseAgreement(m, perm_spec)
    setResourceViewMode(m, perm_spec)
    setPaymentOptions(m, perm_spec)
    if "authenticated" in perm_spec:
        m.set_gen_level(AUTHENTICATED_USERS, perm_spec['authenticated'])
    if "anonymous" in perm_spec:
        m.set_gen_level(ANONYMOUS_USERS, perm_spec['anonymous'])
    users = [n for (n, p) in perm_spec['users']]
    m.get_user_levels().exclude(user__username__in=users + [m.owner]).delete()
    for username, level in perm_spec['users']:
        user = User.objects.get(username=username)
        m.set_user_level(user, level)
Ejemplo n.º 3
0
    # FIXME: Do this as part of the post_save hook
    logger.info('>>> Step 11. Setting default permissions for [%s]', name)
    if permissions is not None:
        from geonode.maps.views import set_object_permissions
        set_object_permissions(saved_layer, permissions)

    # Step 12. Insert the payment options
    logger.info('>>> Step 12. Setting payment options [%s]', name)
    if permissions is not None:
        from anzsm.payment.utils import setPaymentOptions
        setPaymentOptions(saved_layer, permissions)    
    
    logger.info('>>> Creating the licensing agreement')
    if permissions is not None:
        from anzsm.payment.utils import setResourceLicenseAgreement
        setResourceLicenseAgreement ( saved_layer , permissions)

    logger.info('>>> set the layer view mode')
    if permissions is not None:
        from anzsm.payment.utils import setResourceViewMode
        setResourceViewMode ( saved_layer , permissions)        
       
    # Step 13. Verify the layer was saved correctly and clean up if needed
    logger.info('>>> Step 13. Verifying the layer [%s] was created correctly' % name)

    # Verify the object was saved to the Django database
    try:
        Layer.objects.get(name=name)
    except Layer.DoesNotExist, e:
        msg = ('There was a problem saving the layer %s to GeoNetwork/Django. Error is: %s' % (layer, str(e)))
        logger.exception(msg)