class mk_control_panel { public function __construct() { $this->store_theme_current_version(); $this->api_url = 'https://artbees.net/api/v1/'; add_filter( 'upload_mimes', array( &$this, 'mime_types' ) ); add_filter( 'getimagesize_mimes_to_exts', array( &$this, 'mime_to_ext' ) ); add_action( 'wp_ajax_mka_cp_load_pane_action', array( & $this, 'mka_cp_load_pane_action' ) ); add_action( 'wp_ajax_mka_cp_register_revoke_api_action', array( &$this, 'mka_cp_register_revoke_api_action' ) ); add_action( 'wp_ajax_abb_save_image_sizes', array( &$this, 'abb_save_image_sizes' ) ); add_action( 'wp_ajax_abb_get_icon_list_action', array( &$this, 'abb_get_icon_list_action' ) ); $this->mk_verify_envato_hosted(); } /** * This hook will allow WordPress to accept .zip formats in media library * * @author Bob Ulusoy */ public function mime_types( $mimes ) { $mimes['zip'] = 'application/zip'; return $mimes; } /** * Map the "image/vnd.microsoft.icon" MIME type to the ico file extension, instead of * modifying the expected MIME types of WordPress in the WordPress wp_get_mime_types() * function. * * This is work-around for a bug in WordPress when the PHP version returns MIME * type of "image/vnd.microsoft.icon" instead of "image/x-icon" * that WordPress expects. * * @author Dominique Mariano * * @since 5.6 Introduced. */ public function mime_to_ext( $mimes_to_text ) { $mimes_to_text['image/vnd.microsoft.icon'] = 'ico'; return $mimes_to_text; } public function get_image_size_data() { $options = get_option( IMAGE_SIZE_OPTION ); if ( empty( $options ) ) { $options = array( array( 'size_w' => 500, 'size_h' => 500, 'size_n' => 'Image Size 500x500', 'size_c' => 'on', ), ); } return $options; } public function abb_save_image_sizes() { check_ajax_referer( 'ajax-image-sizes-options', 'security' ); $options = isset( $_POST['options'] ) ? $_POST['options'] : array(); $options_array = array(); if ( ! empty( $options ) ) { foreach ( $options as $sizes ) { parse_str( $sizes, $output ); $options_array[] = $output; } } if ( update_option( IMAGE_SIZE_OPTION, $options_array ) ) { update_option( THEME_OPTIONS_BUILD, uniqid() ); wp_die( 1 ); } else { wp_die( 2 ); } } public function abb_get_icon_list_action() { include_once( 'icons-list.php' ); $from = isset( $_POST['from'] ) ? $_POST['from'] : 0; $count = isset( $_POST['count'] ) ? $_POST['count'] : 500; $category = isset( $_POST['category'] ) ? $_POST['category'] : false; $keyword = isset( $_POST['keyword'] ) ? $_POST['keyword'] : false; if ( ! empty( $category ) ) { $mk_icon_list = $this->get_icon_by_library( $mk_icon_list, $category ); } if ( ! empty( $keyword ) ) { $mk_icon_list = $this->get_icon_by_keyword( $mk_icon_list, $keyword ); } $prepare_list = array_slice( $mk_icon_list, $from, $count ); $return_count = count( $prepare_list ); $response = array( 'status' => true, 'return_count' => $return_count, 'data' => $this->generate_icon_list( $prepare_list ), ); wp_die( json_encode( $response ) ); } public function generate_icon_list( $library ) { $icon_html = ''; if ( ! empty( $library ) ) { foreach ( $library as $icon ) { $icon_html .= '
' . Mk_SVG_Icons::get_svg_icon_by_class_name( false, $icon['n'], 32 ) . '
'; } } return $icon_html; } public function get_icon_by_library( $library, $category ) { if ( $category ) { $new_list = array(); foreach ( $library as $icon ) { if ( $icon['l'] == $category ) { $new_list[] = $icon; } } return $new_list; } return $library; } public function get_icon_by_keyword( $library, $keyword ) { if ( $keyword ) { $new_list = array(); foreach ( $library as $icon ) { if ( strpos( $icon['n'], $keyword ) !== false ) { $new_list[] = $icon; } } return $new_list; } return $library; } /** * * Artbees API Key Verifier * * @param string $apikey Api key. * @since Updated 6.0.2 Added Envato parameter for api verification. * @return array. */ public function verify_artbees_apikey( $apikey ) { return true; $envato = ( defined( 'SUBSCRIPTION_CODE' ) && defined( 'ENVATO_HOSTED_SITE' ) ) ? true : false; $data = array( 'timeout' => 10, 'httpversion' => '1.1', 'body' => array( 'apikey' => $apikey, 'domain' => $_SERVER['SERVER_NAME'], 'envato' => $envato, ), ); $query = wp_remote_post( $this->api_url . 'verify', $data ); if ( ! is_wp_error( $query ) ) { $result = json_decode( $query['body'], true ); return $result; } return array( 'message' => $query->get_error_message() . ' Please contact Artbees Support', ); } /** * Gets the result for api key verification. * * @param string $api_key api key string. * @return array|mixed|object returns false if testdrive mod is defined or disable test drive session is true. * * @author Ugur Mirza ZEYREK * @copyright Artbees LTD (c) * @link http://artbees.net * @since Version 6.0 Added for test drive specific sites. */ private function mka_cp_get_api_result( $api_key ) { $mk_testdrive = ( defined( 'MK_TESTDRIVE' ) && true === MK_TESTDRIVE ); $mk_dis_td_session = ( isset( $_SESSION['mk_disable_testdrive'] ) && 'true' === $_SESSION['mk_disable_testdrive'] ); $result['is_verified'] = false; if ( false === $mk_testdrive || true === $mk_dis_td_session ) { $result = $this->verify_artbees_apikey( $api_key ); } return $result; } /** * Verifies envato hosted users. * @since 6.0.2 * @author Ugur Mirza Zeyrek */ private function mk_verify_envato_hosted() { if ( defined( 'ENVATO_HOSTED_SITE' ) && defined( 'SUBSCRIPTION_CODE' ) ) { $api_key = SUBSCRIPTION_CODE; $result = $this->mka_cp_get_api_result( $api_key ); if ( $result['is_verified'] ) { update_option( 'artbees_api_key', $api_key, 'yes' ); $message = __( 'Your product registration was successful.', 'mk_framework' ); $status = true; } else { delete_option( 'artbees_api_key' ); $message = __( 'Your API key could not be verified. ', 'mk_framework' ) . (isset( $result['message'] ) ? $result['message'] : __( 'An error occured', 'mk_framework' )) . '.'; $status = false; } } } public function mka_cp_register_revoke_api_action() { check_ajax_referer( 'mka-cp-ajax-register-api', 'security' ); $method = $_POST['method']; if ( $method == 'register' ) { $api_key = $_POST['api_key']; $result = $this->mka_cp_get_api_result( $api_key ); if ( $result['is_verified'] ) { update_option( 'artbees_api_key', $api_key, 'yes' ); $message = __( 'Your product registration was successful.', 'mk_framework' ); $status = true; } else { delete_option( 'artbees_api_key' ); $message = __( 'Your API key could not be verified. ', 'mk_framework' ) . ( isset( $result['message'] ) ? $result['message'] : __( 'An error occured', 'mk_framework' ) ) . '.'; $status = false; } } elseif ( $method == 'revoke' ) { delete_option( 'artbees_api_key' ); $message = __( 'Your API key has been successfully revoked.', 'mk_framework' ); $status = true; } echo json_encode( array( 'message' => $message, 'status' => $status, ) ); wp_die(); } /** * Stores theme current version into options table to be used in multiple instances */ public function store_theme_current_version() { $theme_data = wp_get_theme( get_option( 'template' ) ); $theme_version = $theme_data->Version; if ( get_option( 'mk_jupiter_theme_current_version' ) != $theme_version ) { update_option( 'mk_jupiter_theme_current_version', $theme_version ); } } /** * * * Check if Current Customer is verified */ public function is_verified_artbees_customer( $localhost = true ) { return true; $result = $this->verify_artbees_apikey( get_option( 'artbees_api_key' ) ); if ( defined( 'MK_DEV' ) ) { return true; } if ( self::isLocalHost() && $localhost == true ) { return true; } return ( isset( $result['status'] ) && 202 == $result['status'] ) ? true : false; } public function is_api_key_exists( $localhost = true ) { $api_key = get_option( 'artbees_api_key' ); if ( ! empty( $api_key ) ) { return true; } return false; } public function mka_cp_load_pane_action() { $slug = esc_attr( $_POST['slug'] ); ob_start(); include_once( THEME_CONTROL_PANEL . "/v2/panes/{$slug}.php" ); $pane_html = ob_get_clean(); wp_send_json_success( $pane_html ); wp_die(); } /** * Fetch Announcements from artbees themes API, store them in transients. So they get updated once a day * * @copyright ArtbeesLTD (c) * @link http://artbees.net * @since Version 5.1 * @last_update Version 5.1 * @package artbees * @author Bob Ulusoy */ public function get_announcements() { // set_transient('mk_artbees_themes_announcements', null); if ( false == get_transient( 'mk_artbees_themes_announcements' ) ) { global $wp_version; $data = array( 'user-agent' => 'WordPress/' . $wp_version . '; ' . esc_url( home_url( '/' ) ), ); $raw_response = wp_remote_get( $this->api_url . 'announcements', $data ); if ( ! is_wp_error( $raw_response ) && ($raw_response['response']['code'] == 200) ) { $response = $raw_response['body']; } else { $response = is_wp_error( $raw_response ); } // Transient will be cleared after 1 day. set_transient( 'mk_artbees_themes_announcements', $response, DAY_IN_SECONDS ); } return unserialize( get_transient( 'mk_artbees_themes_announcements' ) ); } private static function let_to_num( $size ) { $l = substr( $size, -1 ); $ret = substr( $size, 0, -1 ); switch ( strtoupper( $l ) ) { case 'P': $ret *= 1024; case 'T': $ret *= 1024; case 'G': $ret *= 1024; case 'M': $ret *= 1024; case 'K': $ret *= 1024; } return $ret; } public static function makeBoolStr( $var ) { if ( $var == false || $var == 'false' || $var == 0 || $var == '0' || $var == '' || empty( $var ) ) { return 'false'; } else { return 'true'; } } public static function isLocalHost() { return ($_SERVER['REMOTE_ADDR'] === '127.0.0.1' || $_SERVER['REMOTE_ADDR'] === 'localhost' || $_SERVER['REMOTE_ADDR'] === '::1') ? 1 : 0; } public static function isWpDebug() { return (defined( 'WP_DEBUG' ) && WP_DEBUG == true); } public static function compileSystemStatus( $json_output = false, $remote_checks = false ) { global $wpdb; $sysinfo = array(); $sysinfo['home_url'] = esc_url( home_url( '/' ) ); $sysinfo['site_url'] = esc_url( site_url( '/' ) ); // Only is a file-write check $sysinfo['wp_content_url'] = WP_CONTENT_URL; $sysinfo['wp_ver'] = get_bloginfo( 'version' ); $sysinfo['wp_multisite'] = is_multisite(); $sysinfo['permalink_structure'] = get_option( 'permalink_structure' ) ? get_option( 'permalink_structure' ) : 'Default'; $sysinfo['front_page_display'] = get_option( 'show_on_front' ); if ( $sysinfo['front_page_display'] == 'page' ) { $front_page_id = get_option( 'page_on_front' ); $blog_page_id = get_option( 'page_for_posts' ); $sysinfo['front_page'] = $front_page_id != 0 ? get_the_title( $front_page_id ) . ' (#' . $front_page_id . ')' : 'Unset'; $sysinfo['posts_page'] = $blog_page_id != 0 ? get_the_title( $blog_page_id ) . ' (#' . $blog_page_id . ')' : 'Unset'; } $sysinfo['wp_mem_limit']['raw'] = self::let_to_num( WP_MEMORY_LIMIT ); $sysinfo['wp_mem_limit']['size'] = size_format( $sysinfo['wp_mem_limit']['raw'] ); $sysinfo['db_table_prefix'] = 'Length: ' . strlen( $wpdb->prefix ) . ' - Status: ' . (strlen( $wpdb->prefix ) > 16 ? 'ERROR: Too long' : 'Acceptable'); $sysinfo['wp_debug'] = 'false'; if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { $sysinfo['wp_debug'] = 'true'; } $sysinfo['wp_lang'] = get_locale(); if ( ! class_exists( 'Browser' ) ) { $file_path = pathinfo( __FILE__ ); require_once $file_path['dirname'] . '/browser.php'; } $browser = new Browser(); $sysinfo['browser'] = array( 'agent' => $browser->getUserAgent(), 'browser' => $browser->getBrowser(), 'version' => $browser->getVersion(), 'platform' => $browser->getPlatform(), // 'mobile' => $browser->isMobile() ? 'true' : 'false', ); $sysinfo['server_info'] = esc_html( $_SERVER['SERVER_SOFTWARE'] ); $sysinfo['localhost'] = self::makeBoolStr( self::isLocalHost() ); $sysinfo['php_ver'] = function_exists( 'phpversion' ) ? esc_html( phpversion() ) : 'phpversion() function does not exist.'; $sysinfo['abspath'] = ABSPATH; if ( function_exists( 'ini_get' ) ) { $sysinfo['php_mem_limit'] = size_format( self::let_to_num( ini_get( 'memory_limit' ) ) ); $sysinfo['php_post_max_size'] = size_format( self::let_to_num( ini_get( 'post_max_size' ) ) ); $sysinfo['php_time_limit'] = ini_get( 'max_execution_time' ); $sysinfo['php_max_input_var'] = ini_get( 'max_input_vars' ); $sysinfo['suhosin_request_max_vars'] = ini_get( 'suhosin.request.max_vars' ); $sysinfo['suhosin_post_max_vars'] = ini_get( 'suhosin.post.max_vars' ); $sysinfo['php_display_errors'] = self::makeBoolStr( ini_get( 'display_errors' ) ); } $sysinfo['suhosin_installed'] = extension_loaded( 'suhosin' ); $sysinfo['mysql_ver'] = $wpdb->db_version(); $sysinfo['max_upload_size'] = size_format( wp_max_upload_size() ); $sysinfo['def_tz_is_utc'] = 'true'; if ( date_default_timezone_get() !== 'UTC' ) { $sysinfo['def_tz_is_utc'] = 'false'; } $sysinfo['fsockopen_curl'] = 'false'; if ( function_exists( 'fsockopen' ) || function_exists( 'curl_init' ) ) { $sysinfo['fsockopen_curl'] = 'true'; } $sysinfo['soap_client'] = 'false'; if ( class_exists( 'SoapClient' ) ) { $sysinfo['soap_client'] = 'true'; } $sysinfo['dom_document'] = 'false'; if ( class_exists( 'DOMDocument' ) ) { $sysinfo['dom_document'] = 'true'; } $sysinfo['gzip'] = 'false'; if ( is_callable( 'gzopen' ) ) { $sysinfo['gzip'] = 'true'; } $sysinfo['mbstring'] = 'false'; if ( extension_loaded( 'mbstring' ) && function_exists( 'mb_eregi' ) && function_exists( 'mb_ereg_match' ) ) { $sysinfo['mbstring'] = 'true'; } $sysinfo['simplexml'] = 'false'; if ( class_exists( 'SimpleXMLElement' ) && function_exists( 'simplexml_load_string' ) ) { $sysinfo['simplexml'] = 'true'; } $sysinfo['phpxml'] = 'false'; if ( function_exists( 'xml_parse' ) ) { $sysinfo['phpxml'] = 'true'; } if ( $remote_checks == true ) { $response = wp_remote_post( 'https://www.paypal.com/cgi-bin/webscr', array( 'sslverify' => false, 'timeout' => 60, 'user-agent' => 'MkFramework/', 'body' => array( 'cmd' => '_notify-validate', ), ) ); if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 ) { $sysinfo['wp_remote_post'] = 'true'; $sysinfo['wp_remote_post_error'] = ''; } else { $sysinfo['wp_remote_post'] = 'false'; try { if ( is_wp_error( $response ) ) { $sysinfo['wp_remote_post_error'] = $response->get_error_message(); } } catch ( Exception $e ) { $sysinfo['wp_remote_post_error'] = $e->getMessage(); } } $response = wp_remote_get( 'http://reduxframework.com/wp-admin/admin-ajax.php?action=get_redux_extensions' ); if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 ) { $sysinfo['wp_remote_get'] = 'true'; $sysinfo['wp_remote_get_error'] = ''; } else { $sysinfo['wp_remote_get'] = 'false'; try { if ( is_wp_error( $response ) ) { $sysinfo['wp_remote_get_error'] = $response->get_error_message(); } } catch ( Exception $e ) { $sysinfo['wp_remote_get_error'] = $e->getMessage(); } } } $active_plugins = (array) get_option( 'active_plugins', array() ); if ( is_multisite() ) { $active_plugins = array_merge( $active_plugins, get_site_option( 'active_sitewide_plugins', array() ) ); } $sysinfo['plugins'] = array(); foreach ( $active_plugins as $plugin ) { $plugin_data = @get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin ); $plugin_name = esc_html( $plugin_data['Name'] ); $sysinfo['plugins'][ $plugin_name ] = $plugin_data; } $active_theme = wp_get_theme(); $sysinfo['theme']['name'] = $active_theme->Name; $sysinfo['theme']['version'] = $active_theme->Version; $sysinfo['theme']['author_uri'] = $active_theme->{'Author URI'}; $sysinfo['theme']['is_child'] = self::makeBoolStr( is_child_theme() ); if ( is_child_theme() ) { $parent_theme = wp_get_theme( $active_theme->Template ); $sysinfo['theme']['parent_name'] = $parent_theme->Name; $sysinfo['theme']['parent_version'] = $parent_theme->Version; $sysinfo['theme']['parent_author_uri'] = $parent_theme->{'Author URI'}; } return $sysinfo; } } new mk_control_panel(); Nature Spring Foundation Inc., Author at Nature's Spring Foundation Inc.
  • ABOUT US
    • History
    • Mission and Vision
    • Where We Work
    • Who We Are
    • Annual Report
  • OUR WORK
    • Education Goal
    • Health Goal
      • Covid-19 Response and Recovery
    • Environment Goal
      • The Bote Challenge
  • NEWS AND EVENTS
  • GET INVOLVED
    • Careers
    • Partnerships
  • CONTACT US
    • ABOUT US
      • History
      • Mission and Vision
      • Where We Work
      • Who We Are
      • Annual Report
    • OUR WORK
      • Education Goal
      • Health Goal
        • Covid-19 Response and Recovery
      • Environment Goal
        • The Bote Challenge
    • NEWS AND EVENTS
    • GET INVOLVED
      • Careers
      • Partnerships
    • CONTACT US

    Archives

    Author Archive for: "naturespringf"
    Home » Archives for Nature Spring Foundation Inc.
     NSFI and CTS MOA Signing
    By Nature Spring Foundation Inc.
    In Events, News and Events
    Posted July 3, 2020

    NSFI and CTS MOA Signing

    Last October 5, 2017, the Nature’s Spring Foundation, Inc. (formerly Lay Kim and Corazon Foundation) signed a memorandum of agreement (MOA) with the College of Technological Sciences (CTS) – Cebu [...]

    0
    Read More
     Nature’s Spring Foundation Reaches to 54 Children at Risk an In-Conflict with the Law in Mandaue City
    By Nature Spring Foundation Inc.
    In Events
    Posted July 3, 2020

    Nature’s Spring Foundation Reaches to 54 Children at Risk an In-Conflict with the Law in Mandaue City

    Mandaue City, CEBU- One month after the Holy Week, Nature’s Spring Foundation, Inc. in coordination with PSWRI reaches out to 54 Children in HOME Children’s Center in Mandaue City. Specifically, [...]

    0
    Read More
     Nature’s Spring Foundation Inc. grants equipment to proposed Molecular Lab for Covid-19
    By Nature Spring Foundation Inc.
    In Covid-19 Projects, News and Events
    Posted June 6, 2020

    Nature’s Spring Foundation Inc. grants equipment to proposed Molecular Lab for Covid-19

    As a commitment to the Covid-19 response strategies for early detection, Nature’s Spring Foundation, Inc. turned over a total amount of 800,000 pesos to the Philippine Red Cross – Cebu Chapter [...]

    Read More
     Nature’s Spring Foundation Inc. donates PPEs to Public, Private Hospitals in VisMin
    By Nature Spring Foundation Inc.
    In Covid-19 Projects, News and Events
    Posted May 19, 2020

    Nature’s Spring Foundation Inc. donates PPEs to Public, Private Hospitals in VisMin

    Through the partnership with the University of the Philippines Medical Alumni Society or UP MAS, Nature’s Spring Foundation, Inc. has granted 2 million pesos worth of Personal Protective [...]

    Read More
     The Environmental Frontliners, our Waste Collectors
    By Nature Spring Foundation Inc.
    In Covid-19 Projects, News and Events
    Posted May 5, 2020

    The Environmental Frontliners, our Waste Collectors

    With or without a health crisis, the waste collectors face many occupational risks every day. This includes exposure to health hazards such as the Covid-19 just to make sure that our wastes are [...]

    Read More
    Registered and Licensed to Operate Social Welfare and Development Agency by the Department of Social Welfare and Development