primitive version of workflow config form (not working)
This commit is contained in:
@@ -61,6 +61,47 @@ timezones = (
|
||||
class UserFullnameChoiceField(forms.ModelChoiceField):
|
||||
def label_from_instance(self,obj):
|
||||
return obj.get_full_name()
|
||||
|
||||
# model for configurable template field
|
||||
class TemplateListField(models.TextField):
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.token = kwargs.pop('token',',')
|
||||
super(TemplateListField, self).__init__(*args, **kwargs)
|
||||
|
||||
def to_python(self, value):
|
||||
if not value: return
|
||||
if isinstance(value, list):
|
||||
return value
|
||||
# remove double quotes and brackets
|
||||
value = re.sub(r'u\"','',value)
|
||||
value = re.sub(r'u\'','',value)
|
||||
value = re.sub(r'\\','',value)
|
||||
value = re.sub(r'\"','',value)
|
||||
value = re.sub(r'\'','',value)
|
||||
value = re.sub(r'\[','',value)
|
||||
value = re.sub(r'\]','',value)
|
||||
value = re.sub(r'\[\[','[',value)
|
||||
value = re.sub(r'\]\]',']',value)
|
||||
value = re.sub(r'\ \ ',' ',value)
|
||||
value = re.sub(r', ',',',value)
|
||||
|
||||
return value.split(self.token)
|
||||
|
||||
def from_db_value(self,value, expression, connection, context):
|
||||
if value is None:
|
||||
return value
|
||||
if isinstance(value, list):
|
||||
return value
|
||||
return value.split(self.token)
|
||||
|
||||
def get_db_prep_value(self, value, connection, prepared=False):
|
||||
if not value: return
|
||||
assert(isinstance(value, list) or isinstance(value, tuple))
|
||||
return self.token.join([unicode(s) for s in value])
|
||||
|
||||
def value_to_string(self, obj):
|
||||
value = self._get_val_from_obj(obj)
|
||||
return self.get_deb_prep_value(value)
|
||||
|
||||
# model for Power Zone names
|
||||
class PowerZonesField(models.TextField):
|
||||
@@ -234,6 +275,18 @@ class Rower(models.Model):
|
||||
'Pwr TR',
|
||||
'Pwr AN'])
|
||||
|
||||
# Site Settings
|
||||
workflowleftpanel = TemplateListField(default=[
|
||||
'panel_statcharts.html',
|
||||
'flexthumbnails.html',
|
||||
'panel_summary.html'])
|
||||
|
||||
workflowmiddlepanel = TemplateListField(default=[
|
||||
'panel_editbuttons.html',
|
||||
'panel_stats.html',
|
||||
'panel_staticchart.html',
|
||||
])
|
||||
|
||||
# Access tokens
|
||||
c2token = models.CharField(default='',max_length=200,blank=True,null=True)
|
||||
tokenexpirydate = models.DateTimeField(blank=True,null=True)
|
||||
|
||||
Reference in New Issue
Block a user