function link_cleanup_url in Link 6.2
Same name and namespace in other branches
- 5 link.module \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_sanitize in ./
link.inc - Cleanup user-entered values for a link field according to field settings.
File
- ./
link.inc, line 232 - Helper functions for Link field, widget and form elements.
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.
$link_domains = _link_domains();
$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;
}