コード例 #1
0
 def rows(self):
     checkbox = mark_safe('<input type="checkbox" class="selected-commcare-case" data-caseid="%(case_id)s" data-owner="%(owner)s" data-ownertype="%(owner_type)s" />')
     for row in self.es_results['hits'].get('hits', []):
         case = self.get_case(row)
         display = CaseDisplay(self, case)
         yield [
             checkbox % dict(case_id=case['_id'], owner=display.owner_id, owner_type=display.owner_type),
             display.case_link,
             display.case_type,
             display.owner_display,
             util.format_relative_date(display.parse_date(display.case['modified_on']))['html'],
         ]
コード例 #2
0
ファイル: interfaces.py プロジェクト: birdsarah/core-hq
 def rows(self):
     checkbox = mark_safe('<input type="checkbox" class="selected-commcare-case" data-bind="event: {change: updateCaseSelection}" data-caseid="%(case_id)s" data-owner="%(owner)s" data-ownertype="%(owner_type)s" />')
     for row in self.case_results['rows']:
         case = self.get_case(row)
         display = CaseDisplay(self, case)
         yield [
             checkbox % dict(case_id=case._id, owner=display.owner_id, owner_type=display.owner_type),
             display.case_link,
             display.case_type,
             display.owner_display,
             util.format_relative_date(case.modified_on)['html'],
         ]
コード例 #3
0
 def rows(self):
     rows = list()
     data = self._get_data()
     for app in data:
         rows.append([
             '<a href="%s">%s</a>' %
             (reverse('project_info',
                      args=[app.name]), app.copied_from.display_name()),
             app.organization_title(), app.project_type,
             len(app.copies_of_parent()), app.get_license_display,
             util.format_relative_date(app.snapshot_time)
         ])
     return rows
コード例 #4
0
ファイル: interfaces.py プロジェクト: mchampanis/core-hq
 def rows(self):
     rows = list()
     data = self._get_data()
     for app in data:
         rows.append(['<a href="%s">%s</a>' % (reverse('project_info', args=[app.name]),
                                               app.copied_from().display_name()),
                      app.organization_title(),
                      app.project_type,
                      len(app.copies_of_parent()),
                      app.get_license_display,
                      util.format_relative_date(app.snapshot_time)]
         )
     return rows
コード例 #5
0
ファイル: deployments.py プロジェクト: esoergel/commcare-hq
    def rows(self):
        rows = []
        selected_app = self.request_params.get(SelectApplicationField.slug, '')
        UNKNOWN = _("unknown")

        for user in self.users:
            last_seen = self.table_cell(-1, _("Never"))
            app_name = None

            key = make_form_couch_key(self.domain, user_id=user.get('user_id'), app_id=selected_app if selected_app else None)
            data = XFormInstance.view(
                "reports_forms/all_forms",
                startkey=key+[{}],
                endkey=key,
                include_docs=True,
                descending=True,
                reduce=False,
                limit=1,
            ).first()

            if data:
                last_seen = util.format_relative_date(data.received_on)

                if data.version != '1':
                    build_id = data.version
                else:
                    build_id = UNKNOWN

                if data.app_id:
                    try:
                        app = Application.get(data.app_id)
                        app_name = "%s [%s]" % (app.name, build_id)
                    except ResourceNotFound:
                        pass
                else:
                    try:
                        form_data = data.get_form
                        app_name = form_data['meta']['appVersion']['#text']
                    except KeyError:
                        pass
                    
                app_name = app_name or _("Unknown App")

            if app_name is None and selected_app:
                continue

            rows.append([user.get('username_in_report'), last_seen, app_name or "---"])
        return rows
コード例 #6
0
ファイル: interfaces.py プロジェクト: tsinkala/commcare-hq
 def rows(self):
     checkbox = mark_safe(
         '<input type="checkbox" class="selected-commcare-case" data-bind="event: {change: updateCaseSelection}" data-caseid="%(case_id)s" data-owner="%(owner)s" data-ownertype="%(owner_type)s" />'
     )
     for row in self.es_results['hits'].get('hits', []):
         case = self.get_case(row)
         display = CaseDisplay(self, case)
         yield [
             checkbox % dict(case_id=case['_id'],
                             owner=display.owner_id,
                             owner_type=display.owner_type),
             display.case_link,
             display.case_type,
             display.owner_display,
             util.format_relative_date(display.modified_on_dt)['html'],
         ]
コード例 #7
0
    def rows(self):
        rows = []
        selected_app = self.request_params.get(SelectApplicationFilter.slug, '')

        for user in self.users:
            last_seen = self.table_cell(-1, _("Never"))
            app_name = None

            key = make_form_couch_key(self.domain, user_id=user.user_id,
                                      app_id=selected_app or None)
            xform = XFormInstance.view(
                "reports_forms/all_forms",
                startkey=key+[{}],
                endkey=key,
                include_docs=True,
                descending=True,
                reduce=False,
                limit=1,
            ).first()

            if xform:
                last_seen = util.format_relative_date(xform.received_on)
                build_version, build_version_source = get_build_version(xform)

                if xform.app_id:
                    try:
                        app = get_app(self.domain, xform.app_id)
                    except ResourceNotFound:
                        pass
                    else:
                        app_name = app.name
                else:
                    app_name = get_meta_appversion_text(xform)

                build_html = _build_html(build_version, build_version_source)
                app_name = app_name or _("Unknown App")
                app_name = format_html(
                    u'{} {}', app_name, mark_safe(build_html),
                )

            if app_name is None and selected_app:
                continue

            rows.append(
                [user.username_in_report, last_seen, app_name or "---"]
            )
        return rows
