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>';
}
 /**
  * Output experimental, request-optimized script and style dependencies.
  *
  * @param Upfront_CoreDependencies_Registry $deps Dependencies registry
  */
 private function _output_experimental($deps)
 {
     $link_urls = json_encode(apply_filters('upfront-experiments-styles-debounce_dependency_load', $deps->get_styles()));
     $debug = $this->_debugger->is_active(Upfront_Debug::STYLE) ? 'class="upfront-debounced"' : '';
     $link_tpl = json_encode('<link rel="stylesheet"  href="%url%" type="text/css" media="all" ' . $debug . ' />');
     $script_urls = json_encode(apply_filters('upfront-experiments-scripts-debounce_dependency_load', $deps->get_scripts()));
     $debug = $this->_debugger->is_active(Upfront_Debug::JS_TRANSIENTS) ? 'class="upfront-debounced"' : '';
     $script_tpl = json_encode('<script type="text/javascript" src="%url%" ' . $debug . '></script>');
     $callback_wrap_start = $callback_wrap_end = '';
     $injection_root = 'head';
     if (Upfront_OutputBehavior::has_experiments_level(Upfront_OutputBehavior::LEVEL_DEFAULT)) {
         $callback_wrap_start = '$(function () {';
         $callback_wrap_end = '});';
     }
     if (Upfront_OutputBehavior::has_experiments_level(Upfront_OutputBehavior::LEVEL_AGGRESSIVE)) {
         $callback_wrap_start = '$(function () { setTimeout(function () {';
         $callback_wrap_end = '}, 500);});';
         $injection_root = 'body';
     }
     $injection_root = esc_js($injection_root);
     echo "<script type='text/javascript'>\r\n\t\t\t(function (\$) {\r\n\t\t\t{$callback_wrap_start}\r\n\t\t\t\tvar script_urls = {$script_urls},\r\n\t\t\t\t\tscript_tpl = {$script_tpl},\r\n\t\t\t\t\tlink_urls = {$link_urls},\r\n\t\t\t\t\tlink_tpl = {$link_tpl},\r\n\t\t\t\t\thead = \$('{$injection_root}')\r\n\t\t\t\t;\r\n\t\t\t\t\$.each(link_urls, function (idx, url) {\r\n\t\t\t\t\thead.append(link_tpl.replace(/%url%/, url));\r\n\t\t\t\t});\r\n\t\t\t\t\$.each(script_urls, function (idx, url) {\r\n\t\t\t\t\thead.append(script_tpl.replace(/%url%/, url));\r\n\t\t\t\t});\r\n\t\t\t{$callback_wrap_end}\r\n\t\t\t})(jQuery);\r\n\t\t</script>";
 }
 public static function get_instance()
 {
     if (!self::$_instance) {
         self::$_instance = new self();
     }
     return self::$_instance;
 }
 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.
 }
Example #5
0
    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');
    }