Guest User

Untitled

a guest
Jun 6th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.58 KB | None | 0 0
  1. dojo.provide("website.forms.RegistrationForm");
  2. dojo.require("dijit._Widget");
  3. dojo.require("dijit._Templated");
  4. dojo.require("dijit.form.Form");
  5. dojo.require("dijit.form.ValidationTextBox");
  6. dojo.require("dijit.form.FilteringSelect");
  7. dojo.require("dojo.data.ItemFileReadStore");
  8.  
  9. dojo.declare("website.forms.RegistrationForm", [dijit.form.Form],
  10. {
  11. isContainer: true,
  12. widgetsInTemplate: true,
  13. 'class': 'tundra',
  14. store: null,
  15. value: '',
  16. pageSize: 10,
  17. searchAttr: 'registration',
  18. autoComplete: false,
  19. 'name': 'registrationForm',
  20.  
  21.  
  22. username: null,
  23. password: null,
  24. password_retype: null,
  25. country: null,
  26.  
  27. postCreate: function()
  28. {
  29. this.inherited(arguments);
  30. this.domNode.innerHTML = "<div id=\"username_label\">username: </div>";
  31. username = new dijit.form.ValidationTextBox(
  32. {
  33. type: "text",
  34. name: "username",
  35. value: "",
  36. trim: true,
  37. invalidMessage: "Please type a valid username",
  38. promptMessage: "Please type a valid username",
  39. regExp: "^[_a-zA-Z0-9-]+$",
  40. constraints: {'min': 4, 'max': 16},
  41. required: true,
  42. intermediateChanges: true,
  43. validator: this.checkLength
  44. }
  45. ).placeAt(dojo.byId("username_label"), "last");
  46. this.domNode.innerHTML += "<div id=\"password_label\">password: </div>";
  47. password = new dijit.form.ValidationTextBox(
  48. {
  49. type: "password",
  50. name: "password1",
  51. value: "",
  52. trim: true,
  53. invalidMessage: "Please type a valid password",
  54. regExp: "^[_a-zA-Z0-9-]+$",
  55. constraints: {'min': 4, 'max': 16},
  56. required: true,
  57. intermediateChanges: true,
  58. validator: this.checkLength
  59. }
  60. ).placeAt(dojo.byId("password_label"));
  61. this.domNode.innerHTML += "<div id=\"password_retype_label\">re-type password: </div>";
  62. password_retype = new dijit.form.ValidationTextBox(
  63. {
  64. type: "password",
  65. name: "password2",
  66. value: "",
  67. trim: true,
  68. invalidMessage: "Please re-type your password correctly",
  69. regExp: "^[_a-zA-Z0-9-]+$",
  70. constraints: {},
  71. required: true,
  72. intermediateChanges: true,
  73. validator: this.checkPassword
  74. }
  75. ).placeAt(dojo.byId("password_retype_label"));
  76. this.domNode.innerHTML += "<div id=\"country_label\">Country: </div>";
  77. var newStore = new dojo.data.ItemFileReadStore({url: "website/forms/countries.json"});
  78. country = new dijit.form.FilteringSelect(
  79. {
  80. store: newStore,
  81. searchAttr: "country",
  82. name: "country",
  83. autocomplete: "true"
  84. }
  85. ).placeAt(dojo.byId("country_label"));
  86. /*dojo.connect(username, "onChange", function(){username.validate()});
  87. dojo.connect(password, "onChange", function(){password.validate()});
  88. dojo.connect(password_retype, "onChange", function(){password_retype.validate()});*/
  89. },
  90. checkPassword: function(value, constraints)
  91. {
  92. return value == password.attr('value');
  93. },
  94. checkLength: function(value, constraints)
  95. {
  96. return value.length >= constraints.min && value.length <= constraints.max;
  97. }
  98. });
Add Comment
Please, Sign In to add comment