403Webshell
Server IP : 173.209.174.21  /  Your IP : 216.73.216.89
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux wcfs-server 6.8.0-124-generic #124-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 13:00:45 UTC 2026 x86_64
User : nodor ( 1000)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/thelittlebigshow/wp-content/plugins/robo-gallery/app/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/thelittlebigshow/wp-content/plugins/robo-gallery/app//class.restapi.php
<?php
/* 
*      Robo Gallery     
*      Version: 3.2.14 - 40722
*      By Robosoft
*
*      Contact: https://robogallery.co/ 
*      Created: 2021
*      Licensed under the GPLv2 license - http://opensource.org/licenses/gpl-2.0.php

 */

if (!defined('WPINC')) {
    exit;
}

class RoboGalleryRestAPI
{

    public function __construct()
    {}

    public static function init()
    {
        add_action('rest_api_init', array('RoboGalleryRestAPI', 'add_restapi_meta_field'));
    }

    public static function add_images_field()
    {
        $db_fieldname = 'rsg_galleryImages';
        $api_fieldname = 'robo-images';

        register_rest_field(ROBO_GALLERY_TYPE_POST, $api_fieldname, array(

            'get_callback' => function ($object) {
                if (!isset($object['id']) || !$object['id']) {
                    return array();
                }

                $imageIds = get_post_meta($object['id'], 'rsg_galleryImages', true);

                if (empty($imageIds) || !is_array($imageIds) || !count($imageIds)) {
                    return array();
                }
                $imageIds = array_map(function ($item) {return (int) $item;}, $imageIds);

                return array_values($imageIds);
            },
            'update_callback' => function ($value, $object) {
                // Update the field/meta value.
                update_post_meta($object->ID, 'rsg_galleryImages', $value);
            },

            'schema' => array(
                'type' => 'array',
                'items' => array(
                    'type' => 'integer',
                ),
                'arg_options' => array(
                    'sanitize_callback' => function ($imageIds) {

                        if (!is_array($imageIds)) {
                            return array();
                        }

                        $imageIds = array_map(function ($v) {return (int) $v;}, $imageIds);
                        $imageIds = array_filter($imageIds, function ($v) {return $v > 0;});
                        $imageIds = array_values($imageIds);
                        return $imageIds;
                    },
                    'validate_callback' => function ($imageIds) {
                        return is_array($imageIds); // array_filter($imageIds, 'is_int');
                    },
                ),
            ),
        ));
    }

    public static function add_restapi_meta_field()
    {
        self::add_images_field();

        register_rest_field(ROBO_GALLERY_TYPE_POST, 'meta-fields',
            array(
                'get_callback' => array('RoboGalleryRestAPI', 'get_post_meta_for_api'),
                'schema' => null,
            )
        );
    }

    public static function get_post_meta_for_api($object)
    {

        $post_id = $object['id'];
        $metaData = get_post_meta($post_id);

        if (!empty($metaData['rsg_shadow-options'][0])) {
            $metaData['rsg_shadow-options'][0] = unserialize($metaData['rsg_shadow-options'][0]);
        }

        if (!empty($metaData['rsg_galleryImages'][0])) {
            $imagesArray = unserialize($metaData['rsg_galleryImages'][0]);
            $imagesArray = array_map(function ($v) {return (int) $v;}, $imagesArray);
            $metaData['rsg_galleryImages'] = array('count' => count($imagesArray), 'items' => $imagesArray);
        }

        if (!empty($metaData['robo-images'][0])) {
            $imagesArray = unserialize($metaData['robo-images'][0]);
            $imagesArray = array_map(function ($v) {return (int) $v;}, $imagesArray);
            $metaData['robo-images'] = array('count' => count($imagesArray), 'items' => array_values($imagesArray));
        }

        if (!empty($metaData['rsg_width-size'])) {
            $metaData['rsg_width-size'] = unserialize($metaData['rsg_width-size'][0]);
        }

        return $metaData;
    }

}

RoboGalleryRestAPI::init();

Youez - 2016 - github.com/yon3zu
LinuXploit