def render(self, context): file = self.file.resolve(context) if file and file.pk: cache_key = generate_image_cache_key(file=str(file.id), size=self.size, pre_key=FILE_IMAGE_PRE_KEY, crop=self.crop, unique_key=str(file.id), quality=self.quality, constrain=self.constrain) cached_image_url = cache.get(cache_key) if cached_image_url: return cached_image_url args = [file.pk] if self.size: try: size = Variable(self.size) size = size.resolve(context) except: size = self.size args.append(size) if self.crop: args.append("crop") if self.constrain: args.append("constrain") if self.quality: args.append(self.quality) url = reverse('file', args=args) return url # return the default image url return static(settings.DEFAULT_IMAGE_URL)
def render(self, context): photo = self.photo.resolve(context) # We can't crop and constrain, so we need # to pick one if both are passed if self.crop and self.constrain: self.constrain = False # return empty unicode string if not photo.pk: return static(settings.DEFAULT_IMAGE_URL) cache_key = generate_image_cache_key(file=str(photo.pk), size=self.size, pre_key="photo", crop=self.crop, unique_key=str(photo.pk), quality=self.quality, constrain=self.constrain) cached_image_url = cache.get(cache_key) if cached_image_url: return cached_image_url args = [photo.pk, self.size] if self.crop: args.append("crop") if self.constrain: args.append("constrain") if self.quality: args.append(self.quality) url = reverse('photo.size', args=args) return url
def view_on_site(self, obj): link_icon = static('images/icons/external_16x16.png') link = '<a href="%s" title="%s"><img src="%s" /></a>' % ( reverse('committees.detail', args=[obj.slug]), obj.title, link_icon, ) return link
def static_url(request): context = {} context['STOCK_STATIC_URL'] = settings.STOCK_STATIC_URL context['TINYMCE_JS_URL'] = static(settings.TINYMCE_JS_URL) # Backward compatibility for old themes def warn_static_url(value=settings.STATIC_URL): warn("{{ STATIC_URL }}<path> is deprecated, use {% static '<path>' %} instead", DeprecationWarning) return value context['STATIC_URL'] = warn_static_url def warn_local_static_url(value=settings.LOCAL_STATIC_URL): # noqa: E306 warn("{{ LOCAL_STATIC_URL }}<path> is deprecated, use {% local_static '<path>' %} instead", DeprecationWarning) return value context['LOCAL_STATIC_URL'] = warn_local_static_url return context
def icon(self): # if we don't know the type # we can't find an icon [to represent the file] if not self.type(): return None # map file-type to image file icons = { 'text': 'icon-ms-word-2007.gif', 'spreadsheet': 'icon-ms-excel-2007.gif', 'powerpoint': 'icon-ms-powerpoint-2007.gif', 'image': 'icon-ms-image-2007.png', 'pdf': 'icon-pdf.png', 'video': 'icon-wmv.png', 'zip': 'icon-zip.gif', } # return image path return static('images/icons/'+icons[self.type()])
def smile_it(s): for smile, url in PYBB_SMILES.items(): s = s.replace(smile, '<img src="%s" alt="smile" />' % static(PYBB_SMILES_PREFIX+url)) return s
def default_thumbnail(self): return static('images/default-photo-album-cover.jpg')
class Media: js = (static('js/global/tinymce.event_handlers.js'), )
class Media: js = ( '//ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js', '//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js', static('js/admin/admin-list-reorder.js'), )
class Media: js = ( '//ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js', static('js/global/tinymce.event_handlers.js'), static('js/admin/membnotices.js'), )
class Media: js = ( '//ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js', static('js/membtype.js'), )
class Media: js = ( "//ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js", static('js/global/tinymce.event_handlers.js'), )
def get_default_cover_photo(self): return static('images/default-photo-album-cover.jpg')
def get_default_cover_photo_small(self): return static('images/default-photo-small.jpg')
class Media: css = { 'all': [static('css/admin/event-types-color-set.css')], }
PYBB_AVATAR_HEIGHT = getattr(settings, 'PYBB_AVATAR_HEIGHT', 80) PYBB_MAX_AVATAR_SIZE = getattr(settings, 'PYBB_MAX_AVATAR_SIZE', 1024 * 50) PYBB_DEFAULT_TIME_ZONE = getattr(settings, 'PYBB_DEFAULT_TIME_ZONE', -6) PYBB_SIGNATURE_MAX_LENGTH = getattr(settings, 'PYBB_SIGNATURE_MAX_LENGTH', 1024) PYBB_SIGNATURE_MAX_LINES = getattr(settings, 'PYBB_SIGNATURE_MAX_LINES', 3) PYBB_DEFAULT_MARKUP = getattr(settings, 'PYBB_DEFAULT_MARKUP', 'bbcode') PYBB_FREEZE_FIRST_POST = getattr(settings, 'PYBB_FREEZE_FIRST_POST', False) PYBB_ATTACHMENT_SIZE_LIMIT = getattr(settings, 'PYBB_ATTACHMENT_SIZE_LIMIT', 1024 * 1024) PYBB_ATTACHMENT_ENABLE = getattr(settings, 'PYBB_ATTACHMENT_ENABLE', False) PYBB_ATTACHMENT_UPLOAD_TO = getattr(settings, 'PYBB_ATTACHMENT_UPLOAD_TO', os.path.join('pybb_upload', 'attachments')) PYBB_DEFAULT_AVATAR_URL = getattr(settings, 'PYBB_DEFAULT_AVATAR_URL', static('pybb/img/default_avatar.jpg')) PYBB_DEFAULT_TITLE = getattr(settings, 'PYBB_DEFAULT_TITLE', 'Tendenci with PYBB Open Source Forum') PYBB_SMILES_PREFIX = getattr(settings, 'PYBB_SMILES_PREFIX', 'pybb/emoticons/') PYBB_SMILES = getattr(settings, 'PYBB_SMILES', { '>_<': 'angry.png', ':.(': 'cry.png', 'o_O': 'eyes.png', '[]_[]': 'geek.png', '8)': 'glasses.png', ':D': 'lol.png', ':(': 'sad.png', ':O': 'shok.png', '-_-': 'shy.png',
class Media: js = ( static('js/global/tinymce.event_handlers.js'), ) css = {'all': [static('css/admin/dynamic-inlines-with-sort.css')], }