class mail_logger_handler_field_mail in Mail Logger 6
Same name and namespace in other branches
- 7 views/mail_logger_handler_field_mail.inc \mail_logger_handler_field_mail
@file Field handler to provide a mailto link for email fields.
Hierarchy
- class \mail_logger_handler_field_mail extends \views_handler_field
Expanded class hierarchy of mail_logger_handler_field_mail
1 string reference to 'mail_logger_handler_field_mail'
- mail_logger_views_data in views/
mail_logger.views.inc - Implementation of hook_views_data().
File
- views/
handlers/ mail_logger_handler_field_mail.inc, line 7 - Field handler to provide a mailto link for email fields.
View source
class mail_logger_handler_field_mail extends views_handler_field {
function option_definition() {
$options = parent::option_definition();
$options['link'] = array(
'default' => 'mailto',
);
return $options;
}
function options_form(&$form, &$form_state) {
parent::options_form($form, $form_state);
$form['link'] = array(
'#title' => t('Link this field'),
'#type' => 'radios',
'#options' => array(
0 => t('No link'),
'mailto' => t("With a mailto:"),
'user' => t("User account, if one exists."),
),
'#default_value' => $this->options['link'],
);
}
function render($values) {
if ($this->options['link'] == 'mailto') {
return l($values->{$this->field_alias}, "mailto:" . $values->{$this->field_alias});
}
elseif ($this->options['link'] == 'user') {
// Return a link to an account page if one exists; otherwise, fall back.
if ($account = mail_logger_email_user($values->{$this->field_alias})) {
return l($values->{$this->field_alias}, 'user/' . $account->uid);
}
}
return check_plain($values->{$this->field_alias});
}
}