class signup_handler_field_signup_user_email in Signup 6
Same name and namespace in other branches
- 6.2 views/handlers/signup_handler_field_signup_user_email.inc \signup_handler_field_signup_user_email
- 7 views/handlers/signup_handler_field_signup_user_email.inc \signup_handler_field_signup_user_email
Field handler to display the email address of a signed up user.
This requires the relationship between {signup_log} and {users} when generating the query. When rendering the field, if the uid is 0 (anonymous signup) it pulls the {signup_log}.anon_mail field. For authenticated users, it grabs the {users}.mail field from the relationship.
Hierarchy
- class \signup_handler_field_signup_user_email extends \views_handler_field
Expanded class hierarchy of signup_handler_field_signup_user_email
1 string reference to 'signup_handler_field_signup_user_email'
- signup_views_data in views/
signup.views.inc - Implementation of hook_views_data().
File
- views/
handlers/ signup_handler_field_signup_user_email.inc, line 11
View source
class signup_handler_field_signup_user_email extends views_handler_field {
var $table_alias = '';
var $users_alias = '';
function ensure_my_table() {
$this->table_alias = $this->query
->ensure_table('signup_log', $this->relationship);
$this->users_table = $this->query
->ensure_table('users', 'signup_log');
}
function query() {
$this
->ensure_my_table();
$this->aliases['signup_uid'] = $this->query
->add_field($this->table_alias, 'uid');
$this->aliases['signup_anon_mail'] = $this->query
->add_field($this->table_alias, 'anon_mail');
$this->aliases['users_mail'] = $this->query
->add_field($this->users_alias, 'mail');
}
function render($values) {
if (empty($values->{$this->aliases['signup_uid']})) {
return check_plain($values->{$this->aliases['signup_anon_mail']});
}
else {
return check_plain($values->{$this->aliases['users_mail']});
}
}
}