index.html
6.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<style type="text/css">
#searchfloat {position:absolute;top:40px;right:20px;background:#F7F0A0;padding:10px;}
#saved {position: relative;}
#saved_sql {position:absolute;bottom:0;height:300px;background:#F7F0A0;width:100%;overflow:auto;display:none;}
#saved_sql li {display:block;clear:both;width:100%;float:left;line-height:18px;padding:1px 0}
#saved_sql li a{float:left;text-decoration: none;display:block;padding:0 5px;}
#saved_sql li i{display:none;float:left;color:#06f;font-size: 14px;font-style: normal;margin-left:2px;line-height:18px;}
#saved_sql li:hover{background:#fff;}
#saved_sql li:hover i{display:block;cursor:pointer;}
#database #tablename {height:205px;width:100%;padding:5px;}
#database #tablename option{height:18px;}
#database #subaction {height:210px;width:100%;}
#database .select-striped > option:nth-of-type(odd) {background-color: #f9f9f9;}
#database .dropdown-menu ul {margin:-3px 0;}
#database .dropdown-menu ul li{margin:3px 0;}
#database .dropdown-menu.row .col-xs-6{padding:0 5px;}
#sqlquery {font-size:12px;color:#444;}
#resultparent {padding:5px;}
</style>
<div class="panel panel-default panel-intro">
{:build_heading()}
<div class="panel-body">
<div id="database" class="tab-content">
<div class="tab-pane fade active in" id="one">
<div class="widget-body no-padding">
{if $auth->check('general/database/query')}
<div class="row">
<div class="col-xs-4">
<h4>{:__('SQL Result')}:</h4>
</div>
<div class="col-xs-8 text-right">
<form action="{:url('general.database/query')}" method="post" name="infoform" target="resultframe">
<input type="hidden" name="do_action" id="topaction" />
<a href="javascript:;" class="btn btn-success btn-compress"><i class="fa fa-compress"></i> {:__('Backup and Restore')}</a>
<div class="btn-group">
<button data-toggle="dropdown" class="btn btn-primary btn-embossed dropdown-toggle" type="button">{:__('Basic query')} <span class="caret"></span></button>
<div class="row dropdown-menu pull-right" style="width:300px;">
<div class="col-xs-6">
<select class="form-control select-striped" id="tablename" name="tablename[]" multiple="multiple">
{foreach $tables as $table}
<option value="{$table.name}" title="">{$table.name}<!--({$table.rows})--></option>
{/foreach}
</select>
</div>
<div class="col-xs-6">
<ul id="subaction" class="list-unstyled">
<li><input type="submit" name="submit1" value="{:__('View structure')}" rel="viewinfo" class="btn btn-primary btn-embossed btn-sm btn-block"/></li>
<li><input type="submit" name="submit2" value="{:__('View data')}" rel="viewdata" class="btn btn-primary btn-embossed btn-sm btn-block"/></li>
<li><input type="submit" name="submit3" value="{:__('Optimize')}" rel="optimize" class="btn btn-primary btn-embossed btn-sm btn-block" /></li>
<li><input type="submit" name="submit4" value="{:__('Repair')}" rel="repair" class="btn btn-primary btn-embossed btn-sm btn-block"/></li>
<li><input type="submit" name="submit5" value="{:__('Optimize all')}" rel="optimizeall" class="btn btn-primary btn-embossed btn-sm btn-block" /></li>
<li><input type="submit" name="submit6" value="{:__('Repair all')}" rel="repairall" class="btn btn-primary btn-embossed btn-sm btn-block" /></li>
</ul>
</div>
<div class="clear"></div>
</div>
</div>
</form>
</div>
</div>
<div class="well" id="resultparent">
<iframe name="resultframe" frameborder="0" id="resultframe" style="height:100%;" width="100%" height="100%"></iframe>
</div>
<form action="{:url('general.database/query')}" method="post" id="sqlexecute" name="form1" target="resultframe">
<input type="hidden" name="do_action" value="doquery" />
<div class="form-group">
<textarea name="sqlquery" placeholder="{:__('Executes one or multiple queries which are concatenated by a semicolon')}" cols="60" rows="5" class="form-control" id="sqlquery"></textarea>
</div>
<input type="submit" class="btn btn-success btn-embossed" value="{:__('Execute')}" />
<input type="reset" class="btn btn-default btn-embossed" value="{:__('Reset')}" />
</form>
{else /}
<div id="backuplist"></div>
{/if}
</div>
</div>
</div>
</div>
</div>
<script id="backuptpl" type="text/html">
<p><a href="javascript:;" class="btn btn-success btn-backup"><i class="fa fa-compress"></i> {:__('Backup now')}</a></p>
<table id="dt_basic" class="table table-striped table-bordered table-hover" width="100%" style="min-width:500px;font-size:12px;">
<thead>
<tr>
<th>ID</th>
<th>{:__('File')}</th>
<th>{:__('Size')}</th>
<th>{:__('Date')}</th>
<th>{:__('Operate')}</th>
</tr>
</thead>
<tbody>
<%for (var i=0;i<backuplist.length;i++){%>
<tr>
<td><%=i+1%></td>
<td><%=backuplist[i].file%></td>
<td><%=backuplist[i].size%></td>
<td><%=backuplist[i].date%></td>
<td>
<a href="javascript:;" class="btn btn-primary btn-restore btn-xs" data-file="<%=backuplist[i].file%>"><i class="fa fa-reply"></i> {:__('Restore')}</a>
<a href="javascript:;" class="btn btn-danger btn-delete btn-xs" data-file="<%=backuplist[i].file%>"><i class="fa fa-times"></i> {:__('Delete')}</a>
</td>
</tr>
<%}%>
</tbody>
</table>
</script>