Skip to content

Commit

Permalink
Fixes to input fields
Browse files Browse the repository at this point in the history
  • Loading branch information
katste committed Jan 13, 2016
1 parent c9b4310 commit f399c6e
Showing 1 changed file with 36 additions and 28 deletions.
64 changes: 36 additions & 28 deletions libstat/forms/survey.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,42 +31,45 @@ def _cell_to_input_field(self, cell, observation, authenticated, variable_type):
attrs["data-bv-notempty"] = ""
attrs["placeholder"] = "Obligatorisk"

# Integer max value is 99999999
if variable_type == "integer":
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^(-|(0|[1-9]([0-9]){0,7}))$"
attrs["data-bv-message"] = u"Vänligen mata in ett numeriskt värde mindre än eller lika med 99999999, alternativt '-' om värdet inte är relevant"

# Decimal max value is 99999999,999
if variable_type == "decimal":
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^(-|\d{1,8}(\,\d{1,3})?)$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in ett numeriskt värde mindre än eller lika med 99999999,999 med max 3 decimaler (t ex 12,522), alternativt '-' om värdet inte är relevant"

if variable_type == "email":
#attrs["data-bv-emailaddress"] = ""
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^([\w!#$%&'*+/=?`{|}~^-]+(?:\.[\w!#$%&'*+/=?`{|}~^-]+)*@(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,6})$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in en giltig emailadress"

if variable_type == "string":
attrs["data-bv-stringlength"] = ""
attrs["data-bv-stringlength-min"] = "0"

if variable_type == "phonenumber":
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^(-|\+?(\d\d?-?)+\d(\s?\d+)*\d+)$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in ett giltigt telefonnummer utan bokstäver och parenteser, t ex 010-709 30 00"

# Utgifter and Intakter max 999999999 or 999999999,999
if "Utgift" in cell.variable_key or "Intakt" in cell.variable_key:
attrs["data-bv-regexp"] = ""
if variable_type == "integer":
attrs["data-bv-reg
exp-regexp"] = "^(-|(0|[1-9]([0-9]){0,8}))$"
attrs["data-bv-regexp-regexp"] = "^(-|(0|[1-9]([0-9]){0,8}))$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in ett numeriskt värde mindre än eller lika med 999999999, alternativt '-' om värdet inte är relevant"
elif variable_type == "decimal":
attrs["data-bv-regexp-regexp"] = "^(-|\d{1,9}(\,\d{1,3})?)$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in ett numeriskt värde mindre än eller lika med 999999999,999 med max 3 decimaler (t ex 12,522), alternativt '-' om värdet inte är relevant"

else:

# Integer max value is 99999999
if variable_type == "integer":
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^(-|(0|[1-9]([0-9]){0,7}))$"
attrs["data-bv-message"] = u"Vänligen mata in ett numeriskt värde mindre än eller lika med 99999999, alternativt '-' om värdet inte är relevant"

# Decimal max value is 99999999,999
if variable_type == "decimal":
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^(-|\d{1,8}(\,\d{1,3})?)$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in ett numeriskt värde mindre än eller lika med 99999999,999 med max 3 decimaler (t ex 12,522), alternativt '-' om värdet inte är relevant"

if variable_type == "email":
#attrs["data-bv-emailaddress"] = ""
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^([\w!#$%&'*+/=?`{|}~^-]+(?:\.[\w!#$%&'*+/=?`{|}~^-]+)*@(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,6})$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in en giltig emailadress"

if variable_type == "string":
attrs["data-bv-stringlength"] = ""
attrs["data-bv-stringlength-min"] = "0"

if variable_type == "phonenumber":
attrs["data-bv-regexp"] = ""
attrs["data-bv-regexp-regexp"] = "^(-|\+?(\d\d?-?)+\d(\s?\d+)*\d+)$"
attrs["data-bv-regexp-message"] = u"Vänligen mata in ett giltigt telefonnummer utan bokstäver och parenteser, t ex 010-709 30 00"

if not observation or observation.value_unknown:
attrs["disabled"] = ""
attrs["class"] = "{} value-unknown".format(attrs["class"])
Expand Down Expand Up @@ -95,6 +98,11 @@ def _cell_to_input_field(self, cell, observation, authenticated, variable_type):
if isinstance(field.initial, unicode):
field.initial = field.initial.strip()

if cell.variable_key == "Besok01":
logger.debug("attrs:")
for attr, value in attrs.iteritems():
logger.debug(attr)

return field

def _set_libraries(self, current_survey, this_surveys_selected_sigels, authenticated):
Expand Down

0 comments on commit f399c6e

Please sign in to comment.