Released under the terms of the GNU General Public License. You should have received a copy of the GNU General Public License, along with this software. In the main directory, see: /licensing/ If not, see: . */ /* Direct access denial. */ if (realpath (__FILE__) === realpath ($_SERVER["SCRIPT_FILENAME"])) exit; /* Function that handles a remote request. This extends wp_remote_request() through the `WP_Http` class. */ function ws_widget__ad_codes_remote ($url = FALSE, $post_vars = FALSE, $args = array ()) { $args = (!is_array ($args)) ? array (): $args; /**/ if ($url) /* Obviously, we must have a URL to do anything. */ { if (is_array ($post_vars) && !empty ($post_vars)) { $args["method"] = "POST"; $args["body"] = $post_vars; } /**/ if (!is_wp_error ($response = wp_remote_request ($url, $args))) if (strlen ($response["body"])) return $response["body"]; } /**/ return false; } /* Function that extends array_unique to support multi-dimensional arrays. */ function ws_widget__ad_codes_array_unique ($array = FALSE) { if (!is_array ($array)) { return array ($array); } else /* Serialized array_unique. */ { foreach ($array as &$value) { $value = serialize ($value); } /**/ $array = array_unique ($array); /**/ foreach ($array as &$value) { $value = unserialize ($value); } /**/ return $array; } } /* Function that buffers ( gets ) function output. */ function ws_widget__ad_codes_get ($function = FALSE) { $args = func_get_args (); $function = array_shift ($args); /**/ if (is_string ($function) && $function) { ob_start (); /**/ if (is_array ($args) && !empty ($args)) { $return = call_user_func_array ($function, $args); } else /* There are no additional arguments to pass. */ { $return = call_user_func ($function); } /**/ $echo = ob_get_contents (); /**/ ob_end_clean (); /**/ return (!strlen ($echo) && strlen ($return)) ? $return : $echo; } else /* Else return null. */ return; } /* Function escapes single quotes. */ function ws_widget__ad_codes_esc_sq ($string = FALSE) { return preg_replace ("/'/", "\'", $string); } ?>