Starting here, trunk is broken pending re-organizations. Check out the previous revision if you'd like to tinker.

This commit is contained in:
Greg Taylor 2008-12-15 04:00:25 +00:00
parent 4b25a08597
commit 837f1152c6
28 changed files with 0 additions and 0 deletions

View file

View file

@ -0,0 +1,8 @@
"""
Custom manager for CommandAlias objects.
"""
from django.db import models
class CommandAliasManager(models.Manager):
pass

View file

@ -0,0 +1,32 @@
"""
Custom manager for ConfigValue objects.
"""
from traceback import format_exc
from django.db import models
from src import logger
class ConfigValueManager(models.Manager):
def get_configvalue(self, configname):
"""
Retrieve a configuration value.
"""
try:
return self.get(conf_key__iexact=configname).conf_value
except self.model.DoesNotExist:
logger.log_errmsg("Unable to get config value for %s (does not exist):\n%s" % (
configname, (format_exc())))
def set_configvalue(self, configname, newvalue):
"""
Sets a configuration value with the specified name.
Returns the new value for the directive.
"""
try:
conf = self.get(conf_key=configname)
conf.conf_value = newvalue
conf.save()
# We'll do this instead of conf.conf_value, might save a DB query.
return newvalue
except self.model.DoesNotExist:
logger.log_errmsg("Unable to set config value for %s (does not exist):\n%s" % (
configname, (format_exc())))

View file

@ -0,0 +1,17 @@
"""
Custom manager for ConnectScreen objects.
"""
from django.db import models
class ConnectScreenManager(models.Manager):
def get_random_connect_screen(self):
"""
Returns a random active connect screen.
"""
try:
return self.filter(is_active=True).order_by('?')[0]
except IndexError:
new_screen = ConnectScreen(name='Default',
connect_screen_text='This is a placeholder connect screen. Remind your admin to edit it through the Admin interface.')
new_screen.save()
return new_screen