Code Duplication    Length = 22-24 lines in 2 locations

backend/tracim_backend/lib/webdav/design.py 1 location

@@ 128-149 (lines=22) @@
125
}
126
127
128
def create_readable_date(created, delta_from_datetime: datetime = None):
129
    if not delta_from_datetime:
130
        delta_from_datetime = datetime.now()
131
132
    delta = delta_from_datetime - created
133
134
    if delta.days > 0:
135
        if delta.days >= 365:
136
            aff = '%d year%s ago' % (delta.days / 365, 's' if delta.days / 365 >= 2 else '')
137
        elif delta.days >= 30:
138
            aff = '%d month%s ago' % (delta.days / 30, 's' if delta.days / 30 >= 2 else '')
139
        else:
140
            aff = '%d day%s ago' % (delta.days, 's' if delta.days >= 2 else '')
141
    else:
142
        if delta.seconds < 60:
143
            aff = '%d second%s ago' % (delta.seconds, 's' if delta.seconds > 1 else '')
144
        elif delta.seconds / 60 < 60:
145
            aff = '%d minute%s ago' % (delta.seconds / 60, 's' if delta.seconds / 60 >= 2 else '')
146
        else:
147
            aff = '%d hour%s ago' % (delta.seconds / 3600, 's' if delta.seconds / 3600 >= 2 else '')
148
149
    return aff
150
151
def designPage(content: data.Content, content_revision: data.ContentRevisionRO) -> str:
152
    hist = content.get_history(drop_empty_revision=False)

backend/tracim_backend/models/data.py 1 location

@@ 1477-1500 (lines=24) @@
1474
        return format_timedelta(delta_from_datetime - self.created,
1475
                                locale=get_locale())
1476
1477
    def create_readable_date(self, delta_from_datetime:datetime=None):
1478
        aff = ''
1479
1480
        if not delta_from_datetime:
1481
            delta_from_datetime = datetime.utcnow()
1482
1483
        delta = delta_from_datetime - self.created
1484
1485
        if delta.days > 0:
1486
            if delta.days >= 365:
1487
                aff = '%d year%s ago' % (delta.days/365, 's' if delta.days/365>=2 else '')
1488
            elif delta.days >= 30:
1489
                aff = '%d month%s ago' % (delta.days/30, 's' if delta.days/30>=2 else '')
1490
            else:
1491
                aff = '%d day%s ago' % (delta.days, 's' if delta.days>=2 else '')
1492
        else:
1493
            if delta.seconds < 60:
1494
                aff = '%d second%s ago' % (delta.seconds, 's' if delta.seconds>1 else '')
1495
            elif delta.seconds/60 < 60:
1496
                aff = '%d minute%s ago' % (delta.seconds/60, 's' if delta.seconds/60>=2 else '')
1497
            else:
1498
                aff = '%d hour%s ago' % (delta.seconds/3600, 's' if delta.seconds/3600>=2 else '')
1499
1500
        return aff
1501