Exemple #1
0
    def promote(self, request):

        '''
        Promote a proposal to become a project.

        TODO: Eventually this will kick off a pipeline to create a new project
        and copy over the relevent info. For now, just create and link the project.
        '''

        proposal_key = ndb.Key(urlsafe=self.decrypt(request.key))
        proposal = proposal_key.get()

        new_project = Project(
                name=proposal.name,
                status='p',
                proposal=proposal.key,
                category=proposal.category,
                summary=proposal.summary,
                pitch=proposal.pitch,
                tech=proposal.tech,
                keywords=proposal.keywords,
                creator=proposal.creator,
                owners=proposal.owners,
        )
        new_project.put()

        # Accept the proposal
        proposal.status = 'a'
        proposal.put()

        return Echo(message='')
Exemple #2
0
    def list(self, request):

        ''' Returns a list of projects. '''

        projects = Project.query(Project.status != 'p').fetch()
        messages = []
        for project in projects:
            messages.append(project.to_message())
        return project_messages.Projects(projects=messages)