openfire_admin 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +2 -0
- data/README.md +1 -3
- data/lib/openfire_admin/admin_client.rb +24 -0
- data/lib/openfire_admin/client.rb +63 -0
- data/lib/openfire_admin/http_client.rb +2 -1
- data/lib/openfire_admin/plugin.rb +132 -0
- data/lib/openfire_admin/property_map.rb +76 -0
- data/lib/openfire_admin/response_exception.rb +2 -0
- data/lib/openfire_admin/system_cache.rb +39 -0
- data/lib/openfire_admin/user_admin.rb +32 -0
- data/lib/openfire_admin/version.rb +1 -1
- data/lib/openfire_admin.rb +4 -308
- data/openfire_admin.gemspec +3 -0
- data/spec/fixtures/plugin-admin.jsp +584 -0
- data/spec/fixtures/server-properties.jsp +483 -0
- data/spec/fixtures/server-properties_password.jsp +640 -0
- data/spec/fixtures/system-cache.jsp +1315 -0
- data/spec/fixtures/system-cache_success.jsp +1327 -0
- data/spec/fixtures/versions.xml +32 -0
- data/spec/openfire_admin_spec.rb +198 -0
- data/spec/spec_helper.rb +91 -0
- metadata +46 -6
@@ -0,0 +1,584 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
21
|
+
|
22
|
+
|
23
|
+
<html>
|
24
|
+
<head>
|
25
|
+
<title>Openfire Admin Console: Plugins</title>
|
26
|
+
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
27
|
+
<link rel="stylesheet" type="text/css" href="/style/global.css">
|
28
|
+
<script language="JavaScript" type="text/javascript" src="/js/prototype.js"></script>
|
29
|
+
<script language="JavaScript" type="text/javascript" src="/js/scriptaculous.js"></script>
|
30
|
+
<script language="JavaScript" type="text/javascript" src="/js/cookies.js"></script>
|
31
|
+
<script language="JavaScript" type="text/javascript">
|
32
|
+
|
33
|
+
</script>
|
34
|
+
<script type="text/javascript" src="/js/behaviour.js"></script>
|
35
|
+
<script type="text/javascript">
|
36
|
+
// Add a nice little rollover effect to any row in a jive-table object. This will help
|
37
|
+
// visually link left and right columns.
|
38
|
+
/*
|
39
|
+
var myrules = {
|
40
|
+
'.jive-table TBODY TR' : function(el) {
|
41
|
+
el.onmouseover = function() {
|
42
|
+
this.style.backgroundColor = '#ffffee';
|
43
|
+
}
|
44
|
+
el.onmouseout = function() {
|
45
|
+
this.style.backgroundColor = '#ffffff';
|
46
|
+
}
|
47
|
+
}
|
48
|
+
};
|
49
|
+
Behaviour.register(myrules);
|
50
|
+
*/
|
51
|
+
</script>
|
52
|
+
<meta name="pageID" content="plugin-settings"/>
|
53
|
+
<meta name="helpPage" content="manage_system_plugins.html"/>
|
54
|
+
<script src="dwr/engine.js" type="text/javascript"></script>
|
55
|
+
<script src="dwr/util.js" type="text/javascript"></script>
|
56
|
+
<script src="dwr/interface/downloader.js" type="text/javascript"></script>
|
57
|
+
|
58
|
+
<script type="text/javascript" >
|
59
|
+
DWREngine.setErrorHandler(handleError);
|
60
|
+
|
61
|
+
function handleError(error) {
|
62
|
+
}
|
63
|
+
</script>
|
64
|
+
|
65
|
+
<style type="text/css">
|
66
|
+
|
67
|
+
.textfield {
|
68
|
+
font-size: 11px;
|
69
|
+
font-family: verdana;
|
70
|
+
padding: 3px 2px;
|
71
|
+
background: #efefef;
|
72
|
+
}
|
73
|
+
|
74
|
+
.text {
|
75
|
+
font-size: 11px;
|
76
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
77
|
+
}
|
78
|
+
|
79
|
+
.small-label {
|
80
|
+
font-size: 11px;
|
81
|
+
font-weight: bold;
|
82
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
83
|
+
}
|
84
|
+
|
85
|
+
.small-label-link {
|
86
|
+
font-size: 11px;
|
87
|
+
font-weight: bold;
|
88
|
+
font-family: verdana;
|
89
|
+
text-decoration: underline;
|
90
|
+
}
|
91
|
+
|
92
|
+
.light-gray-border {
|
93
|
+
border-color: #ccc;
|
94
|
+
border-style: solid;
|
95
|
+
border-width: 1px 1px 1px 1px;
|
96
|
+
padding: 5px;
|
97
|
+
-moz-border-radius: 3px;
|
98
|
+
}
|
99
|
+
|
100
|
+
.light-gray-border-bottom {
|
101
|
+
border-color: #dcdcdc;
|
102
|
+
border-style: solid;
|
103
|
+
border-width: 0px 0px 1px 0px;
|
104
|
+
}
|
105
|
+
|
106
|
+
.table-header {
|
107
|
+
text-align: left;
|
108
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
109
|
+
font-size: 8pt;
|
110
|
+
font-weight: bold;
|
111
|
+
border-color: #ccc;
|
112
|
+
border-style: solid;
|
113
|
+
border-width: 1px 0 1px 0;
|
114
|
+
padding: 5px;
|
115
|
+
}
|
116
|
+
|
117
|
+
.table-header-left {
|
118
|
+
text-align: left;
|
119
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
120
|
+
font-size: 8pt;
|
121
|
+
font-weight: bold;
|
122
|
+
border-color: #ccc;
|
123
|
+
border-style: solid;
|
124
|
+
border-width: 1px 0 1px 1px;
|
125
|
+
padding: 5px;
|
126
|
+
|
127
|
+
}
|
128
|
+
|
129
|
+
.table-header-right {
|
130
|
+
text-align: left;
|
131
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
132
|
+
font-size: 8pt;
|
133
|
+
font-weight: bold;
|
134
|
+
border-color: #ccc;
|
135
|
+
border-style: solid;
|
136
|
+
border-width: 1px 1px 1px 0;
|
137
|
+
padding: 5px;
|
138
|
+
}
|
139
|
+
|
140
|
+
.table-font {
|
141
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
142
|
+
font-size: 8pt;
|
143
|
+
}
|
144
|
+
|
145
|
+
.update {
|
146
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
147
|
+
font-size: 8pt;
|
148
|
+
background: #E7FBDE;
|
149
|
+
border-color: #73CB73;
|
150
|
+
border-style: solid;
|
151
|
+
border-width: 0 1px 1px 1px;
|
152
|
+
padding: 5px;
|
153
|
+
}
|
154
|
+
|
155
|
+
.update-bottom {
|
156
|
+
text-align: left;
|
157
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
158
|
+
font-size: 8pt;
|
159
|
+
font-weight: bold;
|
160
|
+
background: #E7FBDE;
|
161
|
+
border-color: #73CB73;
|
162
|
+
border-style: solid;
|
163
|
+
border-width: 0 0 1px 0;
|
164
|
+
padding: 5px;
|
165
|
+
}
|
166
|
+
|
167
|
+
.update-bottom-left {
|
168
|
+
text-align: left;
|
169
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
170
|
+
font-size: 8pt;
|
171
|
+
font-weight: bold;
|
172
|
+
background: #E7FBDE;
|
173
|
+
border-color: #73CB73;
|
174
|
+
border-style: solid;
|
175
|
+
border-width: 0 0 1px 1px;
|
176
|
+
padding: 5px;
|
177
|
+
}
|
178
|
+
|
179
|
+
.update-bottom-right {
|
180
|
+
text-align: left;
|
181
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
182
|
+
font-size: 8pt;
|
183
|
+
font-weight: bold;
|
184
|
+
background: #E7FBDE;
|
185
|
+
border-color: #73CB73;
|
186
|
+
border-style: solid;
|
187
|
+
border-width: 0 1px 1px 0;
|
188
|
+
padding: 5px;
|
189
|
+
}
|
190
|
+
|
191
|
+
.update-top {
|
192
|
+
text-align: left;
|
193
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
194
|
+
font-size: 9pt;
|
195
|
+
background: #E7FBDE;
|
196
|
+
border-color: #73CB73;
|
197
|
+
border-style: solid;
|
198
|
+
border-width: 1px 0px 0px 0px;
|
199
|
+
padding: 5px;
|
200
|
+
}
|
201
|
+
|
202
|
+
.update-right {
|
203
|
+
text-align: left;
|
204
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
205
|
+
font-size: 8pt;
|
206
|
+
font-weight: bold;
|
207
|
+
background: #E7FBDE;
|
208
|
+
border-color: #73CB73;
|
209
|
+
border-style: solid;
|
210
|
+
border-width: 1px 1px 0px 0px;
|
211
|
+
padding: 5px;
|
212
|
+
}
|
213
|
+
|
214
|
+
.line-bottom-border {
|
215
|
+
text-align: left;
|
216
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
217
|
+
font-size: 9pt;
|
218
|
+
border-color: #e3e3e3;
|
219
|
+
border-style: solid;
|
220
|
+
border-width: 0px 0px 1px 0px;
|
221
|
+
padding: 5px;
|
222
|
+
}
|
223
|
+
</style>
|
224
|
+
|
225
|
+
|
226
|
+
<script type="text/javascript">
|
227
|
+
function download(url, hashCode) {
|
228
|
+
document.getElementById(hashCode + "-row").style.display = 'none';
|
229
|
+
document.getElementById(hashCode + "-update").style.display = '';
|
230
|
+
downloader.downloadPlugin(downloadComplete, url);
|
231
|
+
}
|
232
|
+
|
233
|
+
function downloadComplete(update) {
|
234
|
+
document.getElementById(update.hashCode + "-row").style.display = 'none';
|
235
|
+
document.getElementById(update.hashCode + "-update").style.display = '';
|
236
|
+
document.getElementById(update.hashCode + "-image").innerHTML = '<img src="images/success-16x16.gif" border="0" alt=""/>';
|
237
|
+
document.getElementById(update.hashCode + "-text").innerHTML = 'Update Completed';
|
238
|
+
}
|
239
|
+
</script>
|
240
|
+
</head>
|
241
|
+
|
242
|
+
<body id="jive-body">
|
243
|
+
|
244
|
+
<!-- BEGIN main -->
|
245
|
+
<div id="main">
|
246
|
+
|
247
|
+
<div id="jive-header">
|
248
|
+
<div id="jive-logo">
|
249
|
+
<a href="/index.jsp"><img src="/images/login_logo.gif" alt="Openfire" width="179" height="53" /></a>
|
250
|
+
</div>
|
251
|
+
<div id="jive-userstatus">
|
252
|
+
Openfire 3.8.2<br/>
|
253
|
+
Logged in as <strong>nazoking</strong> - <a href="/index.jsp?logout=true">Logout</a>
|
254
|
+
</div>
|
255
|
+
<div id="jive-nav">
|
256
|
+
<div id="jive-nav-left"></div>
|
257
|
+
<ul><li class="">
|
258
|
+
<a href="/index.jsp" title="Click to manage server settings" onmouseover="self.status='Click to manage server settings';return true;" onmouseout="self.status='';return true;">Server</a>
|
259
|
+
</li><li class="">
|
260
|
+
<a href="/user-summary.jsp" title="Click to manage users and groups" onmouseover="self.status='Click to manage users and groups';return true;" onmouseout="self.status='';return true;">Users/Groups</a>
|
261
|
+
</li><li class="">
|
262
|
+
<a href="/session-summary.jsp" title="Click to manage connected sessions" onmouseover="self.status='Click to manage connected sessions';return true;" onmouseout="self.status='';return true;">Sessions</a>
|
263
|
+
</li><li class="">
|
264
|
+
<a href="/muc-room-summary.jsp" title="Click to manage group chat settings" onmouseover="self.status='Click to manage group chat settings';return true;" onmouseout="self.status='';return true;">Group Chat</a>
|
265
|
+
</li><li class="currentlink">
|
266
|
+
<a href="/plugin-admin.jsp" title="Click to manage all plugins" onmouseover="self.status='Click to manage all plugins';return true;" onmouseout="self.status='';return true;">Plugins</a>
|
267
|
+
</li></ul>
|
268
|
+
<div id="jive-nav-right"></div>
|
269
|
+
</div>
|
270
|
+
<div id="jive-subnav">
|
271
|
+
<ul><li class="current">
|
272
|
+
<a href="/plugin-admin.jsp" title=""
|
273
|
+
onmouseover="self.status='';return true;" onmouseout="self.status='';return true;"
|
274
|
+
>Plugin Admin</a>
|
275
|
+
</li></ul>
|
276
|
+
</div>
|
277
|
+
</div>
|
278
|
+
|
279
|
+
<div id="jive-main">
|
280
|
+
<table cellpadding="0" cellspacing="0" border="0" width="100%">
|
281
|
+
<tbody>
|
282
|
+
<tr valign="top">
|
283
|
+
<td width="1%">
|
284
|
+
<div id="jive-sidebar-container">
|
285
|
+
<div id="jive-sidebar-box">
|
286
|
+
<div id="jive-sidebar">
|
287
|
+
<ul><li class="currentlink">
|
288
|
+
<a href="/plugin-admin.jsp" title="Click to manage installed plugins"
|
289
|
+
onmouseover="self.status='Click to manage installed plugins';return true;" onmouseout="self.status='';return true;"
|
290
|
+
>Plugins</a>
|
291
|
+
|
292
|
+
</li><li class="">
|
293
|
+
<a href="/available-plugins.jsp" title="Click to browse available plugins"
|
294
|
+
onmouseover="self.status='Click to browse available plugins';return true;" onmouseout="self.status='';return true;"
|
295
|
+
>Available Plugins</a>
|
296
|
+
|
297
|
+
</li></ul>
|
298
|
+
<br>
|
299
|
+
<img src="/images/blank.gif" width="150" height="1" border="0" alt="">
|
300
|
+
</div>
|
301
|
+
</div>
|
302
|
+
</div>
|
303
|
+
</td>
|
304
|
+
<td width="99%" id="jive-content">
|
305
|
+
|
306
|
+
|
307
|
+
|
308
|
+
|
309
|
+
<h1>
|
310
|
+
Plugins
|
311
|
+
</h1>
|
312
|
+
|
313
|
+
<div id="jive-main-content">
|
314
|
+
<p>
|
315
|
+
Plugins add new functionality to the server. The list of plugins currently installed is below. To download new plugins, please visit the <a href="available-plugins.jsp">Available Plugins</a> page.
|
316
|
+
</p>
|
317
|
+
|
318
|
+
<p>
|
319
|
+
|
320
|
+
<div class="light-gray-border" style="padding:10px;">
|
321
|
+
<table cellpadding="0" cellspacing="0" border="0" width="100%">
|
322
|
+
<tr style="background:#eee;">
|
323
|
+
|
324
|
+
<td nowrap colspan="3" class="table-header-left">Plugins</td>
|
325
|
+
<td nowrap class="table-header">Description</td>
|
326
|
+
<td nowrap class="table-header">Version</td>
|
327
|
+
<td nowrap class="table-header">Author</td>
|
328
|
+
<td nowrap class="table-header">Restart</td>
|
329
|
+
<td nowrap class="table-header-right">Delete</td>
|
330
|
+
</tr>
|
331
|
+
|
332
|
+
<tbody>
|
333
|
+
|
334
|
+
|
335
|
+
|
336
|
+
|
337
|
+
<tr valign="top">
|
338
|
+
<td width="1%" class="line-bottom-border">
|
339
|
+
|
340
|
+
<img src="geticon?plugin=hazelcast&showIcon=true&decorator=none" width="16" height="16" alt="Plugin">
|
341
|
+
|
342
|
+
</td>
|
343
|
+
<td width="20%" nowrap valign="top" class="line-bottom-border">
|
344
|
+
Hazelcast Clustering Plugin
|
345
|
+
|
346
|
+
|
347
|
+
|
348
|
+
</td>
|
349
|
+
<td nowrap valign="top" class="line-bottom-border">
|
350
|
+
<p>
|
351
|
+
<a href="plugin-admin.jsp?plugin=hazelcast&showReadme=true&decorator=none"
|
352
|
+
><img src="images/doc-readme-16x16.gif" width="16" height="16" border="0" alt="README"></a>
|
353
|
+
|
354
|
+
|
355
|
+
<a href="plugin-admin.jsp?plugin=hazelcast&showChangelog=true&decorator=none"
|
356
|
+
><img src="images/doc-changelog-16x16.gif" width="16" height="16" border="0" alt="changelog"></a>
|
357
|
+
</p>
|
358
|
+
</td>
|
359
|
+
<td width="60%" valign="top" class="line-bottom-border">
|
360
|
+
Clustering support for Openfire, powered by Hazelcast.
|
361
|
+
</td>
|
362
|
+
<td width="5%" align="center" valign="top" class="line-bottom-border">
|
363
|
+
<p>1.0.6</p>
|
364
|
+
|
365
|
+
</td>
|
366
|
+
<td width="15%" nowrap valign="top" class="line-bottom-border">
|
367
|
+
Tom Evans
|
368
|
+
</td>
|
369
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
370
|
+
<a href="plugin-admin.jsp?reloadplugin=hazelcast"
|
371
|
+
title="Reload the plugin."
|
372
|
+
><img src="images/refresh-16x16.gif" width="16" height="16" border="0" alt="Refresh"></a>
|
373
|
+
</td>
|
374
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
375
|
+
<a href="#" onclick="if (confirm('Delete plugin?')) { location.replace('plugin-admin.jsp?deleteplugin=hazelcast'); } "
|
376
|
+
title="Click to delete..."
|
377
|
+
><img src="images/delete-16x16.gif" width="16" height="16" border="0" alt="Delete"></a>
|
378
|
+
</td>
|
379
|
+
</tr>
|
380
|
+
|
381
|
+
|
382
|
+
<tr><td></td></tr>
|
383
|
+
|
384
|
+
<!-- End of update section -->
|
385
|
+
|
386
|
+
|
387
|
+
<tr valign="top">
|
388
|
+
<td width="1%" class="line-bottom-border">
|
389
|
+
|
390
|
+
<img src="geticon?plugin=monitoring&showIcon=true&decorator=none" width="16" height="16" alt="Plugin">
|
391
|
+
|
392
|
+
</td>
|
393
|
+
<td width="20%" nowrap valign="top" class="line-bottom-border">
|
394
|
+
Monitoring Service
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
</td>
|
399
|
+
<td nowrap valign="top" class="line-bottom-border">
|
400
|
+
<p>
|
401
|
+
<a href="plugin-admin.jsp?plugin=monitoring&showReadme=true&decorator=none"
|
402
|
+
><img src="images/doc-readme-16x16.gif" width="16" height="16" border="0" alt="README"></a>
|
403
|
+
|
404
|
+
|
405
|
+
<a href="plugin-admin.jsp?plugin=monitoring&showChangelog=true&decorator=none"
|
406
|
+
><img src="images/doc-changelog-16x16.gif" width="16" height="16" border="0" alt="changelog"></a>
|
407
|
+
</p>
|
408
|
+
</td>
|
409
|
+
<td width="60%" valign="top" class="line-bottom-border">
|
410
|
+
Monitors conversations and statistics of the server.
|
411
|
+
</td>
|
412
|
+
<td width="5%" align="center" valign="top" class="line-bottom-border">
|
413
|
+
<p>1.3.2-beta1</p>
|
414
|
+
|
415
|
+
</td>
|
416
|
+
<td width="15%" nowrap valign="top" class="line-bottom-border">
|
417
|
+
Jive Software
|
418
|
+
</td>
|
419
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
420
|
+
<a href="plugin-admin.jsp?reloadplugin=monitoring"
|
421
|
+
title="Reload the plugin."
|
422
|
+
><img src="images/refresh-16x16.gif" width="16" height="16" border="0" alt="Refresh"></a>
|
423
|
+
</td>
|
424
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
425
|
+
<a href="#" onclick="if (confirm('Delete plugin?')) { location.replace('plugin-admin.jsp?deleteplugin=monitoring'); } "
|
426
|
+
title="Click to delete..."
|
427
|
+
><img src="images/delete-16x16.gif" width="16" height="16" border="0" alt="Delete"></a>
|
428
|
+
</td>
|
429
|
+
</tr>
|
430
|
+
|
431
|
+
|
432
|
+
<tr><td></td></tr>
|
433
|
+
|
434
|
+
<!-- End of update section -->
|
435
|
+
|
436
|
+
|
437
|
+
<tr valign="top">
|
438
|
+
<td width="1%" class="line-bottom-border">
|
439
|
+
|
440
|
+
<img src="geticon?plugin=presence&showIcon=true&decorator=none" width="16" height="16" alt="Plugin">
|
441
|
+
|
442
|
+
</td>
|
443
|
+
<td width="20%" nowrap valign="top" class="line-bottom-border">
|
444
|
+
Presence Service
|
445
|
+
|
446
|
+
|
447
|
+
|
448
|
+
</td>
|
449
|
+
<td nowrap valign="top" class="line-bottom-border">
|
450
|
+
<p>
|
451
|
+
<a href="plugin-admin.jsp?plugin=presence&showReadme=true&decorator=none"
|
452
|
+
><img src="images/doc-readme-16x16.gif" width="16" height="16" border="0" alt="README"></a>
|
453
|
+
|
454
|
+
|
455
|
+
<a href="plugin-admin.jsp?plugin=presence&showChangelog=true&decorator=none"
|
456
|
+
><img src="images/doc-changelog-16x16.gif" width="16" height="16" border="0" alt="changelog"></a>
|
457
|
+
</p>
|
458
|
+
</td>
|
459
|
+
<td width="60%" valign="top" class="line-bottom-border">
|
460
|
+
Exposes presence information through HTTP.
|
461
|
+
</td>
|
462
|
+
<td width="5%" align="center" valign="top" class="line-bottom-border">
|
463
|
+
<p>1.5.1</p>
|
464
|
+
|
465
|
+
</td>
|
466
|
+
<td width="15%" nowrap valign="top" class="line-bottom-border">
|
467
|
+
Jive Software
|
468
|
+
</td>
|
469
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
470
|
+
<a href="plugin-admin.jsp?reloadplugin=presence"
|
471
|
+
title="Reload the plugin."
|
472
|
+
><img src="images/refresh-16x16.gif" width="16" height="16" border="0" alt="Refresh"></a>
|
473
|
+
</td>
|
474
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
475
|
+
<a href="#" onclick="if (confirm('Delete plugin?')) { location.replace('plugin-admin.jsp?deleteplugin=presence'); } "
|
476
|
+
title="Click to delete..."
|
477
|
+
><img src="images/delete-16x16.gif" width="16" height="16" border="0" alt="Delete"></a>
|
478
|
+
</td>
|
479
|
+
</tr>
|
480
|
+
|
481
|
+
|
482
|
+
<tr><td></td></tr>
|
483
|
+
|
484
|
+
<!-- End of update section -->
|
485
|
+
|
486
|
+
|
487
|
+
<tr valign="top">
|
488
|
+
<td width="1%" class="line-bottom-border">
|
489
|
+
|
490
|
+
<img src="geticon?plugin=search&showIcon=true&decorator=none" width="16" height="16" alt="Plugin">
|
491
|
+
|
492
|
+
</td>
|
493
|
+
<td width="20%" nowrap valign="top" class="line-bottom-border">
|
494
|
+
Search
|
495
|
+
|
496
|
+
|
497
|
+
|
498
|
+
</td>
|
499
|
+
<td nowrap valign="top" class="line-bottom-border">
|
500
|
+
<p>
|
501
|
+
<a href="plugin-admin.jsp?plugin=search&showReadme=true&decorator=none"
|
502
|
+
><img src="images/doc-readme-16x16.gif" width="16" height="16" border="0" alt="README"></a>
|
503
|
+
|
504
|
+
|
505
|
+
<a href="plugin-admin.jsp?plugin=search&showChangelog=true&decorator=none"
|
506
|
+
><img src="images/doc-changelog-16x16.gif" width="16" height="16" border="0" alt="changelog"></a>
|
507
|
+
</p>
|
508
|
+
</td>
|
509
|
+
<td width="60%" valign="top" class="line-bottom-border">
|
510
|
+
Provides support for Jabber Search (XEP-0055)
|
511
|
+
</td>
|
512
|
+
<td width="5%" align="center" valign="top" class="line-bottom-border">
|
513
|
+
<p>1.5.1</p>
|
514
|
+
|
515
|
+
</td>
|
516
|
+
<td width="15%" nowrap valign="top" class="line-bottom-border">
|
517
|
+
Ryan Graham
|
518
|
+
</td>
|
519
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
520
|
+
<a href="plugin-admin.jsp?reloadplugin=search"
|
521
|
+
title="Reload the plugin."
|
522
|
+
><img src="images/refresh-16x16.gif" width="16" height="16" border="0" alt="Refresh"></a>
|
523
|
+
</td>
|
524
|
+
<td width="1%" align="center" valign="top" class="line-bottom-border">
|
525
|
+
<a href="#" onclick="if (confirm('Delete plugin?')) { location.replace('plugin-admin.jsp?deleteplugin=search'); } "
|
526
|
+
title="Click to delete..."
|
527
|
+
><img src="images/delete-16x16.gif" width="16" height="16" border="0" alt="Delete"></a>
|
528
|
+
</td>
|
529
|
+
</tr>
|
530
|
+
|
531
|
+
|
532
|
+
<tr><td></td></tr>
|
533
|
+
|
534
|
+
<!-- End of update section -->
|
535
|
+
|
536
|
+
</tbody>
|
537
|
+
</table>
|
538
|
+
</div>
|
539
|
+
|
540
|
+
|
541
|
+
<br /><br />
|
542
|
+
|
543
|
+
<div>
|
544
|
+
<h3>Upload Plugin</h3>
|
545
|
+
<p>Plugin files (.jar) can be uploaded directly by using the form below.</p>
|
546
|
+
<form action="plugin-admin.jsp?uploadplugin" enctype="multipart/form-data" method="post">
|
547
|
+
<input type="file" name="uploadfile" />
|
548
|
+
<input type="submit" value="Upload Plugin" />
|
549
|
+
</form>
|
550
|
+
</div>
|
551
|
+
</div>
|
552
|
+
</td>
|
553
|
+
</tr>
|
554
|
+
</tbody>
|
555
|
+
</table>
|
556
|
+
</div>
|
557
|
+
|
558
|
+
</div>
|
559
|
+
<!-- END main -->
|
560
|
+
|
561
|
+
<!-- BEGIN footer -->
|
562
|
+
<div id="jive-footer">
|
563
|
+
<div class="jive-footer-nav">
|
564
|
+
|
565
|
+
<a href="/index.jsp" title="Click to manage server settings" onmouseover="self.status='Click to manage server settings';return true;" onmouseout="self.status='';return true;">Server</a>
|
566
|
+
|
|
567
|
+
<a href="/user-summary.jsp" title="Click to manage users and groups" onmouseover="self.status='Click to manage users and groups';return true;" onmouseout="self.status='';return true;">Users/Groups</a>
|
568
|
+
|
|
569
|
+
<a href="/session-summary.jsp" title="Click to manage connected sessions" onmouseover="self.status='Click to manage connected sessions';return true;" onmouseout="self.status='';return true;">Sessions</a>
|
570
|
+
|
|
571
|
+
<a href="/muc-room-summary.jsp" title="Click to manage group chat settings" onmouseover="self.status='Click to manage group chat settings';return true;" onmouseout="self.status='';return true;">Group Chat</a>
|
572
|
+
|
|
573
|
+
<a href="/plugin-admin.jsp" title="Click to manage all plugins" onmouseover="self.status='Click to manage all plugins';return true;" onmouseout="self.status='';return true;">Plugins</a>
|
574
|
+
|
575
|
+
</div>
|
576
|
+
<div class="jive-footer-copyright">
|
577
|
+
Built by <a href="http://www.jivesoftware.com">Jive Software</a> and the <a href="http://www.igniterealtime.org">IgniteRealtime.org</a> community
|
578
|
+
</div>
|
579
|
+
</div>
|
580
|
+
<!-- END footer -->
|
581
|
+
|
582
|
+
</body>
|
583
|
+
</html>
|
584
|
+
|