/** * Provides a Galleria-formatted JSON array of get_included_entities() results */ function pro_lightbox_load_images_action() { $retval = array(); if ($id = $this->param('id')) { $displayed_gallery_mapper = C_Displayed_Gallery_Mapper::get_instance(); if ($this->param('lang', NULL, FALSE)) { if (class_exists('SitePress')) { global $sitepress; $sitepress->switch_lang($this->param('lang')); } } // Fetch ATP galleries or build our displayed gallery by parameters if (is_numeric($id)) { $displayed_gallery = $displayed_gallery_mapper->find($id, TRUE); } else { $factory = C_Component_Factory::get_instance(); $displayed_gallery = $factory->create('displayed_gallery', $this->param('gallery'), $displayed_gallery_mapper); } if ($displayed_gallery) { $settings = C_NextGen_Settings::get_instance()->get('ngg_pro_lightbox'); $retval = M_NextGen_Pro_Lightbox::parse_entities_for_galleria($displayed_gallery->get_entities(FALSE, $settings['localize_limit'])); } } return $retval; }
function enqueue_frontend_resources($displayed_gallery) { $this->call_parent('enqueue_frontend_resources', $displayed_gallery); if (!in_array($displayed_gallery->id(), self::$galleries_displayed)) { // prevent calling get_included_entities() more than once self::$galleries_displayed[] = $displayed_gallery->id(); foreach (M_NextGen_Pro_Lightbox::get_components() as $name => $handler) { $handler = new $handler(); $handler->name = $name; $handler->displayed_gallery = $displayed_gallery; $handler->enqueue_static_resources(); } $settings = C_NextGen_Settings::get_instance()->get('ngg_pro_lightbox'); // localize the gallery images for startup performance $this->object->_add_script_data('ngg_common', 'galleries.gallery_' . $displayed_gallery->id() . '.images_list', M_NextGen_Pro_Lightbox::parse_entities_for_galleria($displayed_gallery->get_entities($settings['localize_limit'])), FALSE); // inform the lightbox js it needs to do an ajax request to load the rest of the gallery $this->object->_add_script_data('ngg_common', 'galleries.gallery_' . $displayed_gallery->id() . '.images_list_limit_reached', $displayed_gallery->get_entity_count() > $settings['localize_limit'] ? TRUE : FALSE, FALSE); } }