/[jquery]/jquery/jquery-log.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 /jquery/jquery-log.js

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

no_pager/jquery-log.js revision 30 by dpavlin, Fri Aug 18 11:54:32 2006 UTC jquery/jquery-log.js revision 43 by dpavlin, Fri Aug 18 18:01:02 2006 UTC
# Line 4  Line 4 
4          2006-08-18 Dobrica Pavlinusic <dpavlin@rot13.org>          2006-08-18 Dobrica Pavlinusic <dpavlin@rot13.org>
5  */  */
6    
7  var _log_count = {  var _jql;
         info: 0,  
         debug: 0,  
         error: 0  
 };  
8    
9  $.log = {  $.log = {
10    
11            /* semi-private functions */
12    
13          join: function(a) {          join: function(a) {
14                  var m = '';                  var m = '';
15                  for (var i=0; i<a.length; i++)                  for (var i=0; i<a.length; i++)
# Line 18  $.log = { Line 17  $.log = {
17                  return m;                  return m;
18          },          },
19    
20            insert: function(class, m) {
21                    if (! _jql) this.create();
22    
23                    _jql.count[ class ]++;
24    
25          counter: function() {                  var html = '<div class="jql-' + class + '"'
26                  $('#debug-counter').html(                  if ( ! _jql.on[class] ) html += ' style="display:none"';
27                          '<span class="log-info">'+_log_count.info+'</span> ' +                  html += '>' + m + '</div>';
28                          '<span class="log-debug">'+_log_count.debug+'</span> ' +                  $('#jql-log').append( html );
29                          '<span class="log-error">'+_log_count.error+'</span>'                  //$('#jql-log').prepend( html );
30    
31                    // refresh count
32                    $('#jql-counter').html(
33                            '<span class="jql-info">'+_jql.count.info+'</span> ' +
34                            '<span class="jql-debug">'+_jql.count.debug+'</span> ' +
35                            '<span class="jql-error">'+_jql.count.error+'</span>'
36                  );                  );
37    
38                    this.scroll();
39          },          },
40    
41          info: function() {          scroll: function() {
42                  if (arguments) {                  // poor man's scroll to bottom
43                          _log_count.info++;                  var e = document.getElementById('jql-log');
44                          $('#debug').append( '<div class="log-info">'+this.join(arguments)+'</div>' );                  e.scrollTop = e.scrollHeight - e.clientHeight;
45                          this.counter();          },
46    
47            /* public functions */
48    
49            create: function() {
50    
51                    $('body').append(
52                    '<div id="jql" class="jql"><div id="jql-bar">' +
53                    '<a href="#" onclick="javascript:return $.log.clean();">clean</a> | ' +
54                    '<a href="#" class=".jql-info" onclick="javascript:return $.log.toggle(\'info\');">info</a> ' +
55                    '<a href="#" class=".jql-debug" onclick="javascript:return $.log.toggle(\'debug\');">debug</a> ' +
56                    '<a href="#" class=".jql-error" onclick="javascript:return $.log.toggle(\'error\');">error</a> | ' +
57                    '<a href="#" onclick="javascript:return $.log.toggle();">close</a>' +
58                    '</div><div id="jql-log"></div></div>' +
59                    '<div id="jql-show" class="jql">' +
60                    '<a href="#" onclick="javascript:return $.log.toggle();"><span id="jql-counter">?</span></a>' +
61                    '</div>'
62                    );
63    
64                    _jql = {
65                            count: {
66                                    info: 0,
67                                    debug: 0,
68                                    error: 0
69                            },
70                            on: {
71                                    info: true,
72                                    debug: true,
73                                    error: true
74                            }
75                    };
76    
77                    this.debug('created logger');
78            },
79    
80            /* onclick events */
81    
82            toggle: function( what ) {
83                    if (what) {
84                            $.log.debug('toggle '+what);
85                            $('.jql-'+what).toggle();
86                            _jql.on[what] = ! _jql.on[what];
87                    } else {
88                            $.log.debug('toggle logger');
89                            $('#jql').toggle();
90                            $('#jql-show').toggle();
91                  }                  }
92                    this.scroll();
93                    return false;
94            },
95    
96            clean: function() {
97                    $('#jql-log').html('');
98            },
99    
100            /* public methods to call from your code */
101    
102            info: function() {
103                    if (arguments) this.insert( 'info', this.join(arguments) );
104          },          },
105          debug: function() {          debug: function() {
106                  if (arguments) {                  if (arguments) this.insert( 'debug', this.join(arguments) );
                         _log_count.debug++;  
                         $('#debug').append( '<div class="log-debug">'+this.join(arguments)+'</div>' );  
                         this.counter();  
                 }  
107          },          },
108          error: function() {          error: function() {
109                  if (arguments) {                  if (arguments) this.insert( 'error', this.join(arguments) );
110                          _log_count.error++;          }
                         $('#debug').append( '<div class="log-error">'+this.join(arguments)+'</div>' );  
                         this.counter();  
                 }  
         },  
111  };  };
112    

Legend:
Removed from v.30  
changed lines
  Added in v.43

  ViewVC Help
Powered by ViewVC 1.1.26