Jake Vanderwerf
2025-09-30 6a627f09d33967ca7fa5b6d939a9347d8223a1e6
referral update
2 files modified
24 ■■■■■ changed files
JVBase.php 6 ●●●●● patch | view | raw | blame | history
inc/rest/routes/ReferralRoutes.php 18 ●●●●● patch | view | raw | blame | history
JVBase.php
@@ -24,6 +24,7 @@
use JVBase\rest\routes\ErrorRoutes;
use JVBase\rest\routes\FormRoutes;
use JVBase\rest\routes\NewsRoutes;
use JVBase\rest\routes\ReferralRoutes;
use JVBase\rest\routes\ResponseRoutes;
use JVBase\rest\routes\OptionsRoutes;
use JVBase\rest\routes\VoteRoutes;
@@ -256,4 +257,9 @@
        $this->routes[$slug] = $class;
    }
    public function referrals():ReferralManager
    {
        return $this->managers['referral'];
    }
}
inc/rest/routes/ReferralRoutes.php
@@ -1,10 +1,10 @@
<?php
namespace JVBase\rest;
namespace JVBase\rest\routes;
use JVBase\rest\RestRouteManager;
use WP_REST_Request;
use WP_REST_Response;
use WP_Error;
use JVBase\managers\ReferralManager;
if (!defined('ABSPATH')) {
    exit;
@@ -15,12 +15,10 @@
 */
class ReferralRoutes extends RestRouteManager
{
    protected ReferralManager $manager;
    public function __construct()
    {
        $this->route = 'referrals';
        $this->manager = new ReferralManager();
        parent::__construct();
    }
@@ -149,7 +147,7 @@
            'offset' => $request->get_param('offset') ?? 0
        ];
        $referrals = $this->manager->getUserReferrals($user_id, $args);
        $referrals = JVB()->referrals()->getUserReferrals($user_id, $args);
        return new WP_REST_Response([
            'success' => true,
@@ -163,7 +161,7 @@
    public function getReferralCode(WP_REST_Request $request): WP_REST_Response
    {
        $user_id = get_current_user_id();
        $code = $this->manager->getUserReferralCode($user_id);
        $code = JVB()->referrals()->getUserReferralCode($user_id);
        if (is_wp_error($code)) {
            return new WP_REST_Response([
@@ -187,7 +185,7 @@
        $user_id = get_current_user_id();
        $new_code = strtoupper(sanitize_text_field($request->get_param('code')));
        $result = $this->manager->getUserReferralCode($user_id, $new_code);
        $result = JVB()->referrals()->getUserReferralCode($user_id, $new_code);
        if (is_wp_error($result)) {
            return new WP_REST_Response([
@@ -232,7 +230,7 @@
    {
        $referral_id = intval($request->get_param('id'));
        $result = $this->manager->markAsTreated($referral_id, true);
        $result = JVB()->referrals()->markAsTreated($referral_id, true);
        if (!$result) {
            return new WP_REST_Response([
@@ -253,7 +251,7 @@
    public function getUserStats(WP_REST_Request $request): WP_REST_Response
    {
        $user_id = get_current_user_id();
        $stats = $this->manager->getUserStats($user_id);
        $stats = JVB()->referrals()->getUserStats($user_id);
        return new WP_REST_Response([
            'success' => true,
@@ -269,7 +267,7 @@
        $period = $request->get_param('period') ?? 'week';
        $limit = $request->get_param('limit') ?? 10;
        $top_referrers = $this->manager->getTopReferrers($limit, $period);
        $top_referrers = JVB()->referrals()->getTopReferrers($limit, $period);
        return new WP_REST_Response([
            'success' => true,