ajax_export.py 789 Bytes
#-*- coding:utf-8 -*-

from common.decorators import render, ajax, AjaxError
from dictionary.forms import MagicQualifierForm
from dictionary.models import SavedExportData

@render()
@ajax(method='get', encode_result=False)
def magic_qualifier_row(request):
  return {'form': MagicQualifierForm(prefix='magic_NUM')}

@ajax(method='post')
def save_export_data(request, name, serialized_data, force=False):
  existing_data = SavedExportData.objects.filter(name=name)
  if force or not existing_data:
    if existing_data:
      data = existing_data[0]
    else:
      data = SavedExportData()
      data.name = name
    data.serialized_data = serialized_data
    try:
      data.save()
    except ValueError as e:
      raise AjaxError(e.data)
  else:
    return {'exists': True}
  return {}