当前位置: 首页>>代码示例>>PHP>>正文


PHP GFAPI::current_user_can_any方法代码示例

本文整理汇总了PHP中GFAPI::current_user_can_any方法的典型用法代码示例。如果您正苦于以下问题:PHP GFAPI::current_user_can_any方法的具体用法?PHP GFAPI::current_user_can_any怎么用?PHP GFAPI::current_user_can_any使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在GFAPI的用法示例。


在下文中一共展示了GFAPI::current_user_can_any方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: init_admin

 public function init_admin()
 {
     parent::init_admin();
     add_action('gform_entry_detail_sidebar_before', array($this, 'entry_detail_approval_box'), 10, 2);
     add_filter('gform_notification_events', array($this, 'add_notification_event'));
     add_filter('gform_entries_field_value', array($this, 'filter_gform_entries_field_value'), 10, 4);
     if (GFAPI::current_user_can_any('gravityforms_edit_entries')) {
         add_action('wp_dashboard_setup', array($this, 'dashboard_setup'));
     }
 }
开发者ID:stevehenty,项目名称:gravityformsapprovals,代码行数:10,代码来源:class-gf-approvals.php

示例2: display

    public static function display($args)
    {
        $defaults = array('check_permissions' => true, 'detail_base_url' => admin_url('admin.php?page=gravityflow-inbox&view=entry'));
        $args = array_merge($defaults, $args);
        if ($args['check_permissions'] && !GFAPI::current_user_can_any('gravityflow_activity')) {
            esc_html_e("You don't have permission to view this page", 'gravityflow');
            return;
        }
        $events = Gravity_Flow_Activity::get_events();
        if (sizeof($events) > 0) {
            ?>

			<table id="gravityflow-activity" class="widefat" cellspacing="0" style="border:0px;">
				<thead>
				<tr>
					<th data-label="<?php 
            esc_html_e('Event ID', 'gravityflow');
            ?>
"><?php 
            esc_html_e('Event ID', 'gravityflow');
            ?>
</th>
					<th><?php 
            esc_html_e('Date', 'gravityflow');
            ?>
</th>
					<th><?php 
            esc_html_e('Form', 'gravityflow');
            ?>
</th>
					<th><?php 
            esc_html_e('Entry ID', 'gravityflow');
            ?>
</th>
					<th><?php 
            esc_html_e('Type', 'gravityflow');
            ?>
</th>
					<th><?php 
            esc_html_e('Event', 'gravityflow');
            ?>
</th>
					<th><?php 
            esc_html_e('Step', 'gravityflow');
            ?>
</th>
					<th><?php 
            esc_html_e('Duration', 'gravityflow');
            ?>
</th>
				</tr>
				</thead>

				<tbody class="list:user user-list">
				<?php 
            foreach ($events as $event) {
                $form = GFAPI::get_form($event->form_id);
                $base_url = $args['detail_base_url'];
                $url_entry = $base_url . sprintf('&id=%d&lid=%d', $event->form_id, $event->lead_id);
                $url_entry = esc_url_raw($url_entry);
                $link = "<a href='%s'>%s</a>";
                ?>
					<tr>
						<td data-label="<?php 
                esc_html_e('ID', 'gravityflow');
                ?>
">
							<?php 
                echo esc_html($event->id);
                ?>
						</td>
						<td data-label="<?php 
                esc_html_e('Date', 'gravityflow');
                ?>
">
							<?php 
                echo esc_html(GFCommon::format_date($event->date_created));
                ?>
						</td>
						<td data-label="<?php 
                esc_html_e('Form', 'gravityflow');
                ?>
">
							<?php 
                printf($link, $url_entry, $form['title']);
                ?>
						</td>
						<td data-label="<?php 
                esc_html_e('Entry ID', 'gravityflow');
                ?>
">
							<?php 
                printf($link, $url_entry, $event->lead_id);
                ?>
						</td>
						<td data-label="<?php 
                esc_html_e('Type', 'gravityflow');
                ?>
">
							<?php 
//.........这里部分代码省略.........
开发者ID:jakejackson1,项目名称:gravityflow,代码行数:101,代码来源:class-activity.php

示例3: __construct

 function __construct($args = array())
 {
     $default_bulk_actions = array('print' => esc_html__('Print', 'gravityflow'));
     if (GFAPI::current_user_can_any('gravityflow_admin_actions')) {
         $default_bulk_actions['restart_workflow'] = esc_html__('Restart Workflow', 'gravityflow');
     }
     $default_args = array('singular' => __('entry', 'gravityflow'), 'plural' => __('entries', 'gravityflow'), 'ajax' => false, 'base_url' => admin_url('admin.php?page=gravityflow-status'), 'detail_base_url' => admin_url('admin.php?page=gravityflow-inbox&view=entry'), 'constraint_filters' => array(), 'field_ids' => array(), 'screen' => 'gravityflow-status', 'display_all' => GFAPI::current_user_can_any('gravityflow_status_view_all'), 'bulk_actions' => $default_bulk_actions, 'per_page' => 20, 'id_column' => true, 'submitter_column' => true, 'step_column' => true, 'status_column' => true, 'last_updated' => false);
     $args = wp_parse_args($args, $default_args);
     require_once ABSPATH . 'wp-admin/includes/template.php';
     if (!class_exists('WP_Screen')) {
         require_once ABSPATH . 'wp-admin/includes/class-wp-screen.php';
     }
     parent::__construct($args);
     $this->base_url = $args['base_url'];
     $this->detail_base_url = $args['detail_base_url'];
     $this->constraint_filters = $args['constraint_filters'];
     if (!is_array($args['field_ids'])) {
         $args['field_ids'] = explode(',', $args['field_ids']);
     }
     $this->field_ids = $args['field_ids'];
     $this->display_all = $args['display_all'];
     $this->bulk_actions = $args['bulk_actions'];
     $this->set_counts();
     $this->per_page = $args['per_page'];
     $this->id_column = $args['id_column'];
     $this->step_column = $args['step_column'];
     $this->submitter_column = $args['submitter_column'];
     $this->status_column = $args['status_column'];
     $this->last_updated = $args['last_updated'];
 }
开发者ID:jakejackson1,项目名称:gravityflow,代码行数:30,代码来源:class-status.php

示例4: display

    public static function display($args)
    {
        $assignee_key = sanitize_text_field(rgget('assignee'));
        list($assignee_type, $assignee_id) = rgexplode('|', $assignee_key, 2);
        $range = sanitize_key(rgget('range'));
        switch ($range) {
            case 'last-6-months':
                $start_date = date('Y-m-d', strtotime('-6 months'));
                break;
            case 'last-3-months':
                $start_date = date('Y-m-d', strtotime('-3 months'));
                break;
            default:
                $start_date = date('Y-m-d', strtotime('-1 year'));
        }
        $defaults = array('view' => rgget('view'), 'form_id' => absint(rgget('form-id')), 'step_id' => absint(rgget('step-id')), 'category' => sanitize_key(rgget('category')), 'range' => $range, 'start_date' => $start_date, 'assignee' => $assignee_key, 'assignee_type' => $assignee_type, 'assignee_id' => $assignee_id, 'check_permissions' => true, 'base_url' => admin_url('admin.php?page=gravityflow-reports'));
        $args = array_merge($defaults, $args);
        if ($args['check_permissions'] && !GFAPI::current_user_can_any('gravityflow_reports')) {
            esc_html_e("You don't have permission to view this page", 'gravityflow');
            return;
        }
        $filter_vars['config'] = self::get_filter_config_vars();
        $filter_vars['selected'] = array('formId' => $args['form_id'], 'category' => $args['category'], 'stepId' => empty($args['step_id']) ? '' : $args['step_id'], 'assignee' => $args['assignee']);
        ?>
		<script>var gravityflowFilterVars = <?php 
        echo json_encode($filter_vars);
        ?>
;</script>

		<div id="gravityflow-reports-filter" style="margin-bottom:10px;">
		<form method="GET" action="<?php 
        echo esc_url($args['base_url']);
        ?>
">
			<input type="hidden" value="gravityflow-reports" name="page" />
			<?php 
        self::range_drop_down($args['range']);
        ?>
			<?php 
        self::form_drop_down($args['form_id']);
        ?>
			<?php 
        self::category_drop_down($args['category']);
        ?>
			<select id="gravityflow-reports-steps" style="display:none;" name="step-id"></select>
			<select id="gravityflow-reports-assignees" style="display:none;" name="assignee"></select>
			<input type="submit" value="<?php 
        esc_html_e('Filter', 'gravityflow');
        ?>
" class="button-secondary" />
		</form>
		</div>
		<?php 
        if (empty($args['form_id'])) {
            self::report_all_forms($args);
            return;
        }
        $form_id = $args['form_id'];
        if ($args['category'] == 'assignee') {
            if (empty($args['assignee_key'])) {
                self::report_form_by_assignee($form_id, $args);
            }
        } elseif ($args['category'] == 'step') {
            if (empty($args['step_id'])) {
                self::report_form_by_step($form_id, $args);
            } else {
                $step_id = $args['step_id'];
                if (empty($args['assignee_id'])) {
                    self::report_step_by_assignee($step_id, $args);
                } else {
                    $assignee_type = $args['assignee_type'];
                    $assignee_id = $args['assignee_id'];
                    self::report_assignee_by_month($assignee_type, $assignee_id, $args);
                }
            }
        } else {
            self::report_form_by_month($form_id, $args);
        }
    }
开发者ID:jakejackson1,项目名称:gravityflow,代码行数:79,代码来源:class-reports.php

示例5: ajax_download_export

 public function ajax_download_export()
 {
     if (!wp_verify_nonce(rgget('nonce'), 'gravityflow_download_export') || !GFAPI::current_user_can_any('gravityflow_status')) {
         $response['status'] = 'error';
         $response['message'] = __('Not authorized', 'gravityflow');
         $response_json = json_encode($response);
         echo $response_json;
         die;
     }
     $file_name = $_REQUEST['file_name'];
     $upload_dir = wp_upload_dir();
     $file_path = trailingslashit($upload_dir['basedir']) . $file_name . '.csv';
     $file = '';
     if (@file_exists($file_path)) {
         $file = @file_get_contents($file_path);
         @unlink($file_path);
     }
     nocache_headers();
     header('Content-Type: text/csv; charset=utf-8');
     header('Content-Disposition: attachment; filename=' . $file_name . '-' . date('m-d-Y') . '.csv');
     header('Expires: 0');
     echo $file;
     die;
 }
开发者ID:jakejackson1,项目名称:gravityflow,代码行数:24,代码来源:class-gravity-flow.php

示例6: entry_detail


//.........这里部分代码省略.........
            ?>
: <?php 
            esc_html_e($form['title']);
            ?>
</span></span>
			</h2>

			<div id="gf_form_toolbar">
				<ul id="gf_form_toolbar_links">

					<?php 
            $menu_items = gravity_flow()->get_toolbar_menu_items();
            echo GFForms::format_toolbar_menu_items($menu_items);
            ?>
				</ul>
			</div>

			<?php 
        }
        if ($check_view_entry_permissions) {
            // Check view permissions
            global $current_user;
            if ($entry['created_by'] != $current_user->ID) {
                $user_status = false;
                if ($current_step) {
                    $user_status = $current_step->get_user_status();
                    if (!$user_status) {
                        $user_roles = gravity_flow()->get_user_roles();
                        foreach ($user_roles as $user_role) {
                            $user_status = $current_step->get_role_status($user_role);
                        }
                    }
                }
                $full_access = GFAPI::current_user_can_any(array('gform_full_access', 'gravityflow_status_view_all'));
                if (!($user_status || $full_access)) {
                    $permission_denied_message = esc_attr__("You don't have permission to view this entry.", 'gravityflow');
                    $permission_denied_message = apply_filters('gravityflow_permission_denied_message_entry_detail', $permission_denied_message, $current_step);
                    echo $permission_denied_message;
                    return;
                }
            }
        }
        $url = remove_query_arg(array('gworkflow_token', 'new_status'));
        ?>
			<div class="gform_wrapper">
				<form method="post" id="entry_form" enctype='multipart/form-data' action="<?php 
        echo esc_url($url);
        ?>
">
					<?php 
        wp_nonce_field('gforms_save_entry', 'gforms_save_entry');
        ?>
					<div id="poststuff" class="metabox-holder has-right-sidebar">

						<div id="side-info-column" class="inner-sidebar">
							<?php 
        gravity_flow()->workflow_entry_detail_status_box($form, $entry, $current_step);
        if (is_user_logged_in() || $check_view_entry_permissions) {
            ?>

							<!-- begin print button -->
							<div class="detail-view-print">
								<a href="javascript:;"
								   onclick="var notes_qs = jQuery('#gform_print_notes').is(':checked') ? '&notes=1' : ''; var url='<?php 
            echo admin_url('admin-ajax.php');
            ?>
开发者ID:jakejackson1,项目名称:gravityflow,代码行数:67,代码来源:class-entry-detail.php

示例7: render


//.........这里部分代码省略.........
        sort($entry_ids);
        if (empty($entry_ids)) {
            die(esc_html__('Form Id and Lead Id are required parameters.', 'gravityflow'));
        }
        $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min';
        ?>

		<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
			"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
		<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
		<head>
			<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
			<meta name="keywords" content="" />
			<meta name="description" content="" />
			<meta name="MSSmartTagsPreventParsing" content="true" />
			<meta name="Robots" content="noindex, nofollow" />
			<meta http-equiv="Imagetoolbar" content="No" />
			<title>
				<?php 
        $entry_count = count($entry_ids);
        $title = $entry_count > 1 ? esc_html__('Bulk Print', 'gravityflow') : esc_html__('Entry # ', 'gravityflow') . $entry_ids[0];
        $title = apply_filters('gravityflow_page_title_print_entry', $title, $entry_count);
        echo esc_html($title);
        ?>
			</title>
			<link rel='stylesheet' href='<?php 
        echo GFCommon::get_base_url();
        ?>
/css/print<?php 
        echo $min;
        ?>
.css' type='text/css' />
			<link rel='stylesheet' href='<?php 
        echo gravity_flow()->get_base_url();
        ?>
/css/entry-detail<?php 
        echo $min;
        ?>
.css' type='text/css' />
			<?php 
        $styles = apply_filters('gravityflow_print_styles', false);
        if (!empty($styles)) {
            wp_print_styles($styles);
        }
        ?>
		</head>
		<body>

		<div id="view-container">
			<?php 
        require_once GFCommon::get_base_path() . '/entry_detail.php';
        foreach ($entry_ids as $entry_id) {
            $entry = RGFormsModel::get_lead($entry_id);
            $form = GFAPI::get_form($entry['form_id']);
            do_action('gravityflow_print_entry_header', $form, $entry);
            // Separate each entry inside a form element so radio buttons don't get treated as a single group across multiple entries.
            echo '<form>';
            $gravity_flow = gravity_flow();
            $current_step = $gravity_flow->get_current_step($form, $entry);
            // Check view permissions
            global $current_user;
            if ($entry['created_by'] != $current_user->ID) {
                $user_status = false;
                if ($current_step) {
                    $user_status = $current_step->get_user_status();
                    gravity_flow()->log_debug(__METHOD__ . '() - user status = ' . $user_status);
                    if (!$user_status) {
                        $user_roles = gravity_flow()->get_user_roles();
                        foreach ($user_roles as $user_role) {
                            $user_status = $current_step->get_role_status($user_role);
                            if ($user_status) {
                                break;
                            }
                        }
                    }
                }
                $full_access = GFAPI::current_user_can_any(array('gform_full_access', 'gravityflow_status_view_all'));
                if (!($user_status || $full_access)) {
                    esc_attr_e("You don't have permission to view this entry.", 'gravityflow');
                    continue;
                }
            }
            require_once $gravity_flow->get_base_path() . '/includes/pages/class-entry-detail.php';
            Gravity_Flow_Entry_Detail::entry_detail_grid($form, $entry, false, array(), $current_step);
            echo '</form>';
            if (rgget('notes')) {
                Gravity_Flow_Entry_Detail::timeline($entry, $form);
            }
            // output entry divider/page break
            if (array_search($entry_id, $entry_ids) < count($entry_ids) - 1) {
                echo '<div class="print-hr ' . $page_break . '"></div>';
            }
            do_action('gravityflow_print_entry_footer', $form, $entry);
        }
        ?>
		</div>
		</body>
		</html>
		<?php 
    }
开发者ID:jakejackson1,项目名称:gravityflow,代码行数:101,代码来源:class-print-entries.php


注:本文中的GFAPI::current_user_can_any方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。