wip patchs appears with informations, but are not yet updated

This commit is contained in:
asus
2024-03-24 13:23:00 +01:00
parent 94dbe05f87
commit 1415fc14a2
4 changed files with 30 additions and 21 deletions

View File

View File

@@ -1,21 +1,24 @@
<!-- <!--
{"hide_show":false,"calculations":false} {"calculations":false,"hide_show":false}
--> -->
<style>
.patches_wrapper {
margin: 20px 5px;
}
</style>
<!-- https://developer.wordpress.org/reference/hooks/admin_post_action/ --> <!-- https://developer.wordpress.org/reference/hooks/admin_post_action/ -->
<form method="POST" action="<?php echo admin_url( 'admin-post.php' ); ?>"> <form method="POST" action="<?php echo admin_url( 'admin-post.php' ); ?>">
<input type="hidden" name="action" value="<?php echo $admin_post_patches; ?>"> <input type="hidden" name="action" value="<?php echo $admin_post_patches; ?>">
<?php wp_nonce_field($nonce['_action'], $nonce['_name']); ?> <?php wp_nonce_field($nonce['_action'], $nonce['_name']); ?>
<div> <?php foreach($patches as $patch => $options) {?>
<input type="checkbox" id="calculation_patch" name="calculation" checked /> <div class="patches_wrapper">
<label for="calculation_patch">calculation patch</label> <input type="checkbox" id="<?php echo $patch; ?>" name="<?php echo $patch; ?>" <?php echo $options['checked'] === true ? "checked" : "" ?> />
</div> <label for="<?php echo $patch; ?>"><b><?php echo $options['title']; ?> : </b><?php echo $options['description']; ?></label>
<div>
<input type="checkbox" id="hide_show_elements" name="hide_show" />
<label for="hide_show_elements">hide/show elements</label>
</div> </div>
<?php } ?>
<input type="submit" value="send"/> <input type="submit" value="send"/>
</form> </form>

View File

@@ -16,7 +16,8 @@ if (!defined('ABSPATH')) {
* *
*/ */
function plugin_content() { function plugin_content() {
$patches = Fbpatch::get_patchs(); $patches = Fbpatch::get_patches();
error_log("in plugin_content, patches: ".json_encode($patches));
$nonce = Fbpatch::NONCE; $nonce = Fbpatch::NONCE;
$admin_post_patches = Fbpatch::ADMIN_POST_PATCH_CHOICE; $admin_post_patches = Fbpatch::ADMIN_POST_PATCH_CHOICE;
ob_start(); ob_start();

View File

@@ -22,10 +22,15 @@ class Fbpatch {
const NONCE = ['_name'=>'nonce_name', '_action'=>'action_name']; const NONCE = ['_name'=>'nonce_name', '_action'=>'action_name'];
const ADMIN_POST_PATCH_CHOICE = 'add_patches'; const ADMIN_POST_PATCH_CHOICE = 'add_patches';
private static $_patches = ['_name'=>'fbpatch_list_of_patches', 'calculations', 'hide_show']; private static $_patches = [
'_name'=>'fbpatch_list_of_patches',
'calculations'=>['checked'=>'false', 'title'=>'calculations title', 'description'=>'calculation description'],
'hide_show'=>['checked'=>'false', 'title'=>'hide/show title', 'description'=>'hide/show description'],
];
//private static $_patches = ['_name'=>'fbpatch_list_of_patches', 'hide_show']; //private static $_patches = ['_name'=>'fbpatch_list_of_patches', 'hide_show'];
//private static $_patches = ['_name'=>'fbpatch_list_of_patches'];
private static function set_option_patchs() { private static function set_option_patches() {
error_log("---"); error_log("---");
/* /*
* get the list of patches in option * get the list of patches in option
@@ -47,14 +52,14 @@ class Fbpatch {
* *
*/ */
error_log("patches_option before 1: " . json_encode($patches_option)); error_log("patches_option before 1: " . json_encode($patches_option));
foreach (self::$_patches as $key => $patch) { foreach (self::$_patches as $patch => $data) {
if ($key === '_name') { if ($patch === '_name') {
continue; continue;
} }
if (isset($patches_option[$patch])) { if (isset($patches_option[$patch])) {
continue; continue;
} }
$patches_option[$patch] = false; $patches_option[$patch] = $data;
} }
error_log("patches_option after 1: " . json_encode($patches_option)); error_log("patches_option after 1: " . json_encode($patches_option));
@@ -63,11 +68,11 @@ class Fbpatch {
* *
*/ */
error_log("patches_option before 2: " . json_encode($patches_option)); error_log("patches_option before 2: " . json_encode($patches_option));
foreach ($patches_option as $key => $patch) { foreach ($patches_option as $patch => $data) {
if (in_array($key, self::$_patches)) { if (isset(self::$_patches[$patch])) {
continue; continue;
} }
unset($patches_option[$key]); unset($patches_option[$patch]);
} }
error_log("patches_option after 2: " . json_encode($patches_option)); error_log("patches_option after 2: " . json_encode($patches_option));
@@ -81,10 +86,10 @@ class Fbpatch {
error_log("serialize patches_option: " . json_encode($serialize_patches_option)); error_log("serialize patches_option: " . json_encode($serialize_patches_option));
update_option(self::$_patches['_name'], $serialize_patches_option); update_option(self::$_patches['_name'], $serialize_patches_option);
} }
public static function get_patchs() { public static function get_patches() {
self::set_option_patchs(); self::set_option_patches();
$patches = get_option(self::$_patches['_name']); $patches = get_option(self::$_patches['_name']);
return serialize($patches); return unserialize($patches);
} }
public static function set_patchs($query) { public static function set_patchs($query) {
} }