1
0
This repository has been archived on 2025-03-31. You can view files and clone it, but cannot push or open issues or pull requests.
gs-caller-id/inc/CallerID/CSVLookup/ResolverBridge.php

44 lines
1.1 KiB
PHP

<?php
require_once(dirname(__FILE__) . '/../CallerIDResolver.interface.php');
require_once(dirname(__FILE__) . '/CSV.class.php');
class CallerID_CSVLookup implements CallerIDResolver {
const CSV_FILE = 'telefonbuch.csv';
protected static function localizeNumber($number) {
// convert +XX to 00XX or omit if local
if ($number{0} == '+') {
if (substr($number, 1, strlen(CallerID::$countrycode)) == CallerID::$countrycode) {
$number = '0' . substr($number, 1+strlen(CallerID::$countrycode));
} else {
$number = '00' . substr($number, 1);
}
}
return $number;
}
public static function lookupNum($number) {
$csv = new CSV();
$csv->setDelimiter(';');
$csv->load(dirname(__FILE__) . '/' . self::CSV_FILE, true);
$data = $csv->getTable();
$csv->close();
$number = self::localizeNumber($number);
foreach ($data as $entry) {
// CSV format: Name;Number
if ($entry[1] == $number) {
return $entry[0];
}
}
return false;
}
}
?>