Jake Vanderwerf
3 hours ago 3baf3d2545ba6ece6b74a64c0def59bd0774cf54
inc/rest/RegisterRoutes.php
@@ -4,10 +4,14 @@
if (!defined('ABSPATH')) {
   exit;
}
use JVBase\meta\MetaManager;
use JVBase\meta\Meta;
use WP_Error;
use WP_REST_Request;
use WP_REST_Response;
/**
 * @deprecated
 */
class RegisterRoutes extends RestRouteManager {
   protected array $config;
@@ -106,7 +110,6 @@
   public function handlePOST(WP_REST_Request $request):WP_REST_Response
   {
      $data = $request->get_params();
      error_log('Handling update with this data: '.print_r($data, true));
      $user = $data['user'];
      if (!$this->checkUser($user) || !$this->userCheck($user)) {
         return new WP_REST_Response([
@@ -114,7 +117,6 @@
            'message'   => 'Looks like you may not be who you say you are...'
         ]);
      }
      error_log('User passed');
      if ($this->route === 'shop' && !$this->checkTerm([
         'term_id'   => $data['shop'],
         'taxonomy'  => $this->route
@@ -124,7 +126,6 @@
            'message'   => 'This shop doesn\'t exist?'
         ]);
      }
      error_log('Processing...');
      $queue = JVB()->queue();
      unset($data['user']);
      $operationID = $data['id'];
@@ -156,7 +157,6 @@
   }
   protected function handleUpdateOperation(int $userID, array $data):WP_Error|array
   {
      error_log('Handling update Operation with route: '.print_r($this->route, true));
      if ($this->route === 'options') {
         if (!user_can($userID, 'manage_options')) {
            return [
@@ -164,7 +164,7 @@
               'error'     => 'User cannot change options'
            ];
         }
         $meta = new MetaManager(null, $this->route);
         $meta = Meta::forOptions($this->route);
      } else {
         $termID = (int) $data['term_id'];
         if (!user_can($userID, 'manage_'.$this->route.'_'.$termID)) {
@@ -173,7 +173,7 @@
               'error'     => 'User cannot manage this '.$this->route
            ];
         }
         $meta = new MetaManager($termID, 'term');
         $meta = Meta::forTerm($termID);
      }
      $results = [];
@@ -182,13 +182,12 @@
         return array_key_exists($v, $this->config['fields']??[]);
      }, ARRAY_FILTER_USE_BOTH);
      error_log('Allowed Result: '.print_r($allowed, true));
      foreach ($allowed as $name => $value) {
         if (empty($value)) {
            $results[] = $meta->deleteValue($name);
            $results[] = $meta->delete($name);
         } else {
            $results[] = $meta->updateValue($name, $value);
            $results[] = $meta->set($name, $value);
         }
      }
      //Allow plugins & themes to process extra data here
@@ -302,7 +301,7 @@
      }
      //get the user's profile id
      $profileID = get_user_meta($userID, BASE.'link', true);
      $profileID = get_user_meta($userID, BASE.'profile_link', true);
      if (!$profileID) {
         return false;
      }
@@ -332,9 +331,9 @@
         return;
      }
      $termMeta = new MetaManager($termID, 'term');
      $managers = explode(',', $termMeta->getValue('managers'));
      $owner = explode(',', $termMeta->getValue('owner'));
      $termMeta = Meta::forTerm($termID);
      $managers = explode(',', $termMeta->get('managers'));
      $owner = explode(',', $termMeta->get('owner'));
      $owners = array_unique(array_merge($managers, $owner));