function sms_carriers in SMS Framework 6.2
Same name and namespace in other branches
- 7 sms.module \sms_carriers()
Get a list of all carriers
2 calls to sms_carriers()
- carrier_load in ./
sms.module - Load a single carrier
- sms_carriers_admin_form in ./
sms.admin.inc - Form builder for the list of sms carriers.
1 string reference to 'sms_carriers'
- carrier_save in ./
sms.module - Save a carrier.
File
- ./
sms.module, line 411 - The core of the SMS Framework. Provides gateway managment and API for sending and receiving SMS messages.
Code
function sms_carriers($domain = NULL) {
$default_carriers = module_invoke_all('sms_carriers');
$enabled_carriers = variable_get('sms_enabled_carriers', array());
// Load default carriers from code
foreach ($default_carriers as $id => $carrier) {
$carriers[$id] = array(
'name' => $carrier,
'type' => SMS_CARRIER_DEFAULT,
);
}
// Load overrideen carriers from database
$result = db_query("SELECT name, domain FROM {sms_carriers}");
while ($carrier = db_fetch_array($result)) {
if (in_array($carrier['domain'], array_keys($carriers))) {
$type = SMS_CARRIER_OVERRIDDEN;
}
else {
$type = SMS_CARRIER_NORMAL;
}
$carriers[$carrier['domain']] = array(
'name' => $carrier['name'],
'type' => $type,
);
}
foreach ($enabled_carriers as $carrier) {
if (is_array($carriers[$carrier])) {
$carriers[$carrier]['status'] = 1;
}
}
if ($domain) {
$carriers[$domain]['domain'] = $domain;
return $carriers[$domain];
}
return $carriers;
}