Now all modules are in core modules folder
This commit is contained in:
parent
5ba1cdfa0b
commit
05b6a91b0c
1907 changed files with 0 additions and 0 deletions
54
modules/views/plugins/views_plugin_access_role.inc
Normal file
54
modules/views/plugins/views_plugin_access_role.inc
Normal file
|
@ -0,0 +1,54 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* Access plugin that provides role-based access control.
|
||||
*/
|
||||
class views_plugin_access_role extends views_plugin_access {
|
||||
function access($account) {
|
||||
return views_check_roles(array_filter($this->options['role']), $account);
|
||||
}
|
||||
|
||||
function get_access_callback() {
|
||||
return array('views_check_roles', array(array_filter($this->options['role'])));
|
||||
}
|
||||
|
||||
function summary_title() {
|
||||
$count = count($this->options['role']);
|
||||
if ($count < 1) {
|
||||
return t('No role(s) selected');
|
||||
}
|
||||
else if ($count > 1) {
|
||||
return t('Multiple roles');
|
||||
}
|
||||
else {
|
||||
$rids = views_ui_get_roles();
|
||||
$rid = reset($this->options['role']);
|
||||
return $rids[$rid];
|
||||
}
|
||||
}
|
||||
|
||||
function option_defaults(&$options) {
|
||||
$options['role'] = array();
|
||||
}
|
||||
|
||||
function options_form(&$form, &$form_state) {
|
||||
$form['role'] = array(
|
||||
'#type' => 'checkboxes',
|
||||
'#title' => t('Role'),
|
||||
'#default_value' => $this->options['role'],
|
||||
'#options' => views_ui_get_roles(),
|
||||
'#description' => t('Only the checked roles will be able to access this display. Note that users with "access all views" can see any view, regardless of role.'),
|
||||
);
|
||||
}
|
||||
|
||||
function options_validate(&$form, &$form_state) {
|
||||
if (!array_filter($form_state['values']['access_options']['role'])) {
|
||||
form_error($form['role'], t('You must select at least one role if type is "by role"'));
|
||||
}
|
||||
}
|
||||
|
||||
function options_submit(&$form, &$form_state) {
|
||||
// I hate checkboxes.
|
||||
$form_state['values']['access_options']['role'] = array_filter($form_state['values']['access_options']['role']);
|
||||
}
|
||||
}
|
Reference in a new issue