Zinnia API¶
Contents
apps
Module¶
Apps for Zinnia
breadcrumbs
Module¶
Breadcrumb module for Zinnia
Bases:
object
Part of the breadcrumbs.
Crumb for a day.
Breadcrumbs for an Entry.
Decorator for handling the current page in the breadcrumbs.
Crumb for a month.
Build a semi-hardcoded breadcrumbs based of the model’s url handled by Zinnia.
Crumb for a year.
calendar
Module¶
Calendar module for Zinnia
-
class
zinnia.calendar.
Calendar
¶ Bases:
calendar.HTMLCalendar
Extension of the HTMLCalendar.
-
formatday
(day, weekday)¶ Return a day as a table cell with a link if entries are published this day.
Return a footer for a previous and next month.
-
formatmonth
(theyear, themonth, withyear=True, previous_month=None, next_month=None)¶ Return a formatted month as a table with new attributes computed for formatting a day, and thead/tfooter.
-
formatmonthname
(theyear, themonth, withyear=True)¶ Return a month name translated as a table row.
-
formatweekday
(day)¶ Return a weekday name translated as a table header.
-
formatweekheader
()¶ Return a header for a week as a table row.
-
comparison
Module¶
Comparison tools for Zinnia
-
class
zinnia.comparison.
CachedModelVectorBuilder
(**kwargs)¶ Bases:
zinnia.comparison.ModelVectorBuilder
Cached version of VectorBuilder.
-
cache
¶ Get the cache from cache.
-
cache_backend
¶ Try to access to
comparison
cache value, if fail use thedefault
cache backend config.
-
cache_flush
()¶ Flush the cache for this instance.
-
cache_key
¶ Key for the cache.
-
columns_dataset
¶ Implement high level cache system for columns and dataset.
-
get_cache
()¶ Get the cache from cache.
Implement high level cache system for get_related.
-
set_cache
(value)¶ Assign the cache in cache.
-
-
class
zinnia.comparison.
EntryPublishedVectorBuilder
(**kwargs)¶ Bases:
zinnia.comparison.CachedModelVectorBuilder
Vector builder for published entries.
-
cache_key
¶ Key for the cache handling current site.
-
fields
= ['title', 'lead', 'content', 'excerpt', 'image_caption', 'tags']¶
-
limit
= 100¶
-
queryset
= <zinnia.managers.EntryPublishedManager object>¶
-
-
class
zinnia.comparison.
ModelVectorBuilder
(**kwargs)¶ Bases:
object
Build a list of vectors based on a Queryset.
-
columns
¶ Access to columns.
-
columns_dataset
¶ Generate the columns and the whole dataset.
Compute the most related pks to an object’s pk.
-
dataset
¶ Access to dataset.
-
fields
= None¶
Return a list of the most related objects to instance.
-
limit
= None¶
-
queryset
= None¶
-
raw_clean
(datas)¶ Apply a cleaning on raw datas.
-
raw_dataset
¶ Generate a raw dataset based on the queryset and the specified fields.
-
-
zinnia.comparison.
pearson_score
(list1, list2)¶ Compute the Pearson’ score between 2 lists of vectors.
context_processors
Module¶
Context Processors for Zinnia
-
zinnia.context_processors.
version
(request)¶ Add version of Zinnia to the context.
context
Module¶
Context module for Zinnia
-
zinnia.context.
get_context_first_matching_object
(context, context_lookups)¶ Return the first object found in the context, from a list of keys, with the matching key.
-
zinnia.context.
get_context_first_object
(context, context_lookups)¶ Return the first object found in the context, from a list of keys.
-
zinnia.context.
get_context_loop_positions
(context)¶ Return the paginated current position within a loop, and the non-paginated position.
feeds
Module¶
Feeds for Zinnia
-
class
zinnia.feeds.
AuthorEntries
¶ Bases:
zinnia.feeds.EntryFeed
Feed filtered by an author.
-
description
(obj)¶ Description of the feed.
-
get_object
(request, username)¶ Retrieve the author by his username.
-
get_title
(obj)¶ Title of the feed.
-
items
(obj)¶ Items are the published entries of the author.
-
link
(obj)¶ URL of the author.
-
-
class
zinnia.feeds.
CategoryEntries
¶ Bases:
zinnia.feeds.EntryFeed
Feed filtered by a category.
-
description
(obj)¶ Description of the feed.
-
get_object
(request, path)¶ Retrieve the category by his path.
-
get_title
(obj)¶ Title of the feed.
-
items
(obj)¶ Items are the published entries of the category.
-
link
(obj)¶ URL of the category.
-
-
class
zinnia.feeds.
DiscussionFeed
¶ Bases:
zinnia.feeds.ZinniaFeed
Base class for discussion Feed.
-
description_template
= 'feeds/discussion_description.html'¶
Author’s email of the discussion item.
Author’s URL of the discussion.
Author of the discussion item.
-
item_link
(item)¶ URL of the discussion item.
-
item_pubdate
(item)¶ Publication date of a discussion.
-
title_template
= 'feeds/discussion_title.html'¶
-
-
class
zinnia.feeds.
EntryComments
¶ Bases:
zinnia.feeds.EntryDiscussions
Feed for comments on an entry.
-
description
(obj)¶ Description of the feed.
-
description_template
= 'feeds/comment_description.html'¶
-
get_title
(obj)¶ Title of the feed.
-
item_enclosure_length
(item)¶ Hardcoded enclosure length.
-
item_enclosure_mime_type
(item)¶ Hardcoded enclosure mimetype.
-
item_enclosure_url
(item)¶ Return a gravatar image for enclosure.
-
item_link
(item)¶ URL of the comment.
-
items
(obj)¶ Items are the comments on the entry.
-
title_template
= 'feeds/comment_title.html'¶
-
-
class
zinnia.feeds.
EntryDiscussions
¶ Bases:
zinnia.feeds.DiscussionFeed
Feed for discussions on an entry.
-
description
(obj)¶ Description of the feed.
-
get_object
(request, year, month, day, slug)¶ Retrieve the discussions by entry’s slug.
-
get_title
(obj)¶ Title of the feed.
-
items
(obj)¶ Items are the discussions on the entry.
-
link
(obj)¶ URL of the entry.
-
-
class
zinnia.feeds.
EntryFeed
¶ Bases:
zinnia.feeds.ZinniaFeed
Base Entry Feed.
-
description_template
= 'feeds/entry_description.html'¶
Return the first author’s email. Should not be called if self.item_author_name has returned None.
Return the author’s URL. Should not be called if self.item_author_name has returned None.
Return the first author of an entry.
-
item_categories
(item)¶ Entry’s categories.
-
item_enclosure_length
(item)¶ Try to obtain the size of the enclosure if it’s present on the FS, otherwise returns an hardcoded value. Note: this method is only called if item_enclosure_url has returned something.
-
item_enclosure_mime_type
(item)¶ Guess the enclosure’s mimetype. Note: this method is only called if item_enclosure_url has returned something.
-
item_enclosure_url
(item)¶ Return an image for enclosure.
-
item_pubdate
(item)¶ Publication date of an entry.
-
item_updateddate
(item)¶ Update date of an entry.
-
title_template
= 'feeds/entry_title.html'¶
-
-
class
zinnia.feeds.
EntryPingbacks
¶ Bases:
zinnia.feeds.EntryDiscussions
Feed for pingbacks on an entry.
-
description
(obj)¶ Description of the feed.
-
description_template
= 'feeds/pingback_description.html'¶
-
get_title
(obj)¶ Title of the feed.
-
item_link
(item)¶ URL of the pingback.
-
items
(obj)¶ Items are the pingbacks on the entry.
-
title_template
= 'feeds/pingback_title.html'¶
-
-
class
zinnia.feeds.
EntryTrackbacks
¶ Bases:
zinnia.feeds.EntryDiscussions
Feed for trackbacks on an entry.
-
description
(obj)¶ Description of the feed.
-
description_template
= 'feeds/trackback_description.html'¶
-
get_title
(obj)¶ Title of the feed.
-
item_link
(item)¶ URL of the trackback.
-
items
(obj)¶ Items are the trackbacks on the entry.
-
title_template
= 'feeds/trackback_title.html'¶
-
-
class
zinnia.feeds.
LastDiscussions
¶ Bases:
zinnia.feeds.DiscussionFeed
Feed for the last discussions.
-
description
()¶ Description of the feed.
-
get_title
(obj)¶ Title of the feed.
-
items
()¶ Items are the discussions on the entries.
-
link
()¶ URL of last discussions.
-
-
class
zinnia.feeds.
LastEntries
¶ Bases:
zinnia.feeds.EntryFeed
Feed for the last entries.
-
description
()¶ Description of the feed.
-
get_title
(obj)¶ Title of the feed
-
items
()¶ Items are published entries.
-
link
()¶ URL of last entries.
-
-
class
zinnia.feeds.
SearchEntries
¶ Bases:
zinnia.feeds.EntryFeed
Feed filtered by a search pattern.
-
description
(obj)¶ Description of the feed.
-
get_object
(request)¶ The GET parameter ‘pattern’ is the object.
-
get_title
(obj)¶ Title of the feed.
-
items
(obj)¶ Items are the published entries founds.
-
link
(obj)¶ URL of the search request.
-
-
class
zinnia.feeds.
TagEntries
¶ Bases:
zinnia.feeds.EntryFeed
Feed filtered by a tag.
-
description
(obj)¶ Description of the feed.
-
get_object
(request, tag)¶ Retrieve the tag by his name.
-
get_title
(obj)¶ Title of the feed.
-
items
(obj)¶ Items are the published entries of the tag.
-
link
(obj)¶ URL of the tag.
-
-
class
zinnia.feeds.
ZinniaFeed
¶ Bases:
django.contrib.syndication.views.Feed
Base Feed class for the Zinnia application, enriched for a more convenient usage.
-
feed_copyright
= 'Zinnia'¶
-
feed_format
= 'rss'¶
-
get_title
(obj)¶
-
limit
= 15¶
-
protocol
= 'http'¶
-
site
¶ Acquire the current site used.
-
site_url
¶ Return the URL of the current site.
-
title
(obj=None)¶ Title of the feed prefixed with the site name.
-
flags
Module¶
Comment flags for Zinnia
-
zinnia.flags.
get_user_flagger
(*args, **kwds)¶ Return an User instance used by the system when flagging a comment as trackback or pingback.
managers
Module¶
Managers of Zinnia
-
class
zinnia.managers.
EntryPublishedManager
¶ Bases:
django.db.models.manager.Manager
Manager to retrieve published entries.
-
advanced_search
(pattern)¶ Advanced search on entries.
-
basic_search
(pattern)¶ Basic search on entries.
-
get_queryset
()¶ Return published entries.
-
on_site
()¶ Return entries published on current site.
-
search
(pattern)¶ Top level search method on entries.
-
-
class
zinnia.managers.
EntryRelatedPublishedManager
¶ Bases:
django.db.models.manager.Manager
Manager to retrieve objects associated with published entries.
-
get_queryset
()¶ Return a queryset containing published entries.
-
-
zinnia.managers.
entries_published
(queryset)¶ Return only the entries published.
Return the published tags.
markups
Module¶
Set of” markup” function to transform plain text into HTML for Zinnia. Code originally provided by django.contrib.markups
-
zinnia.markups.
html_format
(value)¶ Returns the value formatted in HTML, depends on MARKUP_LANGUAGE setting.
-
zinnia.markups.
markdown
(value, extensions=[])¶ Markdown processing with optionally using various extensions that python-markdown supports. extensions is an iterable of either markdown.Extension instances or extension paths.
-
zinnia.markups.
restructuredtext
(value, settings={})¶ RestructuredText processing with optionnally custom settings.
-
zinnia.markups.
textile
(value)¶ Textile processing.
moderator
Module¶
Moderator of Zinnia comments
-
class
zinnia.moderator.
EntryCommentModerator
(model)¶ Bases:
django_comments.moderation.CommentModerator
Moderate the comments on entries.
-
auto_close_field
= 'start_publication'¶
-
auto_moderate_comments
= False¶
-
close_after
= None¶
Send email notification of a new comment to the authors of the entry.
-
do_email_notification
(comment, entry, site)¶ Send email notification of a new comment to site staff.
-
do_email_reply
(comment, entry, site)¶ Send email notification of a new comment to the authors of the previous comments.
-
email
(comment, entry, request)¶ Send email notifications needed.
-
email_reply
= False¶
-
enable_field
= 'comment_enabled'¶
-
mail_comment_notification_recipients
= []¶
-
moderate
(comment, entry, request)¶ Determine if a new comment should be marked as non-public and await approval. Return
True
to put the comment into the moderator queue, orFalse
to allow it to be showed up immediately.
-
spam_checker_backends
= []¶
-
ping
Module¶
Pings utilities for Zinnia
-
class
zinnia.ping.
DirectoryPinger
(server_name, entries, timeout=10)¶ Bases:
threading.Thread
Threaded web directory pinger.
-
ping_entry
(entry)¶ Ping an entry to a directory.
-
run
()¶ Ping entries to a directory in a thread.
-
-
class
zinnia.ping.
ExternalUrlsPinger
(entry, timeout=10)¶ Bases:
threading.Thread
Threaded external URLs pinger.
-
find_external_urls
(entry)¶ Find external URLs in an entry.
-
find_pingback_href
(content)¶ Try to find LINK markups to pingback URL.
-
find_pingback_urls
(urls)¶ Find the pingback URL for each URLs.
-
is_external_url
(url, site_url)¶ Check if the URL is an external URL.
-
pingback_url
(server_name, target_url)¶ Do a pingback call for the target URL.
-
run
()¶ Ping external URLs in a Thread.
-
-
class
zinnia.ping.
URLRessources
¶ Bases:
object
Object defining the ressources of the Website.
preview
Module¶
Preview for Zinnia
-
class
zinnia.preview.
HTMLPreview
(content, lead='', splitters=['<!-- more -->', '<!--more-->'], max_words=55, more_string=' ...')¶ Bases:
object
Build an HTML preview of an HTML content.
-
build_preview
()¶ Build the preview by:
- Returning the lead attribut if not empty.
- Checking if a split marker is present in the content Then split the content with the marker to build the preview.
- Splitting the content to a fixed number of words.
-
displayed_percent
¶ Return the percentage of the content displayed in the preview.
-
displayed_words
¶ Return the number of words displayed in the preview.
-
has_more
¶ Boolean telling if the preview has hidden content.
-
preview
¶ The preview is a cached property.
-
remaining_percent
¶ Return the percentage of the content remaining after the preview.
-
remaining_words
¶ Return the number of words remaining after the preview.
-
split
(splitter)¶ Split the HTML content with a marker without breaking closing markups.
-
total_words
¶ Return the total of words contained in the content and in the lead.
-
truncate
()¶ Truncate the content with the Truncator object.
-
search
Module¶
Search module with complex query parsing for Zinnia
-
zinnia.search.
advanced_search
(pattern)¶ Parse the grammar of a pattern and build a queryset with it.
-
zinnia.search.
create_q
(token)¶ Creates the Q() object.
-
zinnia.search.
union_q
(token)¶ Appends all the Q() objects.
signals
Module¶
Signal handlers of Zinnia
-
zinnia.signals.
connect_discussion_signals
()¶ Connect all the signals on the Comment model to maintains a valid discussion count on each entries when an action is done with the comments.
-
zinnia.signals.
connect_entry_signals
()¶ Connect all the signals on Entry model.
-
zinnia.signals.
count_comments_handler
(sender, **kwargs)¶ Update Entry.comment_count when a public comment was posted.
-
zinnia.signals.
count_discussions_handler
(sender, **kwargs)¶ Update the count of each type of discussion on an entry.
-
zinnia.signals.
count_pingbacks_handler
(sender, **kwargs)¶ Update Entry.pingback_count when a pingback was posted.
-
zinnia.signals.
count_trackbacks_handler
(sender, **kwargs)¶ Update Entry.trackback_count when a trackback was posted.
-
zinnia.signals.
disable_for_loaddata
(signal_handler)¶ Decorator for disabling signals sent by ‘post_save’ on loaddata command. http://code.djangoproject.com/ticket/8399
-
zinnia.signals.
disconnect_discussion_signals
()¶ Disconnect all the signals on Comment model provided by Zinnia.
-
zinnia.signals.
disconnect_entry_signals
()¶ Disconnect all the signals on Entry model.
-
zinnia.signals.
flush_similar_cache_handler
(*args, **kwargs)¶ Flush the cache of similar entries when an entry is saved.
-
zinnia.signals.
ping_directories_handler
(*args, **kwargs)¶ Ping directories when an entry is saved.
-
zinnia.signals.
ping_external_urls_handler
(*args, **kwargs)¶ Ping externals URLS when an entry is saved.
sitemaps
Module¶
Sitemaps for Zinnia
-
class
zinnia.sitemaps.
AuthorSitemap
¶ Bases:
zinnia.sitemaps.EntryRelatedSitemap
Sitemap for authors.
-
model
¶ alias of
Author
-
-
class
zinnia.sitemaps.
CategorySitemap
¶ Bases:
zinnia.sitemaps.EntryRelatedSitemap
Sitemap for categories.
-
model
¶ alias of
Category
-
-
class
zinnia.sitemaps.
EntryRelatedSitemap
¶ Bases:
zinnia.sitemaps.ZinniaSitemap
Sitemap for models related to Entries.
-
cache_infos
(queryset)¶ Cache infos like the number of entries published and the last modification date for standardized access later.
-
changefreq
= 'monthly'¶
-
get_queryset
()¶ Build a queryset of items with published entries and annotated with the number of entries and the latest modification date.
-
items
()¶ Get a queryset, cache infos for standardized access to them later then compute the maximum of entries to define the priority of each items.
-
lastmod
(item)¶ The last modification date is defined by the latest entry last update in the cache.
-
model
= None¶
-
priority
(item)¶ The priority of the item depends of the number of entries published in the cache divided by the maximum of entries.
-
set_max_entries
()¶ Define the maximum of entries for computing the priority of each items later.
-
-
class
zinnia.sitemaps.
EntrySitemap
¶ Bases:
zinnia.sitemaps.ZinniaSitemap
Sitemap for entries.
-
changefreq
= 'weekly'¶
-
items
()¶ Return published entries.
-
lastmod
(obj)¶ Return last modification of an entry.
-
priority
= 0.5¶
-
-
class
zinnia.sitemaps.
TagSitemap
¶ Bases:
zinnia.sitemaps.EntryRelatedSitemap
Sitemap for tags.
-
cache_infos
(queryset)¶ Cache the number of entries published and the last modification date under each tag.
-
get_queryset
()¶ Return the published Tags with option counts.
-
location
(item)¶ Return URL of the tag.
-
-
class
zinnia.sitemaps.
ZinniaSitemap
¶ Bases:
django.contrib.sitemaps.Sitemap
Base Sitemap class for Zinnia.
-
protocol
= 'http'¶
-
Subpackages¶
- admin Package
- models Package
- models_bases Package
- spam_checker Package
- url_shortener Package
- urls Package
- views Package
- xmlrpc Package