1 /* Buffered DOM updates */
2 var RecordGenerator = Class.extend({
4 init: function(query, generators, number)
7 this._generators = generators;
11 random_int: function(options)
13 var default_options = {
17 if (typeof options == 'object')
18 options = $.extend(default_options, options);
20 options = default_options;
22 return Math.floor(Math.random()*(options.max+1));
25 random_string: function()
27 var default_options = {
28 possible: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",
29 len: this.random_int({max: 15})
32 if (typeof options == 'object')
33 options = $.extend(default_options, options);
35 options = default_options;
39 for( var i=0; i < options.len; i++ )
40 text += options.possible.charAt(Math.floor(Math.random() * options.possible.length));
46 generate_record: function()
51 $.each(this._query.fields, function(i, field) {
52 record[field] = self[self._generators[field]]();
56 manifold.raise_record_event(self._query.query_uuid, NEW_RECORD, record);
63 manifold.raise_record_event(this._query.query_uuid, CLEAR_RECORDS);
64 for (var i = 0; i < this._number; i++) {
65 record = this.generate_record();
66 /* XXX publish record */
68 manifold.raise_record_event(this._query.query_uuid, DONE);