/[sql-web-session]/sql-editor.js
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /sql-editor.js

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 10 by dpavlin, Tue Apr 14 19:54:56 2009 UTC revision 15 by dpavlin, Wed Apr 15 18:42:41 2009 UTC
# Line 1  Line 1 
1    
2    // fake firebug's console.*
3    if (!window.console) {
4            var names = [ "log", "debug", "info", "warn", "error" ];
5            window.console =  {};
6            for (i in names) {
7                    window.console[names[i]] = function() {};
8            }
9    }
10    
11  $(document).ready( function() {  $(document).ready( function() {
12    
13          function click_on_cell(e) {          function click_on_cell(e) {
# Line 15  $(document).ready( function() { Line 24  $(document).ready( function() {
24                  else                  else
25                          where_value = '%' + where_value + '%';                          where_value = '%' + where_value + '%';
26    
27                    var type = column_type[col_nr];
28    
29                  console.debug('click on ', this, e,                  console.debug('click on ', this, e,
30                          e.originalTarget,                          e.originalTarget,
31                          column, where_operator, where_value                          column, type, where_operator, where_value
32                  );                  );
33    
34                    $('form#sql .changed').removeClass('changed');
35    
36                  if ( tag == 'TH' ) {                  if ( tag == 'TH' ) {
37                          console.info('header', column);                          console.info('header', column);
38                          $('form#sql input[name=order_by]').attr('value', where_value + ' desc');                          $('form#sql input[name=order_by]')
39                                    .addClass('changed')
40                                    .attr('value', where_value + ' desc')
41                                    ;
42                  } else if ( tag = 'TD' ) {                  } else if ( tag = 'TD' ) {
43                          console.info('column', column, where_operator, where_value);                          console.info('column', column, where_operator, where_value);
44                          $('form#sql input[name=where_value]').attr('value', where_value);                          $('form#sql input[name=where_value]')
45                          $('form#sql select[name=where_column]').attr('options').selectedIndex = col_nr;                                  .addClass('changed')
46                          $('form#sql input[name=add_group_by]').attr('value', column).css('display','block').attr('disabled',0);                                  .attr('value', where_value)
47                                    ;
48                            $('form#sql select[name=where_column]')
49                                    .addClass('changed')
50                                    .attr('options').selectedIndex = col_nr
51                                    ;
52                            $('form#sql input[name=add_group_by]')
53                                    .addClass('changed')
54                                    .attr('value', column)
55                                    .css('display','block')
56                                    .attr('disabled',0)
57                                    ;
58                            $('select[name=where_operator]')
59                                    .addClass('changed')
60                                    .attr('selectedIndex', type < 0 ? 0 : 2)
61                                    ;
62                  } else {                  } else {
63                          console.error('unknown click on ', tag, e);                          console.error('unknown click on ', tag, e);
64                  }                  }
# Line 43  $(document).ready( function() { Line 74  $(document).ready( function() {
74    
75          $('input[name=add_group_by]').bind('click', function(e) {          $('input[name=add_group_by]').bind('click', function(e) {
76                  var l = $('div#lookup');                  var l = $('div#lookup');
                 l.css('display','block');  
77                  var column = $('form#sql input[name=add_group_by]').attr('value');                  var column = $('form#sql input[name=add_group_by]').attr('value');
78                  console.debug( this, e, column, l );                  var col_nr = $('form#sql select[name=where_column]').attr('options').selectedIndex;
79    
80                  $('input[name=add_group_by]').attr('disabled', 1);                  l.html('...loading '+column+'...').css('display','block');
81    
82                  l.load('?add_group_by='+column);                  console.debug( this, e, column, col_nr, l );
83                  $('input[name=close_group_by]').attr('disabled', 0).bind('click', function() {  
84                          l.css('display','none');                  $('input[name=add_group_by]')
85                          $('input[name=add_group_by]').attr('disabled', 0);                          .removeClass('changed')
86                          $('input[name=close_group_by]').attr('disabled', 1);                          .attr('disabled', 1);
87                          console.debug('closed group by lookup', column);  
88                    $.get('', { add_group_by: column }, function(data,textStatus) {
89                            console.debug( data, textStatus );
90                            l.addClass('changed');
91                            l.html( data );
92    
93                            $('div#lookup a')
94                                    .bind('click', function(e) {
95                                            console.debug( e );
96                                            $('form#sql input[name=where_value]')
97                                                    .addClass('changed')
98                                                    .attr('value', e.target.text )
99                                                    ;
100                                            $('form#sql select[name=where_column]')
101                                                    .addClass('changed')
102                                                    .attr('options').selectedIndex = col_nr
103                                                    ;
104                                            return false;
105                                    });
106                  });                  });
107    
108    
109                    $('input[name=close_group_by]')
110                            .addClass('changed')
111                            .attr('disabled', 0)
112                            .bind('click', function() {
113                                    l.css('display','none')
114                                            .addClass('changed')
115                                            .attr('disabled', 0)
116                                            ;
117                                    $('input[name=close_group_by]')
118                                            .removeClass('changed')
119                                            .attr('disabled', 1)
120                                            ;
121                                    console.debug('closed group by lookup', column);
122                            });
123          });          });
124    
125          console.info('ready');          console.info('ready');

Legend:
Removed from v.10  
changed lines
  Added in v.15

  ViewVC Help
Powered by ViewVC 1.1.26