process names fields to always be Title Case

This commit is contained in:
2017-09-12 08:44:21 +10:00
parent 9910b523c6
commit 557b99966d
4 changed files with 52 additions and 30 deletions

View File

@@ -72,6 +72,21 @@ function _booking_remove_emoji($text) {
*/
}
/**
* Helper function to convert text of any case to Title Case, specifically for names
* Taken from http://php.net/manual/en/function.ucwords.php
*/
function _booking_ucname($string) {
$string = ucwords(strtolower($string));
foreach (array('-', '\'') as $delimiter) {
if (strpos($string, $delimiter)!==false) {
$string =implode($delimiter, array_map('ucfirst', explode($delimiter, $string)));
}
}
return $string;
}
/**
* Helper function to perform some validity checking of email addresses
@@ -107,30 +122,29 @@ function _valid_email_address($email) {
*/
function _valid_medicare_number($input) {
//strip any whitespace
$medicare = preg_replace( '/\s+/', '', $input );
if (is_numeric($medicare) && strlen($medicare) >= 9 && $medicare > 0)
{
$check_digit = $medicare[0] + (3 * $medicare[1]) + (7 * $medicare[2]) + (9 * $medicare[3])
+ $medicare[4] + (3 * $medicare[5]) + (7 * $medicare[6]) + (9 * $medicare[7]);
$medicare = preg_replace( '/\s+/', '', $input );
if (($check_digit % 10) == $medicare[8])
{
watchdog('booking', 'Medicare number (!mca) validates since check digit !check matches remainder from !remainder',
array('!mca' => $input, '!check' => $medicare[8], '!remainder' => $check_digit));
return TRUE;
}
else
{
watchdog('booking', 'Medicare number (!mca) does not validate since check digit !check does not match remainder from !remainder',
array('!mca' => $input, '!check' => $medicare[8], '!remainder' => $check_digit));
return FALSE;
}
//for testing, use the fake medicare number 111111110
if (is_numeric($medicare) && strlen($medicare) >= 9 && $medicare > 0) {
$check_digit = $medicare[0] + (3 * $medicare[1]) + (7 * $medicare[2]) + (9 * $medicare[3])
+ $medicare[4] + (3 * $medicare[5]) + (7 * $medicare[6]) + (9 * $medicare[7]);
if (($check_digit % 10) == $medicare[8]) {
watchdog('booking', 'Medicare number (!mca) validates since check digit !check matches remainder from !remainder',
array('!mca' => $input, '!check' => $medicare[8], '!remainder' => $check_digit));
return TRUE;
}
else {
watchdog('booking', 'Medicare number (!mca) does not validate since check digit !check does not match remainder from !remainder',
array('!mca' => $input, '!check' => $medicare[8], '!remainder' => $check_digit));
return FALSE;
}
}
else
{
watchdog('booking', 'Medicare number (!mca) does not validate since it is either non-numeric or too short',
array('!mca' => $input));
return FALSE;
else {
watchdog('booking', 'Medicare number (!mca) does not validate since it is either non-numeric or too short',
array('!mca' => $input));
return FALSE;
}
}
/**