diff options
author | alecpl <alec@alec.pl> | 2012-04-05 07:51:20 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2012-04-05 07:51:20 +0000 |
commit | 8d8f7a7b8e7ea8464aa807611b3db320fab12156 (patch) | |
tree | e121b8aa834c93696090a469391b2fb7d386ce2f | |
parent | 07f4fff8aa223fa5efb0ed73bd5889706034d1fd (diff) |
- Larry skin support
-rw-r--r-- | plugins/managesieve/Changelog | 1 | ||||
-rw-r--r-- | plugins/managesieve/managesieve.js | 5 | ||||
-rw-r--r-- | plugins/managesieve/managesieve.php | 5 | ||||
-rw-r--r-- | plugins/managesieve/skins/default/managesieve.css | 5 | ||||
-rw-r--r-- | plugins/managesieve/skins/default/managesieve_mail.css | 1 | ||||
-rw-r--r-- | plugins/managesieve/skins/larry/images/add.png | bin | 0 -> 280 bytes | |||
-rw-r--r-- | plugins/managesieve/skins/larry/images/del.png | bin | 0 -> 247 bytes | |||
-rw-r--r-- | plugins/managesieve/skins/larry/images/down_small.gif | bin | 0 -> 106 bytes | |||
-rw-r--r-- | plugins/managesieve/skins/larry/images/up_small.gif | bin | 0 -> 106 bytes | |||
-rw-r--r-- | plugins/managesieve/skins/larry/managesieve.css | 319 | ||||
-rw-r--r-- | plugins/managesieve/skins/larry/managesieve_mail.css | 62 | ||||
-rw-r--r-- | plugins/managesieve/skins/larry/templates/filteredit.html | 33 | ||||
-rw-r--r-- | plugins/managesieve/skins/larry/templates/managesieve.html | 73 | ||||
-rw-r--r-- | plugins/managesieve/skins/larry/templates/setedit.html | 23 |
14 files changed, 517 insertions, 10 deletions
diff --git a/plugins/managesieve/Changelog b/plugins/managesieve/Changelog index dc0e19591..1e6011064 100644 --- a/plugins/managesieve/Changelog +++ b/plugins/managesieve/Changelog @@ -1,5 +1,6 @@ - Fixed filter popup width (for non-english localizations) - Fixed tokenizer infinite loop on invalid script content +- Larry skin support * version 5.0 [2012-01-05] ----------------------------------------------------------- diff --git a/plugins/managesieve/managesieve.js b/plugins/managesieve/managesieve.js index be65c448e..61883f6d2 100644 --- a/plugins/managesieve/managesieve.js +++ b/plugins/managesieve/managesieve.js @@ -674,7 +674,8 @@ rcube_webmail.prototype.managesieve_tip_register = function(tips) function(e) { var offset = $(this).offset(), left = offset.left, - top = offset.top - 12; + top = offset.top - 12, + minwidth = $(this).width(); if (framed) { offset = $((rcmail.env.task == 'mail' ? '#sievefilterform > iframe' : '#filter-box'), parent.document).offset(); @@ -685,7 +686,7 @@ rcube_webmail.prototype.managesieve_tip_register = function(tips) tip.html(e.data.str) top -= tip.height(); - tip.css({left: left, top: top}).show(); + tip.css({left: left, top: top, minWidth: (minwidth-2) + 'px'}).show(); }) .bind('mouseleave', function(e) { tip.hide(); }); } diff --git a/plugins/managesieve/managesieve.php b/plugins/managesieve/managesieve.php index 2ef57123a..c58dc8cab 100644 --- a/plugins/managesieve/managesieve.php +++ b/plugins/managesieve/managesieve.php @@ -128,8 +128,9 @@ class managesieve extends rcube_plugin 'command' => 'managesieve-create', 'label' => 'managesieve.filtercreate', 'type' => 'link', - 'classact' => 'filterlink active', - 'class' => 'filterlink', + 'classact' => 'icon filterlink active', + 'class' => 'icon filterlink', + 'innerclass' => 'icon filterlink', ))), 'messagemenu'); // register some labels/messages diff --git a/plugins/managesieve/skins/default/managesieve.css b/plugins/managesieve/skins/default/managesieve.css index 60f632504..9527b44e9 100644 --- a/plugins/managesieve/skins/default/managesieve.css +++ b/plugins/managesieve/skins/default/managesieve.css @@ -272,11 +272,6 @@ span.sieve.error color: red; } -#managesieve-tip -{ - width: 200px; -} - a.button.add { background: url(images/add.png) no-repeat; diff --git a/plugins/managesieve/skins/default/managesieve_mail.css b/plugins/managesieve/skins/default/managesieve_mail.css index 7fefaedf1..87a11cc92 100644 --- a/plugins/managesieve/skins/default/managesieve_mail.css +++ b/plugins/managesieve/skins/default/managesieve_mail.css @@ -53,7 +53,6 @@ #managesieve-tip { - width: 200px; z-index: 100000; } diff --git a/plugins/managesieve/skins/larry/images/add.png b/plugins/managesieve/skins/larry/images/add.png Binary files differnew file mode 100644 index 000000000..97a6422fb --- /dev/null +++ b/plugins/managesieve/skins/larry/images/add.png diff --git a/plugins/managesieve/skins/larry/images/del.png b/plugins/managesieve/skins/larry/images/del.png Binary files differnew file mode 100644 index 000000000..518905bc4 --- /dev/null +++ b/plugins/managesieve/skins/larry/images/del.png diff --git a/plugins/managesieve/skins/larry/images/down_small.gif b/plugins/managesieve/skins/larry/images/down_small.gif Binary files differnew file mode 100644 index 000000000..f865893f4 --- /dev/null +++ b/plugins/managesieve/skins/larry/images/down_small.gif diff --git a/plugins/managesieve/skins/larry/images/up_small.gif b/plugins/managesieve/skins/larry/images/up_small.gif Binary files differnew file mode 100644 index 000000000..40deb891f --- /dev/null +++ b/plugins/managesieve/skins/larry/images/up_small.gif diff --git a/plugins/managesieve/skins/larry/managesieve.css b/plugins/managesieve/skins/larry/managesieve.css new file mode 100644 index 000000000..f252bd7d6 --- /dev/null +++ b/plugins/managesieve/skins/larry/managesieve.css @@ -0,0 +1,319 @@ +#filtersetslistbox +{ + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 150px; +} + +#filtersscreen +{ + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 162px; +} + +#filterslistbox +{ + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: 180px; +} + +#filter-box +{ + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 192px; +} + +#filter-frame +{ + border-radius: 4px; +} + +#filterslist, +#filtersetslist +{ + width: 100%; + table-layout: fixed; +} + +#filterslist tbody td, +#filtersetslist tbody td +{ + width: 100%; + overflow: hidden; + text-overflow: ellipsis; +} + +#filterslist tbody tr.disabled td, +#filtersetslist tbody tr.disabled td +{ + color: #87A3AA; +} + +#filtersetslist tbody td +{ + font-weight: bold; +} + +#filterslist tbody tr.filtermoveup td +{ + border-top: 2px dotted #555; + padding-top: 5px; +} + +#filterslist tbody tr.filtermovedown td +{ + border-bottom: 2px dotted #555; + padding-bottom: 4px; +} + +body.iframe +{ + min-width: 620px; +} + +#filter-form +{ + min-width: 550px; + white-space: nowrap; + padding: 20px 10px 10px 10px; +} + +legend, label +{ + color: #666666; +} + +#rules, #actions +{ + margin-top: 5px; + padding: 0; + border-collapse: collapse; +} + +div.rulerow, div.actionrow +{ + width: auto; + padding: 2px; + white-space: nowrap; + border: 1px solid white; +} + +div.rulerow:hover, div.actionrow:hover +{ + padding: 2px; + white-space: nowrap; + background-color: #D9ECF4; + border: 1px solid #BBD3DA; + border-radius: 4px; +} + +div.rulerow table, div.actionrow table +{ + padding: 0px; + min-width: 600px; +} + +td +{ + vertical-align: top; +} + +td.advbutton +{ + width: 1%; +} + +td.advbutton a +{ + display: block; + padding-top: 14px; + height: 6px; + width: 12px; + text-decoration: none; +} + +td.advbutton a.show +{ + background: url(images/down_small.gif) center no-repeat; +} + +td.advbutton a.hide +{ + background: url(images/up_small.gif) center no-repeat; +} + +td.rowbuttons +{ + text-align: right; + white-space: nowrap; + width: 1%; +} + +td.rowactions +{ + white-space: nowrap; + width: 1%; + padding-top: 2px; +} + +td.rowtargets +{ + white-space: nowrap; + width: 98%; + padding-left: 3px; + padding-top: 2px; +} + +td.rowtargets div.adv +{ + padding-top: 3px; +} + +input.disabled, input.disabled:hover +{ + color: #999999; +} + +input.error, textarea.error +{ + background-color: #FFFFC4; +} + +input.box, +input.radio +{ + border: 0; + margin-top: 0; +} + +select.operator_selector +{ + width: 200px; +} + +td.rowtargets span, +span.label +{ + color: #666666; + font-size: 10px; + white-space: nowrap; +} + +#footer +{ + padding-top: 5px; + width: 100%; +} + +#footer .footerleft +{ + padding-left: 2px; + white-space: nowrap; + float: left; +} + +#footer .footerright +{ + padding-right: 2px; + white-space: nowrap; + text-align: right; + float: right; +} + +.itemlist +{ + line-height: 25px; +} + +.itemlist input +{ + vertical-align: middle; +} + +span.sieve.error +{ + color: red; + white-space: nowrap; +} + +#managesieve-tip +{ + padding: 3px; + background-color: #eee; +} + +a.button +{ + margin: 0; + padding: 0; +} + +a.button.add +{ + background: url(images/add.png) no-repeat; + width: 30px; + height: 20px; + margin-right: 4px; + display: inline-block; +} + +a.button.del +{ + background: url(images/del.png) no-repeat; + width: 30px; + height: 20px; + display: inline-block; +} + +a.button.disabled +{ + opacity: 0.35; + filter: alpha(opacity=35); + cursor: default; +} + +#filter-form select, +#filter-form input, +#filter-form textarea +{ + font-size: 11px; + padding: 1px; +} + +/* revert larry style button */ +#filter-form input.button +{ + padding-bottom: 2px; + padding-left: 5px; + padding-right: 5px; + padding-top: 2px; +} + +fieldset +{ + border-radius: 4px; +} + +/* fixes for popup window */ + +body.iframe.mail +{ + margin: 0; + padding: 0; +} + +body.iframe.mail #filter-form +{ + padding: 10px 5px 5px 5px; +} diff --git a/plugins/managesieve/skins/larry/managesieve_mail.css b/plugins/managesieve/skins/larry/managesieve_mail.css new file mode 100644 index 000000000..ea417bdb7 --- /dev/null +++ b/plugins/managesieve/skins/larry/managesieve_mail.css @@ -0,0 +1,62 @@ +ul.toolbarmenu li span.filterlink { + background-position: 0 -1924px; +} + +#sievefilterform { + top: 0; + bottom: 0; + left: 0; + right: 0; + padding: 0; + overflow: hidden; +} + +#sievefilterform iframe { + top: 0; + bottom: 0; + left: 0; + right: 0; + width: 100%; + min-height: 100%; /* Chrome 14 bug */ + border: 0; + padding: 0; + margin: 0; +} + +#sievefilterform ul { + list-style: none; + padding: 0; + margin: 0; + margin-top: 5px; +} + +#sievefilterform fieldset { + margin: 5px; + border-radius: 4px; +} + +#sievefilterform ul li { + margin-bottom: 5px; + white-space: nowrap; +} + +#sievefilterform ul li input { + margin-right: 5px; +} + +#sievefilterform label { + font-weight: bold; +} + +#managesieve-tip +{ + z-index: 100000; + padding: 3px; + background-color: #eee; +} + +span.sieve.error +{ + color: red; + white-space: nowrap; +} diff --git a/plugins/managesieve/skins/larry/templates/filteredit.html b/plugins/managesieve/skins/larry/templates/filteredit.html new file mode 100644 index 000000000..424bdbcd3 --- /dev/null +++ b/plugins/managesieve/skins/larry/templates/filteredit.html @@ -0,0 +1,33 @@ +<roundcube:object name="doctype" value="html5" /> +<html> +<head> +<title><roundcube:object name="pagetitle" /></title> +<roundcube:include file="/includes/links.html" /> +<link rel="stylesheet" type="text/css" href="/this/managesieve.css" /> +</head> +<body class="iframe<roundcube:exp expression="env:task != 'mail' ? '' : ' mail'" />"> + +<roundcube:if condition="env:task != 'mail'" /> +<div id="filter-title" class="boxtitle"><roundcube:label name="managesieve.filterdef" /></div> +<roundcube:endif /> + +<div id="filter-form" class="boxcontent"> +<roundcube:object name="filterform" /> + +<roundcube:if condition="env:task != 'mail'" /> +<div id="footer"> +<div class="footerleft"> +<roundcube:button command="plugin.managesieve-save" type="input" class="button mainaction" label="save" /> +</div> +<div class="footerright"> +<label for="disabled"><roundcube:label name="managesieve.filterdisabled" /></label> +<input type="checkbox" id="disabled" name="_disabled" value="1" /> +</div> +</div> +<roundcube:endif /> + +</form> +</div> + +</body> +</html> diff --git a/plugins/managesieve/skins/larry/templates/managesieve.html b/plugins/managesieve/skins/larry/templates/managesieve.html new file mode 100644 index 000000000..740b41658 --- /dev/null +++ b/plugins/managesieve/skins/larry/templates/managesieve.html @@ -0,0 +1,73 @@ +<roundcube:object name="doctype" value="html5" /> +<html> +<head> +<title><roundcube:object name="pagetitle" /></title> +<roundcube:include file="/includes/links.html" /> +<link rel="stylesheet" type="text/css" href="/this/managesieve.css" /> +</head> +<body class="noscroll"> + +<roundcube:include file="/includes/header.html" /> + +<div id="mainscreen" class="offset"> + +<roundcube:include file="/includes/settingstabs.html" /> + +<div id="settings-right"> + +<div id="filtersetslistbox" class="uibox listbox"> +<h2 class="boxtitle"><roundcube:label name="managesieve.filtersets" /></h2> +<div class="scroller withfooter"> + <roundcube:object name="filtersetslist" id="filtersetslist" class="listing" cellspacing="0" summary="Filters list" type="list" noheader="true" /> +</div> +<div class="boxfooter"> + <roundcube:button command="plugin.managesieve-setadd" type="link" title="managesieve.filtersetadd" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="filtersetmenulink" id="filtersetmenulink" type="link" title="moreactions" class="listbutton groupactions" onclick="UI.show_popup('filtersetmenu');return false" innerClass="inner" content="⚙" /> +</div> +</div> + +<div id="filtersscreen"> +<div id="filterslistbox" class="uibox listbox"> +<h2 class="boxtitle"><roundcube:label name="managesieve.filters" /></h2> +<div class="scroller withfooter"> + <roundcube:object name="filterslist" id="filterslist" class="listing" cellspacing="0" summary="Filters list" noheader="true" /> +</div> +<div class="boxfooter"> + <roundcube:button command="plugin.managesieve-add" type="link" title="managesieve.filteradd" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="filtermenulink" id="filtermenulink" type="link" title="moreactions" class="listbutton groupactions" onclick="UI.show_popup('filtermenu');return false" innerClass="inner" content="⚙" /> +</div> +</div> + +<div id="filter-box" class="uibox"> + <roundcube:object name="filterframe" id="filter-frame" style="width:100%; height:96%" frameborder="0" src="/watermark.html" /> + <roundcube:object name="message" id="message" class="statusbar" /> +</div> + +</div> + +<div id="filtersetmenu" class="popupmenu"> + <ul class="toolbarmenu"> + <li><roundcube:button command="plugin.managesieve-setact" label="managesieve.enable" classAct="active" /></li> + <li><roundcube:button command="plugin.managesieve-setdel" label="delete" classAct="active" /></li> + <li class="separator_above"><roundcube:button command="plugin.managesieve-setget" label="download" classAct="active" /></li> + <roundcube:container name="filtersetoptions" id="filtersetmenu" /> + </ul> +</div> + +<div id="filtermenu" class="popupmenu"> + <ul class="toolbarmenu"> + <li><roundcube:button command="plugin.managesieve-act" label="managesieve.enable" classAct="active" /></li> + <li><roundcube:button command="plugin.managesieve-del" label="delete" classAct="active" /></li> + <roundcube:container name="filteroptions" id="filtermenu" /> + </ul> +</div> + +<roundcube:include file="/includes/footer.html" /> + +<script type="text/javascript"> + new rcube_splitter({ id:'managesievesplitter1', p1:'#filtersetslistbox', p2:'#filtersscreen', + orientation:'v', relative:true, start:156, min:120, size:12 }).init(); + new rcube_splitter({ id:'managesievesplitter2', p1:'#filterslistbox', p2:'#filter-box', + orientation:'v', relative:true, start:186, min:120, size:12 }).init(); +</script> + +</body> +</html> diff --git a/plugins/managesieve/skins/larry/templates/setedit.html b/plugins/managesieve/skins/larry/templates/setedit.html new file mode 100644 index 000000000..71de8ddf8 --- /dev/null +++ b/plugins/managesieve/skins/larry/templates/setedit.html @@ -0,0 +1,23 @@ +<roundcube:object name="doctype" value="html5" /> +<html> +<head> +<title><roundcube:object name="pagetitle" /></title> +<roundcube:include file="/includes/links.html" /> +<link rel="stylesheet" type="text/css" href="/this/managesieve.css" /> +</head> +<body class="iframe"> + +<div id="filter-title" class="boxtitle"><roundcube:label name="managesieve.newfilterset" /></div> + +<div id="filter-form" class="boxcontent"> +<roundcube:object name="filtersetform" /> + +<p> +<roundcube:button command="plugin.managesieve-save" type="input" class="button mainaction" label="save" /> +</p> + +</form> +</div> + +</body> +</html> |