Plugin Directory

Changeset 2979918

Timestamp:
10/17/2023 08:15:26 AM (10 months ago)
Author:
Jose Lazo
Message:

[update] Version 1.2.0 Fix nonces security issues. Add user select.

Location:
delete-usermetas
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • delete-usermetas

    • Property svn:ignore set to
      .git
      *.gitignore
  • delete-usermetas/trunk/delete-usermetas.php

    r2814098 r2979918  
    55 * Plugin URI: http://joselazo.es/plugins/delete-usermetas
    66 * Description: This plugin delete any usermeta user by user or all user at same time.
    7  * Version: 1.1.2
     7 * Version: 1.
    88 * Author: Jose Lazo
    99 * Author URI: http://joselazo.es
     
    2828function delumet_register_options_page()
    2929{
    30     add_options_page( 'Delete Usermetas', 'Delete Usermetas', 'manage_options', 'delete_usermetas', 'delumet_options_page' );
     30    add_', 'delete_usermetas', 'delumet_options_page' );
    3131}
    3232add_action(is_multisite() ? 'network_admin_menu' : 'admin_menu', 'delumet_register_options_page' );
     
    5757function delumet_options_page()
    5858{
    59     if ( isset( $_POST['send_reset']) ) {
    60         if ( !empty( $_POST['user_userid']) && !is_numeric( $_POST['user_userid']) ) {
     59    if ( isset($_POST['send_reset']) ) {
     60        if ( !wp_verify_nonce( $_POST['delumet_nonce'], 'delumet_action' ) ) {
     61            echo '<div class="notice notice-error"><p>' . __( 'Sorry, your nonce did not verify.', 'delete-usermetas' ) . '</p></div>';
     62            exit;
     63        }
     64        if ( empty( $_POST['user_userid']) ) {
    6165            echo '<div class="notice notice-error"><p>' . __( 'Please, enter a number in User ID field.', 'delete-usermetas' ) . '</p></div>';
    6266            exit;
     
    6569            echo '<div class="notice notice-error is-dismissible"><p>' . __( 'What about User_meta?', 'delete-usermetas' ) . '</p></div>';
    6670        } else {
    67             $usermeta   = sanitize_key( $_POST['user_usermeta'] );
    68             $user_id    = ( is_numeric( $_POST['user_userid']) ) ? $_POST['user_userid'] : false;
    69             $ouput      = delumet_remove_metadata( $usermeta, $user_id);
     71            $usermeta = sanitize_key( $_POST['user_usermeta'] );
     72            $user_id  = ( is_numeric( $_POST['user_userid']) ) ? $_POST['user_userid'] : false;
     73            $ouput    = delumet_remove_metadata( $usermeta, $user_id);
    7074            if (is_array( $ouput)) {
    7175                $display = '<div class="notice notice-success is-dismissible"><p>' . __( 'Done it!', 'delete-usermetas' ) . '</p>';
     
    128132                            </th>
    129133                            <td>
    130                                 <input class="regular-text" type="number" id="user_userid" name="user_userid" value="">
     134                                <select required class="regular-text" type="text" id="user_userid" name="user_userid">
     135                                    <option value="false"><?php _e( 'All user (or select one)', 'delete-usermetas' ); ?></option>
     136                                    <?php
     137                                    $users = get_users();
     138                                    foreach ( $users as $user ) {
     139                                        if ( substr( $usermeta->meta_key, 0, 1) === "_" ) continue;
     140                                        echo '<option value="' . $user->ID . '">' . $user->ID . '-(' . esc_html( $user->display_name ) . ')</option>';
     141                                    } ?>
     142                                </select>
    131143                                <br>
    132144                                <span class="description"><?php _e( 'Enter the user ID to delete the above usermeta. <b>Leave blank </b> to delete the above usermeta to <b>ALL users.</b>', 'delete-usermetas' ); ?></span>
     
    135147                    </tbody>
    136148                </table>
     149
    137150                <p class="submit">
    138151                    <input type="submit" class="button-primary" name="send_reset" value="<?php _e( 'Delete usermeta', 'delete-usermetas' ) ?>" />
  • delete-usermetas/trunk/languages/delete-usermetas-es_ES.po

    r1971565 r2979918  
    44msgstr ""
    55"Project-Id-Version: delete-usermetas\n"
    6 "POT-Creation-Date: 2018-10-26 09:19+0200\n"
     6"POT-Creation-Date: \n"
    77"PO-Revision-Date: \n"
    88"Last-Translator: Jose Lazo <jjlazo79@gnmail.com>\n"
     
    1818"X-Poedit-SourceCharset: UTF-8\n"
    1919"Plural-Forms: nplurals=2; plural=(n != 1);\n"
    20 "X-Generator: Poedit 2.1.1\n"
     20"X-Generator: Poedit 2.\n"
    2121"X-Poedit-SearchPath-0: .\n"
    2222"X-Poedit-SearchPathExcluded-0: *.js\n"
    2323
    24 #: delete-usermetas.php:60
     24#: delete-usermetas.php:30
     25msgid "Delete Usermetas"
     26msgstr "Eliminar metadatos de usuario"
     27
     28#: delete-usermetas.php:61
     29msgid "Sorry, your nonce did not verify."
     30msgstr "Lo siento, tu nonce no se verificó."
     31
     32#: delete-usermetas.php:65
    2533msgid "Please, enter a number in User ID field."
    2634msgstr "Por favor, ingrese un número en el campo ID de usuario."
    2735
    28 #: delete-usermetas.php:64
     36#: delete-usermetas.php:6
    2937msgid "What about User_meta?"
    3038msgstr "¿Qué hay de User_meta?"
    3139
    32 #: delete-usermetas.php:70 delete-usermetas.php:80
     40#: delete-usermetas.php:7
    3341msgid "Done it!"
    3442msgstr "¡Todo hecho!"
    3543
    36 #: delete-usermetas.php:71 delete-usermetas.php:81
     44#: delete-usermetas.php:7
    3745msgid "Updated users:"
    3846msgstr "Usuarios actualizados:"
    3947
    40 #: delete-usermetas.php:73 delete-usermetas.php:82
     48#: delete-usermetas.php:7
    4149msgid "User Name: "
    4250msgstr "Nombre de usuario: "
    4351
    44 #: delete-usermetas.php:74 delete-usermetas.php:83
     52#: delete-usermetas.php:7
    4553msgid "User ID: "
    4654msgstr "ID de Usuario: "
    4755
    48 #: delete-usermetas.php:75 delete-usermetas.php:84
     56#: delete-usermetas.php:
    4957msgid "User email: "
    5058msgstr "Email del usuario: "
    5159
    52 #: delete-usermetas.php:97
     60#: delete-usermetas.php:9
    5361msgid "Delete UserMetas"
    5462msgstr "Eliminar metadatos de usuario"
    5563
    56 #: delete-usermetas.php:99
     64#: delete-usermetas.php:
    5765msgid "This tool is very powerfull! Use it with care"
    5866msgstr "¡Esta herramienta es muy poderosa! Utilícela con cuidado"
    5967
    60 #: delete-usermetas.php:100
     68#: delete-usermetas.php:10
    6169msgid ""
    6270"This tool can erase user´s data of <b>ALL</b> the users of the web. The "
     
    7179"propios usuarios. Por favor, no trates de eliminarlos."
    7280
    73 #: delete-usermetas.php:106
     81#: delete-usermetas.php:10
    7482msgid "User meta to delete"
    7583msgstr "Metadato del usuario a eliminar"
    7684
    77 #: delete-usermetas.php:116
     85#: delete-usermetas.php:11
    7886msgid "Select a metadata"
    7987msgstr "Seleccionar metadato"
    8088
    81 #: delete-usermetas.php:124
     89#: delete-usermetas.php:12
    8290msgid ""
    8391"Enter the usermeta to delete e.g. first_name. NOTE: the values of this "
     
    8795"de este usermeta serán borrados."
    8896
    89 #: delete-usermetas.php:129
     97#: delete-usermetas.php:1
    9098msgid "User ID to delete metadata"
    9199msgstr "ID de usuario para eliminar metadatos"
    92100
    93 #: delete-usermetas.php:134
     101#: delete-usermetas.php:135
     102msgid "All user (or select one)"
     103msgstr "Todos los usuarios (o elija uno)"
     104
     105#: delete-usermetas.php:144
    94106msgid ""
    95107"Enter the user ID to delete the above usermeta. <b>Leave blank </b> to "
     
    99111"blanco</b> para eliminar el usermeta anterior a <b>todos los usuarios.</b>"
    100112
    101 #: delete-usermetas.php:150
     113#: delete-usermetas.php:15
    102114msgid "Delete usermeta"
    103115msgstr "Eliminar metadato"
  • delete-usermetas/trunk/languages/delete-usermetas.pot

    r1971565 r2979918  
    11# Copyright (C) 2018 delete-usermetas
    22# This file is distributed under the same license as the delete-usermetas package.
     3
    34msgid ""
    45msgstr ""
     
    89"Content-Transfer-Encoding: 8bit\n"
    910"X-Poedit-Basepath: ..\n"
    10 "X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
     11"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;"
     12"_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;"
     13"esc_html_e;esc_html_x:1,2c\n"
     14"X-Poedit-SourceCharset: UTF-8\n"
     15"Plural-Forms: nplurals=2; plural=(n != 1);\n"
     16"POT-Creation-Date: \n"
     17"PO-Revision-Date: \n"
     18"Last-Translator: \n"
     19"Language-Team: \n"
     20"X-Generator: Poedit 2.2\n"
    1121"X-Poedit-SearchPath-0: .\n"
    1222"X-Poedit-SearchPathExcluded-0: *.js\n"
    13 "X-Poedit-SourceCharset: UTF-8\n"
    14 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
    1523
    16 #: delete-usermetas.php:56
     24#: delete-usermetas.php:30
     25msgid "Delete Usermetas"
     26msgstr ""
     27
     28#: delete-usermetas.php:61
     29msgid "Sorry, your nonce did not verify."
     30msgstr ""
     31
     32#: delete-usermetas.php:65
     33msgid "Please, enter a number in User ID field."
     34msgstr ""
     35
     36#: delete-usermetas.php:69
    1737msgid "What about User_meta?"
    1838msgstr ""
    1939
    20 #: delete-usermetas.php:61
     40#: delete-usermetas.php:
    2141msgid "Done it!"
    2242msgstr ""
    2343
    24 #: delete-usermetas.php:61
     44#: delete-usermetas.php:
    2545msgid "Updated users:"
    2646msgstr ""
    2747
    28 #: delete-usermetas.php:82
     48#: delete-usermetas.php:78 delete-usermetas.php:87
     49msgid "User Name: "
     50msgstr ""
     51
     52#: delete-usermetas.php:79 delete-usermetas.php:88
     53msgid "User ID: "
     54msgstr ""
     55
     56#: delete-usermetas.php:80 delete-usermetas.php:89
     57msgid "User email: "
     58msgstr ""
     59
     60#: delete-usermetas.php:99
    2961msgid "Delete UserMetas"
    3062msgstr ""
    3163
    32 #: delete-usermetas.php:84
     64#: delete-usermetas.php:
    3365msgid "This tool is very powerfull! Use it with care"
    3466msgstr ""
    3567
    36 #: delete-usermetas.php:85
     68#: delete-usermetas.php:
    3769msgid ""
    3870"This tool can erase user´s data of <b>ALL</b> the users of the web. The "
     
    4274msgstr ""
    4375
    44 #: delete-usermetas.php:91
     76#: delete-usermetas.php:
    4577msgid "User meta to delete"
    4678msgstr ""
    4779
    48 #: delete-usermetas.php:101
     80#: delete-usermetas.php:1
    4981msgid "Select a metadata"
    5082msgstr ""
    5183
    52 #: delete-usermetas.php:109
     84#: delete-usermetas.php:1
    5385msgid ""
    5486"Enter the usermeta to delete e.g. first_name. NOTE: the values of this "
     
    5688msgstr ""
    5789
    58 #: delete-usermetas.php:114
     90#: delete-usermetas.php:1
    5991msgid "User ID to delete metadata"
    6092msgstr ""
    6193
    62 #: delete-usermetas.php:119
     94#: delete-usermetas.php:135
     95msgid "All user (or select one)"
     96msgstr ""
     97
     98#: delete-usermetas.php:144
    6399msgid ""
    64100"Enter the user ID to delete the above usermeta. <b>Leave blank </b> to "
     
    66102msgstr ""
    67103
    68 #: delete-usermetas.php:135
     104#: delete-usermetas.php:1
    69105msgid "Delete usermeta"
    70106msgstr ""
  • delete-usermetas/trunk/readme.txt

    r2814098 r2979918  
    3131If you leave the User ID field blank, the deletion of the metadata will apply to ALL users. But if you add a user ID, only the chosen metadata of that user will be deleted.
    3232
    33 You can know the user ID by going to Admin --> Users --> Edit. The ID will appear in the URL with something like "user_id=3".
     33Now you can select user by dropdown!
    3434
    3535== Installation ==
     
    5555== Changelog ==
    5656
     57
     58
     59
     60
     61
     62
    5763= 1.1.2 =
    5864* Tested 6.1
Note: See TracChangeset for help on using the changeset viewer.