From a53d87f714a3d4923dfb46e25d9d61aae7575f80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Tak=C3=A1cs?= <93127072+PeterTakacs300@users.noreply.github.com> Date: Thu, 2 Mar 2023 13:48:17 +0100 Subject: [PATCH] IDEMPIERE-5563 - Font Icons not implemented on HTML Report column menu (#1689) * IDEMPIERE-5563 - Font Icons not implemented on HTML Report column menu * IDEMPIERE-5563 - Font Icons not implemented on HTML Report column menu * IDEMPIERE-5563 - pr1689 patch --- .../org/compiere/print/IHTMLExtension.java | 36 +++++- .../src/org/compiere/print/ReportEngine.java | 5 + .../WEB-INF/src/metainfo/zk/lang-addon.xml | 2 +- .../adempiere/webui/report/HTMLExtension.java | 114 ++++++++++++------ .../web/js/org/idempiere/commons/report.js | 89 +++++++++----- org.adempiere.ui.zk/css/font-awesome.css.dsp | 11 ++ org.adempiere.ui.zk/css/report.css | 30 ++++- 7 files changed, 212 insertions(+), 75 deletions(-) create mode 100644 org.adempiere.ui.zk/css/font-awesome.css.dsp diff --git a/org.adempiere.base/src/org/compiere/print/IHTMLExtension.java b/org.adempiere.base/src/org/compiere/print/IHTMLExtension.java index c83f12b892..991e0bca3b 100644 --- a/org.adempiere.base/src/org/compiere/print/IHTMLExtension.java +++ b/org.adempiere.base/src/org/compiere/print/IHTMLExtension.java @@ -18,23 +18,55 @@ import org.apache.ecs.xhtml.a; import org.apache.ecs.xhtml.body; /** - * + * Extension interface for HTML report * @author hengsin - * */ public interface IHTMLExtension { + /** + * @return css class prefix for report element + */ public String getClassPrefix(); + /** + * @return url to report css + */ public String getStyleURL(); + /** + * @return url to report js + */ public String getScriptURL(); + /** + * Apply customization to row + * @param row + * @param printData + */ public void extendRowElement(ConcreteElement row, PrintData printData); + /** + * Apply customization to ID element + * @param row + * @param columnElement + * @param href link for ID column + * @param dataElement + */ public void extendIDColumn(int row, ConcreteElement columnElement, a href, PrintDataElement dataElement); + /** + * Add attributes to reportBody + * @param reportBody + */ public void setWebAttribute (body reportBody); + /** + * @return absolute path to css style file + */ public String getFullPathStyle (); + + /** + * @return one or more links for web font + */ + String getWebFontLinks(); } diff --git a/org.adempiere.base/src/org/compiere/print/ReportEngine.java b/org.adempiere.base/src/org/compiere/print/ReportEngine.java index 706c64d441..0898c51a01 100644 --- a/org.adempiere.base/src/org/compiere/print/ReportEngine.java +++ b/org.adempiere.base/src/org/compiere/print/ReportEngine.java @@ -766,6 +766,11 @@ queued-job-count = 0 (class javax.print.attribute.standard.QueuedJobCount) doc.getBody().setNeedClosingTag(false); doc.appendHead(""); + if (extension != null && !Util.isEmpty(extension.getWebFontLinks(), true)) + { + doc.appendHead(extension.getWebFontLinks()); + } + if (extension != null && extension.getStyleURL() != null) { // maybe cache style content with key is path diff --git a/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml b/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml index ada311cd04..841140803f 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml +++ b/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml @@ -48,7 +48,7 @@ Copyright (C) 2007 Ashley G Ramdass (ADempiere WebUI). - + diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/report/HTMLExtension.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/report/HTMLExtension.java index 00200aca37..587ce28d1e 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/report/HTMLExtension.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/report/HTMLExtension.java @@ -34,9 +34,8 @@ import org.compiere.util.Msg; import org.zkoss.zk.ui.Executions; /** - * + * Default implementation for HTML report extension * @author hengsin - * */ public class HTMLExtension implements IHTMLExtension { @@ -46,6 +45,11 @@ public class HTMLExtension implements IHTMLExtension { private String styleURL; private String contextPath; + /** + * @param contextPath + * @param classPrefix + * @param componentId + */ public HTMLExtension(String contextPath, String classPrefix, String componentId) { String theme = MSysConfig.getValue(MSysConfig.HTML_REPORT_THEME, "/", Env.getAD_Client_ID(Env.getCtx())); @@ -67,15 +71,27 @@ public class HTMLExtension implements IHTMLExtension { this.contextPath = contextPath; } + @Override + public String getWebFontLinks() { + StringBuilder builder = new StringBuilder(); + builder.append(""); + return builder.toString(); + } + + @Override public void extendIDColumn(int row, ConcreteElement columnElement, a href, PrintDataElement dataElement) { - href.addAttribute("onclick", "parent.idempiere.showColumnMenu(document, event, '" + dataElement.getColumnName() + "', " + row + ")"); + href.addAttribute("onclick", "parent.idempiere.showColumnMenu(document, event, '" + dataElement.getColumnName() + "', " + row + ", " + ThemeManager.isUseFontIconForImage() + ")"); href.addAttribute ("componentId", componentId); href.addAttribute ("foreignColumnName", dataElement.getForeignColumnName()); href.addAttribute ("value", dataElement.getValueAsString()); href.addAttribute ("displayValue", dataElement.getValueDisplay(Env.getLanguage(Env.getCtx()))); } + @Override public void extendRowElement(ConcreteElement row, PrintData printData) { PrintDataElement pkey = printData.getPKey(); if (pkey != null) @@ -87,68 +103,86 @@ public class HTMLExtension implements IHTMLExtension { } } + @Override public String getClassPrefix() { return classPrefix; } + @Override public String getScriptURL() { return scriptURL; } + @Override public String getStyleURL() { return styleURL; } + @Override public void setWebAttribute (body reportBody){ // set attribute value for create menu context - StringBuilder windowImageURL = new StringBuilder(); - String windowIco = ThemeManager.getThemeResource("images/mWindow.png"); - if (windowIco.startsWith("~./")) { - if (Executions.getCurrent() != null) { - windowImageURL.append(Executions.encodeURL(windowIco)); - } - } else { - windowImageURL.append(contextPath); - if (!windowIco.startsWith("/") && !contextPath.endsWith("/")) - windowImageURL.append("/"); - windowImageURL.append(windowIco); + StringBuilder windowIconAttr = new StringBuilder(); + if(ThemeManager.isUseFontIconForImage()) { + windowIconAttr.append("z-icon-Window"); } - StringBuilder reportImageURL = new StringBuilder(); - String reportIco = ThemeManager.getThemeResource("images/mReport.png"); - if (reportIco.startsWith("~./")) { - if (Executions.getCurrent() != null) { - reportImageURL.append(Executions.encodeURL(reportIco)); + else { + String windowIco = ThemeManager.getThemeResource("images/mWindow.png"); + if (windowIco.startsWith("~./")) { + if (Executions.getCurrent() != null) { + windowIconAttr.append(Executions.encodeURL(windowIco)); + } + } else { + windowIconAttr.append(contextPath); + if (!windowIco.startsWith("/") && !contextPath.endsWith("/")) + windowIconAttr.append("/"); + windowIconAttr.append(windowIco); } - } else { - reportImageURL.append(contextPath); - if (!reportIco.startsWith("/") && !contextPath.endsWith("/")) - reportImageURL.append("/"); - reportImageURL.append(reportIco); } - - StringBuilder drillAssistantImageURL = new StringBuilder(); - String drillAssistantIco = ThemeManager.getThemeResource("images/Zoom16.png"); - if (drillAssistantIco.startsWith("~./")) { - if (Executions.getCurrent() != null) { - drillAssistantImageURL.append(Executions.encodeURL(drillAssistantIco)); + StringBuilder reportIconAttr = new StringBuilder(); + if(ThemeManager.isUseFontIconForImage()) { + reportIconAttr.append("z-icon-Report"); + } + else { + String reportIco = ThemeManager.getThemeResource("images/mReport.png"); + if (reportIco.startsWith("~./")) { + if (Executions.getCurrent() != null) { + reportIconAttr.append(Executions.encodeURL(reportIco)); + } + } else { + reportIconAttr.append(contextPath); + if (!reportIco.startsWith("/") && !contextPath.endsWith("/")) + reportIconAttr.append("/"); + reportIconAttr.append(reportIco); } - } else { - drillAssistantImageURL.append(contextPath); - if (!drillAssistantIco.startsWith("/") && !contextPath.endsWith("/")) - drillAssistantImageURL.append("/"); - drillAssistantImageURL.append(drillAssistantIco); } - - reportBody.addAttribute("windowIco",windowImageURL.toString()); - reportBody.addAttribute("reportIco", reportImageURL.toString()); + StringBuilder drillAssistantIconAttr = new StringBuilder(); + if(ThemeManager.isUseFontIconForImage()) { + drillAssistantIconAttr.append("z-icon-Zoom"); + } + else { + String drillAssistantIco = ThemeManager.getThemeResource("images/Zoom16.png"); + if (drillAssistantIco.startsWith("~./")) { + if (Executions.getCurrent() != null) { + drillAssistantIconAttr.append(Executions.encodeURL(drillAssistantIco)); + } + } else { + drillAssistantIconAttr.append(contextPath); + if (!drillAssistantIco.startsWith("/") && !contextPath.endsWith("/")) + drillAssistantIconAttr.append("/"); + drillAssistantIconAttr.append(drillAssistantIco); + } + } + reportBody.addAttribute("windowIco",windowIconAttr.toString()); + reportBody.addAttribute("reportIco", reportIconAttr.toString()); reportBody.addAttribute ("reportLabel", Msg.getMsg(AEnv.getLanguage(Env.getCtx()), "Report").replace("&", "")); reportBody.addAttribute ("windowLabel", Msg.getMsg(AEnv.getLanguage(Env.getCtx()), "Window")); - reportBody.addAttribute("drillAssistantIco", drillAssistantImageURL.toString()); + reportBody.addAttribute("drillAssistantIco", drillAssistantIconAttr.toString()); reportBody.addAttribute ("drillAssistantLabel", Msg.getMsg(AEnv.getLanguage(Env.getCtx()), "DrillAssistant").replace("&", "")); } - + + @Override public String getFullPathStyle() { String theme = MSysConfig.getValue(MSysConfig.HTML_REPORT_THEME, "/", Env.getAD_Client_ID(Env.getCtx())); if (! theme.startsWith("/")) diff --git a/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/report.js b/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/report.js index 7fd2199841..70cf6a516d 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/report.js +++ b/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/report.js @@ -29,8 +29,8 @@ window.idempiere.drillDown = function(cmpid, column, value){ zAu.send(event); }; -window.idempiere.showColumnMenu = function(doc, e, columnName, row) { - let d = idempiere.getMenu (doc, e.target.getAttribute ("componentId"), e.target.getAttribute ("foreignColumnName"), e.target.getAttribute ("value"), e.target.getAttribute ("displayValue")); +window.idempiere.showColumnMenu = function(doc, e, columnName, row, isUseFontIcons) { + let d = idempiere.getMenu (doc, e.target.getAttribute ("componentId"), e.target.getAttribute ("foreignColumnName"), e.target.getAttribute ("value"), e.target.getAttribute ("displayValue"), isUseFontIcons); let posx = 0; let posy = 0; @@ -56,7 +56,7 @@ window.idempiere.showColumnMenu = function(doc, e, columnName, row) { setTimeout(f, 3000); }; -window.idempiere.getMenu = function(doc, componentId, foreignColumnName, value, displayValue){ +window.idempiere.getMenu = function(doc, componentId, foreignColumnName, value, displayValue, isUseFontIcons){ doc.contextMenu = null; if (componentId != null){ //menu div @@ -73,80 +73,111 @@ window.idempiere.getMenu = function(doc, componentId, foreignColumnName, value, let windowMenu = doc.createElement("div"); windowMenu.style.padding = "3px"; windowMenu.style.verticalAlign = "middle"; - windowMenu.setAttribute("onmouseover", "this.style.backgroundColor = 'lightgray'"); - windowMenu.setAttribute("onmouseout", "this.style.backgroundColor = 'white'"); + windowMenu.setAttribute("onmouseover", "this.style.backgroundColor = 'lightgray';this.style.color = 'rgb(0,0,200)'"); + windowMenu.setAttribute("onmouseout", "this.style.backgroundColor = 'white';this.style.color = 'rgb(0,0,0)'"); let href = doc.createElement("a"); href.style.fontSize = "11px"; + href.style.color = "inherit"; href.style.textDecoration = "none"; + href.style.textDecorationColor = "inherit"; href.style.verticalAlign = "middle"; href.href = "javascript:void(0)"; href.setAttribute("onclick", "parent.idempiere.zoom('" + componentId + "','" + foreignColumnName + "','" + value + "')"); - - windowMenu.appendChild(href); - menu.appendChild(windowMenu); - + let windowIco = doc.body.getAttribute ("windowIco"); if (typeof windowIco === 'string' && windowIco.length > 0) { - let image = doc.createElement("img"); - image.src = windowIco; - image.setAttribute("align", "middle"); - href.appendChild(image); + if(isUseFontIcons) { + let icon = doc.createElement("span"); + icon.classList.add(windowIco); + icon.classList.add("font-icon") + windowMenu.appendChild(icon); + } + else { + let image = doc.createElement("img"); + image.src = windowIco; + image.setAttribute("align", "middle"); + href.appendChild(image); + } } href.appendChild(doc.createTextNode(doc.body.getAttribute ("windowLabel"))); + windowMenu.appendChild(href); + menu.appendChild(windowMenu); + //report menu item let report = doc.createElement("div"); report.style.padding = "3px"; report.style.verticalAlign = "middle"; - report.setAttribute("onmouseover", "this.style.backgroundColor = 'lightgray'"); - report.setAttribute("onmouseout", "this.style.backgroundColor = 'white'"); + report.setAttribute("onmouseover", "this.style.backgroundColor = 'lightgray';this.style.color = 'rgb(0,0,200)'"); + report.setAttribute("onmouseout", "this.style.backgroundColor = 'white';this.style.color = 'rgb(0,0,0)'"); let reportHref = doc.createElement("a"); reportHref.href = "javascript:void(0)"; + reportHref.style.color = "inherit"; reportHref.style.textDecoration = "none"; + reportHref.style.textDecorationColor = "inherit"; reportHref.style.fontSize = "11px"; reportHref.style.verticalAlign = "middle"; reportHref.setAttribute("onclick", "parent.idempiere.drillDown('" + componentId + "','" + foreignColumnName + "','" + value + "')"); - report.appendChild(reportHref); - menu.appendChild(report); let reportIco = doc.body.getAttribute ("reportIco"); if (typeof reportIco === 'string' && reportIco.length > 0) { - let reportimage = doc.createElement("img"); - reportimage.src = reportIco; - reportimage.setAttribute("align", "middle"); - reportHref.appendChild(reportimage); + if(isUseFontIcons) { + let icon = doc.createElement("span"); + icon.classList.add(reportIco); + icon.classList.add("font-icon") + report.appendChild(icon); + } + else { + let reportimage = doc.createElement("img"); + reportimage.src = reportIco; + reportimage.setAttribute("align", "middle"); + reportHref.appendChild(reportimage); + } } reportHref.appendChild(doc.createTextNode(doc.body.getAttribute ("reportLabel"))); + report.appendChild(reportHref); + menu.appendChild(report); + //drill menu item let reportDrill = doc.createElement("div"); reportDrill.style.padding = "3px"; reportDrill.style.verticalAlign = "middle"; - reportDrill.setAttribute("onmouseover", "this.style.backgroundColor = 'lightgray'"); - reportDrill.setAttribute("onmouseout", "this.style.backgroundColor = 'white'"); + reportDrill.setAttribute("onmouseover", "this.style.backgroundColor = 'lightgray';this.style.color = 'rgb(0,0,200)'"); + reportDrill.setAttribute("onmouseout", "this.style.backgroundColor = 'white';this.style.color = 'rgb(0,0,0)'"); let reportDrillHref = doc.createElement("a"); reportDrillHref.href = "javascript:void(0)"; + reportDrillHref.style.color = "inherit"; reportDrillHref.style.textDecoration = "none"; + reportDrillHref.style.textDecorationColor = "inherit"; reportDrillHref.style.fontSize = "11px"; reportDrillHref.style.verticalAlign = "middle"; reportDrillHref.setAttribute("onclick", "parent.idempiere.drillAcross('" + componentId + "','" + foreignColumnName + "','" + value + "','" + displayValue + "')"); - reportDrill.appendChild(reportDrillHref); - menu.appendChild(reportDrill); let drillIco = doc.body.getAttribute ("drillAssistantIco"); if (typeof drillIco === 'string' && drillIco.length > 0) { - let drillimage = doc.createElement("img"); - drillimage.src = drillIco; - drillimage.setAttribute("align", "middle"); - reportDrillHref.appendChild(drillimage); + if(isUseFontIcons) { + let icon = doc.createElement("span"); + icon.classList.add(drillIco); + icon.classList.add("font-icon") + reportDrill.appendChild(icon); + } + else { + let drillimage = doc.createElement("img"); + drillimage.src = drillIco; + drillimage.setAttribute("align", "middle"); + reportDrillHref.appendChild(drillimage); + } } reportDrillHref.appendChild(doc.createTextNode(doc.body.getAttribute ("drillAssistantLabel"))); + reportDrill.appendChild(reportDrillHref); + menu.appendChild(reportDrill); doc.contextMenu = menu; doc.body.appendChild (doc.contextMenu); diff --git a/org.adempiere.ui.zk/css/font-awesome.css.dsp b/org.adempiere.ui.zk/css/font-awesome.css.dsp new file mode 100644 index 0000000000..f35ffc7d4d --- /dev/null +++ b/org.adempiere.ui.zk/css/font-awesome.css.dsp @@ -0,0 +1,11 @@ +<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %><%@ taglib uri="http://www.zkoss.org/dsp/zk/core" prefix="z" %><%@ taglib uri="http://www.zkoss.org/dsp/web/theme" prefix="t" %>/*! + * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */@font-face{font-family:'ZK85Icons';src: url(${c:encodeURL("~./zul/less/font/ZK85Icons.eot?v=4.7.0")});src: url(${c:encodeURL("~./zul/less/font/ZK85Icons.eot?#iefix&v=4.7.0")}) format("embedded-opentype"), + url(${c:encodeURL("~./zul/less/font/ZK85Icons.woff?v=4.7.0")}) format("woff"), + url(${c:encodeURL("~./zul/less/font/ZK85Icons.ttf?v=4.7.0")}) format("truetype"), + url(${c:encodeURL("~./zul/less/font/ZK85Icons.svg?v=4.7.0#ZK85Icons")}) format("svg");font-weight:normal;font-style:normal}@font-face{font-family:'FontAwesome';src: url(${c:encodeURL("~./zul/less/font/fontawesome-webfont.eot?v=4.7.0")});src: url(${c:encodeURL("~./zul/less/font/fontawesome-webfont.eot?#iefix&v=4.7.0")}) format("embedded-opentype"), + url(${c:encodeURL("~./zul/less/font/fontawesome-webfont.woff2?v=4.7.0")}) format("woff2"), + url(${c:encodeURL("~./zul/less/font/fontawesome-webfont.woff?v=4.7.0")}) format("woff"), + url(${c:encodeURL("~./zul/less/font/fontawesome-webfont.ttf?v=4.7.0")}) format("truetype"), + url(${c:encodeURL("~./zul/less/font/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular")}) format("svg");font-weight:normal;font-style:normal}[class^="z-icon-"],[class*=" z-icon-"]{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.z-icon-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.z-icon-2x{font-size:2em}.z-icon-3x{font-size:3em}.z-icon-4x{font-size:4em}.z-icon-5x{font-size:5em}.z-icon-fw{width:1.28571429em;text-align:center}.z-icon-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.z-icon-ul>li{position:relative}.z-icon-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.z-icon-li.z-icon-lg{left:-1.85714286em}.z-icon-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.z-icon-pull-left{float:left}.z-icon-pull-right{float:right}.z-icon.z-icon-pull-left{margin-right:.3em}.z-icon.z-icon-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.z-icon.pull-left{margin-right:.3em}.z-icon.pull-right{margin-left:.3em}.z-icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.z-icon-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.z-icon-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.z-icon-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.z-icon-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.z-icon-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.z-icon-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .z-icon-rotate-90,:root .z-icon-rotate-180,:root .z-icon-rotate-270,:root .z-icon-flip-horizontal,:root .z-icon-flip-vertical{filter:none}.z-icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.z-icon-stack-1x,.z-icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.z-icon-stack-1x{line-height:inherit}.z-icon-stack-2x{font-size:2em}.z-icon-inverse{color:#fff}.z-icon-glass:before{content:"\f000"}.z-icon-music:before{content:"\f001"}.z-icon-search:before{content:"\f002"}.z-icon-envelope-o:before{content:"\f003"}.z-icon-heart:before{content:"\f004"}.z-icon-star:before{content:"\f005"}.z-icon-star-o:before{content:"\f006"}.z-icon-user:before{content:"\f007"}.z-icon-film:before{content:"\f008"}.z-icon-th-large:before{content:"\f009"}.z-icon-th:before{content:"\f00a"}.z-icon-th-list:before{content:"\f00b"}.z-icon-check:before{content:"\f00c"}.z-icon-remove:before,.z-icon-close:before,.z-icon-times:before{content:"\f00d"}.z-icon-search-plus:before{content:"\f00e"}.z-icon-search-minus:before{content:"\f010"}.z-icon-power-off:before{content:"\f011"}.z-icon-signal:before{content:"\f012"}.z-icon-gear:before,.z-icon-cog:before{content:"\f013"}.z-icon-trash-o:before{content:"\f014"}.z-icon-home:before{content:"\f015"}.z-icon-file-o:before{content:"\f016"}.z-icon-clock-o:before{content:"\f017"}.z-icon-road:before{content:"\f018"}.z-icon-download:before{content:"\f019"}.z-icon-arrow-circle-o-down:before{content:"\f01a"}.z-icon-arrow-circle-o-up:before{content:"\f01b"}.z-icon-inbox:before{content:"\f01c"}.z-icon-play-circle-o:before{content:"\f01d"}.z-icon-rotate-right:before,.z-icon-repeat:before{content:"\f01e"}.z-icon-refresh:before{content:"\f021"}.z-icon-list-alt:before{content:"\f022"}.z-icon-lock:before{content:"\f023"}.z-icon-flag:before{content:"\f024"}.z-icon-headphones:before{content:"\f025"}.z-icon-volume-off:before{content:"\f026"}.z-icon-volume-down:before{content:"\f027"}.z-icon-volume-up:before{content:"\f028"}.z-icon-qrcode:before{content:"\f029"}.z-icon-barcode:before{content:"\f02a"}.z-icon-tag:before{content:"\f02b"}.z-icon-tags:before{content:"\f02c"}.z-icon-book:before{content:"\f02d"}.z-icon-bookmark:before{content:"\f02e"}.z-icon-print:before{content:"\f02f"}.z-icon-camera:before{content:"\f030"}.z-icon-font:before{content:"\f031"}.z-icon-bold:before{content:"\f032"}.z-icon-italic:before{content:"\f033"}.z-icon-text-height:before{content:"\f034"}.z-icon-text-width:before{content:"\f035"}.z-icon-align-left:before{content:"\f036"}.z-icon-align-center:before{content:"\f037"}.z-icon-align-right:before{content:"\f038"}.z-icon-align-justify:before{content:"\f039"}.z-icon-list:before{content:"\f03a"}.z-icon-dedent:before,.z-icon-outdent:before{content:"\f03b"}.z-icon-indent:before{content:"\f03c"}.z-icon-video-camera:before{content:"\f03d"}.z-icon-photo:before,.z-icon-image:before,.z-icon-picture-o:before{content:"\f03e"}.z-icon-pencil:before{content:"\f040"}.z-icon-map-marker:before{content:"\f041"}.z-icon-adjust:before{content:"\f042"}.z-icon-tint:before{content:"\f043"}.z-icon-edit:before,.z-icon-pencil-square-o:before{content:"\f044"}.z-icon-share-square-o:before{content:"\f045"}.z-icon-check-square-o:before{content:"\f046"}.z-icon-arrows:before{content:"\f047"}.z-icon-step-backward:before{content:"\f048"}.z-icon-fast-backward:before{content:"\f049"}.z-icon-backward:before{content:"\f04a"}.z-icon-play:before{content:"\f04b"}.z-icon-pause:before{content:"\f04c"}.z-icon-stop:before{content:"\f04d"}.z-icon-forward:before{content:"\f04e"}.z-icon-fast-forward:before{content:"\f050"}.z-icon-step-forward:before{content:"\f051"}.z-icon-eject:before{content:"\f052"}.z-icon-chevron-left:before{content:"\f053"}.z-icon-chevron-right:before{content:"\f054"}.z-icon-plus-circle:before{content:"\f055"}.z-icon-minus-circle:before{content:"\f056"}.z-icon-times-circle:before{content:"\f057"}.z-icon-check-circle:before{content:"\f058"}.z-icon-question-circle:before{content:"\f059"}.z-icon-info-circle:before{content:"\f05a"}.z-icon-crosshairs:before{content:"\f05b"}.z-icon-times-circle-o:before{content:"\f05c"}.z-icon-check-circle-o:before{content:"\f05d"}.z-icon-ban:before{content:"\f05e"}.z-icon-arrow-left:before{content:"\f060"}.z-icon-arrow-right:before{content:"\f061"}.z-icon-arrow-up:before{content:"\f062"}.z-icon-arrow-down:before{content:"\f063"}.z-icon-mail-forward:before,.z-icon-share:before{content:"\f064"}.z-icon-expand:before{content:"\f065"}.z-icon-compress:before{content:"\f066"}.z-icon-plus:before{content:"\f067"}.z-icon-minus:before{content:"\f068"}.z-icon-asterisk:before{content:"\f069"}.z-icon-exclamation-circle:before{content:"\f06a"}.z-icon-gift:before{content:"\f06b"}.z-icon-leaf:before{content:"\f06c"}.z-icon-fire:before{content:"\f06d"}.z-icon-eye:before{content:"\f06e"}.z-icon-eye-slash:before{content:"\f070"}.z-icon-warning:before,.z-icon-exclamation-triangle:before{content:"\f071"}.z-icon-plane:before{content:"\f072"}.z-icon-calendar:before{content:"\f073"}.z-icon-random:before{content:"\f074"}.z-icon-comment:before{content:"\f075"}.z-icon-magnet:before{content:"\f076"}.z-icon-chevron-up:before{content:"\f077"}.z-icon-chevron-down:before{content:"\f078"}.z-icon-retweet:before{content:"\f079"}.z-icon-shopping-cart:before{content:"\f07a"}.z-icon-folder:before{content:"\f07b"}.z-icon-folder-open:before{content:"\f07c"}.z-icon-arrows-v:before{content:"\f07d"}.z-icon-arrows-h:before{content:"\f07e"}.z-icon-bar-chart-o:before,.z-icon-bar-chart:before{content:"\f080"}.z-icon-twitter-square:before{content:"\f081"}.z-icon-facebook-square:before{content:"\f082"}.z-icon-camera-retro:before{content:"\f083"}.z-icon-key:before{content:"\f084"}.z-icon-gears:before,.z-icon-cogs:before{content:"\f085"}.z-icon-comments:before{content:"\f086"}.z-icon-thumbs-o-up:before{content:"\f087"}.z-icon-thumbs-o-down:before{content:"\f088"}.z-icon-star-half:before{content:"\f089"}.z-icon-heart-o:before{content:"\f08a"}.z-icon-sign-out:before{content:"\f08b"}.z-icon-linkedin-square:before{content:"\f08c"}.z-icon-thumb-tack:before{content:"\f08d"}.z-icon-external-link:before{content:"\f08e"}.z-icon-sign-in:before{content:"\f090"}.z-icon-trophy:before{content:"\f091"}.z-icon-github-square:before{content:"\f092"}.z-icon-upload:before{content:"\f093"}.z-icon-lemon-o:before{content:"\f094"}.z-icon-phone:before{content:"\f095"}.z-icon-square-o:before{content:"\f096"}.z-icon-bookmark-o:before{content:"\f097"}.z-icon-phone-square:before{content:"\f098"}.z-icon-twitter:before{content:"\f099"}.z-icon-facebook-f:before,.z-icon-facebook:before{content:"\f09a"}.z-icon-github:before{content:"\f09b"}.z-icon-unlock:before{content:"\f09c"}.z-icon-credit-card:before{content:"\f09d"}.z-icon-feed:before,.z-icon-rss:before{content:"\f09e"}.z-icon-hdd-o:before{content:"\f0a0"}.z-icon-bullhorn:before{content:"\f0a1"}.z-icon-bell:before{content:"\f0f3"}.z-icon-certificate:before{content:"\f0a3"}.z-icon-hand-o-right:before{content:"\f0a4"}.z-icon-hand-o-left:before{content:"\f0a5"}.z-icon-hand-o-up:before{content:"\f0a6"}.z-icon-hand-o-down:before{content:"\f0a7"}.z-icon-arrow-circle-left:before{content:"\f0a8"}.z-icon-arrow-circle-right:before{content:"\f0a9"}.z-icon-arrow-circle-up:before{content:"\f0aa"}.z-icon-arrow-circle-down:before{content:"\f0ab"}.z-icon-globe:before{content:"\f0ac"}.z-icon-wrench:before{content:"\f0ad"}.z-icon-tasks:before{content:"\f0ae"}.z-icon-filter:before{content:"\f0b0"}.z-icon-briefcase:before{content:"\f0b1"}.z-icon-arrows-alt:before{content:"\f0b2"}.z-icon-group:before,.z-icon-users:before{content:"\f0c0"}.z-icon-chain:before,.z-icon-link:before{content:"\f0c1"}.z-icon-cloud:before{content:"\f0c2"}.z-icon-flask:before{content:"\f0c3"}.z-icon-cut:before,.z-icon-scissors:before{content:"\f0c4"}.z-icon-copy:before,.z-icon-files-o:before{content:"\f0c5"}.z-icon-paperclip:before{content:"\f0c6"}.z-icon-save:before,.z-icon-floppy-o:before{content:"\f0c7"}.z-icon-square:before{content:"\f0c8"}.z-icon-navicon:before,.z-icon-reorder:before,.z-icon-bars:before{content:"\f0c9"}.z-icon-list-ul:before{content:"\f0ca"}.z-icon-list-ol:before{content:"\f0cb"}.z-icon-strikethrough:before{content:"\f0cc"}.z-icon-underline:before{content:"\f0cd"}.z-icon-table:before{content:"\f0ce"}.z-icon-magic:before{content:"\f0d0"}.z-icon-truck:before{content:"\f0d1"}.z-icon-pinterest:before{content:"\f0d2"}.z-icon-pinterest-square:before{content:"\f0d3"}.z-icon-google-plus-square:before{content:"\f0d4"}.z-icon-google-plus:before{content:"\f0d5"}.z-icon-money:before{content:"\f0d6"}.z-icon-caret-down:before{content:"\f0d7"}.z-icon-caret-up:before{content:"\f0d8"}.z-icon-caret-left:before{content:"\f0d9"}.z-icon-caret-right:before{content:"\f0da"}.z-icon-columns:before{content:"\f0db"}.z-icon-unsorted:before,.z-icon-sort:before{content:"\f0dc"}.z-icon-sort-down:before,.z-icon-sort-desc:before{content:"\f0dd"}.z-icon-sort-up:before,.z-icon-sort-asc:before{content:"\f0de"}.z-icon-envelope:before{content:"\f0e0"}.z-icon-linkedin:before{content:"\f0e1"}.z-icon-rotate-left:before,.z-icon-undo:before{content:"\f0e2"}.z-icon-legal:before,.z-icon-gavel:before{content:"\f0e3"}.z-icon-dashboard:before,.z-icon-tachometer:before{content:"\f0e4"}.z-icon-comment-o:before{content:"\f0e5"}.z-icon-comments-o:before{content:"\f0e6"}.z-icon-flash:before,.z-icon-bolt:before{content:"\f0e7"}.z-icon-sitemap:before{content:"\f0e8"}.z-icon-umbrella:before{content:"\f0e9"}.z-icon-paste:before,.z-icon-clipboard:before{content:"\f0ea"}.z-icon-lightbulb-o:before{content:"\f0eb"}.z-icon-exchange:before{content:"\f0ec"}.z-icon-cloud-download:before{content:"\f0ed"}.z-icon-cloud-upload:before{content:"\f0ee"}.z-icon-user-md:before{content:"\f0f0"}.z-icon-stethoscope:before{content:"\f0f1"}.z-icon-suitcase:before{content:"\f0f2"}.z-icon-bell-o:before{content:"\f0a2"}.z-icon-coffee:before{content:"\f0f4"}.z-icon-cutlery:before{content:"\f0f5"}.z-icon-file-text-o:before{content:"\f0f6"}.z-icon-building-o:before{content:"\f0f7"}.z-icon-hospital-o:before{content:"\f0f8"}.z-icon-ambulance:before{content:"\f0f9"}.z-icon-medkit:before{content:"\f0fa"}.z-icon-fighter-jet:before{content:"\f0fb"}.z-icon-beer:before{content:"\f0fc"}.z-icon-h-square:before{content:"\f0fd"}.z-icon-plus-square:before{content:"\f0fe"}.z-icon-angle-double-left:before{content:"\f100"}.z-icon-angle-double-right:before{content:"\f101"}.z-icon-angle-double-up:before{content:"\f102"}.z-icon-angle-double-down:before{content:"\f103"}.z-icon-angle-left:before{content:"\f104"}.z-icon-angle-right:before{content:"\f105"}.z-icon-angle-up:before{content:"\f106"}.z-icon-angle-down:before{content:"\f107"}.z-icon-desktop:before{content:"\f108"}.z-icon-laptop:before{content:"\f109"}.z-icon-tablet:before{content:"\f10a"}.z-icon-mobile-phone:before,.z-icon-mobile:before{content:"\f10b"}.z-icon-circle-o:before{content:"\f10c"}.z-icon-quote-left:before{content:"\f10d"}.z-icon-quote-right:before{content:"\f10e"}.z-icon-spinner:before{content:"\f110"}.z-icon-circle:before{content:"\f111"}.z-icon-mail-reply:before,.z-icon-reply:before{content:"\f112"}.z-icon-github-alt:before{content:"\f113"}.z-icon-folder-o:before{content:"\f114"}.z-icon-folder-open-o:before{content:"\f115"}.z-icon-smile-o:before{content:"\f118"}.z-icon-frown-o:before{content:"\f119"}.z-icon-meh-o:before{content:"\f11a"}.z-icon-gamepad:before{content:"\f11b"}.z-icon-keyboard-o:before{content:"\f11c"}.z-icon-flag-o:before{content:"\f11d"}.z-icon-flag-checkered:before{content:"\f11e"}.z-icon-terminal:before{content:"\f120"}.z-icon-code:before{content:"\f121"}.z-icon-mail-reply-all:before,.z-icon-reply-all:before{content:"\f122"}.z-icon-star-half-empty:before,.z-icon-star-half-full:before,.z-icon-star-half-o:before{content:"\f123"}.z-icon-location-arrow:before{content:"\f124"}.z-icon-crop:before{content:"\f125"}.z-icon-code-fork:before{content:"\f126"}.z-icon-unlink:before,.z-icon-chain-broken:before{content:"\f127"}.z-icon-question:before{content:"\f128"}.z-icon-info:before{content:"\f129"}.z-icon-exclamation:before{content:"\f12a"}.z-icon-superscript:before{content:"\f12b"}.z-icon-subscript:before{content:"\f12c"}.z-icon-eraser:before{content:"\f12d"}.z-icon-puzzle-piece:before{content:"\f12e"}.z-icon-microphone:before{content:"\f130"}.z-icon-microphone-slash:before{content:"\f131"}.z-icon-shield:before{content:"\f132"}.z-icon-calendar-o:before{content:"\f133"}.z-icon-fire-extinguisher:before{content:"\f134"}.z-icon-rocket:before{content:"\f135"}.z-icon-maxcdn:before{content:"\f136"}.z-icon-chevron-circle-left:before{content:"\f137"}.z-icon-chevron-circle-right:before{content:"\f138"}.z-icon-chevron-circle-up:before{content:"\f139"}.z-icon-chevron-circle-down:before{content:"\f13a"}.z-icon-html5:before{content:"\f13b"}.z-icon-css3:before{content:"\f13c"}.z-icon-anchor:before{content:"\f13d"}.z-icon-unlock-alt:before{content:"\f13e"}.z-icon-bullseye:before{content:"\f140"}.z-icon-ellipsis-h:before{content:"\f141"}.z-icon-ellipsis-v:before{content:"\f142"}.z-icon-rss-square:before{content:"\f143"}.z-icon-play-circle:before{content:"\f144"}.z-icon-ticket:before{content:"\f145"}.z-icon-minus-square:before{content:"\f146"}.z-icon-minus-square-o:before{content:"\f147"}.z-icon-level-up:before{content:"\f148"}.z-icon-level-down:before{content:"\f149"}.z-icon-check-square:before{content:"\f14a"}.z-icon-pencil-square:before{content:"\f14b"}.z-icon-external-link-square:before{content:"\f14c"}.z-icon-share-square:before{content:"\f14d"}.z-icon-compass:before{content:"\f14e"}.z-icon-toggle-down:before,.z-icon-caret-square-o-down:before{content:"\f150"}.z-icon-toggle-up:before,.z-icon-caret-square-o-up:before{content:"\f151"}.z-icon-toggle-right:before,.z-icon-caret-square-o-right:before{content:"\f152"}.z-icon-euro:before,.z-icon-eur:before{content:"\f153"}.z-icon-gbp:before{content:"\f154"}.z-icon-dollar:before,.z-icon-usd:before{content:"\f155"}.z-icon-rupee:before,.z-icon-inr:before{content:"\f156"}.z-icon-cny:before,.z-icon-rmb:before,.z-icon-yen:before,.z-icon-jpy:before{content:"\f157"}.z-icon-ruble:before,.z-icon-rouble:before,.z-icon-rub:before{content:"\f158"}.z-icon-won:before,.z-icon-krw:before{content:"\f159"}.z-icon-bitcoin:before,.z-icon-btc:before{content:"\f15a"}.z-icon-file:before{content:"\f15b"}.z-icon-file-text:before{content:"\f15c"}.z-icon-sort-alpha-asc:before{content:"\f15d"}.z-icon-sort-alpha-desc:before{content:"\f15e"}.z-icon-sort-amount-asc:before{content:"\f160"}.z-icon-sort-amount-desc:before{content:"\f161"}.z-icon-sort-numeric-asc:before{content:"\f162"}.z-icon-sort-numeric-desc:before{content:"\f163"}.z-icon-thumbs-up:before{content:"\f164"}.z-icon-thumbs-down:before{content:"\f165"}.z-icon-youtube-square:before{content:"\f166"}.z-icon-youtube:before{content:"\f167"}.z-icon-xing:before{content:"\f168"}.z-icon-xing-square:before{content:"\f169"}.z-icon-youtube-play:before{content:"\f16a"}.z-icon-dropbox:before{content:"\f16b"}.z-icon-stack-overflow:before{content:"\f16c"}.z-icon-instagram:before{content:"\f16d"}.z-icon-flickr:before{content:"\f16e"}.z-icon-adn:before{content:"\f170"}.z-icon-bitbucket:before{content:"\f171"}.z-icon-bitbucket-square:before{content:"\f172"}.z-icon-tumblr:before{content:"\f173"}.z-icon-tumblr-square:before{content:"\f174"}.z-icon-long-arrow-down:before{content:"\f175"}.z-icon-long-arrow-up:before{content:"\f176"}.z-icon-long-arrow-left:before{content:"\f177"}.z-icon-long-arrow-right:before{content:"\f178"}.z-icon-apple:before{content:"\f179"}.z-icon-windows:before{content:"\f17a"}.z-icon-android:before{content:"\f17b"}.z-icon-linux:before{content:"\f17c"}.z-icon-dribbble:before{content:"\f17d"}.z-icon-skype:before{content:"\f17e"}.z-icon-foursquare:before{content:"\f180"}.z-icon-trello:before{content:"\f181"}.z-icon-female:before{content:"\f182"}.z-icon-male:before{content:"\f183"}.z-icon-gittip:before,.z-icon-gratipay:before{content:"\f184"}.z-icon-sun-o:before{content:"\f185"}.z-icon-moon-o:before{content:"\f186"}.z-icon-archive:before{content:"\f187"}.z-icon-bug:before{content:"\f188"}.z-icon-vk:before{content:"\f189"}.z-icon-weibo:before{content:"\f18a"}.z-icon-renren:before{content:"\f18b"}.z-icon-pagelines:before{content:"\f18c"}.z-icon-stack-exchange:before{content:"\f18d"}.z-icon-arrow-circle-o-right:before{content:"\f18e"}.z-icon-arrow-circle-o-left:before{content:"\f190"}.z-icon-toggle-left:before,.z-icon-caret-square-o-left:before{content:"\f191"}.z-icon-dot-circle-o:before{content:"\f192"}.z-icon-wheelchair:before{content:"\f193"}.z-icon-vimeo-square:before{content:"\f194"}.z-icon-turkish-lira:before,.z-icon-try:before{content:"\f195"}.z-icon-plus-square-o:before{content:"\f196"}.z-icon-space-shuttle:before{content:"\f197"}.z-icon-slack:before{content:"\f198"}.z-icon-envelope-square:before{content:"\f199"}.z-icon-wordpress:before{content:"\f19a"}.z-icon-openid:before{content:"\f19b"}.z-icon-institution:before,.z-icon-bank:before,.z-icon-university:before{content:"\f19c"}.z-icon-mortar-board:before,.z-icon-graduation-cap:before{content:"\f19d"}.z-icon-yahoo:before{content:"\f19e"}.z-icon-google:before{content:"\f1a0"}.z-icon-reddit:before{content:"\f1a1"}.z-icon-reddit-square:before{content:"\f1a2"}.z-icon-stumbleupon-circle:before{content:"\f1a3"}.z-icon-stumbleupon:before{content:"\f1a4"}.z-icon-delicious:before{content:"\f1a5"}.z-icon-digg:before{content:"\f1a6"}.z-icon-pied-piper-pp:before{content:"\f1a7"}.z-icon-pied-piper-alt:before{content:"\f1a8"}.z-icon-drupal:before{content:"\f1a9"}.z-icon-joomla:before{content:"\f1aa"}.z-icon-language:before{content:"\f1ab"}.z-icon-fax:before{content:"\f1ac"}.z-icon-building:before{content:"\f1ad"}.z-icon-child:before{content:"\f1ae"}.z-icon-paw:before{content:"\f1b0"}.z-icon-spoon:before{content:"\f1b1"}.z-icon-cube:before{content:"\f1b2"}.z-icon-cubes:before{content:"\f1b3"}.z-icon-behance:before{content:"\f1b4"}.z-icon-behance-square:before{content:"\f1b5"}.z-icon-steam:before{content:"\f1b6"}.z-icon-steam-square:before{content:"\f1b7"}.z-icon-recycle:before{content:"\f1b8"}.z-icon-automobile:before,.z-icon-car:before{content:"\f1b9"}.z-icon-cab:before,.z-icon-taxi:before{content:"\f1ba"}.z-icon-tree:before{content:"\f1bb"}.z-icon-spotify:before{content:"\f1bc"}.z-icon-deviantart:before{content:"\f1bd"}.z-icon-soundcloud:before{content:"\f1be"}.z-icon-database:before{content:"\f1c0"}.z-icon-file-pdf-o:before{content:"\f1c1"}.z-icon-file-word-o:before{content:"\f1c2"}.z-icon-file-excel-o:before{content:"\f1c3"}.z-icon-file-powerpoint-o:before{content:"\f1c4"}.z-icon-file-photo-o:before,.z-icon-file-picture-o:before,.z-icon-file-image-o:before{content:"\f1c5"}.z-icon-file-zip-o:before,.z-icon-file-archive-o:before{content:"\f1c6"}.z-icon-file-sound-o:before,.z-icon-file-audio-o:before{content:"\f1c7"}.z-icon-file-movie-o:before,.z-icon-file-video-o:before{content:"\f1c8"}.z-icon-file-code-o:before{content:"\f1c9"}.z-icon-vine:before{content:"\f1ca"}.z-icon-codepen:before{content:"\f1cb"}.z-icon-jsfiddle:before{content:"\f1cc"}.z-icon-life-bouy:before,.z-icon-life-buoy:before,.z-icon-life-saver:before,.z-icon-support:before,.z-icon-life-ring:before{content:"\f1cd"}.z-icon-circle-o-notch:before{content:"\f1ce"}.z-icon-ra:before,.z-icon-resistance:before,.z-icon-rebel:before{content:"\f1d0"}.z-icon-ge:before,.z-icon-empire:before{content:"\f1d1"}.z-icon-git-square:before{content:"\f1d2"}.z-icon-git:before{content:"\f1d3"}.z-icon-y-combinator-square:before,.z-icon-yc-square:before,.z-icon-hacker-news:before{content:"\f1d4"}.z-icon-tencent-weibo:before{content:"\f1d5"}.z-icon-qq:before{content:"\f1d6"}.z-icon-wechat:before,.z-icon-weixin:before{content:"\f1d7"}.z-icon-send:before,.z-icon-paper-plane:before{content:"\f1d8"}.z-icon-send-o:before,.z-icon-paper-plane-o:before{content:"\f1d9"}.z-icon-history:before{content:"\f1da"}.z-icon-circle-thin:before{content:"\f1db"}.z-icon-header:before{content:"\f1dc"}.z-icon-paragraph:before{content:"\f1dd"}.z-icon-sliders:before{content:"\f1de"}.z-icon-share-alt:before{content:"\f1e0"}.z-icon-share-alt-square:before{content:"\f1e1"}.z-icon-bomb:before{content:"\f1e2"}.z-icon-soccer-ball-o:before,.z-icon-futbol-o:before{content:"\f1e3"}.z-icon-tty:before{content:"\f1e4"}.z-icon-binoculars:before{content:"\f1e5"}.z-icon-plug:before{content:"\f1e6"}.z-icon-slideshare:before{content:"\f1e7"}.z-icon-twitch:before{content:"\f1e8"}.z-icon-yelp:before{content:"\f1e9"}.z-icon-newspaper-o:before{content:"\f1ea"}.z-icon-wifi:before{content:"\f1eb"}.z-icon-calculator:before{content:"\f1ec"}.z-icon-paypal:before{content:"\f1ed"}.z-icon-google-wallet:before{content:"\f1ee"}.z-icon-cc-visa:before{content:"\f1f0"}.z-icon-cc-mastercard:before{content:"\f1f1"}.z-icon-cc-discover:before{content:"\f1f2"}.z-icon-cc-amex:before{content:"\f1f3"}.z-icon-cc-paypal:before{content:"\f1f4"}.z-icon-cc-stripe:before{content:"\f1f5"}.z-icon-bell-slash:before{content:"\f1f6"}.z-icon-bell-slash-o:before{content:"\f1f7"}.z-icon-trash:before{content:"\f1f8"}.z-icon-copyright:before{content:"\f1f9"}.z-icon-at:before{content:"\f1fa"}.z-icon-eyedropper:before{content:"\f1fb"}.z-icon-paint-brush:before{content:"\f1fc"}.z-icon-birthday-cake:before{content:"\f1fd"}.z-icon-area-chart:before{content:"\f1fe"}.z-icon-pie-chart:before{content:"\f200"}.z-icon-line-chart:before{content:"\f201"}.z-icon-lastfm:before{content:"\f202"}.z-icon-lastfm-square:before{content:"\f203"}.z-icon-toggle-off:before{content:"\f204"}.z-icon-toggle-on:before{content:"\f205"}.z-icon-bicycle:before{content:"\f206"}.z-icon-bus:before{content:"\f207"}.z-icon-ioxhost:before{content:"\f208"}.z-icon-angellist:before{content:"\f209"}.z-icon-cc:before{content:"\f20a"}.z-icon-shekel:before,.z-icon-sheqel:before,.z-icon-ils:before{content:"\f20b"}.z-icon-meanpath:before{content:"\f20c"}.z-icon-buysellads:before{content:"\f20d"}.z-icon-connectdevelop:before{content:"\f20e"}.z-icon-dashcube:before{content:"\f210"}.z-icon-forumbee:before{content:"\f211"}.z-icon-leanpub:before{content:"\f212"}.z-icon-sellsy:before{content:"\f213"}.z-icon-shirtsinbulk:before{content:"\f214"}.z-icon-simplybuilt:before{content:"\f215"}.z-icon-skyatlas:before{content:"\f216"}.z-icon-cart-plus:before{content:"\f217"}.z-icon-cart-arrow-down:before{content:"\f218"}.z-icon-diamond:before{content:"\f219"}.z-icon-ship:before{content:"\f21a"}.z-icon-user-secret:before{content:"\f21b"}.z-icon-motorcycle:before{content:"\f21c"}.z-icon-street-view:before{content:"\f21d"}.z-icon-heartbeat:before{content:"\f21e"}.z-icon-venus:before{content:"\f221"}.z-icon-mars:before{content:"\f222"}.z-icon-mercury:before{content:"\f223"}.z-icon-intersex:before,.z-icon-transgender:before{content:"\f224"}.z-icon-transgender-alt:before{content:"\f225"}.z-icon-venus-double:before{content:"\f226"}.z-icon-mars-double:before{content:"\f227"}.z-icon-venus-mars:before{content:"\f228"}.z-icon-mars-stroke:before{content:"\f229"}.z-icon-mars-stroke-v:before{content:"\f22a"}.z-icon-mars-stroke-h:before{content:"\f22b"}.z-icon-neuter:before{content:"\f22c"}.z-icon-genderless:before{content:"\f22d"}.z-icon-facebook-official:before{content:"\f230"}.z-icon-pinterest-p:before{content:"\f231"}.z-icon-whatsapp:before{content:"\f232"}.z-icon-server:before{content:"\f233"}.z-icon-user-plus:before{content:"\f234"}.z-icon-user-times:before{content:"\f235"}.z-icon-hotel:before,.z-icon-bed:before{content:"\f236"}.z-icon-viacoin:before{content:"\f237"}.z-icon-train:before{content:"\f238"}.z-icon-subway:before{content:"\f239"}.z-icon-medium:before{content:"\f23a"}.z-icon-yc:before,.z-icon-y-combinator:before{content:"\f23b"}.z-icon-optin-monster:before{content:"\f23c"}.z-icon-opencart:before{content:"\f23d"}.z-icon-expeditedssl:before{content:"\f23e"}.z-icon-battery-4:before,.z-icon-battery:before,.z-icon-battery-full:before{content:"\f240"}.z-icon-battery-3:before,.z-icon-battery-three-quarters:before{content:"\f241"}.z-icon-battery-2:before,.z-icon-battery-half:before{content:"\f242"}.z-icon-battery-1:before,.z-icon-battery-quarter:before{content:"\f243"}.z-icon-battery-0:before,.z-icon-battery-empty:before{content:"\f244"}.z-icon-mouse-pointer:before{content:"\f245"}.z-icon-i-cursor:before{content:"\f246"}.z-icon-object-group:before{content:"\f247"}.z-icon-object-ungroup:before{content:"\f248"}.z-icon-sticky-note:before{content:"\f249"}.z-icon-sticky-note-o:before{content:"\f24a"}.z-icon-cc-jcb:before{content:"\f24b"}.z-icon-cc-diners-club:before{content:"\f24c"}.z-icon-clone:before{content:"\f24d"}.z-icon-balance-scale:before{content:"\f24e"}.z-icon-hourglass-o:before{content:"\f250"}.z-icon-hourglass-1:before,.z-icon-hourglass-start:before{content:"\f251"}.z-icon-hourglass-2:before,.z-icon-hourglass-half:before{content:"\f252"}.z-icon-hourglass-3:before,.z-icon-hourglass-end:before{content:"\f253"}.z-icon-hourglass:before{content:"\f254"}.z-icon-hand-grab-o:before,.z-icon-hand-rock-o:before{content:"\f255"}.z-icon-hand-stop-o:before,.z-icon-hand-paper-o:before{content:"\f256"}.z-icon-hand-scissors-o:before{content:"\f257"}.z-icon-hand-lizard-o:before{content:"\f258"}.z-icon-hand-spock-o:before{content:"\f259"}.z-icon-hand-pointer-o:before{content:"\f25a"}.z-icon-hand-peace-o:before{content:"\f25b"}.z-icon-trademark:before{content:"\f25c"}.z-icon-registered:before{content:"\f25d"}.z-icon-creative-commons:before{content:"\f25e"}.z-icon-gg:before{content:"\f260"}.z-icon-gg-circle:before{content:"\f261"}.z-icon-tripadvisor:before{content:"\f262"}.z-icon-odnoklassniki:before{content:"\f263"}.z-icon-odnoklassniki-square:before{content:"\f264"}.z-icon-get-pocket:before{content:"\f265"}.z-icon-wikipedia-w:before{content:"\f266"}.z-icon-safari:before{content:"\f267"}.z-icon-chrome:before{content:"\f268"}.z-icon-firefox:before{content:"\f269"}.z-icon-opera:before{content:"\f26a"}.z-icon-internet-explorer:before{content:"\f26b"}.z-icon-tv:before,.z-icon-television:before{content:"\f26c"}.z-icon-contao:before{content:"\f26d"}.z-icon-500px:before{content:"\f26e"}.z-icon-amazon:before{content:"\f270"}.z-icon-calendar-plus-o:before{content:"\f271"}.z-icon-calendar-minus-o:before{content:"\f272"}.z-icon-calendar-times-o:before{content:"\f273"}.z-icon-calendar-check-o:before{content:"\f274"}.z-icon-industry:before{content:"\f275"}.z-icon-map-pin:before{content:"\f276"}.z-icon-map-signs:before{content:"\f277"}.z-icon-map-o:before{content:"\f278"}.z-icon-map:before{content:"\f279"}.z-icon-commenting:before{content:"\f27a"}.z-icon-commenting-o:before{content:"\f27b"}.z-icon-houzz:before{content:"\f27c"}.z-icon-vimeo:before{content:"\f27d"}.z-icon-black-tie:before{content:"\f27e"}.z-icon-fonticons:before{content:"\f280"}.z-icon-reddit-alien:before{content:"\f281"}.z-icon-edge:before{content:"\f282"}.z-icon-credit-card-alt:before{content:"\f283"}.z-icon-codiepie:before{content:"\f284"}.z-icon-modx:before{content:"\f285"}.z-icon-fort-awesome:before{content:"\f286"}.z-icon-usb:before{content:"\f287"}.z-icon-product-hunt:before{content:"\f288"}.z-icon-mixcloud:before{content:"\f289"}.z-icon-scribd:before{content:"\f28a"}.z-icon-pause-circle:before{content:"\f28b"}.z-icon-pause-circle-o:before{content:"\f28c"}.z-icon-stop-circle:before{content:"\f28d"}.z-icon-stop-circle-o:before{content:"\f28e"}.z-icon-shopping-bag:before{content:"\f290"}.z-icon-shopping-basket:before{content:"\f291"}.z-icon-hashtag:before{content:"\f292"}.z-icon-bluetooth:before{content:"\f293"}.z-icon-bluetooth-b:before{content:"\f294"}.z-icon-percent:before{content:"\f295"}.z-icon-gitlab:before{content:"\f296"}.z-icon-wpbeginner:before{content:"\f297"}.z-icon-wpforms:before{content:"\f298"}.z-icon-envira:before{content:"\f299"}.z-icon-universal-access:before{content:"\f29a"}.z-icon-wheelchair-alt:before{content:"\f29b"}.z-icon-question-circle-o:before{content:"\f29c"}.z-icon-blind:before{content:"\f29d"}.z-icon-audio-description:before{content:"\f29e"}.z-icon-volume-control-phone:before{content:"\f2a0"}.z-icon-braille:before{content:"\f2a1"}.z-icon-assistive-listening-systems:before{content:"\f2a2"}.z-icon-asl-interpreting:before,.z-icon-american-sign-language-interpreting:before{content:"\f2a3"}.z-icon-deafness:before,.z-icon-hard-of-hearing:before,.z-icon-deaf:before{content:"\f2a4"}.z-icon-glide:before{content:"\f2a5"}.z-icon-glide-g:before{content:"\f2a6"}.z-icon-signing:before,.z-icon-sign-language:before{content:"\f2a7"}.z-icon-low-vision:before{content:"\f2a8"}.z-icon-viadeo:before{content:"\f2a9"}.z-icon-viadeo-square:before{content:"\f2aa"}.z-icon-snapchat:before{content:"\f2ab"}.z-icon-snapchat-ghost:before{content:"\f2ac"}.z-icon-snapchat-square:before{content:"\f2ad"}.z-icon-pied-piper:before{content:"\f2ae"}.z-icon-first-order:before{content:"\f2b0"}.z-icon-yoast:before{content:"\f2b1"}.z-icon-themeisle:before{content:"\f2b2"}.z-icon-google-plus-circle:before,.z-icon-google-plus-official:before{content:"\f2b3"}.z-icon-fa:before,.z-icon-font-awesome:before{content:"\f2b4"}.z-icon-handshake-o:before{content:"\f2b5"}.z-icon-envelope-open:before{content:"\f2b6"}.z-icon-envelope-open-o:before{content:"\f2b7"}.z-icon-linode:before{content:"\f2b8"}.z-icon-address-book:before{content:"\f2b9"}.z-icon-address-book-o:before{content:"\f2ba"}.z-icon-vcard:before,.z-icon-address-card:before{content:"\f2bb"}.z-icon-vcard-o:before,.z-icon-address-card-o:before{content:"\f2bc"}.z-icon-user-circle:before{content:"\f2bd"}.z-icon-user-circle-o:before{content:"\f2be"}.z-icon-user-o:before{content:"\f2c0"}.z-icon-id-badge:before{content:"\f2c1"}.z-icon-drivers-license:before,.z-icon-id-card:before{content:"\f2c2"}.z-icon-drivers-license-o:before,.z-icon-id-card-o:before{content:"\f2c3"}.z-icon-quora:before{content:"\f2c4"}.z-icon-free-code-camp:before{content:"\f2c5"}.z-icon-telegram:before{content:"\f2c6"}.z-icon-thermometer-4:before,.z-icon-thermometer:before,.z-icon-thermometer-full:before{content:"\f2c7"}.z-icon-thermometer-3:before,.z-icon-thermometer-three-quarters:before{content:"\f2c8"}.z-icon-thermometer-2:before,.z-icon-thermometer-half:before{content:"\f2c9"}.z-icon-thermometer-1:before,.z-icon-thermometer-quarter:before{content:"\f2ca"}.z-icon-thermometer-0:before,.z-icon-thermometer-empty:before{content:"\f2cb"}.z-icon-shower:before{content:"\f2cc"}.z-icon-bathtub:before,.z-icon-s15:before,.z-icon-bath:before{content:"\f2cd"}.z-icon-podcast:before{content:"\f2ce"}.z-icon-window-maximize:before{content:"\f2d0"}.z-icon-window-minimize:before{content:"\f2d1"}.z-icon-window-restore:before{content:"\f2d2"}.z-icon-times-rectangle:before,.z-icon-window-close:before{content:"\f2d3"}.z-icon-times-rectangle-o:before,.z-icon-window-close-o:before{content:"\f2d4"}.z-icon-bandcamp:before{content:"\f2d5"}.z-icon-grav:before{content:"\f2d6"}.z-icon-etsy:before{content:"\f2d7"}.z-icon-imdb:before{content:"\f2d8"}.z-icon-ravelry:before{content:"\f2d9"}.z-icon-eercast:before{content:"\f2da"}.z-icon-microchip:before{content:"\f2db"}.z-icon-snowflake-o:before{content:"\f2dc"}.z-icon-superpowers:before{content:"\f2dd"}.z-icon-wpexplorer:before{content:"\f2de"}.z-icon-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);-webkit-clip-path:inset(50%);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;clip-path:none;-webkit-clip-path:none;white-space:normal} diff --git a/org.adempiere.ui.zk/css/report.css b/org.adempiere.ui.zk/css/report.css index a2f4d49ff5..d6f60b75f5 100644 --- a/org.adempiere.ui.zk/css/report.css +++ b/org.adempiere.ui.zk/css/report.css @@ -97,6 +97,30 @@ div.rp-table-wrap > table > thead > tr > th { overflow: visible; } div.rp-table-wrap > table > thead > tr > th { - position: relative; - } -} + position: relative; + } +} + +.z-icon-Report::before { + content: "\f1ea"; +} +.z-icon-Window::before { + content: "\f022"; +} +.z-icon-Zoom::before { + content: "\f14c"; +} +[class^="z-icon-"], [class*=" z-icon-"] { + box-sizing: border-box; + padding-right: 4px; + line-height: 14px; +} +span.font-icon::before { + box-sizing: border-box; + display: inline-block; + font-size: 14px; + width: 16px; + text-align: center; + vertical-align: middle; + color: inherit; +}