MDL-49329 admin: Add ability to cancel installation of a new plugin

The plugins check screen now provides buttons to cancel installation of
a plugin. Available only for new installations (not upgrades) and for
additional plugins (not standard), given that the web server process has
write access to the plugin folder.

This has also been reported as MDL-48535.

As a part of the patch, there is improved processing of page URLs during
the upgrade. All this dancing around $reload URL is not needed once the
$PAGE->url is properly set to guide the admin on the correct page during
the upgrade process.
This commit is contained in:
David Mudrák
2015-10-08 23:32:03 +02:00
parent f2d8ed45e3
commit 2f29cf6e63
6 changed files with 215 additions and 59 deletions
+78 -33
View File
@@ -532,7 +532,7 @@ img.iconsmall {
text-align: right
}
// Plugins check.
// Plugins overview control panel.
#page-admin-index #notice .checkforupdates {
text-align: center;
}
@@ -583,37 +583,86 @@ img.iconsmall {
background-color: @inputDisabledBackground;
}
#plugins-check .requires-ok {
.muted
}
// Plugins check page displayed during upgrade.
#plugins-check-page {
#plugins-check .displayname {
.pluginicon {
margin-right: 5px;
width: 16px;
}
.plugindir {
.muted;
font-size: @fontSizeSmall;
}
}
#plugins-check .requires ul {
margin-left: 13px; // To undo the default 25px, does not look that great inside a table cell;
}
#plugins-check .status .pluginupdateinfo {
padding: 5px 10px;
margin: 10px 0px;
background-color: @infoBackground;
.border-radius(10px);
}
#plugins-check-available-dependencies {
.displayname .component {
font-size: @fontSizeSmall;
.page-description {
.muted
}
// Check for updates.
.checkforupdates {
.singlebutton {
margin: 5px 0;
padding: 0;
input {
margin: 0;
}
}
}
// Section before the plugins check table.
#plugins-check-info {
.actions {
.actionbutton {
display: inline-block;
margin: 5px;
padding: 0;
input {
margin: 0;
}
}
}
}
// Plugins check table.
#plugins-check {
.requires-ok {
.muted
}
.displayname {
.pluginicon {
margin-right: 5px;
width: 16px;
}
.plugindir {
.muted;
font-size: @fontSizeSmall;
}
}
.requires ul {
margin-left: 13px; // To undo the default 25px, does not look that great inside a table cell;
}
.status {
.actionbutton {
margin: 5px 0px;
padding: 0;
input {
margin: 0;
}
}
.pluginupdateinfo {
padding: 5px 10px;
margin: 10px 0px;
background-color: @infoBackground;
.border-radius(10px);
.separator:after {
content: " | ";
}
}
}
}
// Available dependencies on the plugins check page.
#plugins-check-available-dependencies {
.displayname .component {
font-size: @fontSizeSmall;
.muted
}
}
}
#page-admin-index .upgradepluginsinfo {
@@ -645,10 +694,6 @@ img.iconsmall {
border-left: 1px dotted @grayLight;
}
#plugins-check .status .pluginupdateinfo .separator:after {
content: " | ";
}
#plugins-control-panel .msg td {
text-align: center;
}
File diff suppressed because one or more lines are too long