source: OpenRLabs-Git/deploy/rlabs-docker/web2py-rlabs/applications/admin/views/debug/index.html

main
Last change on this file was 42bd667, checked in by David Fuertes <dfuertes@…>, 4 years ago

Historial Limpio

  • Property mode set to 100755
File size: 3.7 KB
Line 
1{{extend 'layout.html'}}
2
3{{block sectionclass}}shell{{end}}
4<!--style type="text/css">
5
6.prompt, #output {
7  width: 45em;
8  border: 1px solid #CCCCCC;
9  font-size: 10pt;
10  margin: 0.5em;
11  padding: 0.5em;
12  padding-right: 0em;
13  overflow: auto;
14  wrap: hard;
15}
16
17#output {
18  height:250px;overflow:auto;
19}
20
21#toolbar {
22  margin-left: 0.5em;
23  padding-left: 0.5em;
24}
25
26#caret {
27  width: 2.5em;
28  margin-right: 0px;
29  padding-right: 0px;
30  border-right: 0px;
31}
32
33#statement {
34  width: 43em;
35  margin-left: -1em;
36  padding-left: 0px;
37  border-left: 0px;
38  background-position: top right;
39  background-repeat: no-repeat;
40}
41
42.processing {
43  background-image: url("{{=URL('static','images/spinner.gif')}}");
44}
45
46#ajax-status {
47  font-weight: bold;
48}
49
50.message {
51  color: #8AD;
52  font-weight: bold;
53  font-style: italic;
54}
55
56.error {
57  color: #F44;
58}
59
60.username {
61  font-weight: bold;
62}
63
64</style-->
65<script src="{{=URL('static', 'js/autoscroll.js')}}"></script>
66
67<div id="wrapper">
68  <textarea id="output" readonly="readonly">{{=T('web2py Debugger')}} {{=request.env.web2py_version}}{{=data}}</textarea>
69
70  <form id="form" action="{{=URL(r=request,f='callback',args=app)}}" method="get">
71    <div id="shellwrapper">
72      <div id="caret">&gt;&gt;&gt;</div>
73      <div id="autoscroll" style="cursor:pointer;float:right;">autoscroll</div>
74      <div class="tooltip">
75        <textarea class="prompt" name="statement" id="statement"></textarea>
76        <span>{{=T('Type PDB debugger command in here and hit Return (Enter) to execute it.')}}</span>
77      </div>
78    </div>
79  </form>
80</div>
81
82<div class="help">
83  <ul>
84    <li>{{=T('Using the shell may lock the database to other users of this app.')}}</li>
85  </ul>
86</div>
87
88<script type="text/javascript">
89var bShellScrolling=0
90jQuery(document).ready(function(){
91  jQuery('#statement').focus();
92
93  jQuery('#statement').keyup(function(event){
94    var t=jQuery(this),
95    s=t.val(),
96    o=jQuery('#output'),
97    RETURN = 38;
98    if(s=='\n') t.val('');
99    if(s.length>1 && s.substr(s.length-1,1)=='\n' && s.substr(s.length-2,1)!=':' &&
100    (s.indexOf(':\n ')<0 || s.substr(s.length-2,1)=='\n')) {
101      t.val('');
102      jQuery.post("{{=URL(r=request,f='callback',args=app)}}",
103      {statement:s},function(data){o.html(o.html()+data).attr('scrollTop',o.attr('scrollHeight'));});
104    } else { };
105    if(event.keyCode==RETURN){
106      var i=s.length
107      if(i==0){
108        var s=o.find('table:last pre:first').text();
109        bShellScrolling=o.find('table').length;
110      }else if(bShellScrolling){
111        var i=bShellScrolling
112        if(i<1){
113          return
114        }else{
115          i--
116          var s=o.find('table:nth-child('+(i)+') pre:first').text();
117          bShellScrolling=i
118        }
119      }else if(s.indexOf('\n')<0){
120        var oo=o.find('tr:first-child pre:contains("'+s+'")')
121        if(oo.length==0){
122          return
123        }else if(oo.length==1){
124          s=oo.text();
125        }else{
126          sVar=oo.text();
127          o.html(o.html()+'<dd>'+s+' ?</dd><dt>'+sVar+'</dt>').attr('scrollTop',o.attr('scrollHeight'))
128          return
129        }
130      }else{
131        //multistring expr
132        return;
133      }
134      //  if(s.slice(s.length-1)=='\n'){
135      s=s.slice(0,s.length-1)
136      //        }
137      t.val(s);
138    }
139    if(bShellScrolling && event.keyCode==40){
140      var i=bShellScrolling
141      i++
142      var s=o.find('table:nth-child('+i+') tr:first-child pre').text();
143      if(s){
144        s=s.slice(0,s.length-1)
145        t.val(s);
146        bShellScrolling=i
147      }else{
148        bShellScrolling=0
149        t.val('')
150      }
151    };
152    if(bShellScrolling && (event.keyCode==37 || event.keyCode==39)){
153      bShellScrolling=0;
154    };
155    if(event.keyCode==27){
156      bShellScrolling=0;
157      t.val('');
158    };
159  });
160});
161</script>
162
Note: See TracBrowser for help on using the repository browser.