--- /dev/null
+<html>\r
+<head>\r
+ <title>The source code</title>\r
+ <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />\r
+ <script type="text/javascript" src="../resources/prettify/prettify.js"></script>\r
+</head>\r
+<body onload="prettyPrint();">\r
+ <pre class="prettyprint lang-js">Ext.ns('Ext.app');\r
+\r
+Ext.app.ContactForm = Ext.extend(Ext.FormPanel, {\r
+ formTitle: 'Contact Information (English)',\r
+ firstName: 'First Name',\r
+ lastName: 'Surname',\r
+ surnamePrefix: 'Surname Prefix',\r
+ company: 'Company',\r
+ state: 'State',\r
+ stateEmptyText: 'Choose a state...',\r
+ email: 'E-mail',\r
+ birth: 'Date of Birth',\r
+ save: 'Save',\r
+ cancel: 'Cancel',\r
+ \r
+ initComponent : function(config) {\r
+ Ext.apply(this, {\r
+ labelWidth: 100, // label settings here cascade unless overridden\r
+ url:'save-form.php',\r
+ frame:true,\r
+ title: this.formTitle,\r
+ bodyStyle:'padding:5px 5px 0',\r
+ width: 370,\r
+ defaults: {width: 220},\r
+ defaultType: 'textfield',\r
+ \r
+ items: [{\r
+ fieldLabel: this.firstName,\r
+ name: 'firstname',\r
+ allowBlank:false\r
+ },{\r
+ fieldLabel: this.lastName,\r
+ name: 'lastName'\r
+ },{\r
+ fieldLabel: this.surnamePrefix,\r
+ width: 50,\r
+ name: 'surnamePrefix'\r
+ },{\r
+ fieldLabel: this.company,\r
+ name: 'company'\r
+ }, new Ext.form.ComboBox({\r
+ fieldLabel: this.province,\r
+ hiddenName: 'state',\r
+ store: new Ext.data.ArrayStore({\r
+ fields: ['provincie'],\r
+ data : Ext.exampledata.dutch_provinces // from dutch-provinces.js\r
+ }),\r
+ displayField: 'provincie',\r
+ typeAhead: true,\r
+ mode: 'local',\r
+ triggerAction: 'all',\r
+ emptyText: this.stateEmtyText,\r
+ selectOnFocus:true,\r
+ width:190\r
+ }), {\r
+ fieldLabel: this.email,\r
+ name: 'email',\r
+ vtype:'email'\r
+ }, new Ext.form.DateField({\r
+ fieldLabel: this.birth,\r
+ name: 'birth'\r
+ })\r
+ ],\r
+ \r
+ buttons: [{\r
+ text: this.save\r
+ },{\r
+ text: this.cancel\r
+ }]\r
+ });\r
+ \r
+ Ext.app.ContactForm.superclass.initComponent.apply(this, arguments);\r
+ }\r
+});\r
+\r
+Ext.onReady(function(){\r
+ Ext.QuickTips.init();\r
+\r
+ // turn on validation errors beside the field globally\r
+ Ext.form.Field.prototype.msgTarget = 'side';\r
+ \r
+ var bd = Ext.getBody();\r
+ \r
+ bd.createChild({tag: 'h2', html: 'Localized Contact Form'});\r
+ \r
+ // simple form\r
+ var simple = new Ext.app.ContactForm();\r
+ simple.render(document.body);\r
+});</pre> \r
+</body>\r
+</html>
\ No newline at end of file