| | |
| | | { |
| | | $defaults = [ |
| | | 'status' => 'all', |
| | | 'limit' => 100, |
| | | 'offset' => 0, |
| | | 'per_page' => 100, |
| | | 'page' => 1, |
| | | 'orderby' => 'created_at', |
| | | 'order' => 'DESC' |
| | | ]; |
| | |
| | | 'where' => [ |
| | | 'from_user' => $user_id, |
| | | ], |
| | | 'limit' => $args['limit'], |
| | | 'offset' => $args['offset'], |
| | | 'per_page' => $args['per_page'], |
| | | 'page' => $args['page'], |
| | | 'orderby' => $args['orderby'], |
| | | 'order' => $args['order'] |
| | | ]; |
| | |
| | | public function getTopReferrers(int $limit = 10, string $period = 'all'): array |
| | | { |
| | | return $this->statsCache->remember( |
| | | $this->statsCache->generateKey(['limit' => $limit, 'period' => $period]), |
| | | $this->statsCache->generateKey(['per_page' => $limit, 'period' => $period]), |
| | | function() use ($limit, $period) { |
| | | $where = ''; |
| | | if ($period !== 'all') { |
| | |
| | | |
| | | $referral_code = get_user_meta($user->ID, BASE . 'referral_code', true); |
| | | $stats = $this->getUserStats($user->ID); |
| | | $referrals = $this->getUserReferrals($user->ID, ['limit' => 10]); |
| | | $referrals = $this->getUserReferrals($user->ID, ['per_page' => 10]); |
| | | |
| | | ?> |
| | | <h2>Referral Information</h2> |
| | |
| | | $referral_code = $this->generateReferralCode($user); |
| | | } |
| | | |
| | | $referrals = $this->getUserReferrals($user_id, ['limit' => 20]); |
| | | $referrals = $this->getUserReferrals($user_id, ['per_page' => 20]); |
| | | |
| | | ob_start(); |
| | | |
| | |
| | | array_push($values, $like, $like, $like, $like); |
| | | } |
| | | |
| | | array_push($values, absint($args['limit'] ?? 50), absint($args['offset'] ?? 0)); |
| | | array_push($values, absint($args['per_page'] ?? 50), absint($args['offset'] ?? 0)); |
| | | |
| | | return $this->referrals->queryResults( |
| | | "SELECT {table}.*, u.display_name as from_name |