From 3c2f0797c72bc893503f49a8e411c3c70769d1e3 Mon Sep 17 00:00:00 2001 From: Sophia Atkinson Date: Sun, 30 Oct 2022 14:10:59 -0700 Subject: [PATCH] Delete 'functions-links.php' --- functions-links.php | 276 -------------------------------------------- 1 file changed, 276 deletions(-) delete mode 100644 functions-links.php diff --git a/functions-links.php b/functions-links.php deleted file mode 100644 index 3bb994b..0000000 --- a/functions-links.php +++ /dev/null @@ -1,276 +0,0 @@ - 'value' ) - * array( 'var' => 'value' ), $url - * 'var', 'value' - * 'var', 'value', $url - * If $url omitted, uses $_SERVER['REQUEST_URI'] - * - * The result of this function call is a URL : it should be escaped before being printed as HTML - * - * @since 1.5 - * @param string|array $param1 Either newkey or an associative_array. - * @param string $param2 Either newvalue or oldquery or URI. - * @param string $param3 Optional. Old query or URI. - * @return string New URL query string. - */ -function yourls_add_query_arg() { - $ret = ''; - if ( is_array( func_get_arg(0) ) ) { - if ( @func_num_args() < 2 || false === @func_get_arg( 1 ) ) - $uri = $_SERVER['REQUEST_URI']; - else - $uri = @func_get_arg( 1 ); - } else { - if ( @func_num_args() < 3 || false === @func_get_arg( 2 ) ) - $uri = $_SERVER['REQUEST_URI']; - else - $uri = @func_get_arg( 2 ); - } - - $uri = str_replace( '&', '&', $uri ); - - - if ( $frag = strstr( $uri, '#' ) ) - $uri = substr( $uri, 0, -strlen( $frag ) ); - else - $frag = ''; - - if ( preg_match( '|^https?://|i', $uri, $matches ) ) { - $protocol = $matches[0]; - $uri = substr( $uri, strlen( $protocol ) ); - } else { - $protocol = ''; - } - - if ( strpos( $uri, '?' ) !== false ) { - $parts = explode( '?', $uri, 2 ); - if ( 1 == count( $parts ) ) { - $base = '?'; - $query = $parts[0]; - } else { - $base = $parts[0] . '?'; - $query = $parts[1]; - } - } elseif ( !empty( $protocol ) || strpos( $uri, '=' ) === false ) { - $base = $uri . '?'; - $query = ''; - } else { - $base = ''; - $query = $uri; - } - - parse_str( $query, $qs ); - $qs = yourls_urlencode_deep( $qs ); // this re-URL-encodes things that were already in the query string - if ( is_array( func_get_arg( 0 ) ) ) { - $kayvees = func_get_arg( 0 ); - $qs = array_merge( $qs, $kayvees ); - } else { - $qs[func_get_arg( 0 )] = func_get_arg( 1 ); - } - - foreach ( (array) $qs as $k => $v ) { - if ( $v === false ) - unset( $qs[$k] ); - } - - $ret = http_build_query( $qs ); - $ret = trim( $ret, '?' ); - $ret = preg_replace( '#=(&|$)#', '$1', $ret ); - $ret = $protocol . $base . $ret . $frag; - $ret = rtrim( $ret, '?' ); - return $ret; -} - -/** - * Navigates through an array and encodes the values to be used in a URL. Stolen from WP, used in yourls_add_query_arg() - * - * @param array|string $value The array or string to be encoded. - * @return array|string - */ -function yourls_urlencode_deep( $value ) { - $value = is_array( $value ) ? array_map( 'yourls_urlencode_deep', $value ) : urlencode( $value ); - return $value; -} - -/** - * Remove arg from query. Opposite of yourls_add_query_arg. Stolen from WP. - * - * The result of this function call is a URL : it should be escaped before being printed as HTML - * - * @since 1.5 - * @param string|array $key Query key or keys to remove. - * @param bool|string $query Optional. When false uses the $_SERVER value. Default false. - * @return string New URL query string. - */ -function yourls_remove_query_arg( $key, $query = false ) { - if ( is_array( $key ) ) { // removing multiple keys - foreach ( $key as $k ) - $query = yourls_add_query_arg( $k, false, $query ); - return $query; - } - return yourls_add_query_arg( $key, false, $query ); -} - -/** - * Converts keyword into short link (prepend with YOURLS base URL) or stat link (sho.rt/abc+) - * - * This function does not check for a valid keyword. - * The resulting link is normalized to allow for IDN translation to UTF8 - * - * @param string $keyword Short URL keyword - * @param bool $stats Optional, true to return a stat link (eg sho.rt/abc+) - * @return string Short URL, or keyword stat URL - */ -function yourls_link( $keyword = '', $stats = false ) { - $keyword = yourls_sanitize_keyword($keyword); - if( $stats === true ) { - $keyword = $keyword . '+'; - } - $link = yourls_normalize_uri( yourls_get_yourls_site() . '/' . $keyword ); - - if( yourls_is_ssl() ) { - $link = yourls_set_url_scheme( $link, 'https' ); - } - - return yourls_apply_filter( 'yourls_link', $link, $keyword ); -} - -/** - * Converts keyword into stat link (prepend with YOURLS base URL, append +) - * - * This function does not make sure the keyword matches an actual short URL - * - * @param string $keyword Short URL keyword - * @return string Short URL stat link - */ -function yourls_statlink( $keyword = '' ) { - $link = yourls_link( $keyword, true ); - return yourls_apply_filter( 'yourls_statlink', $link, $keyword ); -} - -/** - * Return admin link, with SSL preference if applicable. - * - * @param string $page Page name, eg "index.php" - * @return string - */ -function yourls_admin_url( $page = '' ) { - $admin = yourls_get_yourls_site() . '/admin/' . $page; - if( yourls_is_ssl() or yourls_needs_ssl() ) { - $admin = yourls_set_url_scheme( $admin, 'https' ); - } - return yourls_apply_filter( 'admin_url', $admin, $page ); -} - -/** - * Return YOURLS_SITE or URL under YOURLS setup, with SSL preference - * - * @param bool $echo Echo if true, or return if false - * @param string $url - * @return string - */ -function yourls_site_url($echo = true, $url = '' ) { - $url = yourls_get_relative_url( $url ); - $url = trim( yourls_get_yourls_site() . '/' . $url, '/' ); - - // Do not enforce (checking yourls_need_ssl() ) but check current usage so it won't force SSL on non-admin pages - if( yourls_is_ssl() ) { - $url = yourls_set_url_scheme( $url, 'https' ); - } - $url = yourls_apply_filter( 'site_url', $url ); - if( $echo ) { - echo $url; - } - return $url; -} - -/** - * Get YOURLS_SITE value, trimmed and filtered - * - * In addition of being filtered for plugins to hack this, this function is mostly here - * to help people entering "sho.rt/" instead of "sho.rt" in their config - * - * @since 1.7.7 - * @return string YOURLS_SITE, trimmed and filtered - */ -function yourls_get_yourls_site() { - return yourls_apply_filter('get_yourls_site', trim(YOURLS_SITE, '/')); -} - -/** - * Change protocol of a URL to HTTPS if we are currently on HTTPS - * - * This function is used to avoid insert 'http://' images or scripts in a page when it's served through HTTPS, - * to avoid "mixed content" errors. - * So: - * - if you are on http://sho.rt/, 'http://something' and 'https://something' are left untouched. - * - if you are on https:/sho.rt/, 'http://something' is changed to 'https://something' - * - * So, arguably, this function is poorly named. It should be something like yourls_match_current_protocol_if_we_re_on_https - * - * @since 1.5.1 - * @param string $url a URL - * @param string $normal Optional, the standard scheme (defaults to 'http://') - * @param string $ssl Optional, the SSL scheme (defaults to 'https://') - * @return string the modified URL, if applicable - */ -function yourls_match_current_protocol( $url, $normal = 'http://', $ssl = 'https://' ) { - // we're only doing something if we're currently serving through SSL and the input URL begins with 'http://' or 'https://' - if( yourls_is_ssl() && in_array( yourls_get_protocol($url), array('http://', 'https://') ) ) { - $url = str_replace( $normal, $ssl, $url ); - } - - return yourls_apply_filter( 'match_current_protocol', $url ); -} - -/** - * Auto detect custom favicon in /user directory, fallback to YOURLS favicon, and echo/return its URL - * - * This function supersedes function yourls_favicon(), deprecated in 1.7.10, with a better naming. - * - * @since 1.7.10 - * @param bool $echo true to echo, false to silently return - * @return string favicon URL - * - */ -function yourls_get_yourls_favicon_url( $echo = true ) { - static $favicon = null; - - if( $favicon !== null ) { - if( $echo ) { - echo $favicon; - } - return $favicon; - } - - $custom = null; - // search for favicon.(gif|ico|png|jpg|svg) - foreach( array( 'gif', 'ico', 'png', 'jpg', 'svg' ) as $ext ) { - if( file_exists( YOURLS_USERDIR. '/favicon.' . $ext ) ) { - $custom = 'favicon.' . $ext; - break; - } - } - - if( $custom ) { - $favicon = yourls_site_url( false, YOURLS_USERURL . '/' . $custom ); - } else { - $favicon = yourls_site_url( false ) . '/images/favicon.svg'; - } - - $favicon = yourls_apply_filter('get_favicon_url', $favicon); - - if( $echo ) { - echo $favicon; - } - return $favicon; -}