function link_cleanup_url in Link 5
Same name and namespace in other branches
- 6.2 link.inc \link_cleanup_url()
- 6 link.module \link_cleanup_url()
- 7 link.module \link_cleanup_url()
Forms a valid URL if possible from an entered address. Trims whitespace and automatically adds an http:// to addresses without a protocol specified
Parameters
string $url:
string $protocol The protocol to be prepended to the url if one is not specified:
1 call to link_cleanup_url()
- link_field_formatter in ./
link.module - Implementation of hook_field_formatter().
File
- ./
link.module, line 832 - Defines simple link field types.
Code
function link_cleanup_url($url, $protocol = "http") {
$url = trim($url);
$type = link_validate_url($url);
if ($type == LINK_EXTERNAL) {
// Check if there is no protocol specified.
$protocol_match = preg_match("/^([a-z0-9][a-z0-9\\.\\-_]*:\\/\\/)/i", $url);
if (empty($protocol_match)) {
// But should there be? Add an automatic http:// if it starts with a domain name.
$domain_match = preg_match('/^(([a-z0-9]([a-z0-9\\-_]*\\.)+)(' . LINK_DOMAINS . '|[a-z]{2}))/i', $url);
if (!empty($domain_match)) {
$url = $protocol . "://" . $url;
}
}
}
return $url;
}