| @@ 1663-1687 (lines=25) @@ | ||
| 1660 | /** |
|
| 1661 | * Get the wpcom user data of the current|specified connected user. |
|
| 1662 | */ |
|
| 1663 | public static function get_connected_user_data( $user_id = null ) { |
|
| 1664 | // TODO: remove in favor of Connection_Manager->get_connected_user_data |
|
| 1665 | if ( ! $user_id ) { |
|
| 1666 | $user_id = get_current_user_id(); |
|
| 1667 | } |
|
| 1668 | ||
| 1669 | $transient_key = "jetpack_connected_user_data_$user_id"; |
|
| 1670 | ||
| 1671 | if ( $cached_user_data = get_transient( $transient_key ) ) { |
|
| 1672 | return $cached_user_data; |
|
| 1673 | } |
|
| 1674 | ||
| 1675 | Jetpack::load_xml_rpc_client(); |
|
| 1676 | $xml = new Jetpack_IXR_Client( array( |
|
| 1677 | 'user_id' => $user_id, |
|
| 1678 | ) ); |
|
| 1679 | $xml->query( 'wpcom.getUser' ); |
|
| 1680 | if ( ! $xml->isError() ) { |
|
| 1681 | $user_data = $xml->getResponse(); |
|
| 1682 | set_transient( $transient_key, $xml->getResponse(), DAY_IN_SECONDS ); |
|
| 1683 | return $user_data; |
|
| 1684 | } |
|
| 1685 | ||
| 1686 | return false; |
|
| 1687 | } |
|
| 1688 | ||
| 1689 | /** |
|
| 1690 | * Get the wpcom email of the current|specified connected user. |
|
| @@ 511-537 (lines=27) @@ | ||
| 508 | * @param Integer $user_id the user identifier. |
|
| 509 | * @return Object the user object. |
|
| 510 | */ |
|
| 511 | public function get_connected_user_data( $user_id = null ) { |
|
| 512 | if ( ! $user_id ) { |
|
| 513 | $user_id = get_current_user_id(); |
|
| 514 | } |
|
| 515 | ||
| 516 | $transient_key = "jetpack_connected_user_data_$user_id"; |
|
| 517 | $cached_user_data = get_transient( $transient_key ); |
|
| 518 | ||
| 519 | if ( $cached_user_data ) { |
|
| 520 | return $cached_user_data; |
|
| 521 | } |
|
| 522 | ||
| 523 | \Jetpack::load_xml_rpc_client(); |
|
| 524 | $xml = new \Jetpack_IXR_Client( |
|
| 525 | array( |
|
| 526 | 'user_id' => $user_id, |
|
| 527 | ) |
|
| 528 | ); |
|
| 529 | $xml->query( 'wpcom.getUser' ); |
|
| 530 | if ( ! $xml->isError() ) { |
|
| 531 | $user_data = $xml->getResponse(); |
|
| 532 | set_transient( $transient_key, $xml->getResponse(), DAY_IN_SECONDS ); |
|
| 533 | return $user_data; |
|
| 534 | } |
|
| 535 | ||
| 536 | return false; |
|
| 537 | } |
|
| 538 | ||
| 539 | /** |
|
| 540 | * Returns true if the provided user is the Jetpack connection owner. |
|