From 0062becea70392c4a21f3ef8367f65e93d2c1f67 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Wed, 29 Aug 2012 02:34:31 -0400
Subject: [PATCH] Merge branch 'master' of github.com:roundcube/roundcubemail

---
 plugins/acl/skins/larry/acl.css              |    4 ++++
 CHANGELOG                                    |    1 +
 plugins/acl/skins/larry/templates/table.html |    8 ++++----
 program/include/rcube_output_html.php        |   31 ++++++++++++++++++++++++++++++-
 plugins/acl/acl.php                          |    3 +--
 5 files changed, 40 insertions(+), 7 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index dcaf3f8..cddfc96 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,7 @@
 ===========================
 
 - Fix quota capability detection so it can be overwritten by a plugin (#1488655)
+- Added template object 'frame'
 - Fix identity selection on reply (#1488101)
 - Add option to enable HTML editor on forwarding (#1488517)
 - Add option to not include original message on reply, rename option top_posting to reply_mode (#1485149)
diff --git a/plugins/acl/acl.php b/plugins/acl/acl.php
index 1442504..1952dad 100644
--- a/plugins/acl/acl.php
+++ b/plugins/acl/acl.php
@@ -233,8 +233,7 @@
 
         // Advanced rights
         $attrib['id'] = 'advancedrights';
-        foreach ($supported as $val) {
-            $id = "acl$val";
+        foreach ($supported as $idx => $val) {
             $ul .= html::tag('li', null,
                 $input->show('', array(
                     'name' => "acl[$val]", 'value' => $val, 'id' => $id))
diff --git a/plugins/acl/skins/larry/acl.css b/plugins/acl/skins/larry/acl.css
index 5e2448e..e392a26 100644
--- a/plugins/acl/skins/larry/acl.css
+++ b/plugins/acl/skins/larry/acl.css
@@ -123,3 +123,7 @@
 {
   margin-left: 0.5em;
 }
+
+ul.toolbarmenu li span.delete {
+  background-position: 0 -1509px;
+}
diff --git a/plugins/acl/skins/larry/templates/table.html b/plugins/acl/skins/larry/templates/table.html
index 7f99f6f..3cf8292 100644
--- a/plugins/acl/skins/larry/templates/table.html
+++ b/plugins/acl/skins/larry/templates/table.html
@@ -3,14 +3,14 @@
     <roundcube:object name="acltable" id="acltable" class="records-table" />
 </div>
 <div id="acllist-footer" class="boxfooter">
-    <roundcube:button command="acl-create" id="aclcreatelink" type="link" title="acl.newuser" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="aclmenulink" id="aclmenulink" type="link" title="acl.actions" class="listbutton groupactions"onclick="UI.show_popup('aclmenu');return false" innerClass="inner" content="&#9881;" />
+    <roundcube:button command="acl-create" id="aclcreatelink" type="link" title="acl.newuser" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="aclmenulink" id="aclmenulink" type="link" title="acl.actions" class="listbutton groupactions"onclick="UI.show_popup('aclmenu', undefined, {above:1});return false" innerClass="inner" content="&#9881;" />
 </div>
 </div>
 
 <div id="aclmenu" class="popupmenu">
-    <ul class="toolbarmenu selectable">
-        <li><roundcube:button command="acl-edit" label="edit" classAct="active" /></li>
-        <li><roundcube:button command="acl-delete" label="delete" classAct="active" /></li>
+    <ul class="toolbarmenu selectable iconized">
+        <li><roundcube:button command="acl-edit" label="edit" class="icon" classAct="icon active" innerclass="icon edit" /></li>
+        <li><roundcube:button command="acl-delete" label="delete" class="icon" classAct="icon active" innerclass="icon delete" /></li>
         <roundcube:if condition="!in_array('acl_advanced_mode', (array)config:dont_override)" />
             <li><roundcube:button name="acl-switch" id="acl-switch" label="acl.advanced" onclick="rcmail.command('acl-mode-switch')" class="active" /></li>
         <roundcube:endif />
diff --git a/program/include/rcube_output_html.php b/program/include/rcube_output_html.php
index a071ee3..9600021 100644
--- a/program/include/rcube_output_html.php
+++ b/program/include/rcube_output_html.php
@@ -400,7 +400,7 @@
                 'line' => __LINE__,
                 'file' => __FILE__,
                 'message' => 'Error loading template for '.$realname
-                ), true, true);
+                ), true, $write);
             return false;
         }
 
@@ -696,6 +696,11 @@
                 if ($attrib['name'] || $attrib['command']) {
                     return $this->button($attrib);
                 }
+                break;
+
+            // frame
+            case 'frame':
+                return $this->frame($attrib);
                 break;
 
             // show a label
@@ -1275,6 +1280,30 @@
     }
 
 
+    /**
+     * Returns iframe object, registers some related env variables
+     *
+     * @param array $attrib HTML attributes
+     *
+     * @return string IFRAME element
+     */
+    public function frame($attrib)
+    {
+        if (!$attrib['id']) {
+            $attrib['id'] = 'rcmframe';
+        }
+
+        if (!$attrib['name']) {
+            $attrib['name'] = $attrib['id'];
+        }
+
+        $this->set_env('contentframe', $attrib['name']);
+        $this->set_env('blankpage', $attrib['src'] ? $this->abs_url($attrib['src']) : 'program/resources/blank.gif');
+
+        return html::iframe($attrib);
+    }
+
+
     /*  ************* common functions delivering gui objects **************  */
 
 

--
Gitblit v1.9.1