From 92701e222e199c68f018a7a4017562139b0f2345 Mon Sep 17 00:00:00 2001
From: svaj <svaj@1813622.no-reply.drupal.org>
Date: Mon, 15 Apr 2013 12:54:19 -0700
Subject: [PATCH] Providing views plugin for default argument for logged in
 user's role IDs.

---
 includes/rolereference.views.inc                   |    7 ++++++
 ..._views_plugin_argument_default_current_user.inc |   21 ++++++++++++++++++++
 rolereference.info                                 |    5 ++++
 3 files changed, 33 insertions(+), 0 deletions(-)
 create mode 100644 includes/rolereference_views_plugin_argument_default_current_user.inc

diff --git a/includes/rolereference.views.inc b/includes/rolereference.views.inc
index b0e13b9..9980951 100644
--- a/includes/rolereference.views.inc
+++ b/includes/rolereference.views.inc
@@ -41,6 +41,13 @@ function rolereference_views_plugins() {
         'even empty' => TRUE,
       ),
     ),
+    'argument default' => array(
+      'rolereference_current_roles' => array(
+        'title' => t('User Roles IDs from logged in user'),
+        'path' => drupal_get_path('module', 'rolereference') . '/includes',
+        'handler' => 'rolereference_views_plugin_argument_default_current_user',
+      ),
+    ),
   );
   return $plugins;
 }
\ No newline at end of file
diff --git a/includes/rolereference_views_plugin_argument_default_current_user.inc b/includes/rolereference_views_plugin_argument_default_current_user.inc
new file mode 100644
index 0000000..226cd13
--- /dev/null
+++ b/includes/rolereference_views_plugin_argument_default_current_user.inc
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * @file
+ * Contains the current user argument default plugin.
+ */
+
+/**
+ * Default argument plugin to extract the global $user
+ *
+ * This plugin actually has no options so it does not need to do a great deal.
+ */
+class rolereference_views_plugin_argument_default_current_user extends views_plugin_argument_default {
+  function get_argument() {
+    global $user;
+    $rids = array_keys($user->roles);
+    return implode("+",$rids);
+  }
+
+}
+
diff --git a/rolereference.info b/rolereference.info
index d621e98..8af901a 100755
--- a/rolereference.info
+++ b/rolereference.info
@@ -5,3 +5,8 @@ package = Fields
 core = 7.x
 dependencies[] = field
 dependencies[] = options
+
+; Views plugins
+files[] = includes/rolereference_views_plugin_argument_default_current_user.inc
+files[] = includes/rolereference_views_plugin_display.inc
+files[] = includes/rolereference_views_plugin_style.inc
\ No newline at end of file
-- 
1.7.7.5 (Apple Git-26)

