r20446: rename swat directory to swat.obsolete; keeping it around since there is...
[samba.git] / swat.obsolete / apps / qooxdoo-examples / test / Transport_2.html
1 <html>
2 <head>
3   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
4   <title>qooxdoo &raquo; Demo</title>
5   <link type="text/css" rel="stylesheet" href="../../resource/css/layout.css"/>
6   <!--[if IE]>
7   <link type="text/css" rel="stylesheet" href="../../resource/css/layout_ie.css"/>
8   <![endif]-->
9   <script type="text/javascript" src="../../script/qx.js"></script>
10 </head>
11 <body>
12   <script type="text/javascript" src="../../script/layout.js"></script>
13
14   <div id="demoDescription">
15     <p>Testing different file sizes with timeouts and other built-in transport features.</p>
16   </div>
17
18   <script type="text/javascript">
19   qx.core.Init.getInstance().defineMain(function()
20   {
21     var d = qx.ui.core.ClientDocument.getInstance();
22
23     var lay = new qx.ui.layout.VerticalBoxLayout;
24     lay.setLocation(20, 48);
25     lay.setRight(335);
26     lay.setBottom(48);
27     qx.ui.core.ClientDocument.getInstance().add(lay);
28
29
30
31     var fsq = new qx.ui.groupbox.GroupBox("Request");
32     fsq.setHeight("auto");
33     lay.add(fsq);
34
35
36     var hlay = new qx.ui.layout.HorizontalBoxLayout;
37     hlay.setVerticalChildrenAlign("middle");
38     hlay.setSpacing(4);
39     hlay.auto();
40     fsq.add(hlay);
41
42
43     var cm1 = new qx.ui.form.ComboBox();
44     cm1.add(new qx.ui.form.ListItem("data/filesize/40kb.xml"));
45     cm1.add(new qx.ui.form.ListItem("data/filesize/400kb.xml"));
46     cm1.add(new qx.ui.form.ListItem("data/filesize/4000kb.xml"));
47     cm1.setSelected(cm1.getList().getFirstChild());
48     cm1.setWidth(200);
49     cm1.addEventListener("changeSelected", upd);
50
51     hlay.add(cm1);
52
53
54
55     var async = new qx.ui.form.CheckBox("Async");
56     async.setChecked(true);
57     hlay.add(async);
58
59
60     var spin = new qx.ui.form.Spinner(1);
61     hlay.add(spin);
62
63
64
65     var btn = new qx.ui.form.Button("Send", "icon/16/apply.png");
66     btn.addEventListener("execute", upd);
67     hlay.add(btn);
68
69
70     var inf = new qx.ui.form.TextField("State");
71     inf.setWidth(80);
72     hlay.add(inf);
73
74
75     var code = new qx.ui.form.TextField("Code");
76     code.setWidth(30);
77     hlay.add(code);
78
79
80     var typ = new qx.ui.form.TextField("Type");
81     typ.setWidth(80);
82     typ.setReadOnly(true);
83     hlay.add(typ);
84
85
86     var len = new qx.ui.form.TextField("Length");
87     len.setWidth(50);
88     len.setReadOnly(true);
89     hlay.add(len);
90
91
92
93
94     var checken = new qx.ui.form.CheckBox("enabled");
95     checken.setChecked(true);
96     hlay.add(checken);
97
98     checken.addEventListener("changeChecked", function(e) {
99       qx.io.remote.RemoteRequestQueue.setEnabled(e.getData());
100     });
101
102
103
104
105
106     var fsr = new qx.ui.groupbox.GroupBox("Result");
107     fsr.setHeight("1*");
108     lay.add(fsr);
109
110     var area = new qx.ui.basic.Label("Disabled because of large filesize");
111     fsr.add(area);
112
113
114
115
116
117
118
119
120
121     function upd(e)
122     {
123       var val = cm1.getSelected();
124
125       if (!val) {
126         return;
127       };
128
129       var req;
130       for( var i=0, max=parseInt(spin.getValue()); i<max; i++ )
131       {
132         req = new qx.io.remote.RemoteRequest(val.getLabel(), "GET", "text/plain");
133
134         req.setAsynchronous(async.getChecked());
135         req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
136
137         req.setParameter("test1", "value1");
138         req.setParameter("test2", "value2");
139         req.setParameter("test3", "value3");
140
141         // Force to testing iframe implementation
142         // req.setCrossDomain(true);
143
144         req.addEventListener("sending", function(e) {
145           inf.setValue("Sending");
146         });
147
148         req.addEventListener("receiving", function(e) {
149           inf.setValue("Receiving");
150         });
151
152         req.addEventListener("completed", function(e)
153         {
154           inf.setValue("Completed");
155           typ.setValue(e.getData().getResponseHeader("Content-Type"));
156           len.setValue(e.getData().getResponseHeader("Content-Length"));
157           code.setValue(e.getData().getStatusCode().toString());
158         });
159
160         req.addEventListener("failed", function(e)
161         {
162           inf.setValue("Failed");
163           typ.setValue(e.getData().getResponseHeader("Content-Type"));
164           len.setValue(e.getData().getResponseHeader("Content-Length"));
165           code.setValue(e.getData().getStatusCode().toString());
166         });
167
168         req.addEventListener("timeout", function(e)
169         {
170           inf.setValue("Timeout");
171           typ.setValue(e.getData().getResponseHeader("Content-Type"));
172           len.setValue(e.getData().getResponseHeader("Content-Length"));
173           code.setValue(e.getData().getStatusCode().toString());
174         });
175
176         req.addEventListener("aborted", function(e)
177         {
178           inf.setValue("Aborted");
179           typ.setValue(e.getData().getResponseHeader("Content-Type"));
180           len.setValue(e.getData().getResponseHeader("Content-Length"));
181           code.setValue(e.getData().getStatusCode().toString());
182         });
183
184         req.send();
185       };
186     };
187   });
188   </script>
189 </body>
190 </html>