Esempio n. 1
0
     */
    public function has_product_access($product_key = '')
    {
        $success = $this->_send_request('check_product', array($this->api_key, $product_key));
        if (true !== $success) {
            return false;
        }
        return true;
    }
    /**
     * Send an XMLRPC request to the Catalyst API.
     *
     * @param string $request
     * @param array  $args
     *
     * @return bool|IXR_Error
     */
    protected function _send_request($request, $args)
    {
        $client = new WP_HTTP_IXR_Client(trailingslashit(CATALYST_URL) . 'xmlrpc.php');
        $response = $client->query("catalyst.{$request}", $args);
        if (false === $response) {
            // store error for use in implementation
            $this->request_error = isset($client->error->message) ? $client->error->message : '';
            return $client->error;
        }
        return $client->getResponse();
    }
}
Catalyst_API::instance();
Esempio n. 2
0
 /**
  * Get the site's subscription level, either from the cache or from the remote API.
  *
  * 0 - unregistered
  * 10 - free
  * 20 - premium
  *
  * @return int
  */
 public function get_subscription_level()
 {
     $level = get_transient('seoslides_level');
     if (false === $level) {
         $level = 0;
         $api_key = get_option('seoslides_api_key', '');
         if (!empty($api_key)) {
             $catalyst = Catalyst_API::instance();
             $catalyst->set_api_key($api_key);
             $subscriptions = $catalyst->get_subscription_plans();
             if (in_array('c8c8ee061df0601b7eb9ef90946100eded29e3d1e68b4dbe82e05aabb6042f8a', $subscriptions)) {
                 $level = 20;
             } elseif (in_array('e41a557640b1b8c2e73b5abe0460d10c56fd6052d30da96511ba80acf9fe0ccf', $subscriptions)) {
                 $level = 10;
             }
         }
         set_transient('seoslides_level', $level, 60 * 60);
     }
     return (int) $level;
 }