fnp
/
redakcja.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
predictable urls to cover images
[redakcja.git]
/
apps
/
catalogue
/
models
/
chunk.py
diff --git
a/apps/catalogue/models/chunk.py
b/apps/catalogue/models/chunk.py
index
e68b1c1
..
fc3a9ea
100755
(executable)
--- a/
apps/catalogue/models/chunk.py
+++ b/
apps/catalogue/models/chunk.py
@@
-20,8
+20,9
@@
class Chunk(dvcs_models.Document):
book = models.ForeignKey('Book', editable=False, verbose_name=_('book'))
number = models.IntegerField(_('number'))
book = models.ForeignKey('Book', editable=False, verbose_name=_('book'))
number = models.IntegerField(_('number'))
- slug = models.SlugField(_('slug'))
title = models.CharField(_('title'), max_length=255, blank=True)
title = models.CharField(_('title'), max_length=255, blank=True)
+ slug = models.SlugField(_('slug'))
+ gallery_start = models.IntegerField(_('gallery start'), null=True, blank=True, default=1)
# cache
_short_html = models.TextField(null=True, blank=True, editable=False)
# cache
_short_html = models.TextField(null=True, blank=True, editable=False)
@@
-38,6
+39,7
@@
class Chunk(dvcs_models.Document):
ordering = ['number']
verbose_name = _('chunk')
verbose_name_plural = _('chunks')
ordering = ['number']
verbose_name = _('chunk')
verbose_name_plural = _('chunks')
+ permissions = [('can_pubmark', 'Can mark for publishing')]
# Representing
# ============
# Representing
# ============
@@
-47,7
+49,7
@@
class Chunk(dvcs_models.Document):
@models.permalink
def get_absolute_url(self):
@models.permalink
def get_absolute_url(self):
- return
("wiki_editor", [self.book.slug, self.slug])
+ return
"wiki_editor", [self.book.slug, self.slug]
def pretty_name(self, book_length=None):
title = self.book.title
def pretty_name(self, book_length=None):
title = self.book.title
@@
-57,11
+59,10
@@
class Chunk(dvcs_models.Document):
title += " (%d/%d)" % (self.number, book_length)
return title
title += " (%d/%d)" % (self.number, book_length)
return title
-
# Creating and manipulation
# =========================
# Creating and manipulation
# =========================
- def split(self, slug, title='',
adjust_slug=False,
**kwargs):
+ def split(self, slug, title='', **kwargs):
""" Create an empty chunk after this one """
self.book.chunk_set.filter(number__gt=self.number).update(
number=models.F('number')+1)
""" Create an empty chunk after this one """
self.book.chunk_set.filter(number__gt=self.number).update(
number=models.F('number')+1)
@@
-69,8
+70,9
@@
class Chunk(dvcs_models.Document):
while not new_chunk:
new_slug = self.book.make_chunk_slug(slug)
try:
while not new_chunk:
new_slug = self.book.make_chunk_slug(slug)
try:
- new_chunk = self.book.chunk_set.create(number=self.number+1,
- slug=new_slug, title=title, **kwargs)
+ new_chunk = self.book.chunk_set.create(
+ number=self.number+1,
+ slug=new_slug[:50], title=title[:255], **kwargs)
except IntegrityError:
pass
return new_chunk
except IntegrityError:
pass
return new_chunk
@@
-82,7
+84,6
@@
class Chunk(dvcs_models.Document):
else:
return cls.objects.get(book__slug=book_slug, slug=chunk_slug)
else:
return cls.objects.get(book__slug=book_slug, slug=chunk_slug)
-
# State & cache
# =============
# State & cache
# =============
@@
-90,7
+91,7
@@
class Chunk(dvcs_models.Document):
change = self.publishable()
if not change:
return False
change = self.publishable()
if not change:
return False
- return change.publish_log.exists()
+ return
not
change.publish_log.exists()
def is_changed(self):
if self.head is None:
def is_changed(self):
if self.head is None: