From 9c41ba3c9ebbb14d01abe961c420f71f9463e61a Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Thu, 19 Sep 2013 11:56:14 -0400
Subject: [PATCH] Allow sysadmins to define static responses which are immutable for the user

---
 program/include/rcmail.php |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/program/include/rcmail.php b/program/include/rcmail.php
index f58235c..4a07e0b 100644
--- a/program/include/rcmail.php
+++ b/program/include/rcmail.php
@@ -351,11 +351,24 @@
    * These are stored in local config and user preferences.
    *
    * @param boolean True to sort the list alphabetically
+   * @param boolean True if only this user's responses shall be listed
    * @return array List of the current user's stored responses
    */
-  public function get_compose_responses($sorted = false)
+  public function get_compose_responses($sorted = false, $user_only = false)
   {
     $responses = array();
+
+    if (!$user_only) {
+      foreach ($this->config->get('compose_responses_static', array()) as $response) {
+        if (empty($response['key']))
+          $response['key'] = substr(md5($response['name']), 0, 16);
+        $response['static'] = true;
+        $response['class'] = 'readonly';
+        $k = $sorted ? '0000-' . strtolower($response['name']) : $response['key'];
+        $responses[$k] = $response;
+      }
+    }
+
     foreach ($this->config->get('compose_responses', array()) as $response) {
       if (empty($response['key']))
         $response['key'] = substr(md5($response['name']), 0, 16);

--
Gitblit v1.9.1