コード例 #1
0
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(
                project, [dao.PROJECT_OWN, dao.PROJECT_MANAGE]):
            webapp2.abort(401)

        variable_list = list()

        for variable_entity in dao.get_variables(project):
            variable = dict()
            variable[u'id'] = variable_entity.key.id()
            variable[u'name'] = variable_entity.name
            variable[u'description'] = variable_entity.description
            variable[u'is_repeating'] = variable_entity.is_repeating
            variable[u'input_field'] = variable_entity.input_field
            variable[u'assignments'] = self.get_assignments(project, variable)
            variable[u'documents'] = self.get_documents(project, variable)

            variable_list.append(variable)

        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/variable/index.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'variables'] = variable_list

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #2
0
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'_project_id'))
        if not dao.test_project_permissions(project, []):
            webapp2.abort(401)

        interview_service = InterviewService(project)
        interview_name = self.request.get(u'_interview_name')
        interview = interview_service.get_interview_by_name(interview_name)

        variable = dao.get_variable_by_internal_name(project, self.request.get(u'_variable_name'))

        index = self.request.get(u'_index')

        # Deliver HTTP response
        jinja_template = ui.get_template(self, u'project/upload_file.html')
        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'interview'] = interview
        jinja_template_values[u'variable'] = variable
        if index:
            jinja_template_values[u'show_index'] = True
            jinja_template_values[u'index'] = index

        jinja_template_values[u'upload_file_post_url'] = blobstore.create_upload_url('/project/upload_file_post')

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #3
0
    def render(self, project, project_user_id, project_user, error_msg):
        # Build list of permission checkboxes and whether they should be checked
        permissions = list()
        if project_user:
            for project_permission in dao.get_all_project_permissions():
                permission = {
                    u'name':
                    project_permission,
                    u'checked':
                    u'checked'
                    if project_permission in project_user.permissions else u''
                }
                permissions.append(permission)

        # Create template and template values, render the page
        jinja_template = ui.get_template(
            self, u'project_admin/project_user_edit.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'project_user_id'] = project_user_id
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[
            u'email'] = project_user.email if project_user else u'(unknown)'
        jinja_template_values[u'permissions'] = permissions

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #4
0
    def render(self, project, assignment_entity, error_msg):
        assignment_names = dao.get_assignment_names(project)
        if assignment_entity.name in assignment_names:
            assignment_names.remove(assignment_entity.name)

        # Create template and template values, render the page
        jinja_template = ui.get_template(self,
                                         u'project/assignment/structure.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'assignment_id'] = assignment_entity.key.id()
        jinja_template_values[u'name'] = assignment_entity.name
        jinja_template_values[u'is_repeating'] = assignment_entity.is_repeating
        jinja_template_values[
            u'instructions_to_manager'] = assignment_entity.instructions_to_manager if assignment_entity.instructions_to_manager else u''
        jinja_template_values[
            u'instructions_to_writer'] = assignment_entity.instructions_to_writer if assignment_entity.instructions_to_writer else u''
        jinja_template_values[
            'prereq_assignment_names'] = assignment_entity.prereq_assignment_names if assignment_entity.prereq_assignment_names else list(
            )
        jinja_template_values[
            u'variable_names'] = assignment_entity.variable_names
        jinja_template_values[
            u'checklist_items'] = assignment_entity.checklist_items
        jinja_template_values[u'single_names'] = dao.get_single_names(project)
        jinja_template_values[u'assignment_names'] = assignment_names
        jinja_template_values[u'repeating_names'] = dao.get_repeating_names(
            project)

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #5
0
ファイル: console.py プロジェクト: t-s/turbo-writer
    def render(self, project, assignments):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project_admin/console.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'assignments'] = assignments

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #6
0
ファイル: project_settings.py プロジェクト: t-s/turbo-writer
    def render(self, project, error_msg=None):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project_admin/project_settings.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #7
0
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(project, []):
            webapp2.abort(401)

        jinja_template = ui.get_template(self, u'project/index.html')
        jinja_template_values = dao.get_standard_project_values(project)
        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #8
0
ファイル: attachment_add.py プロジェクト: t-s/turbo-writer
    def render(self, project, error_msg=None, name=u'', description=u''):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self,
                                         u'project_admin/attachment_add.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'name'] = name
        jinja_template_values[u'description'] = description

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #9
0
ファイル: add.py プロジェクト: t-s/turbo-writer
    def render(self, project, error_msg=None):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/style/add.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'name'] = self.request.get(u'name')
        jinja_template_values[u'description'] = self.request.get(u'description')
        jinja_template_values[u'css'] = self.request.get(u'css')

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #10
0
    def render(self, project, permissions, error_msg=None):
        # Create template and template values, render the page
        jinja_template = ui.get_template(
            self, u'project_admin/project_user_add.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'email'] = self.request.get(u'email')
        jinja_template_values[u'permissions'] = permissions

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #11
0
    def render(self, project, style_entity, error_msg):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/style/edit.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'style_id'] = style_entity.key.id()
        jinja_template_values[u'name'] = style_entity.name
        jinja_template_values[u'description'] = style_entity.description
        jinja_template_values[u'css'] = style_entity.css

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #12
0
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(project, []):
            webapp2.abort(401)

        # Create template and template values, render the page
        jinja_template = ui.get_template(
            self, u'project_admin/project_user_admin.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'users'] = dao.get_project_users(project)

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #13
0
    def render(self, project, attachment, error_msg=None):
        # Create template and template values, render the page
        jinja_template = ui.get_template(
            self, u'project_admin/attachment_edit.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'attachment_id'] = attachment.key.id()
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'name'] = attachment.name
        jinja_template_values[u'description'] = attachment.description
        jinja_template_values[u'filename'] = attachment.filename

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #14
0
    def render(self, project, assignment_entity, error_msg):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/assignment/edit.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'assignment_id'] = assignment_entity.key.id()
        jinja_template_values[u'name'] = assignment_entity.name
        jinja_template_values[u'description'] = assignment_entity.description
        jinja_template_values[
            u'type'] = u'repeating' if assignment_entity.is_repeating else u'single'

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #15
0
    def render(self, project, document_entity, error_msg):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/document/structure.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'document_id'] = document_entity.key.id()
        jinja_template_values[u'name'] = document_entity.name
        jinja_template_values[u'items'] = dao.get_document_items(document_entity)
        jinja_template_values[u'single_names'] = dao.get_single_names(project)
        jinja_template_values[u'repeating_names'] = dao.get_repeating_names(project)
        jinja_template_values[u'style_names'] = dao.get_style_names(project)

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #16
0
    def render(self, project, variable_entity, error_msg):
        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/variable/edit.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'error_msg'] = error_msg
        jinja_template_values[u'variable_id'] = variable_entity.key.id()
        jinja_template_values[u'name'] = variable_entity.name
        jinja_template_values[u'description'] = variable_entity.description
        jinja_template_values[
            u'type'] = u'repeating' if variable_entity.is_repeating else u'single'
        jinja_template_values[u'input_field'] = variable_entity.input_field

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #17
0
ファイル: produce_document.py プロジェクト: t-s/turbo-writer
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(project, []):
            webapp2.abort(401)

        document = dao.get_document_by_id(project,
                                          self.request.get(u'document_id'))
        html_document = self.generate_html_document(project, document)
        html_document = self.replace_image_elements(project, html_document)

        # Deliver HTTP response
        jinja_template = ui.get_template(self,
                                         u'project/produce_document.html')
        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'document'] = document
        jinja_template_values[u'html_document'] = html_document
        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #18