コード例 #8
0
    def rows(self):
        rows = []
        selected_app = self.request_params.get(SelectApplicationField.slug, '')
        UNKNOWN = _("unknown")
        for user in self.users:
            last_seen = self.table_cell(-1, _("Never"))
            version = "---"
            app_name = "---"
            is_unknown = True
            key = make_form_couch_key(self.domain, user_id=user.get('user_id'))
            data = XFormInstance.view("reports_forms/all_forms",
                startkey=key+[{}],
                endkey=key,
                include_docs=True,
                descending=True,
                reduce=False,
                limit=1,
            ).first()

            if data:
                last_seen = util.format_relative_date(data.received_on)

                if data.version != '1':
                    build_id = data.version
                else:
                    build_id = UNKNOWN

                form_data = data.get_form
                try:
                    app_name = form_data['meta']['appVersion']['#text']
                    version = _("2.0 Remote")
                except KeyError:
                    try:
                        app = Application.get(data.app_id)
                        is_unknown = False
                        if selected_app and selected_app != data.app_id:
                            continue
                        version = app.application_version
                        app_name = "%s [%s]" % (app.name, build_id)
                    except Exception:
                        version = UNKNOWN
                        app_name = UNKNOWN
            if is_unknown and selected_app:
                continue
            row = [user.get('username_in_report'), last_seen, version, app_name]
            rows.append(row)
        return rows
コード例 #9
0
ファイル: interfaces.py プロジェクト: mchampanis/core-hq
 def rows(self):
     rows = list()
     checkbox = '<input type="checkbox" class="selected-commcare-case" data-bind="event: {change: updateCaseSelection}" data-caseid="%(case_id)s" data-owner="%(owner)s" data-ownertype="%(owner_type)s" />'
     for user in self.users:
         data = self._get_data(user.get('user_id'))
         for item in data:
             case, case_link = self._get_case_info(item)
             if case:
                 rows.append([checkbox % dict(case_id=case._id, owner=user.get('user_id'), owner_type="user"),
                              case_link, case.type, user.get('username_in_report'), util.format_relative_date(case.modified_on)])
     for group in self.case_sharing_groups:
         data = self._get_data(group._id)
         for item in data:
             case, case_link = self._get_case_info(item)
             if case:
                 rows.append([checkbox % dict(case_id=case._id, owner=group.get_id, owner_type="group"),
                              case_link, case.type, '%s <span class="label label-inverse" title="%s">group</span>' % (group.name, group.name),
                              util.format_relative_date(case.modified_on)])
     return rows
コード例 #10
0
ファイル: deployments.py プロジェクト: tsinkala/commcare-hq
    def rows(self):
        rows = []
        selected_app = self.request_params.get(SelectApplicationField.slug, '')
        UNKNOWN = _("unknown")
        for user in self.users:
            last_seen = self.table_cell(-1, _("Never"))
            app_name = "---"
            is_unknown = True
            key = make_form_couch_key(self.domain, user_id=user.get('user_id'))
            data = XFormInstance.view("reports_forms/all_forms",
                startkey=key+[{}],
                endkey=key,
                include_docs=True,
                descending=True,
                reduce=False,
                limit=1,
            ).first()

            if data:
                last_seen = util.format_relative_date(data.received_on)

                if data.version != '1':
                    build_id = data.version
                else:
                    build_id = UNKNOWN

                form_data = data.get_form
                try:
                    app_name = form_data['meta']['appVersion']['#text']
                except KeyError:
                    try:
                        app = Application.get(data.app_id)
                        is_unknown = False
                        if selected_app and selected_app != data.app_id:
                            continue
                        app_name = "%s [%s]" % (app.name, build_id)
                    except Exception:
                        app_name = UNKNOWN
            if is_unknown and selected_app:
                continue
            row = [user.get('username_in_report'), last_seen, app_name]
            rows.append(row)
        return rows
コード例 #11
0
ファイル: deployments.py プロジェクト: wpride/commcare-hq
    def rows(self):
        rows = []
        selected_app = self.request_params.get(SelectApplicationFilter.slug, '')
        UNKNOWN = _("unknown")

        for user in self.users:
            last_seen = self.table_cell(-1, _("Never"))
            app_name = None

            key = make_form_couch_key(self.domain, user_id=user.get('user_id'), app_id=selected_app if selected_app else None)
            data = XFormInstance.view(
                "reports_forms/all_forms",
                startkey=key+[{}],
                endkey=key,
                include_docs=True,
                descending=True,
                reduce=False,
                limit=1,
            ).first()

            if data:
                last_seen = util.format_relative_date(data.received_on)
                build_version = get_build_version(data) or UNKNOWN

                if getattr(data, 'app_id', None):
                    try:
                        app = get_app(self.domain, data.app_id)
                    except ResourceNotFound:
                        pass
                    else:
                        app_name = "%s [%s]" % (app.name, build_version)
                else:
                    app_name = get_meta_appversion_text(data)
                    
                app_name = app_name or _("Unknown App")

            if app_name is None and selected_app:
                continue

            rows.append([user.get('username_in_report'), last_seen, app_name or "---"])
        return rows