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

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