Code Duplication    Length = 15-21 lines in 2 locations

pages/placeholders.py 1 location

@@ 311-331 (lines=21) @@
308
        return "<Placeholder Node: %s>" % self.name
309
310
311
def get_filename(page, content_type, data):
312
    """
313
    Generate a stable filename using the original filename of the type.
314
315
316
    """
317
    avoid_collision = uuid.uuid4().hex[:8]
318
319
    name_parts = data.name.split('.')
320
    if len(name_parts) > 1:
321
        name = slugify('.'.join(name_parts[:-1]), allow_unicode=True)
322
        ext = slugify(name_parts[-1])
323
        name = name + '.' + ext
324
    else:
325
        name = slugify(data.name)
326
    filename = os.path.join(
327
        settings.PAGE_UPLOAD_ROOT,
328
        'page_' + str(page.id),
329
        content_type + '-' + avoid_collision + '-' + name
330
    )
331
    return filename
332
333
334
class FilePlaceholderNode(PlaceholderNode):

pages/models.py 1 location

@@ 555-569 (lines=15) @@
552
        return "{0} :: {1}".format(self.url, self.page.get_complete_slug())
553
554
555
def media_filename(instance, filename):
556
    avoid_collision = uuid.uuid4().hex[:8]
557
    name_parts = filename.split('.')
558
    if len(name_parts) > 1:
559
        name = slugify('.'.join(name_parts[:-1]), allow_unicode=True)
560
        ext = slugify(name_parts[-1])
561
        name = name + '.' + ext
562
    else:
563
        name = slugify(data.name)
564
    filename = os.path.join(
565
        settings.PAGE_UPLOAD_ROOT,
566
        'medias',
567
        name
568
    )
569
    return filename
570
571
572
@python_2_unicode_compatible