text: from django.db import models
  from django.utils.translation import ugettext_lazy as _
  from cms.models import CMSPlugin
  from django.conf import settings
  from django.utils.html import strip_tags
  from django.utils.text import truncate_words
  from cms.plugins.text.utils import plugin_admin_html_to_tags,\
      plugin_tags_to_admin_html
  
  class Text(CMSPlugin):
      """A block of content, tied to a page, for a particular language"""
      body = models.TextField(_("body"))
      
      def _set_body_admin(self, text):
          self.body = plugin_admin_html_to_tags(text)
  
      def _get_body_admin(self):
          return plugin_tags_to_admin_html(self.body)
  
      body_for_admin = property(_get_body_admin, _set_body_admin, None,
                                """
                                body attribute, but with transformations
                                applied to allow editing in the
                                admin. Read/write.
                                """)
  
      
      def __unicode__(self):
          return u"%s" % (truncate_words(strip_tags(self.body), 3)[:30]+"...")
  