mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-01-31 19:02:59 +01:00
Plugin install/uninstall
This commit is contained in:
parent
81250cba15
commit
af96509fbb
2 changed files with 41 additions and 19 deletions
|
@ -32,14 +32,24 @@ exports.socketio = function (hook_name, args, cb) {
|
|||
});
|
||||
});
|
||||
|
||||
socket.on("install", function (query) {
|
||||
socket.on("install", function (plugin_name) {
|
||||
socket.emit("progress", {progress:0, message:'Downloading and installing ' + plugin_name + "..."});
|
||||
installer.install(plugin_name, function (er) {
|
||||
if (er)
|
||||
socket.emit("progress", {progress:1, error:er});
|
||||
else
|
||||
socket.emit("progress", {progress:1, message:'Done.'});
|
||||
});
|
||||
});
|
||||
|
||||
socket.on("uninstall", function (query) {
|
||||
socket.on("uninstall", function (plugin_name) {
|
||||
socket.emit("progress", {progress:0, message:'Uninstalling ' + plugin_name + "..."});
|
||||
installer.uninstall(plugin_name, function (er) {
|
||||
if (er)
|
||||
socket.emit("progress", {progress:1, error:er});
|
||||
else
|
||||
socket.emit("progress", {progress:1, message:'Done.'});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
});
|
||||
}
|
||||
|
|
|
@ -54,14 +54,28 @@
|
|||
$(document).ready(function () {
|
||||
var socket = io.connect().of("/pluginfw/installer");
|
||||
|
||||
$("#progress.dialog .close").click(function () {
|
||||
$("#progress.dialog").hide();
|
||||
});
|
||||
function updateHandlers() {
|
||||
$("#progress.dialog .close").click(function () {
|
||||
$("#progress.dialog").hide();
|
||||
});
|
||||
|
||||
$("#do-search").click(function () {
|
||||
if ($("#search-query")[0].value != "")
|
||||
socket.emit("search", $("#search-query")[0].value);
|
||||
});
|
||||
$("#do-search").click(function () {
|
||||
if ($("#search-query")[0].value != "")
|
||||
socket.emit("search", $("#search-query")[0].value);
|
||||
});
|
||||
|
||||
$("#do-install").click(function (e) {
|
||||
var row = $(e.target).closest("tr");
|
||||
socket.emit("install", row.find(".name").html());
|
||||
});
|
||||
|
||||
$("#do-uninstall").click(function (e) {
|
||||
var row = $(e.target).closest("tr");
|
||||
socket.emit("install", row.find(".name").html());
|
||||
});
|
||||
}
|
||||
|
||||
updateHandlers();
|
||||
|
||||
socket.on('progress', function (data) {
|
||||
$("#progress.dialog .close").hide();
|
||||
|
@ -93,6 +107,7 @@
|
|||
}
|
||||
$("#search-results").append(row);
|
||||
}
|
||||
updateHandlers();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
@ -120,13 +135,10 @@
|
|||
<% for (var plugin_name in plugins) { %>
|
||||
<% var plugin = plugins[plugin_name]; %>
|
||||
<tr>
|
||||
<td><%= plugin.package.name %></td>
|
||||
<td class="name"><%= plugin.package.name %></td>
|
||||
<td><%= plugin.package.description %></td>
|
||||
<td>
|
||||
<form method="post">
|
||||
<input type="hidden" name="uninstall_plugin" value="<%= plugin.package.name %>">
|
||||
<input type="submit" value="U">
|
||||
</form>
|
||||
<input type="submit" value="U" class="do-uninstall">
|
||||
</td>
|
||||
</tr>
|
||||
<% } %>
|
||||
|
@ -153,7 +165,7 @@
|
|||
<td class="name"></td>
|
||||
<td class="description"></td>
|
||||
<td class="actions">
|
||||
<input type="button" value="I">
|
||||
<input type="button" value="I" class="do-install">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
|
Loading…
Reference in a new issue