0
ファイル: attachment_upload.py プロジェクト: t-s/turbo-writer
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(project, []):
            webapp2.abort(401)

        attachment = dao.get_attachment_by_id(
            project, self.request.get(u'attachment_id'))

        # Deliver HTTP response
        jinja_template = ui.get_template(
            self, u'project_admin/attachment_upload.html')
        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'attachment'] = attachment
        jinja_template_values[u'name'] = self.request.get(u'name')
        jinja_template_values[
            u'attachment_upload_post_url'] = blobstore.create_upload_url(
                u'/project_admin/attachment_upload_post')

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #19
0
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(
                project, [dao.PROJECT_OWN, dao.PROJECT_MANAGE]):
            webapp2.abort(401)

        style_list = list()

        for style_entity in dao.get_styles(project):
            style = dict()
            style[u'id'] = style_entity.key.id()
            style[u'name'] = style_entity.name
            style[u'description'] = style_entity.description
            style[u'css'] = style_entity.css
            style_list.append(style)

        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/style/index.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'styles'] = style_list

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #20
0
ファイル: index.py プロジェクト: t-s/turbo-writer
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(project, [dao.PROJECT_OWN, dao.PROJECT_MANAGE]):
            webapp2.abort(401)

        document_list = list()

        for document_entity in dao.get_documents(project):
            document = dict()
            document[u'id'] = document_entity.key.id()
            document[u'key'] = document_entity.key
            document[u'name'] = document_entity.name
            document[u'description'] = document_entity.description
            document[u'style'] = document_entity.style_name
            document_list.append(document)

        # Create template and template values, render the page
        jinja_template = ui.get_template(self, u'project/document/index.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'documents'] = document_list

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #21
0
    def get(self):
        project = dao.get_project_by_id(self.request.get(u'project_id'))
        if not dao.test_project_permissions(
                project, [dao.PROJECT_OWN, dao.PROJECT_MANAGE]):
            webapp2.abort(401)

        assignment_list = list()

        for assignment_entity in dao.get_assignments(project):
            assignment = dict()
            assignment[u'id'] = assignment_entity.key.id()
            assignment[u'name'] = assignment_entity.name
            assignment[u'description'] = assignment_entity.description
            assignment[u'is_repeating'] = assignment_entity.is_repeating
            assignment_list.append(assignment)

        # Create template and template values, render the page
        jinja_template = ui.get_template(self,
                                         u'project/assignment/index.html')

        jinja_template_values = dao.get_standard_project_values(project)
        jinja_template_values[u'assignments'] = assignment_list

        self.response.out.write(jinja_template.render(jinja_template_values))
コード例 #22
0
ファイル: conduct_interview.py プロジェクト: t-s/turbo-writer
    def render(self,
               project,
               interview_name,
               interview_service,
               index,
               error_msg=None):
        interview_service.set_bookmark(interview_name)
        interview = interview_service.get_interview_by_name(interview_name)

        # Render inner template
        inner_template_values = dict()

        inner_template_values[u'project'] = project
        inner_template_values[u'interview'] = interview
        inner_template_values[u'index'] = index

        inner_template_values[u'error_msg'] = error_msg

        self.generate_variable_values(project, index, inner_template_values)

        self.generate_email_assignment(project, interview, interview_service,
                                       inner_template_values)

        inner_template_values[u'assignment_name'] = self.fill(
            interview.assignment_name)
        inner_template_values[u'writer'] = interview.is_writer_interview
        inner_template_values[u'reviewer'] = not interview.is_writer_interview
        inner_template_values[u'reviewer_comment'] = self.fill(
            interview.reviewer_comment)
        inner_template_values[u'manager_instructions_to_writer'] = self.fill(
            interview.manager_instructions_to_writer)

        inner_template_values[
            u'has_been_reviewed'] = interview.has_been_reviewed

        from_document_id = self.request.get(u'_from_document_id')
        if from_document_id:
            inner_template_values[u'from_document_id'] = from_document_id

        for checklist_index in range(len(interview.checklist_items)):
            checklist_item = interview.checklist_items[checklist_index]
            match = dao.parse_checklist_item(checklist_item)
            inner_template_values[u'writer_check_{}'.format(
                checklist_index)] = (match.group(2) == u'T')
            inner_template_values[u'reviewer_check_{}'.format(
                checklist_index)] = (match.group(3) == u'T')

        inner_template = ui.from_string(self, interview.content)
        html_document = inner_template.render(inner_template_values)

        # Deliver HTTP response
        jinja_template = ui.get_template(self,
                                         u'project/conduct_interview.html')

        jinja_template_values = dao.get_standard_project_values(project)

        jinja_template_values[u'post_interview_name'] = interview_name

        if index:
            jinja_template_values[u'show_index'] = True
            jinja_template_values[u'index'] = index

        jinja_template_values[u'attachments'] = dao.get_attachments_by_project(
            project)

        jinja_template_values[u'html_document'] = html_document

        if interview_service.get_previous_name(interview_name):
            jinja_template_values[
                u'previous_button'] = interview.previous_button if interview.previous_button else u'Previous'

        if interview_service.get_next_name(interview_name):
            jinja_template_values[
                u'next_button'] = interview.next_button if interview.next_button else u'Skip Assign'

        if interview.parent_button:
            jinja_template_values[u'parent_button'] = interview.parent_button

        if interview.child_interview_names:
            jinja_template_values[
                u'child_button'] = interview.child_button if interview.child_button else u'Add'

        jinja_template_values[u'assign_button'] = interview.assign_button

        if interview.not_needed_button:
            jinja_template_values[
                u'not_needed_button'] = interview.not_needed_button

        if interview.completed_button:
            jinja_template_values[
                u'completed_button'] = interview.completed_button

        if self.request.get(u'_from_console'):
            jinja_template_values[u'from_console'] = True

        from_document_id = self.request.get(u'_from_document_id')
        if from_document_id:
            jinja_template_values[u'from_document_id'] = from_document_id

        self.response.out.write(jinja_template.render(jinja_template_values))