| @@ 581-606 (lines=26) @@ | ||
| 578 | * @param Integer $user_id the user identifier. |
|
| 579 | * @return Object the user object. |
|
| 580 | */ |
|
| 581 | public function get_connected_user_data( $user_id = null ) { |
|
| 582 | if ( ! $user_id ) { |
|
| 583 | $user_id = get_current_user_id(); |
|
| 584 | } |
|
| 585 | ||
| 586 | $transient_key = "jetpack_connected_user_data_$user_id"; |
|
| 587 | $cached_user_data = get_transient( $transient_key ); |
|
| 588 | ||
| 589 | if ( $cached_user_data ) { |
|
| 590 | return $cached_user_data; |
|
| 591 | } |
|
| 592 | ||
| 593 | $xml = new \Jetpack_IXR_Client( |
|
| 594 | array( |
|
| 595 | 'user_id' => $user_id, |
|
| 596 | ) |
|
| 597 | ); |
|
| 598 | $xml->query( 'wpcom.getUser' ); |
|
| 599 | if ( ! $xml->isError() ) { |
|
| 600 | $user_data = $xml->getResponse(); |
|
| 601 | set_transient( $transient_key, $xml->getResponse(), DAY_IN_SECONDS ); |
|
| 602 | return $user_data; |
|
| 603 | } |
|
| 604 | ||
| 605 | return false; |
|
| 606 | } |
|
| 607 | ||
| 608 | /** |
|
| 609 | * Returns a user object of the connection owner. |
|
| @@ 1785-1810 (lines=26) @@ | ||
| 1782 | /** |
|
| 1783 | * Get the wpcom user data of the current|specified connected user. |
|
| 1784 | */ |
|
| 1785 | public static function get_connected_user_data( $user_id = null ) { |
|
| 1786 | // TODO: remove in favor of Connection_Manager->get_connected_user_data |
|
| 1787 | if ( ! $user_id ) { |
|
| 1788 | $user_id = get_current_user_id(); |
|
| 1789 | } |
|
| 1790 | ||
| 1791 | $transient_key = "jetpack_connected_user_data_$user_id"; |
|
| 1792 | ||
| 1793 | if ( $cached_user_data = get_transient( $transient_key ) ) { |
|
| 1794 | return $cached_user_data; |
|
| 1795 | } |
|
| 1796 | ||
| 1797 | $xml = new Jetpack_IXR_Client( |
|
| 1798 | array( |
|
| 1799 | 'user_id' => $user_id, |
|
| 1800 | ) |
|
| 1801 | ); |
|
| 1802 | $xml->query( 'wpcom.getUser' ); |
|
| 1803 | if ( ! $xml->isError() ) { |
|
| 1804 | $user_data = $xml->getResponse(); |
|
| 1805 | set_transient( $transient_key, $xml->getResponse(), DAY_IN_SECONDS ); |
|
| 1806 | return $user_data; |
|
| 1807 | } |
|
| 1808 | ||
| 1809 | return false; |
|
| 1810 | } |
|
| 1811 | ||
| 1812 | /** |
|
| 1813 | * Get the wpcom email of the current|specified connected user. |
|