Ignore:
Timestamp:
03/27/14 14:44:36 (11 years ago)
Author:
hendrikvanantwerpen
Message:
  • Return to using truly ISO formatted dates, including milliseconds.
  • Also set constraint on surveyrun dates when value is initially set.
  • Separate runs & results from surveys and questions.
  • Moved date & email format to schema itself.
Location:
Dev/trunk/src/server/util
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • Dev/trunk/src/server/util/http-result.js

    r527 r531  
    6363                if ( status in fOrObj ) {
    6464                    return fOrObj[status](result);
     65                } else if ( status >= 200 && status < 300 &&
     66                            'success' in fOrObj ) {
     67                    return fOrObj.success(status,result);
     68                } else if ( !(status >= 200 && status < 300) &&
     69                            'failure' in fOrObj ) {
     70                    return fOrObj.failure(status,result);
    6571                } else if ( 'default' in fOrObj ) {
    6672                    return fOrObj['default'](status,result);
  • Dev/trunk/src/server/util/validator.js

    r493 r531  
    11var tv4 = require('tv4');
    2 
    3 // from: http://www.w3.org/TR/html5/forms.html#valid-e-mail-address
    4 var html5EmailRe = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
    5 var datetimeRe = /^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z/;
    6 
    7 tv4.addFormat({
    8     email: function(data){
    9         if ( typeof data === "string" && html5EmailRe.test(data) ) {
    10             return null;
    11         } else {
    12             return "Probably an invalid email address.";
    13         }
    14     },
    15     datetime: function(data){
    16         if ( typeof data === "string" && datetimeRe.test(data) ) {
    17             return null;
    18         } else {
    19             return "Invalid timestamp.";
    20         }
    21     }
    22 });
    232
    243module.exports = function() {
Note: See TracChangeset for help on using the changeset viewer.