Projet

Général

Profil

0001-linkcell-can-link-to-a-combo-page-7400.patch

Thomas Noël, 29 mai 2015 10:07

Télécharger (3,05 ko)

Voir les différences:

Subject: [PATCH] linkcell can link to a combo page (#7400)

 combo/data/migrations/0007_auto_20150529_0755.py | 32 ++++++++++++++++++++++++
 combo/data/models.py                             | 14 +++++++++--
 combo/public/templates/combo/link-cell.html      |  2 +-
 3 files changed, 45 insertions(+), 3 deletions(-)
 create mode 100644 combo/data/migrations/0007_auto_20150529_0755.py
combo/data/migrations/0007_auto_20150529_0755.py
1
# -*- coding: utf-8 -*-
2
from __future__ import unicode_literals
3

  
4
from django.db import models, migrations
5

  
6

  
7
class Migration(migrations.Migration):
8

  
9
    dependencies = [
10
        ('data', '0006_linkcell'),
11
    ]
12

  
13
    operations = [
14
        migrations.AddField(
15
            model_name='linkcell',
16
            name='link_page',
17
            field=models.ForeignKey(related_name='link_cell', to='data.Page', null=True),
18
            preserve_default=True,
19
        ),
20
        migrations.AlterField(
21
            model_name='linkcell',
22
            name='title',
23
            field=models.CharField(max_length=150, verbose_name='Title', blank=True),
24
            preserve_default=True,
25
        ),
26
        migrations.AlterField(
27
            model_name='linkcell',
28
            name='url',
29
            field=models.URLField(verbose_name='URL', blank=True),
30
            preserve_default=True,
31
        ),
32
    ]
combo/data/models.py
440 440

  
441 441
@register_cell_class
442 442
class LinkCell(CellBase):
443
    title = models.CharField(_('Title'), max_length=150)
444
    url = models.URLField(_('URL'))
443
    title = models.CharField(_('Title'), max_length=150, blank=True)
444
    url = models.URLField(_('URL'), blank=True)
445
    link_page = models.ForeignKey('data.Page', related_name='link_cell', null=True)
445 446

  
446 447
    template_name = 'combo/link-cell.html'
447 448

  
......
452 453
        if not self.title:
453 454
            return None
454 455
        return utils.ellipsize(self.title)
456

  
457
    def render(self, context):
458
        if self.link_page:
459
            context['url'] = self.link_page.get_online_url()
460
            context['title'] = self.title or self.link_page.title
461
        else:
462
            context['url'] = self.url
463
            context['title'] = self.title or self.url
464
        return super(LinkCell, self).render(context)
combo/public/templates/combo/link-cell.html
1
<a href="{{cell.url}}">{{cell.title}}</a>
1
<a href="{{url}}">{{title}}</a>
2
-