%PDF- %PDF-
Direktori : /home/infra/new-ong/bethemeold/functions/builder/pre-built/ |
Current File : //home/infra/new-ong/bethemeold/functions/builder/pre-built/class-mfn-pre-built-sections-api.php |
<?php /** * Install pre-built sections remote API * * @package Betheme * @author Muffin group * @link https://muffingroup.com */ if ( ! defined( 'ABSPATH' ) ){ exit; } class Mfn_Pre_Built_Sections_API extends Mfn_API { protected $code = ''; protected $section = ''; /** * The constructor */ public function __construct( $section = false ){ if( ! $section ){ return false; } $this->code = mfn_get_purchase_code(); $this->section = $section; } /** * Remote get section */ public function remote_get_section(){ $args = array( 'code' => $this->code, 'section' => $this->section, ); if( mfn_is_hosted() ){ $args[ 'ish' ] = mfn_get_ish(); } $url = add_query_arg( $args, $this->get_url( 'sections_download' ) ); $args = array( 'user-agent' => 'WordPress/'. get_bloginfo( 'version' ) .'; '. network_site_url(), 'timeout' => 30, ); $response = wp_remote_get( $url, $args ); if( is_wp_error( $response ) ){ return $response; } $body = wp_remote_retrieve_body( $response ); // remote get fallback if( empty( $body ) ){ if( function_exists( 'ini_get' ) && ini_get( 'allow_url_fopen' ) ){ $body = @file_get_contents( $url ); } } if( empty( $body ) ){ return new WP_Error( 'error_download', __( 'The package could not be downloaded. Please make sure your theme is registered for this domain.', 'mfn-opts' ) ); } if( $json = json_decode( $body, true ) ){ if( isset( $json['error'] ) ){ return new WP_Error( 'invalid_response', $json['error'] ); } } return $body; } }