本文整理汇总了Python中main.models.MetaData.source方法的典型用法代码示例。如果您正苦于以下问题:Python MetaData.source方法的具体用法?Python MetaData.source怎么用?Python MetaData.source使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类main.models.MetaData
的用法示例。
在下文中一共展示了MetaData.source方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: edit
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def edit(request, username, id_string):
xform = XForm.objects.get(user__username=username, id_string=id_string)
if username == request.user.username or\
request.user.has_perm('odk_logger.change_xform', xform):
if request.POST.get('description'):
xform.description = request.POST['description']
elif request.POST.get('title'):
xform.title = request.POST['title']
elif request.POST.get('toggle_shared'):
if request.POST['toggle_shared'] == 'data':
xform.shared_data = not xform.shared_data
elif request.POST['toggle_shared'] == 'form':
xform.shared = not xform.shared
elif request.POST['toggle_shared'] == 'active':
xform.downloadable = not xform.downloadable
elif request.POST.get('form-license'):
MetaData.form_license(xform, request.POST['form-license'])
elif request.POST.get('data-license'):
MetaData.data_license(xform, request.POST['data-license'])
elif request.POST.get('source') or request.FILES.get('source'):
MetaData.source(xform, request.POST.get('source'),
request.FILES.get('source'))
elif request.FILES:
MetaData.supporting_docs(xform, request.FILES['doc'])
xform.update()
if request.is_ajax():
return HttpResponse('Updated succeeded.')
else:
return HttpResponseRedirect(reverse(show, kwargs={
'username': username,
'id_string': id_string
}))
return HttpResponseForbidden('Update failed.')
示例2: edit
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def edit(request, username, id_string):
xform = XForm.objects.get(user__username=username, id_string=id_string)
if username == request.user.username or request.user.has_perm("odk_logger.change_xform", xform):
if request.POST.get("description"):
xform.description = request.POST["description"]
elif request.POST.get("title"):
xform.title = request.POST["title"]
elif request.POST.get("toggle_shared"):
if request.POST["toggle_shared"] == "data":
xform.shared_data = not xform.shared_data
elif request.POST["toggle_shared"] == "form":
xform.shared = not xform.shared
elif request.POST["toggle_shared"] == "active":
xform.downloadable = not xform.downloadable
elif request.POST.get("form-license"):
MetaData.form_license(xform, request.POST["form-license"])
elif request.POST.get("data-license"):
MetaData.data_license(xform, request.POST["data-license"])
elif request.POST.get("source") or request.FILES.get("source"):
MetaData.source(xform, request.POST.get("source"), request.FILES.get("source"))
elif request.FILES.get("media"):
MetaData.media_upload(xform, request.FILES.get("media"))
elif request.POST.get("map_name"):
mapbox_layer = MapboxLayerForm(request.POST)
if mapbox_layer.is_valid():
MetaData.mapbox_layer_upload(xform, mapbox_layer.cleaned_data)
elif request.FILES:
MetaData.supporting_docs(xform, request.FILES["doc"])
xform.update()
if request.is_ajax():
return HttpResponse("Updated succeeded.")
else:
return HttpResponseRedirect(reverse(show, kwargs={"username": username, "id_string": id_string}))
return HttpResponseForbidden("Update failed.")
示例3: test_upload_source_file_keep_name
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def test_upload_source_file_keep_name(self):
desc = "Snooky"
response = self.client.post(self.edit_url, {"source": desc}, HTTP_X_REQUESTED_WITH="XMLHttpRequest")
self.assertEqual(response.status_code, 200)
name = self._add_metadata("source")
self.assertNotEqual(MetaData.source(self.xform).data_file, None)
self.assertEqual(MetaData.source(self.xform).data_value, desc)
示例4: edit
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def edit(request, username, id_string):
xform = XForm.objects.get(user__username=username, id_string=id_string)
if request.GET.get("crowdform"):
crowdform_action = request.GET["crowdform"]
request_username = request.user.username
# ensure is crowdform
if xform.is_crowd_form:
if crowdform_action == "delete":
MetaData.objects.get(
xform__id_string=id_string, data_value=request_username, data_type=MetaData.CROWDFORM_USERS
).delete()
elif crowdform_action == "add":
MetaData.crowdform_users(xform, request_username)
return HttpResponseRedirect(reverse(profile, kwargs={"username": request_username}))
if username == request.user.username or request.user.has_perm("odk_logger.change_xform", xform):
if request.POST.get("description"):
xform.description = request.POST["description"]
elif request.POST.get("title"):
xform.title = request.POST["title"]
elif request.POST.get("toggle_shared"):
if request.POST["toggle_shared"] == "data":
xform.shared_data = not xform.shared_data
elif request.POST["toggle_shared"] == "form":
xform.shared = not xform.shared
elif request.POST["toggle_shared"] == "active":
xform.downloadable = not xform.downloadable
elif request.POST["toggle_shared"] == "crowd":
if xform.is_crowd_form:
xform.is_crowd_form = False
else:
xform.is_crowd_form = True
xform.shared = True
xform.shared_data = True
elif request.POST.get("form-license"):
MetaData.form_license(xform, request.POST["form-license"])
elif request.POST.get("data-license"):
MetaData.data_license(xform, request.POST["data-license"])
elif request.POST.get("source") or request.FILES.get("source"):
MetaData.source(xform, request.POST.get("source"), request.FILES.get("source"))
elif request.FILES.get("media"):
MetaData.media_upload(xform, request.FILES.get("media"))
elif request.POST.get("map_name"):
mapbox_layer = MapboxLayerForm(request.POST)
if mapbox_layer.is_valid():
MetaData.mapbox_layer_upload(xform, mapbox_layer.cleaned_data)
elif request.FILES:
MetaData.supporting_docs(xform, request.FILES["doc"])
xform.update()
if request.is_ajax():
return HttpResponse(_(u"Updated succeeded."))
else:
return HttpResponseRedirect(reverse(show, kwargs={"username": username, "id_string": id_string}))
return HttpResponseForbidden(_(u"Update failed."))
示例5: show
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def show(request, username=None, id_string=None, uuid=None):
if uuid:
xform = get_object_or_404(XForm, uuid=uuid)
request.session["public_link"] = xform.uuid if MetaData.public_link(xform) else False
return HttpResponseRedirect(
reverse(show, kwargs={"username": xform.user.username, "id_string": xform.id_string})
)
xform, is_owner, can_edit, can_view = get_xform_and_perms(username, id_string, request)
# no access
if not (xform.shared or can_view or request.session.get("public_link")):
return HttpResponseRedirect(reverse(home))
context = RequestContext(request)
context.cloned = (
len(XForm.objects.filter(user__username=request.user.username, id_string=id_string + XForm.CLONED_SUFFIX)) > 0
)
context.public_link = MetaData.public_link(xform)
context.is_owner = is_owner
context.can_edit = can_edit
context.can_view = can_view or request.session.get("public_link")
context.xform = xform
context.content_user = xform.user
context.base_url = "https://%s" % request.get_host()
context.source = MetaData.source(xform)
context.form_license = MetaData.form_license(xform).data_value
context.data_license = MetaData.data_license(xform).data_value
context.supporting_docs = MetaData.supporting_docs(xform)
context.media_upload = MetaData.media_upload(xform)
context.mapbox_layer = MetaData.mapbox_layer_upload(xform)
if is_owner:
context.sms_support_form = ActivateSMSSupportFom(
initial={"enable_sms_support": xform.allows_sms, "sms_id_string": xform.sms_id_string}
)
if not xform.allows_sms:
context.sms_compatible = check_form_sms_compatibility(None, json_survey=json.loads(xform.json))
else:
url_root = request.build_absolute_uri("/")[:-1]
context.sms_providers_doc = providers_doc(url_root=url_root, username=username, id_string=id_string)
context.url_root = url_root
context.form_license_form = FormLicenseForm(initial={"value": context.form_license})
context.data_license_form = DataLicenseForm(initial={"value": context.data_license})
context.doc_form = SupportDocForm()
context.source_form = SourceForm()
context.media_form = MediaForm()
context.mapbox_layer_form = MapboxLayerForm()
users_with_perms = []
for perm in get_users_with_perms(xform, attach_perms=True).items():
has_perm = []
if "change_xform" in perm[1]:
has_perm.append(_(u"Can Edit"))
if "view_xform" in perm[1]:
has_perm.append(_(u"Can View"))
users_with_perms.append((perm[0], u" | ".join(has_perm)))
context.users_with_perms = users_with_perms
context.permission_form = PermissionForm(username)
if xform.allows_sms:
context.sms_support_doc = get_autodoc_for(xform)
return render_to_response("show.html", context_instance=context)
示例6: show
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def show(request, username=None, id_string=None, uuid=None):
if uuid:
xform = get_object_or_404(XForm, uuid=uuid)
request.session['public_link'] = MetaData.public_link(xform)
return HttpResponseRedirect(reverse(show, kwargs={
'username': xform.user.username,
'id_string': xform.id_string
}))
xform, is_owner, can_edit, can_view = get_xform_and_perms(
username, id_string, request)
# no access
if not (xform.shared or can_view or request.session.get('public_link')):
return HttpResponseRedirect(reverse(home))
context = RequestContext(request)
context.cloned = len(
XForm.objects.filter(user__username=request.user.username,
id_string=id_string + XForm.CLONED_SUFFIX)
) > 0
context.public_link = MetaData.public_link(xform)
context.is_owner = is_owner
context.can_edit = can_edit
context.can_view = can_view or request.session.get('public_link')
context.xform = xform
context.content_user = xform.user
context.base_url = "https://%s" % request.get_host()
context.source = MetaData.source(xform)
context.form_license = MetaData.form_license(xform).data_value
context.data_license = MetaData.data_license(xform).data_value
context.supporting_docs = MetaData.supporting_docs(xform)
context.media_upload = MetaData.media_upload(xform)
context.mapbox_layer = MetaData.mapbox_layer_upload(xform)
if is_owner:
context.form_license_form = FormLicenseForm(
initial={'value': context.form_license})
context.data_license_form = DataLicenseForm(
initial={'value': context.data_license})
context.doc_form = SupportDocForm()
context.source_form = SourceForm()
context.media_form = MediaForm()
context.mapbox_layer_form = MapboxLayerForm()
context.users_with_perms = get_users_with_perms(
xform,
attach_perms=True
).items()
context.permission_form = PermissionForm(username)
user_list = [u.username for u in User.objects.exclude(username=username)]
context.user_json_list = simplejson.dumps(user_list)
return render_to_response("show.html", context_instance=context)
示例7: show
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def show(request, username=None, id_string=None, uuid=None):
if uuid:
xform = get_object_or_404(XForm, uuid=uuid)
request.session['public_link'] = MetaData.public_link(xform)
return HttpResponseRedirect(reverse(show, kwargs={
'username': xform.user.username,
'id_string': xform.id_string
}))
xform, is_owner, can_edit, can_view = get_xform_and_perms(username,\
id_string, request)
# no access
if not (xform.shared or can_view or request.session.get('public_link')):
return HttpResponseRedirect(reverse(home))
context = RequestContext(request)
context.public_link = MetaData.public_link(xform)
context.is_owner = is_owner
context.can_edit = can_edit
context.can_view = can_view or request.session.get('public_link')
context.xform = xform
context.content_user = xform.user
context.base_url = "https://%s" % request.get_host()
context.source = MetaData.source(xform)
context.form_license = MetaData.form_license(xform).data_value
context.data_license = MetaData.data_license(xform).data_value
context.supporting_docs = MetaData.supporting_docs(xform)
if is_owner:
context.form_license_form = FormLicenseForm(
initial={'value': context.form_license})
context.data_license_form = DataLicenseForm(
initial={'value': context.data_license})
context.doc_form = SupportDocForm()
context.source_form = SourceForm()
context.users_with_perms = get_users_with_perms(xform,
attach_perms=True).items()
context.permission_form = PermissionForm(username)
return render_to_response("show.html", context_instance=context)
示例8: test_upload_source_file_set_value_to_name
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def test_upload_source_file_set_value_to_name(self):
name = self._add_metadata('source')
self.assertEqual(MetaData.source(self.xform).data_value, name)
示例9: test_upload_source_file
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def test_upload_source_file(self):
name = self._add_metadata('source')
self.assertNotEqual(MetaData.source(self.xform).data_file, None)
示例10: test_user_source_edit_updates
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def test_user_source_edit_updates(self):
desc = 'Snooky'
response = self.client.post(self.edit_url, {'source': desc},
HTTP_X_REQUESTED_WITH='XMLHttpRequest')
self.assertEqual(response.status_code, 200)
self.assertEqual(MetaData.source(self.xform).data_value, desc)
示例11: edit
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
#.........这里部分代码省略.........
'old_value': str(old_state),
'new_value': str(new_state)
}, audit, request)
setattr(xform, setting, new_state)
if setting == 'is_crowd_form' and new_state:
xform.shared = xform.shared_data = True # crowd forms must be shared.
elif request.POST.get('form-license'):
audit = {
'xform': xform.id_string
}
audit_log(
Actions.FORM_UPDATED, request.user, owner,
_("Form License for '%(id_string)s' updated to "
"'%(form_license)s'.") %
{
'id_string': xform.id_string,
'form_license': request.POST['form-license'],
}, audit, request)
MetaData.form_license(xform, request.POST['form-license'])
elif request.POST.get('data-license'):
audit = {
'xform': xform.id_string
}
audit_log(
Actions.FORM_UPDATED, request.user, owner,
_("Data license for '%(id_string)s' updated to "
"'%(data_license)s'.") %
{
'id_string': xform.id_string,
'data_license': request.POST['data-license'],
}, audit, request)
MetaData.data_license(xform, request.POST['data-license'])
elif request.POST.get('source') or request.FILES.get('source'):
audit = {
'xform': xform.id_string
}
audit_log(
Actions.FORM_UPDATED, request.user, owner,
_("Source for '%(id_string)s' updated to '%(source)s'.") %
{
'id_string': xform.id_string,
'source': request.POST.get('source'),
}, audit, request)
MetaData.source(xform, request.POST.get('source'),
request.FILES.get('source'))
elif request.POST.get('enable_sms_support_trigger') is not None:
sms_support_form = ActivateSMSSupportFom(request.POST)
if sms_support_form.is_valid():
audit = {
'xform': xform.id_string
}
enabled = \
sms_support_form.cleaned_data.get('enable_sms_support')
if enabled:
audit_action = Actions.SMS_SUPPORT_ACTIVATED
audit_message = _(u"SMS Support Activated on")
else:
audit_action = Actions.SMS_SUPPORT_DEACTIVATED
audit_message = _(u"SMS Support Deactivated on")
audit_log(
audit_action, request.user, owner,
audit_message
% {'id_string': xform.id_string}, audit, request)
# stored previous states to be able to rollback form status
# in case we can't save.
示例12: edit
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
#.........这里部分代码省略.........
audit,
request,
)
if xform.is_crowd_form:
xform.is_crowd_form = False
else:
xform.is_crowd_form = True
xform.shared = True
xform.shared_data = True
elif request.POST.get("form-license"):
audit = {"xform": xform.id_string}
audit_log(
Actions.FORM_UPDATED,
request.user,
owner,
_("Form License for '%(id_string)s' updated to " "'%(form_license)s'.")
% {"id_string": xform.id_string, "form_license": request.POST["form-license"]},
audit,
request,
)
MetaData.form_license(xform, request.POST["form-license"])
elif request.POST.get("data-license"):
audit = {"xform": xform.id_string}
audit_log(
Actions.FORM_UPDATED,
request.user,
owner,
_("Data license for '%(id_string)s' updated to " "'%(data_license)s'.")
% {"id_string": xform.id_string, "data_license": request.POST["data-license"]},
audit,
request,
)
MetaData.data_license(xform, request.POST["data-license"])
elif request.POST.get("source") or request.FILES.get("source"):
audit = {"xform": xform.id_string}
audit_log(
Actions.FORM_UPDATED,
request.user,
owner,
_("Source for '%(id_string)s' updated to '%(source)s'.")
% {"id_string": xform.id_string, "source": request.POST.get("source")},
audit,
request,
)
MetaData.source(xform, request.POST.get("source"), request.FILES.get("source"))
elif request.POST.get("enable_sms_support_trigger") is not None:
sms_support_form = ActivateSMSSupportFom(request.POST)
if sms_support_form.is_valid():
audit = {"xform": xform.id_string}
enabled = sms_support_form.cleaned_data.get("enable_sms_support")
if enabled:
audit_action = Actions.SMS_SUPPORT_ACTIVATED
audit_message = _(u"SMS Support Activated on")
else:
audit_action = Actions.SMS_SUPPORT_DEACTIVATED
audit_message = _(u"SMS Support Deactivated on")
audit_log(
audit_action, request.user, owner, audit_message % {"id_string": xform.id_string}, audit, request
)
# stored previous states to be able to rollback form status
# in case we can't save.
pe = xform.allows_sms
pid = xform.sms_id_string
xform.allows_sms = enabled
xform.sms_id_string = sms_support_form.cleaned_data.get("sms_id_string")
compat = check_form_sms_compatibility(None, json.loads(xform.json))
示例13: show
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def show(request, username=None, id_string=None, uuid=None):
if uuid:
xform = get_object_or_404(XForm, uuid=uuid)
request.session['public_link'] = xform.uuid if MetaData.public_link(xform) else False
return HttpResponseRedirect(reverse(show, kwargs={
'username': xform.user.username,
'id_string': xform.id_string
}))
xform, is_owner, can_edit, can_view = get_xform_and_perms(
username, id_string, request)
# no access
if not (
xform.shared or can_view or\
request.session.get('public_link')):
return HttpResponseRedirect(reverse(home))
context = RequestContext(request)
context.cloned = len(
XForm.objects.filter(user__username=request.user.username,
id_string=id_string + XForm.CLONED_SUFFIX)
) > 0
context.public_link = MetaData.public_link(xform)
context.is_owner = is_owner
context.can_edit = can_edit
context.can_view = can_view or request.session.get('public_link')
context.xform = xform
context.content_user = xform.user
context.base_url = "https://%s" % request.get_host()
context.source = MetaData.source(xform)
context.form_license = MetaData.form_license(xform).data_value
context.data_license = MetaData.data_license(xform).data_value
context.supporting_docs = MetaData.supporting_docs(xform)
context.media_upload = MetaData.media_upload(xform)
context.mapbox_layer = MetaData.mapbox_layer_upload(xform)
if is_owner:
context.sms_support_form = ActivateSMSSupportFom(
initial={'enable_sms_support': xform.allows_sms,
'sms_id_string': xform.sms_id_string})
if not xform.allows_sms:
context.sms_compatible = check_form_sms_compatibility(None,
json_survey=json.loads(xform.json))
else:
url_root = request.build_absolute_uri('/')[:-1]
context.sms_providers_doc = providers_doc(
url_root=url_root,
username=username,
id_string=id_string)
context.url_root = url_root
context.form_license_form = FormLicenseForm(
initial={'value': context.form_license})
context.data_license_form = DataLicenseForm(
initial={'value': context.data_license})
context.doc_form = SupportDocForm()
context.source_form = SourceForm()
context.media_form = MediaForm()
context.mapbox_layer_form = MapboxLayerForm()
context.users_with_perms = get_users_with_perms(
xform,
attach_perms=True
).items()
context.permission_form = PermissionForm(username)
context.sms_support_doc = get_autodoc_for(xform)
user_list = [u.username for u in User.objects.exclude(username=username)]
context.user_json_list = simplejson.dumps(user_list)
return render_to_response("show.html", context_instance=context)
示例14: edit
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
def edit(request, username, id_string):
xform = XForm.objects.get(user__username=username, id_string=id_string)
if request.GET.get('crowdform'):
crowdform_action = request.GET['crowdform']
request_username = request.user.username
# ensure is crowdform
if xform.is_crowd_form:
if crowdform_action == 'delete':
MetaData.objects.get(
xform__id_string=id_string,
data_value=request_username,
data_type=MetaData.CROWDFORM_USERS
).delete()
elif crowdform_action == 'add':
MetaData.crowdform_users(xform, request_username)
return HttpResponseRedirect(reverse(profile, kwargs={
'username': request_username
}))
if username == request.user.username or\
request.user.has_perm('odk_logger.change_xform', xform):
if request.POST.get('description'):
xform.description = request.POST['description']
elif request.POST.get('title'):
xform.title = request.POST['title']
elif request.POST.get('toggle_shared'):
if request.POST['toggle_shared'] == 'data':
xform.shared_data = not xform.shared_data
elif request.POST['toggle_shared'] == 'form':
xform.shared = not xform.shared
elif request.POST['toggle_shared'] == 'active':
xform.downloadable = not xform.downloadable
elif request.POST['toggle_shared'] == 'crowd':
if xform.is_crowd_form:
xform.is_crowd_form = False
else:
xform.is_crowd_form = True
xform.shared = True
xform.shared_data = True
elif request.POST.get('form-license'):
MetaData.form_license(xform, request.POST['form-license'])
elif request.POST.get('data-license'):
MetaData.data_license(xform, request.POST['data-license'])
elif request.POST.get('source') or request.FILES.get('source'):
MetaData.source(xform, request.POST.get('source'),
request.FILES.get('source'))
elif request.FILES.get('media'):
MetaData.media_upload(xform, request.FILES.get('media'))
elif request.POST.get('map_name'):
mapbox_layer = MapboxLayerForm(request.POST)
if mapbox_layer.is_valid():
MetaData.mapbox_layer_upload(xform, mapbox_layer.cleaned_data)
elif request.FILES:
MetaData.supporting_docs(xform, request.FILES['doc'])
xform.update()
if request.is_ajax():
return HttpResponse(_(u'Updated succeeded.'))
else:
return HttpResponseRedirect(reverse(show, kwargs={
'username': username,
'id_string': id_string
}))
return HttpResponseForbidden(_(u'Update failed.'))
示例15: edit
# 需要导入模块: from main.models import MetaData [as 别名]
# 或者: from main.models.MetaData import source [as 别名]
#.........这里部分代码省略.........
_("Active status for '%(id_string)s' updated from '%(old_shared)s' to '%(new_shared)s'.") %\
{
'id_string': xform.id_string,
'old_shared': _("shared") if xform.downloadable else _("not shared"),
'new_shared': _("shared") if not xform.downloadable else _("not shared")
}, audit, request)
xform.downloadable = not xform.downloadable
elif request.POST['toggle_shared'] == 'crowd':
audit = {
'xform': xform.id_string
}
audit_log(Actions.FORM_UPDATED, request.user, owner,
_("Crowdform status for '%(id_string)s' updated from '%(old_status)s' to '%(new_status)s'.") %\
{
'id_string': xform.id_string,
'old_status': _("crowdform") if not xform.is_crowd_form else _("not crowdform"),
'new_status': _("crowdform") if xform.is_crowd_form else _("not crowdform"),
}, audit, request)
if xform.is_crowd_form:
xform.is_crowd_form = False
else:
xform.is_crowd_form = True
xform.shared = True
xform.shared_data = True
elif request.POST.get('form-license'):
audit = {
'xform': xform.id_string
}
audit_log(Actions.FORM_UPDATED, request.user, owner,
_("Form License for '%(id_string)s' updated to '%(form_license)s'.") %\
{
'id_string': xform.id_string,
'form_license': request.POST['form-license'],
}, audit, request)
MetaData.form_license(xform, request.POST['form-license'])
elif request.POST.get('data-license'):
audit = {
'xform': xform.id_string
}
audit_log(Actions.FORM_UPDATED, request.user, owner,
_("Data license for '%(id_string)s' updated to '%(data_license)s'.") %\
{
'id_string': xform.id_string,
'data_license': request.POST['data-license'],
}, audit, request)
MetaData.data_license(xform, request.POST['data-license'])
elif request.POST.get('source') or request.FILES.get('source'):
audit = {
'xform': xform.id_string
}
audit_log(Actions.FORM_UPDATED, request.user, owner,
_("Source for '%(id_string)s' updated to '%(source)s'.") %\
{
'id_string': xform.id_string,
'source': request.POST.get('source'),
}, audit, request)
MetaData.source(xform, request.POST.get('source'),
request.FILES.get('source'))
elif request.FILES.get('media'):
audit = {
'xform': xform.id_string
}
audit_log(Actions.FORM_UPDATED, request.user, owner,
_("Media added to '%(id_string)s'.") %\
{
'id_string': xform.id_string
}, audit, request)
MetaData.media_upload(xform, request.FILES.get('media'))
elif request.POST.get('map_name'):
mapbox_layer = MapboxLayerForm(request.POST)
if mapbox_layer.is_valid():
audit = {
'xform': xform.id_string
}
audit_log(Actions.FORM_UPDATED, request.user, owner,
_("Map layer added to '%(id_string)s'.") %\
{
'id_string': xform.id_string
}, audit, request)
MetaData.mapbox_layer_upload(xform, mapbox_layer.cleaned_data)
elif request.FILES:
audit = {
'xform': xform.id_string
}
audit_log(Actions.FORM_UPDATED, request.user, owner,
_("Supporting document added to '%(id_string)s'.") %\
{
'id_string': xform.id_string
}, audit, request)
MetaData.supporting_docs(xform, request.FILES['doc'])
xform.update()
if request.is_ajax():
return HttpResponse(_(u'Updated succeeded.'))
else:
return HttpResponseRedirect(reverse(show, kwargs={
'username': username,
'id_string': id_string
}))
return HttpResponseForbidden(_(u'Update failed.'))