-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathplupdate-helper.php
65 lines (57 loc) · 1.82 KB
/
plupdate-helper.php
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
<?php
/*
* Project: Update API
* Author: Vontainment
* URL: https://vontainment.com
* File: plupdate-helper.php
* Description: WordPress Update API
*/
$plugins = glob(PLUGINS_DIR . "/*.zip");
function generatePluginTableRow($plugin, $pluginName)
{
return '<tr>
<td>' . $pluginName . '</td>
<td>
<form class="delete-plugin-form" action="/plupdate" method="POST">
<input type="hidden" name="plugin_name" value="' . $pluginName . '">
<button class="pl-submit" type="submit" name="delete_plugin">Delete</button>
</form>
</td>
</tr>';
}
// Reverse the plugins array
$plugins = array_reverse($plugins);
if (count($plugins) > 0) {
// Split plugins array into two halves
$halfCount = ceil(count($plugins) / 2);
$pluginsColumn1 = array_slice($plugins, 0, $halfCount);
$pluginsColumn2 = array_slice($plugins, $halfCount);
$pluginsTableHtml = '<div class="row"><div class="column">
<table>
<thead>
<tr>
<th>Plugin Name</th>
<th>Delete</th>
</tr>
</thead>
<tbody>';
foreach ($pluginsColumn1 as $plugin) {
$pluginName = basename($plugin);
$pluginsTableHtml .= generatePluginTableRow($plugin, $pluginName);
}
$pluginsTableHtml .= '</tbody></table></div><div class="column"><table>
<thead>
<tr>
<th>Plugin Name</th>
<th>Delete</th>
</tr>
</thead>
<tbody>';
foreach ($pluginsColumn2 as $plugin) {
$pluginName = basename($plugin);
$pluginsTableHtml .= generatePluginTableRow($plugin, $pluginName);
}
$pluginsTableHtml .= '</tbody></table></div></div>';
} else {
$pluginsTableHtml = "No plugins found.";
}