static function ParseQuery(&$query) { // conditional loading of the search hooks global $wp_query; if (!empty($wp_query->query_vars['s'])) { wpfb_loadclass('Search'); } if (!empty($_GET['wpfb_s']) || !empty($_GET['s'])) { WPFB_Core::$file_browser_search = true; add_filter('the_excerpt', array(__CLASS__, 'SearchExcerptFilter'), 100); // must be lower than 11 (before do_shortcode) and after wpautop (>9) } // check if current post is file browser if (($id = self::GetPostId($query)) == WPFB_Core::$settings->file_browser_post_id) { wpfb_loadclass('File', 'Category'); if (!empty($_GET['wpfb_file'])) { self::$file_browser_item = WPFB_File::GetFile($_GET['wpfb_file']); } elseif (!empty($_GET['wpfb_cat'])) { self::$file_browser_item = WPFB_Category::GetCat($_GET['wpfb_cat']); } else { $url = (is_ssl() ? 'https' : 'http') . '://' . $_SERVER["HTTP_HOST"] . stripslashes($_SERVER['REQUEST_URI']); if (($qs = strpos($url, '?')) !== false) { $url = substr($url, 0, $qs); } // remove query string $path = trim(substr($url, strlen(WPFB_Core::GetPostUrl($id))), '/'); if (!empty($path)) { self::$file_browser_item = WPFB_Item::GetByPath(urldecode($path)); if (is_null(self::$file_browser_item)) { self::$file_browser_item = WPFB_Item::GetByPath($path); } } } } }