public function wp_scripts_load() { // Do the enqueueing action do_action('upfront-core-wp_dependencies'); $deps = Upfront_CoreDependencies_Registry::get_instance(); $wps = new WP_Scripts(); $scripts = $deps->get_wp_scripts(); $srcs = array(); foreach ($scripts as $script) { if (!empty($wps->registered[$script])) { $srcs[] = wp_normalize_path(ABSPATH . $wps->registered[$script]->src); } } $out = ''; foreach ($srcs as $src) { if (file_exists($src)) { $out .= file_get_contents($src); } } $response = empty($out) ? new Upfront_JavascriptResponse_Error("Dependencies not found") : new Upfront_JavascriptResponse_Success($out); $this->_out($response); }
function upfront_media_file_upload() { if (!Upfront_Permissions::current(Upfront_Permissions::UPLOAD)) { return false; } // Do not inject for users that can't use this $base_url = Upfront::get_root_url(); /* wp_enqueue_script('fileupload', "{$base_url}/scripts/file_upload/jquery.fileupload.js", array('jquery')); wp_enqueue_script('fileupload-iframe', "{$base_url}/scripts/file_upload/jquery.iframe-transport.js", array('fileupload')); */ $deps = Upfront_CoreDependencies_Registry::get_instance(); $deps->add_script("{$base_url}/scripts/file_upload/jquery.fileupload.js"); $deps->add_script("{$base_url}/scripts/file_upload/jquery.iframe-transport.js"); echo '<script>var _upfront_media_upload=' . json_encode(array('normal' => Upfront_UploadHandler::get_action_url('upfront-media-upload'), 'theme' => Upfront_UploadHandler::get_action_url('upfront-media-upload-theme-image'), 'embed_ref' => Upfront_UploadHandler::get_ref(Upfront_Permissions::EMBED), 'image_ref' => Upfront_UploadHandler::get_ref(Upfront_Permissions::UPLOAD))) . ';</script>'; }
function add_styles() { wp_enqueue_style('upfront-main', upfront_ajax_url('upfront_load_styles'), array(), Upfront_ChildTheme::get_version(), 'all'); $deps = Upfront_CoreDependencies_Registry::get_instance(); // Load theme fonts $theme_fonts = json_decode(get_option('upfront_' . get_stylesheet() . '_theme_fonts')); $theme_fonts = apply_filters('upfront_get_theme_fonts', $theme_fonts, array()); if ($theme_fonts) { foreach ($theme_fonts as $theme_font) { /* wp_enqueue_style( strtolower(str_replace(' ', '-', $theme_font->font->family)) . '-' . $theme_font->variant, '//fonts.googleapis.com/css?family=' . str_replace(' ', '+', $theme_font->font->family) . ':' . $theme_font->variant, array(), Upfront_ChildTheme::get_version() ); */ $deps->add_font($theme_font->font->family, $theme_font->variant); } } // The dependencies server will manage the fonts. }
function inject_upfront_dependencies() { if (!Upfront_Permissions::current(Upfront_Permissions::BOOT)) { return false; } // Do not inject for users that can't use this $url = self::get_root_url(); //Boot Edit Mode if the querystring contains the editmode param if (isset($_GET['editmode'])) { echo upfront_boot_editor_trigger(); } $storage_key = apply_filters('upfront-data-storage-key', Upfront_Layout::STORAGE_KEY); $save_storage_key = $storage_key; $is_ssl = is_ssl() ? '&ssl=1' : ''; if (isset($_GET['dev']) && current_user_can('switch_themes') && apply_filters('upfront-enable-dev-saving', true)) { $save_storage_key .= '_dev'; } $script_urls = array("{$url}/scripts/require.js", admin_url('admin-ajax.php?action=upfront_load_main' . $is_ssl), "{$url}/scripts/main.js"); $deps = Upfront_CoreDependencies_Registry::get_instance(); foreach ($script_urls as $url) { $deps->add_script($url); } echo '<script type="text/javascript"> var _upfront_post_data=' . json_encode(array('layout' => Upfront_EntityResolver::get_entity_ids(), 'post_id' => is_singular() ? apply_filters('upfront-data-post_id', get_the_ID()) : false)) . '; var _upfront_storage_key = "' . $storage_key . '"; var _upfront_save_storage_key = "' . $save_storage_key . '"; var _upfront_stylesheet = "' . get_stylesheet() . '"; var _upfront_debug_mode = ' . (int) isset($_GET['debug']) . '; var _upfront_please_hold_on = ' . json_encode(__('Please, hold on for just a little bit more', 'upfront')) . '; </script>'; echo <<<EOAdditivemarkup \t<div id="sidebar-ui" class="upfront-ui"></div> \t<div id="settings" style="display:none"></div> \t<div id="contextmenu" style="display:none"></div> EOAdditivemarkup; do_action('upfront-core-inject_dependencies'); }