--- /dev/null
+<?php
+
+/**
+ * @file
+ * {{ plugin_name }} access plugin.
+ */
+
+/**
+ * Plugin definition.
+ */
+$plugin = array(
+ 'single' => TRUE,
+ 'title' => t('{{ plugin_name }}'),
+ 'description' => t('{{ description }}'),
+{% if context == 'Node' or context == 'User' %}
+ 'required context' => new ctools_context_required(t('{{ context }}'), '{{ context | lower }}'),
+{% elseif context == 'Term' %}
+ 'required context' => new ctools_context_required(t('{{ context }}'), array('term', 'taxonomy_term')),
+{% endif %}
+ 'category' => t('{{ category }}'),
+ 'callback' => '{{ machine_name }}_{{ plugin_machine_name }}_access_check',
+ 'summary' => '{{ machine_name }}_{{ plugin_machine_name }}_access_summary',
+);
+
+/**
+ * Access callback.
+ */
+function {{ machine_name }}_{{ plugin_machine_name }}_access_check($conf, $context) {
+{% if context != '-' %}
+
+ if (empty($context->data)) {
+ return;
+ }
+{% endif %}
+
+{% if context == 'Node' or context == 'Term' %}
+ ${{ context | lower }} = clone $context->data;
+
+{% elseif context == 'User' %}
+{# Use $account variable avoid confusion with the global $user object #}
+ $account = clone $context->data;
+
+{% endif %}
+ // @TODO: Check access here.
+ return TRUE;
+}
+
+/**
+ * Summary callback.
+ */
+function {{ machine_name }}_{{ plugin_machine_name }}_access_summary($conf, $context) {
+ return t('Summary placeholder');
+}