From a3644638aaf0418598196a870204e0b632a4c8ad Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Fri, 17 Apr 2015 06:28:40 -0400
Subject: [PATCH] Allow preference sections to define CSS class names

---
 plugins/autologon/autologon.php |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/plugins/autologon/autologon.php b/plugins/autologon/autologon.php
new file mode 100644
index 0000000..9c7d5b6
--- /dev/null
+++ b/plugins/autologon/autologon.php
@@ -0,0 +1,48 @@
+<?php
+
+/**
+ * Sample plugin to try out some hooks.
+ * This performs an automatic login if accessed from localhost
+ *
+ * @license GNU GPLv3+
+ * @author Thomas Bruederli
+ */
+class autologon extends rcube_plugin
+{
+  public $task = 'login';
+
+  function init()
+  {
+    $this->add_hook('startup', array($this, 'startup'));
+    $this->add_hook('authenticate', array($this, 'authenticate'));
+  }
+
+  function startup($args)
+  {
+    // change action to login
+    if (empty($_SESSION['user_id']) && !empty($_GET['_autologin']) && $this->is_localhost())
+      $args['action'] = 'login';
+
+    return $args;
+  }
+
+  function authenticate($args)
+  {
+    if (!empty($_GET['_autologin']) && $this->is_localhost()) {
+      $args['user'] = 'me';
+      $args['pass'] = '******';
+      $args['host'] = 'localhost';
+      $args['cookiecheck'] = false;
+      $args['valid'] = true;
+    }
+
+    return $args;
+  }
+
+  function is_localhost()
+  {
+    return $_SERVER['REMOTE_ADDR'] == '::1' || $_SERVER['REMOTE_ADDR'] == '127.0.0.1';
+  }
+
+}
+

--
Gitblit v1.9.1