app/soc/views/docs/edit.py
changeset 448 075360be6743
parent 445 31927f21970d
equal deleted inserted replaced
447:83b49d60effd 448:075360be6743
    59 def getDocForForm(form):
    59 def getDocForForm(form):
    60   """Extracts doc fields from a form and creates a new doc from it
    60   """Extracts doc fields from a form and creates a new doc from it
    61   """
    61   """
    62 
    62 
    63   user = users.get_current_user()
    63   user = users.get_current_user()
    64   if user:
       
    65     email = user.email()
       
    66   else:
       
    67     email = None
       
    68 
    64 
    69   partial_path = form.cleaned_data.get('partial_path')
    65   partial_path = form.cleaned_data.get('partial_path')
    70   link_name = form.cleaned_data.get('link_name')
    66   link_name = form.cleaned_data.get('link_name')
    71 
    67 
    72   properties = {}
    68   properties = {}
    73   properties['partial_path'] = partial_path
    69   properties['partial_path'] = partial_path
    74   properties['link_name'] = link_name
    70   properties['link_name'] = link_name
    75   properties['title'] = form.cleaned_data.get('title')
    71   properties['title'] = form.cleaned_data.get('title')
    76   properties['short_name'] = form.cleaned_data.get('short_name')
    72   properties['short_name'] = form.cleaned_data.get('short_name')
    77   properties['content'] = form.cleaned_data.get('content')
    73   properties['content'] = form.cleaned_data.get('content')
    78   properties['author'] = models.user.logic.getFromFields(email=email)
    74   properties['author'] = models.user.logic.getForFields({'id': user}, unique=True)
    79   properties['is_featured'] = form.cleaned_data.get('is_featured')
    75   properties['is_featured'] = form.cleaned_data.get('is_featured')
    80 
    76 
    81   key_fields = document.logic.getKeyFieldsFromDict(properties)
    77   key_fields = document.logic.getKeyFieldsFromDict(properties)
    82 
    78 
    83   doc = document.logic.updateOrCreateFromFields(properties, key_fields)
    79   doc = document.logic.updateOrCreateFromFields(properties, key_fields)