Add Signup fetcher by ernilambar · Pull Request #5926 · wp-cli/wp-cli
@@ -0,0 +1,66 @@
<?php
namespace WP_CLI\Fetchers;
/** * Fetch a signup based on one of its attributes. */ class Signup extends Base {
/** * The message to display when an item is not found. * * @var string */ protected $msg = "Invalid signup ID, email, login, or activation key: '%s'";
/** * Get a signup. * * @param int|string $signup * @return stdClass|false */ public function get( $signup ) { return $this->get_signup( $signup ); }
/** * Get a signup by one of its identifying attributes. * * @param string $arg The raw CLI argument. * @return stdClass|false The item if found; false otherwise. */ protected function get_signup( $arg ) { global $wpdb;
$signup_object = null;
// Fetch signup with signup_id. if ( is_numeric( $arg ) ) { $result = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->signups WHERE signup_id = %d", $arg ) );
if ( $result ) { $signup_object = $result; } }
if ( ! $signup_object ) { // Try to fetch with other keys. foreach ( array( 'user_login', 'user_email', 'activation_key' ) as $field ) { // phpcs:ignore WordPress.DB.PreparedSQL $result = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->signups WHERE $field = %s", $arg ) );
if ( $result ) { $signup_object = $result; break; } } }
if ( $signup_object ) { return $signup_object; }
return false; } }
namespace WP_CLI\Fetchers;
/** * Fetch a signup based on one of its attributes. */ class Signup extends Base {
/** * The message to display when an item is not found. * * @var string */ protected $msg = "Invalid signup ID, email, login, or activation key: '%s'";
/** * Get a signup. * * @param int|string $signup * @return stdClass|false */ public function get( $signup ) { return $this->get_signup( $signup ); }
/** * Get a signup by one of its identifying attributes. * * @param string $arg The raw CLI argument. * @return stdClass|false The item if found; false otherwise. */ protected function get_signup( $arg ) { global $wpdb;
$signup_object = null;
// Fetch signup with signup_id. if ( is_numeric( $arg ) ) { $result = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->signups WHERE signup_id = %d", $arg ) );
if ( $result ) { $signup_object = $result; } }
if ( ! $signup_object ) { // Try to fetch with other keys. foreach ( array( 'user_login', 'user_email', 'activation_key' ) as $field ) { // phpcs:ignore WordPress.DB.PreparedSQL $result = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->signups WHERE $field = %s", $arg ) );
if ( $result ) { $signup_object = $result; break; } } }
if ( $signup_object ) { return $signup_object; }
return false; } }