Commit 18c2b013 by chenith

Client menu item enable only if company has Client support enabled.

parent eae276fc
package performa.utils;
import javax.servlet.http.HttpServletRequest;
import oneit.business.content.Article;
import oneit.business.content.transform.ContentTransformFactory;
import oneit.components.DefaultInitialisable;
import oneit.objstore.ObjectTransaction;
import oneit.security.SecUser;
import oneit.utils.ObjectTransform;
import performa.orm.Company;
import performa.orm.CompanyUser;
public class MenuItemDisableTransformFactory implements ContentTransformFactory, DefaultInitialisable
{
@Override
public ObjectTransform createTransform(Article article, HttpServletRequest request, ObjectTransaction transaction)
{
return new MenuItemDisableTransform(article, request, transaction);
}
public class MenuItemDisableTransform implements ObjectTransform
{
Article article;
HttpServletRequest request;
ObjectTransaction transaction;
SecUser secUser;
Company company;
public MenuItemDisableTransform(Article article, HttpServletRequest request, ObjectTransaction transaction)
{
this.article = article;
this.request = request;
this.transaction = transaction;
this.secUser = SecUser.getTXUser(transaction);
this.company = this.secUser.getExtension(CompanyUser.REFERENCE_CompanyUser).getCompany();
}
public Object transform(Object original)
{
if((Boolean)article.getAdditionalAttribute("Allow Disable", Boolean.FALSE)
&& this.company.getHasClientSupport()!=Boolean.TRUE)
{
return String.valueOf(original);
}
else
{
return "";
}
}
}
}
\ No newline at end of file
......@@ -258,6 +258,10 @@ ul.profile-dropdown {
.main-menu ul li{
clear: both;
}
.main-menu ul li.disabled{
pointer-events:none;
opacity:0.6;
}
.main-menu li a{
font-size: 15px;
color: #03a0e7;
......@@ -267,6 +271,9 @@ ul.profile-dropdown {
margin-bottom: 5px;
margin-left: 3px;
}
.main-menu ul li.disabled a{
color: #939393;
}
.main-menu li a.second-menu{
color: #4e5258;
}
......
......@@ -7,9 +7,10 @@
<DECORATOR id="auth" factory="MetaComponent" component="AdminPortalAuthDecorator" priv="TL_AccessAdminPortal"/>
</NODE>
<NODE name="NavBarSkinConfig::ADMIN_PORTAL" factory="Participant" class="oneit.servlets.forms.ErrorReportConfig">
<format item="LI_A_Selected_Menu.level0.section.entry |
LI_A_Selected_Menu.level0.article.entry"><![CDATA[${BracklineSeparator:<span class="brack-line"></span>}<li class="${selected:active}"><a class="${position} ${attrib:Additional CSS Class}" href="${link}" ${isTarget:target="?"}><span class="${attrib:Menu Icon CSS}"></span>${divsOpen}${attrib:Menu Title|title}${divsClose}</a></li>]]></format>
LI_A_Selected_Menu.level0.article.entry"><![CDATA[${BracklineSeparator:<span class="brack-line"></span>}<li class="${selected:active}${MenuItemDisable:disabled}"><a class="${position} ${attrib:Additional CSS Class}" href="${link}" ${isTarget:target="?"}><span class="${attrib:Menu Icon CSS}"></span>${divsOpen}${attrib:Menu Title|title}${divsClose}</a></li>]]></format>
</NODE>
<NODE name="AdminPortalAuthDecorator" factory="Participant" class="oneit.servlets.utils.decorator.AuthenticatorDecorator">
......
......@@ -110,6 +110,7 @@
<Attribute name="Menu Icon CSS" factory="MetaComponent" component="StringAttrib" mandatory="false"/>
<Attribute name="Add Brackline Separator" factory="MetaComponent" component="BooleanAttrib" mandatory="false"/>
<Attribute name="Additional CSS Class" factory="MetaComponent" component="StringAttrib" mandatory="false"/>
<Attribute name="Allow Disable" factory="MetaComponent" component="BooleanAttrib" mandatory="false"/>
</NODE>
<NODE name="WEB_BATCH::PERFORMA_ADMIN_PORTAL_BATCH">
......
<?xml version="1.0" encoding="UTF-8"?>
<!-- @AutoRun -->
<OBJECTS xmlns:oneit="http://www.1iT.com.au" name="">
<NODE factory="Vector" name="Script"><NODE class="oneit.appservices.upgrade.cms.CMSArticleUpdateOperation" factory="Participant" name="Invitation Mail">
<createSpecificIdentifier factory='String' value='UDQKBSOIBW9O2ET72SI93FJJ6SUWF3'/>
......
<?xml version="1.0" encoding="UTF-8"?>
<!-- @AutoRun -->
<OBJECTS xmlns:oneit="http://www.1iT.com.au" name="">
<NODE factory="Vector" name="Script"><NODE class="oneit.appservices.upgrade.cms.CMSArticleUpdateOperation" factory="Participant" name="Clients">
<createSpecificIdentifier factory='String' value='WYYPYG4D0N1FUERJX49D90I44AAD2Z'/>
<articleIdentifiers factory="Array" class="java.lang.String">
<NODE factory="String" value="WYYPYG4D0N1FUERJX49D90I44AAD2Z"/>
</articleIdentifiers>
<createdLabel factory="String" value="WYYPYG4D0N1FUERJX49D90I44AAD2Z"/>
<articleAttributeChanges factory="Map">
<NODE name="Additional CSS Class" factory="Null"/>
<NODE name="Exclude From Sitemap" factory="Boolean" value="false"/>
<NODE name="Exclude from SEO Indexing" factory="Boolean" value="false"/>
<NODE name="Allow Disable" factory="Boolean" value="true"/>
<NODE name="Add Brackline Separator" factory="Boolean" value="false"/>
<NODE name="On Top Menu" factory="Boolean" value="false"/>
<NODE name="On Footer Left" factory="Boolean" value="false"/>
<NODE name="Menu Title" factory="String" value="Clients"/>
<NODE name="On Footer Menu" factory="Boolean" value="false"/>
<NODE name="Exclude From Search" factory="Boolean" value="false"/>
<NODE name="Menu Icon CSS" factory="String" value="client-icon"/>
<NODE name="On Left Menu" factory="Boolean" value="true"/>
<NODE name="Shortcuts" factory="String" value="Clients"/>
<NODE name="Exclude From Navigation" factory="Boolean" value="false"/>
<NODE name="On Footer Right" factory="Boolean" value="false"/>
</articleAttributeChanges>
<ormAttributeChanges factory="Map">
<NODE name="PublishDate" factory="Date" value="2017-07-04 00:00:00"/>
<NODE name="WithdrawDate" factory="Date" value="2067-07-04 10:00:00"/>
<NODE name="Title" factory="String" value="Clients"/>
<NODE name="ShortTitle" factory="String" value="Clients"/>
<NODE name="SortOrder" factory="Integer" value="37839080"/>
<NODE name="Type" factory="Enumerated" class="oneit.business.content.ArticleType" value="ARTICLE"/>
<NODE name="Template" factory="Enumerated" class="oneit.business.content.ArticleTemplate" value="CLIENTS"/>
</ormAttributeChanges>
<content factory="Map"> <NODE name="Body" factory="Map">
<NODE name="Content" factory="String"><![CDATA[
<p></p>
]]></NODE>
<NODE name="IncludeContent" factory="Boolean" value="true"/>
</NODE>
<NODE name="Synopsis" factory="Map">
<NODE name="Content" factory="String"><![CDATA[
<p></p>
]]></NODE>
<NODE name="IncludeContent" factory="Boolean" value="true"/>
</NODE>
</content>
</NODE>
</NODE>
</OBJECTS>
\ No newline at end of file
......@@ -90,6 +90,7 @@
<INHERITS nodename="SharedPersonalisationTransformFactories:parent"/>
<NODE name="BracklineSeparator" class="performa.utils.BracklineSeparatorTransformFactory" />
<NODE name="MenuItemDisable" class="performa.utils.MenuItemDisableTransformFactory" />
</NODE>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment