Beispiel #1
0
  def post(self):
    """Edits records from commands received by the list code.
    """
    post_data = self.request.POST

    if not post_data.get('button_id', None) == 'save':
      raise BadRequest('No valid POST data found')

    data = self.data.POST.get('data')
    if not data:
      raise BadRequest('Missing data')

    parsed = simplejson.loads(data)
    self.data.redirect.program()
    url = self.data.redirect.urlOf('create_gci_org_profile', full=True)

    for id, properties in parsed.iteritems():
      record = OrgAppRecord.get_by_id(long(id))

      if not record:
        logging.warning('%s is an invalid OrgAppRecord ID' %id)
        continue

      if record.survey.key() != self.data.org_app.key():
        logging.warning('%s is not a record for the Org App in the URL' %record.key())
        continue

      new_status = properties['status']
      org_app_logic.setStatus(self.data, record, new_status, url)

    self.response.set_status(200)
Beispiel #2
0
def process(org_app):
  ctx = context.get()
  params = ctx.mapreduce_spec.mapper.params
  program_key = params['program_key']
  # TODO(SRabbelier): should have been a full url
  url = 'gci/profile/organization/%s' % program_key

  # TODO(SRabbelier): create a MapReduce/Task RequestData
  data = RequestData()
  data.program = GCIProgram.get_by_key_name(program_key)
  data.site = Site.get_by_key_name('site')

  if org_app.status == 'pre-accepted':
    org_app_logic.setStatus(data, org_app, 'accepted', url)
    yield operation.counters.Increment("proposals_accepted")
  elif org_app.status == 'pre-rejected':
    org_app_logic.setStatus(data, org_app, 'rejected', url)
    yield operation.counters.Increment("proposals_rejected")
  else:
    yield operation.counters.Increment("proposals_ignored")