From 4f1b7a447dab993dfd3a3b1b6d4091b9d32ce24b Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Fri, 23 Dec 2011 13:02:47 -0500
Subject: [PATCH] Add generic template for plugins

---
 skins/larry/settings.css          |    1 +
 skins/larry/templates/plugin.html |   29 +++++++++++++++++++++++++++++
 skins/larry/styles.css            |   17 ++++++++++++++++-
 skins/larry/ui.js                 |   12 +++++++-----
 4 files changed, 53 insertions(+), 6 deletions(-)

diff --git a/skins/larry/settings.css b/skins/larry/settings.css
index 105b350..b98be70 100644
--- a/skins/larry/settings.css
+++ b/skins/larry/settings.css
@@ -20,6 +20,7 @@
 	bottom: 0;
 }
 
+#pluginbody,
 #settings-right {
 	position: absolute;
 	top: 0;
diff --git a/skins/larry/styles.css b/skins/larry/styles.css
index 875125b..428cfaa 100644
--- a/skins/larry/styles.css
+++ b/skins/larry/styles.css
@@ -106,7 +106,9 @@
 }
 
 .formbuttons input.button:hover,
-.formbuttons input.button:focus {
+.formbuttons input.button:focus,
+input.button.mainaction:hover,
+input.button.mainaction:focus {
 	color: #f2f2f2;
 	border-color: #465864;
 	box-shadow: 0 0 5px 2px rgba(71,135,177, 0.6), inset 0 1px 0 0 #888;
@@ -126,6 +128,7 @@
 
 input.button.mainaction {
 	color: #ededed;
+	text-shadow: 0px 1px 1px #333;
 	border-color: #1f262c;
 	background: #505050;
 	background: -moz-linear-gradient(top, #505050 0%, #2a2e31 100%);
@@ -133,6 +136,10 @@
 	background: -o-linear-gradient(top, #505050 0%, #2a2e31 100%);
 	background: -ms-linear-gradient(top, #505050 0%, #2a2e31 100%);
 	background: linear-gradient(top, #505050 0%, #2a2e31 100%);
+	box-shadow: inset 0 1px 0 0 #777;
+	-moz-box-shadow: inset 0 1px 0 0 #777;
+	-webkit-box-shadow: inset 0 1px 0 0 #777;
+	-o-box-shadow: inset 0 1px 0 0 #777;
 }
 
 input.button.mainaction:active {
@@ -1036,6 +1043,14 @@
 	width: auto;
 }
 
+#pluginbody {
+	position: absolute;
+	top: 0;
+	left: 0;
+	right: 0;
+	bottom: 0;
+}
+
 
 /*** Login form ***/
 
diff --git a/skins/larry/templates/plugin.html b/skins/larry/templates/plugin.html
new file mode 100644
index 0000000..3a589ff
--- /dev/null
+++ b/skins/larry/templates/plugin.html
@@ -0,0 +1,29 @@
+<roundcube:object name="doctype" value="html5" />
+<html>
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+</head>
+<body>
+
+<roundcube:include file="/includes/header.html" />
+
+<div id="mainscreen" class="offset">
+
+<roundcube:if condition="env:task == 'settings'" />
+	<roundcube:include file="/includes/settingstabs.html" />
+<roundcube:endif />
+
+<div id="pluginbody" class="uibox contentbox">
+<roundcube:object name="plugin.body" />
+<roundcube:object name="message" id="message" class="statusbar" />
+</div>
+
+</div>
+
+<roundcube:object name="plugin.footer" />
+
+<roundcube:include file="/includes/footer.html" />
+
+</body>
+</html>
diff --git a/skins/larry/ui.js b/skins/larry/ui.js
index 7033ebf..7c0b035 100644
--- a/skins/larry/ui.js
+++ b/skins/larry/ui.js
@@ -104,12 +104,14 @@
       }
     }
     else if (rcmail.env.task == 'settings') {
-      var tab = '#settingstabpreferences';
-      if (rcmail.env.action)
-        tab = '#settingstab' + (rcmail.env.action.indexOf('identity')>0 ? 'identities' : rcmail.env.action.replace(/\./g, ''));
+      rcmail.addEventListener('init', function(){
+        var tab = '#settingstabpreferences';
+        if (rcmail.env.action)
+          tab = '#settingstab' + (rcmail.env.action.indexOf('identity')>0 ? 'identities' : rcmail.env.action.replace(/\./g, ''));
 
-      $(tab).addClass('selected')
-        .children().first().removeAttr('onclick').click(function() { return false; });
+        $(tab).addClass('selected')
+          .children().first().removeAttr('onclick').click(function() { return false; });
+      });
 
       if (rcmail.env.action == 'folders') {
         new rcube_splitter({ id:'folderviewsplitter', p1:'#folderslist', p2:'#folder-details',

--
Gitblit v1.9.1