An Error Occurred:

/layout/template.xhtml: /news-page.xhtml @13,97 value="NUS Libraries - #{ActionWhatsHappenings.happenings.title}": Error reading 'happenings' on type org.domain.frontend.session.ActionWhatsHappenings_$$_javassist_seam_13

+ Stack Trace

javax.el.ELException: /layout/template.xhtml: /news-page.xhtml @13,97 value="NUS Libraries - #{ActionWhatsHappenings.happenings.title}": Error reading 'happenings' on type org.domain.frontend.session.ActionWhatsHappenings_$$_javassist_seam_13
	at com.sun.facelets.compiler.TextInstruction.write(TextInstruction.java:48)
	at com.sun.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:39)
	at com.sun.facelets.compiler.UILeaf.encodeAll(UILeaf.java:149)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
	at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
	at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:444)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:310)
	at org.jboss.seam.web.RewriteFilter.process(RewriteFilter.java:98)
	at org.jboss.seam.web.RewriteFilter.doFilter(RewriteFilter.java:57)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)
	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:60)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183)
	at org.jboss.web.tomcat.service.session.ClusteredSessionValve.handleRequest(ClusteredSessionValve.java:135)
	at org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(ClusteredSessionValve.java:94)
	at org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteValve.java:88)
	at org.jboss.web.tomcat.service.session.LockingValve.invoke(LockingValve.java:62)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:442)
	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95)
	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
	at org.jboss.web.tomcat.service.sso.ClusteredSingleSignOn.invoke(ClusteredSingleSignOn.java:692)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.internalProcess(ActiveRequestResponseCacheValve.java:74)
	at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:47)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
	at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:420)
	at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:425)
	at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:2036)
	at java.lang.Thread.run(Thread.java:701)
Caused by: java.lang.NullPointerException
	at org.domain.frontend.session.ActionWhatsHappenings.getHappenings(ActionWhatsHappenings.java:593)
	at sun.reflect.GeneratedMethodAccessor1143.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:622)
	at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
	at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
	at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.persistence.ManagedEntityInterceptor.aroundInvoke(ManagedEntityInterceptor.java:48)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
	at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
	at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
	at org.domain.frontend.session.ActionWhatsHappenings_$$_javassist_seam_13.getHappenings(ActionWhatsHappenings_$$_javassist_seam_13.java)
	at sun.reflect.GeneratedMethodAccessor1142.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:622)
	at javax.el.BeanELResolver.getValue(BeanELResolver.java:83)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
	at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)
	at org.jboss.el.parser.AstPropertySuffix.getValue(AstPropertySuffix.java:53)
	at org.jboss.el.parser.AstValue.getValue(AstValue.java:67)
	at org.jboss.el.parser.AstDeferredExpression.getValue(AstDeferredExpression.java:26)
	at org.jboss.el.parser.AstCompositeExpression.getValue(AstCompositeExpression.java:31)
	at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
	at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
	at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:40)
	at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
	at com.sun.facelets.el.ELText$ELTextVariable.writeText(ELText.java:184)
	at com.sun.facelets.compiler.TextInstruction.write(TextInstruction.java:45)
	... 65 more

+ Component Tree

<AjaxViewRoot id="_viewRoot" immediate="false" locale="en" renderKitId="HTML_BASIC" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false" viewId="/news-page.xhtml">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html lang="en-gb" dir="ltr" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta name="verify-v1" content="0ePMKnGbRLHaqFejhj5TN4SPJhqy6O3bvRze5xP+ah0="/> <meta name="keywords" content="nus singapore university, university in Singapore, university national Singapore, top coursess and programmes in singapore, degree in singapore NUS, NU S, NU, global university in Asia, university free scholarships in singapore, overseas exchange programmes"/> <meta name="description" content="NUS university of Singapore is ranked consistently as one of the world's top universities. We offer the most extensive college degree courses in Singapore."/> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/> <title>#{titleParam}</title> <link rel="icon" href="#{request.contextPath}/images/favicon.ico" type="image/x-icon"/> <link rel="shortcut icon" href="#{request.contextPath}/images/favicon.ico" type="image/x-icon"/> <link rel="stylesheet" href="#{request.contextPath}/css/bootstrap.css" type="text/css"/> <link rel="stylesheet" href="#{request.contextPath}/css/style.css" type="text/css"/> <link rel="stylesheet" href="#{request.contextPath}/css/off-canvas.css" type="text/css"/> <link rel="stylesheet" href="#{request.contextPath}/css/scrolltotop.css" type="text/css"/> <link rel="stylesheet" href="#{request.contextPath}/css/font-awesome.min.css" type="text/css"/> <link rel="stylesheet" href="#{request.contextPath}/css/jquery.bxslider.css" type="text/css"/> <link rel="stylesheet" href="#{request.contextPath}/css/gray.min.css" type="text/css"/> <link rel="stylesheet" href="#{request.contextPath}/css/custom.css" type="text/css"/> <!--[if lte IE 6]> <link rel="stylesheet" type="text/css" href="http://www.nus.edu.sg/iw/resources/global/styles/ie.css" media="screen, projection" /> <![endif]--> <!--[if IE 7.0]> <link rel="stylesheet" type="text/css" href="http://www.nus.edu.sg/iw/resources/global/styles/ie7.css" media="screen, projection" /> <![endif]--> <script type="text/javascript" src="#{request.contextPath}/js/jquery.min.js"/> <script type="text/javascript" src="#{request.contextPath}/js/jquery-noconflict.js"/> <script type="text/javascript" src="#{request.contextPath}/js/jquery-migrate.min.js"/> <script type="text/javascript" src="#{request.contextPath}/js/jquery.tap.min.js"/> <script type="text/javascript" src="#{request.contextPath}/js/scrolltotop.js"/> <script type="text/javascript" src="#{request.contextPath}/js/bootstrap.js"/> <script type="text/javascript" src="#{request.contextPath}/js/off-canvas.js"/> <script type="text/javascript" src="#{request.contextPath}/js/jquery.bxslider.min.js"/> <script type="text/javascript" src="#{request.contextPath}/js/jquery.gray.min.js"/> <script type="text/javascript" src="#{request.contextPath}/js/script.js"/> <script type="text/javascript" src="#{request.contextPath}/js/nus_searchform.js"/> <script type="text/javascript" src="#{request.contextPath}/support.js"/> <script type="text/javascript" src="#{request.contextPath}/js/loading.js"/> <!-- datepicker scripts --> <link rel="stylesheet" href="#{request.contextPath}/datepicker/css/bootstrap-datepicker.min.css" type="text/css"/> <script type="text/javascript" src="#{request.contextPath}/datepicker/js/bootstrap-datepicker.min.js"/> <!-- //datepicker scripts --> <!-- Encrypted Eamil -->
<HtmlLoadScript id="j_id2" rendered="true" src="/js/decoder.js" transient="false"/>
<!-- datetimepicker scripts and dependencies --> <link rel="stylesheet" href="#{request.contextPath}/css/bootstrap-datetimepicker.min.css"/> <script src="#{request.contextPath}/js/moment.js" type="text/javascript"/> <script src="#{request.contextPath}/js/bootstrap-datetimepicker.min.js" type="text/javascript"/> <script type="text/javascript"> var CONTEXT_ROOT = "${request.contextPath}"; </script> <script> function msieversion() { var ua = window.navigator.userAgent; var msie = ua.indexOf("MSIE "); var msedge = ua.indexOf("Edge"); if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:[0-9\.]*/)) // If Internet Explorer, return version number { alert("You are using Internet Explorer, this function is currently only supported in Chrome and Firefox"); } else if (msedge > 0) { alert("You are using Microsoft Edge, this function is currently only supported in Chrome and Firefox"); } } jQuery.noConflict(); jQuery(document).ready(function($){ $('.datetimepicker').datetimepicker({ format: 'DD/MM/YYYY LT', showClose: true, icons: { time: 'glyphicon glyphicon-timetext', } }); $('.timeonlypicker').datetimepicker({ format: 'LT' }); $('.dateonlypicker').datetimepicker({ format: 'DD/MM/YYYY' }); var monochrome = #{ActionPortalBackground.monochrome}; var background = #{ActionPortalBackground.background}; if (monochrome == true) { //preserve the event msieversion(); $('body').addClass('grayscale'); //initialise the plugin $("body").removeClass('grayscale-off'); } else { $("body").addClass('grayscale-off'); } if (background == true) { //preserve the session $(".page-wrapper").css("background-size", "0"); } else { $(".page-wrapper").css("background-size", "cover"); } }); </script> <!-- //datetimepicker scripts --> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]-->
<HtmlRemote id="j_id4" include="authenticator" rendered="true" transient="false"/>
<HtmlRemote id="j_id5" include="ActionELinksWidgets" rendered="true" transient="false"/>
<script type="text/javascript"> function changeBg(){ var val = #{rich:element('disable-background')}; bgChange(val); } function bgChange(val){ if (val.checked == true) { //preserve the session jQuery(".page-wrapper").css("background-size", "0"); } else { jQuery(".page-wrapper").css("background-size", "cover"); } } function changeMono(){ var val = #{rich:element('enable-monochrome')}; monoChange(val); document.getElementById("settingsMenuMobile:enable-monochrome-mobile").checked = ((val.checked == true) ? true : false); } function changeMonoMobile(){ var val = #{rich:element('enable-monochrome-mobile')}; monoChange(val); document.getElementById("settingsMenu:enable-monochrome").checked = ((val.checked == true) ? true : false); } function monoChange(val){ if (val.checked == true) { //preserve the event msieversion(); jQuery('body').addClass('grayscale'); //initialise the plugin jQuery("body").removeClass('grayscale-off'); } else { jQuery("body").addClass('grayscale-off'); } } //Method for add-to-favourites widget. function addToFavourites() { var title = "#{titleParam}"; var link = location.href; Seam.Component.getInstance("ActionELinksWidgets").addFavWidgetLink(title, link, 6, addToFavouritesCallback); } //Callback method for add-to-favourites widget. function addToFavouritesCallback(result) { if (result == "success") { var title2 = "#{titleParam}"; alert("Page added to My Favourite Links widget successfully."); if (title2 == "My Favourites" || title2 == "NUS Libraries") { location.reload(true); } } else if(result == "existed"){ alert("You have already added this page as a favourite link."); } else if(result == "max20") { alert("You can only add a maximum of 20 pages to your My Favourites Links widget."); } else { alert("Please add the My Favourites Link widget first before adding the page to the widget."); } } function loadLoginPanel() { goLogin(); jQuery("#toggleMenuButton").click(); } function goLogin() { Seam.Component.getInstance("authenticator").setUrlBefore(document.URL); //window.setTimeout('goSSO()',400); } function goSSO() { window.location.href = getRootSSO() + '/frontendLoginSSO.sso'; } </script> </head> <body> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-16476667-7', 'auto'); ga('require', 'displayfeatures'); ga('send', 'pageview'); </script> <div class="bs-wrapper"> <!-- Need this wrapper for off-canvas menu. Remove if you don't use of-canvas --> <!-- HEADER --> <header id="bs-header" class="bs-header hidden-xs hidden-sm"> <div class="container"> <div class="row"> <!-- LOGO --> <div class="col-xs-12 col-sm-12 col-md-6 logo"> <div class="logo-container"> <div class="logo-image"> <img class="logo-img" src="#{request.contextPath}/images/logo.png" alt="NUS Libraries logo" usemap="#logoBig"/> <map name="logoBig"> <area shape="rect" coords="0,0,130,60" href="http://www.nus.edu.sg" alt="NUS Homepage" target="_blank"/> <area shape="rect" coords="220,0,130,60" href="http://www.lib.nus.edu.sg/" alt="NUS Libraries Homepage"/> </map> <span>NUS</span> </div> </div> </div> <!-- //LOGO --> <!-- QUICKLINKS --> <div class="col-xs-12 col-sm-12 col-md-6"> <div class="quicklinks"> <div class="quicklinks-container"> <ul class="nav nav-pills nav-stacked"> <li><a href="https://ivle.nus.edu.sg/">IVLE</a></li> <li><a href="http://exchange.nus.edu.sg/">Email</a></li> <li><a href="http://www.lib.nus.edu.sg/">Library</a></li> <li><a href="http://www.nus.edu.sg/campusmap/">Map</a></li> <li><a href="https://myaces.nus.edu.sg/CoE/">Calendar</a></li> </ul> </div> </div> </div> <!-- //QUICKLINKS --> </div> </div> </header> <!-- //HEADER --> <!-- MAIN NAVIGATION --> <nav id="bs-mainnav" class="wrap navbar navbar-default bs-mainnav"> <div class="container"> <!-- Brand and toggle get grouped for better mobile display --> <div class="navbar-header"> <div class="mobile-logo hidden-md hidden-lg "> <!-- MOBILE LOGO --> <img src="#{request.contextPath}/images/logo.png" alt="NUS Libraries Logo" usemap="#logoSmall"/> <map name="logoSmall"> <area shape="rect" coords="0,0,65,30" href="http://www.nus.edu.sg" alt="NUS Homepage" target="_blank"/> <area shape="rect" coords="110,0,65,30" href="http://www.lib.nus.edu.sg/" alt="NUS Libraries Homepage"/> </map> <!-- //MOBILE LOGO --> </div> <button id="toggleMenuButton" class="btn-toggle off-canvas-toggle hidden-lg hidden-md" type="button" data-pos="right" data-nav="#bs-off-canvas" data-effect="off-canvas-effect-4"> <i class="fa fa-bars"/> </button> <!-- OFF-CANVAS SIDEBAR --> <div id="bs-off-canvas" class="bs-off-canvas hidden-lg hidden-md"> <div class="bs-off-canvas-header"> <h2 class="bs-off-canvas-header-title">Sidebar</h2> </div> <div class="bs-off-canvas-body"> <div class="bs-module module_menu"> <div class="module-inner"> <h3 class="module-title "><span>Main Menu</span></h3> <div class="module-ct"> <ul class="nav nav-pills nav-stacked">
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@27e0fbc9" first="0" id="j_id7" rendered="true" rowIndex="0" rowKeyVar="colMenu" rows="0" transient="false" var="_cmenuin">
<li class="#{colMenu == 0 ? 'current active' : ''}"><a href="#{empty _cmenuin.url ? '#' : _cmenuin.url}" target="#{(!(_cmenuin.url == '-') and (_cmenuin.urlNewTab == 'Y')) ? '_blank' : '_self'}">#{_cmenuin.name}</a></li>
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@3c7d7f03" first="0" id="j_id9" rendered="true" rowIndex="0" rows="0" transient="false" var="_cmenuinL2">
<ul class="level-one"> <li>
<HtmlAjaxRegion id="j_id11" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<strong>#{_cmenuinL2.name}</strong>
</HtmlAjaxRegion>
<HtmlAjaxRegion id="j_id13" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<a href="#{_cmenuinL2.url}" target="#{(!(_cmenuinL2.url == '-') and (_cmenuinL2.urlNewTab == 'Y')) ? '_blank' : '_self'}">#{_cmenuinL2.name}</a>
</HtmlAjaxRegion>
</li>
<HtmlAjaxRegion id="j_id16" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@531dbcfb" first="0" id="j_id17" rendered="true" rowIndex="0" rows="0" transient="false" var="_cmenuinL3">
<HtmlAjaxRegion id="j_id18" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<li><a href="#{_cmenuinL3.url}" target="#{_cmenuinL3.urlNewTab == 'Y' ? '_blank' : '_self'}">#{_cmenuinL3.name}</a></li>
</HtmlAjaxRegion>
<HtmlAjaxRegion id="j_id20" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<strong>#{_cmenuinL3.name}</strong>
</HtmlAjaxRegion>
</HtmlAjaxRepeat>
</HtmlAjaxRegion>
</ul>
</HtmlAjaxRepeat>
</HtmlAjaxRepeat>
</ul> </div> </div> </div> <div class="bs-module module"> <div class="module-inner"> <h3 class="module-title "><span>Quicklinks</span></h3> <div class="module-ct"> <ul class="nav nav-pills nav-stacked "> <li><a href="https://ivle.nus.edu.sg/">IVLE</a></li> <li><a href="http://exchange.nus.edu.sg/">Email</a></li> <li><a href="http://www.lib.nus.edu.sg/">Library</a></li> <li><a href="http://www.nus.edu.sg/campusmap/">Map</a></li> <li><a href="https://myaces.nus.edu.sg/CoE/">Calendar</a></li> </ul> </div> </div> </div> <div class="bs-module module"> <div class="module-inner"> <h3 class="module-title "><span>Admin</span></h3> <div class="module-ct">
<HtmlForm enctype="application/x-www-form-urlencoded" id="settingsMenuMobile" prependId="true" rendered="true" submitted="false" transient="false">
<ul class="nav nav-pills nav-stacked "> <li>
<HtmlPanelGroup id="j_id25" rendered="true" transient="false">
<a href="#" onclick="loadLoginPanel();" data-toggle="modal" data-target="#loginWindow">myPortal</a>
</HtmlPanelGroup>
<HtmlPanelGroup id="j_id27" rendered="false" transient="false">
<a href="/frontend/dashboard">
<HtmlOutputText escape="true" id="j_id29" rendered="true" transient="false" value="Welcome, "/>
<br/>
<HtmlLink action="#{identity.logout}" actionExpression="#{identity.logout}" disabled="false" id="j_id31" immediate="false" includePageParams="true" propagation="default" rendered="true" styleClass="red-text" transient="false" value="Logout"/>
</a>
</HtmlPanelGroup>
</li> <li><a href="#">Settings</a></li> <li> <label class="settings-switch">
<HtmlSelectBooleanCheckbox disabled="false" id="enable-monochrome-mobile" immediate="false" localValueSet="false" onchange="msieversion();;A4J.AJAX.Submit('_viewRoot','settingsMenuMobile',event,{'control':this,'oncomplete':function(request,event,data){changeMonoMobile();},'similarityGroupingId':'settingsMenuMobile:j_id34','parameters':{'settingsMenuMobile:j_id34':'settingsMenuMobile:j_id34','ajaxSingle':'settingsMenuMobile:enable\x2Dmonochrome\x2Dmobile'} ,'eventsQueue':'myQueue','actionUrl':'/frontend/news\x2Dpage;jsessionid=\x2DF27vLvNueDILflWr+cMZA__.node1'} )" readonly="false" rendered="true" required="false" selected="false" styleClass="enable-monochrome" transient="false" valid="true" value="false">
org.ajax4jsf.ajax.SUPPORTonchange
<HtmlAjaxSupport ajaxSingle="true" bypassUpdates="false" disableDefault="false" disabled="false" event="onchange" eventsQueue="myQueue" id="j_id34" ignoreDupResponses="false" immediate="false" limitToList="false" oncomplete="changeMonoMobile();" onsubmit="msieversion();" rendered="true" requestDelay="-2147483648" timeout="-2147483648" transient="false"/>
</HtmlSelectBooleanCheckbox>
<span class="lbl">Enable Monochrome</span> </label> </li> </ul>
</HtmlForm>
</div> </div> </div> </div> </div> <!-- //OFF-CANVAS SIDEBAR --> <button type="button" class="btn-toggle search-toggle collapsed" data-toggle="collapse" data-target="#search-collapse"> <i class="fa fa-search"/> </button> </div> <div class="bs-navbar navbar-collapse collapse"> <div class="bs-megamenu" data-responsive="true"> <ul class="nav navbar-nav level0">
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@45622d5e" first="0" id="j_id37" rendered="true" rowIndex="0" rowKeyVar="colMenu" rows="0" transient="false" var="_cmenuin">
<HtmlAjaxRegion id="j_id38" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<li class="#{colMenu == 0 ? 'current active' : 'dropdown'}"> <a href="#{(_cmenuin.linkStatus == 'E') ? ((_cmenuin.url == '-') ? '#' : _cmenuin.url) : '#'}" target="#{(!(_cmenuin.url == '-') and (_cmenuin.urlNewTab == 'Y')) ? '_blank' : '_self'}"> #{_cmenuin.name}
<HtmlAjaxRegion id="j_id40" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<b class="caret"/>
</HtmlAjaxRegion>
</a>
<HtmlAjaxRegion id="j_id43" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<ul class="dropdown-menu">
<HtmlAjaxRegion id="j_id45" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<li> <div class="megamenu-content">
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@19ad1477" first="0" id="j_id47" rendered="true" rowIndex="0" rows="0" transient="false" var="_cmenuinL2">
<ul class="list-unstyled"> <li>
<HtmlAjaxRegion id="j_id49" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<a href="#{((_cmenuinL2.url == '-') ? '#' : _cmenuinL2.url)}" target="#{(!(_cmenuinL2.url == '-') and (_cmenuinL2.urlNewTab == 'Y')) ? '_blank' : '_self'}">#{_cmenuinL2.name}</a>
</HtmlAjaxRegion>
<HtmlAjaxRegion id="j_id51" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<p class="megamenu-heading"><strong>#{_cmenuinL2.name}</strong></p>
</HtmlAjaxRegion>
</li>
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@321a9dcc" first="0" id="j_id54" rendered="true" rowIndex="0" rows="0" transient="false" var="_cmenuinL3">
<li>
<HtmlAjaxRegion id="j_id56" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<a href="#{_cmenuinL3.url}" target="#{_cmenuinL3.urlNewTab == 'Y' ? '_blank' : '_self'}">#{_cmenuinL3.name}</a>
</HtmlAjaxRegion>
<HtmlAjaxRegion id="j_id58" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<p class="megamenu-heading"><strong>#{_cmenuinL3.name}</strong></p>
</HtmlAjaxRegion>
</li>
</HtmlAjaxRepeat>
</ul>
</HtmlAjaxRepeat>
</div> </li>
</HtmlAjaxRegion>
<HtmlAjaxRegion id="j_id63" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@716dd5c6" first="0" id="j_id64" rendered="true" rowIndex="0" rows="0" transient="false" var="_cmenuinL2">
<li>
<HtmlAjaxRegion id="j_id66" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<a href="#{_cmenuinL2.url}" target="#{_cmenuinL2.urlNewTab == 'Y' ? '_blank' : '_self'}">#{_cmenuinL2.name}</a>
</HtmlAjaxRegion>
<HtmlAjaxRegion id="j_id68" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<p class="megamenu-heading"><strong>#{_cmenuinL2.name}</strong></p>
</HtmlAjaxRegion>
</li>
</HtmlAjaxRepeat>
</HtmlAjaxRegion>
</ul>
</HtmlAjaxRegion>
</li>
</HtmlAjaxRegion>
</HtmlAjaxRepeat>
</ul> </div> </div> </div> <!-- HEAD SEARCH --> <div id="search-collapse" class="search-collapse collapse"> <div class="search-container" role="search"> <div class="container"> <div class="search" id="searchform"> <form class="form-inline form-search" id="frmSearch" name="frmSearch" onsubmit="evalSearch();return false"> <label for="txtKeyword" class="element-invisible">Search ...</label> <i class="fa fa-search"/> <input class="form-control input-lg" type="text" id="txtKeyword" name="txtKeyword" placeholder="Search in..."/> <div class="select"> <select id="SearchMenu" name="SearchMenu"> <option value="4" selected="selected">NUS Libraries</option> <option value="0">NUS Websites</option> <option value="1">Internet</option> <option value="2">Staff Directory</option> <option value="3">Advanced Search</option> </select> </div> <button class="btn btn-orange btn-lg" type="submit" id="search-submit">Go <i class="fa fa-chevron-circle-right" aria-hidden="true"/></button> </form> </div> </div> </div> </div> <!-- //HEAD SEARCH --> <!-- BREADCRUMBS -->
<HtmlPanelGroup id="nusBreadcrumbs" rendered="true" transient="false">
<HtmlForm enctype="application/x-www-form-urlencoded" id="settingsMenu" prependId="true" rendered="true" submitted="false" transient="false">
<div class="breadcrumbs-container hidden-xs"> <div class="container"> <div class="breadcrumbs"> <div class="breadcrumbs-link"> <span><a href="#{request.contextPath}/">NUS Libraries / </a></span> <span><a href="#">#{sectionParam}</a></span> <div class="quick-button-links">
<HtmlPanelGroup id="j_id75" rendered="true" transient="false">
<a href="#" onclick="return goLogin()" data-toggle="modal" data-target="#loginWindow"> <div class="quick-button active-button"> <i class="fa fa-user" aria-hidden="true"/>myPortal </div> </a>
</HtmlPanelGroup>
<HtmlPanelGroup id="j_id77" rendered="false" transient="false">
<a href="/frontend/dashboard"> <div class="quick-button active-button"> <i class="fa fa-user" aria-hidden="true"/>
<HtmlOutputText escape="true" id="j_id79" rendered="true" transient="false" value="Welcome, "/>
<HtmlSpacer height="1" id="j_id80" rendered="true" title="" transient="false" width="5px"/>
<HtmlLink action="#{identity.logout}" actionExpression="#{identity.logout}" disabled="false" id="j_id81" immediate="false" includePageParams="true" propagation="default" rendered="true" styleClass="red-text" transient="false" value="[Logout]"/>
</div> </a>
</HtmlPanelGroup>
<span id="settings"> <a href="#"> <div class="quick-button"> <i class="fa fa-cog" aria-hidden="true"/>Settings </div> </a> <span class="settings-dropdown"> <ul> <li>
<HtmlSelectBooleanCheckbox disabled="false" id="disable-background" immediate="false" localValueSet="false" onchange="A4J.AJAX.Submit('_viewRoot','settingsMenu',event,{'control':this,'oncomplete':function(request,event,data){changeBg();},'similarityGroupingId':'settingsMenu:j_id84','parameters':{'ajaxSingle':'settingsMenu:disable\x2Dbackground','settingsMenu:j_id84':'settingsMenu:j_id84'} ,'eventsQueue':'myQueue','actionUrl':'/frontend/news\x2Dpage;jsessionid=\x2DF27vLvNueDILflWr+cMZA__.node1'} )" readonly="false" rendered="true" required="false" selected="false" styleClass="sw" transient="false" valid="true" value="false">
org.ajax4jsf.ajax.SUPPORTonchange
<HtmlAjaxSupport ajaxSingle="true" bypassUpdates="false" disableDefault="false" disabled="false" event="onchange" eventsQueue="myQueue" id="j_id84" ignoreDupResponses="false" immediate="false" limitToList="false" oncomplete="changeBg();" rendered="true" requestDelay="-2147483648" timeout="-2147483648" transient="false"/>
</HtmlSelectBooleanCheckbox>
<HtmlOutputLabel escape="true" for="disable-background" id="j_id85" rendered="true" transient="false"/>
<span>Disable Background</span> </li> <li>
<HtmlSelectBooleanCheckbox disabled="false" id="enable-monochrome" immediate="false" localValueSet="false" onchange="msieversion();;A4J.AJAX.Submit('_viewRoot','settingsMenu',event,{'control':this,'oncomplete':function(request,event,data){changeMono();},'similarityGroupingId':'settingsMenu:j_id87','parameters':{'ajaxSingle':'settingsMenu:enable\x2Dmonochrome','settingsMenu:j_id87':'settingsMenu:j_id87'} ,'eventsQueue':'myQueue','actionUrl':'/frontend/news\x2Dpage;jsessionid=\x2DF27vLvNueDILflWr+cMZA__.node1'} )" readonly="false" rendered="true" required="false" selected="false" styleClass="sw" transient="false" valid="true" value="false">
org.ajax4jsf.ajax.SUPPORTonchange
<HtmlAjaxSupport ajaxSingle="true" bypassUpdates="false" disableDefault="false" disabled="false" event="onchange" eventsQueue="myQueue" id="j_id87" ignoreDupResponses="false" immediate="false" limitToList="false" oncomplete="changeMono();" onsubmit="msieversion();" rendered="true" requestDelay="-2147483648" timeout="-2147483648" transient="false"/>
</HtmlSelectBooleanCheckbox>
<HtmlOutputLabel escape="true" for="enable-monochrome" id="j_id88" rendered="true" transient="false"/>
<span>Enable Monochrome</span> </li> </ul> </span> </span> <a href="#"> <div class="quick-button text-increase"> <span>A+</span> </div> </a> <a href="#"> <div class="quick-button text-decrease"> <span>A-</span> </div> </a>
<HtmlAjaxRegion id="favouriteButton" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<a href="javascript:addToFavourites()"> <div class="quick-button"> <i class="fa fa-star" aria-hidden="true"/>Favourite </div> </a>
</HtmlAjaxRegion>
</div> </div> </div> </div> </div>
</HtmlForm>
</HtmlPanelGroup>
<!-- //BREADCRUMBS --> </nav> <!-- //MAIN NAVIGATION --> <!-- AUTO FOCUS ON EXPAND --> <script type="text/javascript"> jQuery.noConflict(); jQuery(document).ready(function($){ $("#search-collapse").on('shown.bs.collapse', function(){ $('#mod-search-searchword').focus(); }); }); </script> <!-- Portal Login -->
<HtmlPanelGroup id="nusLoginPanel" rendered="true" transient="false">
<div id="loginWindow" class="modal fade" role="dialog"> <script type="text/javascript"> function userSubmitter(e){ e = e? e : window.event; var k = e.keyCode? e.keyCode : e.which? e.which : null; if (k == 13){ document.getElementById("nusLoginForm:nusNetID").focus(); document.getElementById("nusLoginForm:nusNetPassword").focus(); document.getElementById("nusLoginForm:loginBut").click(); return false; } return true; } function hideMessage(){ var element = document.getElementById('nusLoginForm:logMessage'); if (typeof element !== "undefined" && element != null) { document.getElementById("nusLoginForm:logMessage").style.display = "none"; } } function updateFields(){ document.getElementById("nusLoginForm:nusNetID").focus(); document.getElementById("nusLoginForm:nusNetPassword").focus(); document.getElementById("nusLoginForm:nusNetPassword").blur(); } </script> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content modal-login"> <div class="modal-header"> <h4 class="modal-title">Login to NUS Libraries</h4> </div> <div class="modal-body"> <div class="row"> <div class="col-xs-12">
<HtmlForm enctype="application/x-www-form-urlencoded" id="nusLoginForm" prependId="true" rendered="true" styleClass="form-signin" submitted="false" transient="false">
<div>
<HtmlMessages errorClass="error-field" globalOnly="false" id="logMessage" infoClass="infomsg" layout="list" rendered="true" showDetail="false" showSummary="true" styleClass="message" tooltip="false" transient="false" warnClass="warnmsg"/>
</div> <div class="row"> <div class="col-md-3"> <h5><label for="nusNetID">NUSNET ID :</label></h5> </div> <div class="col-md-9"> <div class="input-group" id="idGroup">
<HtmlInputText disabled="false" id="nusNetID" immediate="false" localValueSet="false" maxlength="-2147483648" onblur="A4J.AJAX.Submit('_viewRoot','nusLoginForm',event,{'control':this,'similarityGroupingId':'nusLoginForm:j_id96','parameters':{'ajaxSingle':'nusLoginForm:nusNetID','nusLoginForm:j_id96':'nusLoginForm:j_id96'} ,'eventsQueue':'myQueue','actionUrl':'/frontend/news\x2Dpage;jsessionid=\x2DF27vLvNueDILflWr+cMZA__.node1'} )" onclick="hideMessage()" onkeypress="javascript:userSubmitter(event)" readonly="false" rendered="true" required="false" size="-2147483648" styleClass="form-control" transient="false" valid="true">
org.ajax4jsf.ajax.SUPPORTonblur
<HtmlAjaxSupport ajaxSingle="true" bypassUpdates="false" disableDefault="false" disabled="false" event="onblur" eventsQueue="myQueue" id="j_id96" ignoreDupResponses="false" immediate="false" limitToList="false" rendered="true" requestDelay="-2147483648" timeout="-2147483648" transient="false"/>
</HtmlInputText>
</div> <p>e.g. Staff : CLBJT <br/> Students :<br/> - A0135790 (Registered before 2015)<br/> - E0246810 (Registered from 2015 onwards)</p> </div> <div class="col-md-3"> <h5><label for="nusNetPassword">Password :</label></h5> </div> <div class="col-md-9"> <div class="input-group" id="passGroup">
<HtmlInputSecret disabled="false" id="nusNetPassword" immediate="false" localValueSet="false" maxlength="-2147483648" onblur="A4J.AJAX.Submit('_viewRoot','nusLoginForm',event,{'control':this,'similarityGroupingId':'nusLoginForm:j_id98','parameters':{'nusLoginForm:j_id98':'nusLoginForm:j_id98','ajaxSingle':'nusLoginForm:nusNetPassword'} ,'eventsQueue':'myQueue','actionUrl':'/frontend/news\x2Dpage;jsessionid=\x2DF27vLvNueDILflWr+cMZA__.node1'} )" onclick="hideMessage()" onkeypress="javascript:userSubmitter(event)" readonly="false" redisplay="false" rendered="true" required="false" size="-2147483648" styleClass="form-control" transient="false" valid="true">
org.ajax4jsf.ajax.SUPPORTonblur
<HtmlAjaxSupport ajaxSingle="true" bypassUpdates="false" disableDefault="false" disabled="false" event="onblur" eventsQueue="myQueue" id="j_id98" ignoreDupResponses="false" immediate="false" limitToList="false" rendered="true" requestDelay="-2147483648" timeout="-2147483648" transient="false"/>
</HtmlInputSecret>
</div> </div> </div> <div class="row"> <div class="col-md-3"> </div> <div class="col-md-9">
<HtmlAjaxCommandButton action="#{identity.login}" actionExpression="#{identity.login}" ajaxSingle="true" bypassUpdates="false" disabled="false" eventsQueue="myQueue" id="loginBut" ignoreDupResponses="false" immediate="false" limitToList="false" onclick="javascript:updateFields()" rendered="true" requestDelay="-2147483648" size="-2147483648" styleClass="btn btn-lg btn-orange" timeout="-2147483648" transient="false" value="LOGIN"/>
<br/> <a href="http://libfaq.nus.edu.sg/faq/71339" target="_blank">Problems logging in?</a> </div> </div>
</HtmlForm>
</div> </div><!-- /container --> </div> <div class="modal-footer"> <button class="btn btn-lg btn-orange" data-dismiss="modal" onclick="hideMessage()" style="margin-left: 15px;"> Close </button> </div> </div> </div> </div>
</HtmlPanelGroup>
<!-- //Portal Login --> <!-- PAGE MASTHEAD -->
<HtmlPanelGroup id="j_id103" layout="block" rendered="true" styleClass="page-masthead" transient="false">
<HtmlPanelGroup id="j_id104" layout="block" rendered="true" style="background-image:url('/media/portalbackground/default5.jpg')" styleClass="page-wrapper" transient="false">
<div class="container">
<!-- addthis script - doesn't work if you view the page via file:// --> <!-- Go to www.addthis.com/dashboard to customize your tools -->
<HtmlLoadScript id="j_id107" rendered="true" src="https://s7.addthis.com/js/300/addthis_widget.js#pubid=ra-57286f67a9ce1cfe" transient="false"/>
<!-- //addthis --> <!-- Main Content --> <div class="col-lg-8"> <!-- News Article --> <div class="row box-content white-background"> <h1 class="content-title">#{ActionWhatsHappenings.happenings.title}</h1> <!-- Copy to Clipboard Scripts --> <script src="js/clipboard.min.js"/> <script type="text/javascript"> jQuery.noConflict(); jQuery(document).ready(function($){ new Clipboard('.copy-btn'); document.getElementById("window-url").value = window.location.href; //get value of current window url }); </script> <!-- //Copy to Clipboard Scripts --> <div class="row"> <div class="col-xs-12"> Published on
<HtmlSpacer height="1" id="j_id109" rendered="true" title="" transient="false" width="2"/>
<a class="grey-text" href="#">
<HtmlOutputText converter="org.jboss.seam.ui.converter.DateTimeConverter@644b0100" escape="true" id="j_id111" rendered="true" transient="false"/>
</a> in
<HtmlSpacer height="1" id="j_id113" rendered="true" title="" transient="false" width="2"/>
<HtmlLink action=" disabled="false" id="newsPages" immediate="false" includePageParams="true" propagation="none" rendered="true" transient="false" view="/newsroom.xhtml">
<UIParameter id="j_id114" name="type" rendered="true" transient="false"/>
<UIParameter id="j_id115" name="selectedMonth" rendered="true" transient="false" value="All"/>
<UIParameter id="j_id116" name="selectedYear" rendered="true" transient="false" value="All"/>
</HtmlLink>
<span class="pull-right"><a href="#" data-toggle="modal" data-target="#copyToClipboard"><i class="fa fa-link" aria-hidden="true"/>Copy Link</a></span> </div> </div> <!-- Copy to clipboard modal window --> <div id="copyToClipboard" class="modal fade" role="dialog" aria-label="Copy to clipboard" aria-hidden="true"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content modal-copy"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"/> <h4 class="modal-title">Copy Url to Clipboard</h4> </div> <div class="modal-body"> <div class="row"> <div class="col-xs-12"> <!-- Target --> <input class="form-control" id="window-url" value="" readonly="readonly"/> <!-- Value dynamically retrieved using javascript --> <br/> <!-- Trigger --> <button type="button" class="btn btn-orange btn-lg center-block copy-btn" data-clipboard-target="#window-url"> Copy to clipboard </button> </div> </div><!-- /container --> </div> </div> </div> </div> <!-- //Copy to clipboard modal window --> <!-- Only display image and image caption if featured image field is enabled in Admin Tool -->
<HtmlPanelGroup id="j_id118" transient="false">
<div class="row alt-grid" style="margin-top:20px;"> <div class="col-xs-12"> <div class="article-detail"> <figure>
<HtmlGraphicImage height="350px" id="j_id120" ismap="false" rendered="true" styleClass="header-image image-position" transient="false" width="750px"/>
<figcaption>#{ActionWhatsHappenings.happenings.imageCaption}</figcaption> </figure> </div> </div> </div>
</HtmlPanelGroup>
<div class="row article-content"> <div class="col-xs-12">
<HtmlOutputText escape="false" id="j_id123" rendered="true" transient="false"/>
</div> </div> <!-- Go to www.addthis.com/dashboard to customize your tools --> <div class="addthis_sharing_toolbox pull-right"/> </div> <!-- // News Article --> </div> <!-- //Main Content --> <!-- Sidebar --> <div class="col-lg-4" id="sidepanel1">
<!-- Profile Summary -->
<HtmlAjaxRegion id="profileSummary" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<div class="row box-content default-teal white-text profile-summary"> <div class="col-md-12"> <h3 class="user-name white-text" style="padding-bottom:15px;">Welcome,<br/>
<HtmlOutputText escape="true" id="j_id127" rendered="true" transient="false"/>
</h3> <div class="col-md-12"> <div class="user-photo">
<MediaOutput cacheable="false" createContent="#{ActionProfile.paint2}" createContentExpression="#{ActionProfile.paint2}" element="img" id="j_id129" ismap="false" mimeType="image/jpeg" rendered="true" session="false" transient="false"/>
</div> </div> <div class="col-md-12" style="padding-top:20px;"> <span class="user-summary white-text center"> <p>
<HtmlOutputText escape="true" id="j_id131" rendered="true" transient="false" value="NUSNET ID: "/>
</p> <p>
<HtmlOutputText escape="true" id="j_id133" rendered="true" transient="false" value="Department: "/>
</p> <p>
<HtmlOutputText converter="javax.faces.convert.DateTimeConverter@782eda70" escape="true" id="j_id135" rendered="true" transient="false"/>
</p> </span> </div> <div class="col-lg-12">
<HtmlLink action=" disabled="false" id="dashboardButton" immediate="false" includePageParams="true" propagation="default" rendered="true" transient="false" view="/dashboard.xhtml">
<button type="submit" class="btn btn-orange btn-lg" style="width:100%;">My Dashboard <i class="fa fa-chevron-circle-right" aria-hidden="true"/></button>
</HtmlLink>
</div> <div class="col-lg-12" style="padding-top:10px;">
<HtmlLink action="#{identity.logout}" actionExpression="#{identity.logout}" disabled="false" id="logoutButton" immediate="false" includePageParams="true" propagation="default" rendered="true" transient="false">
<button type="submit" class="btn btn-red btn-lg center-block" style="width:100%;">Log out <i class="fa fa-chevron-circle-right" aria-hidden="true"/></button>
</HtmlLink>
</div> </div> </div>
</HtmlAjaxRegion>
<!-- // Profile Summary -->
<script type="text/javascript"> function accessEForms(selectedLink){ document.getElementById('eforms_selection_form').method = 'post'; if(selectedLink == 1){ document.getElementById('eforms_selection_form').action = "#{request.contextPath}/e-forms/services-undergraduates"; document.getElementById('formType').value = "Forms for Undergraduate Students"; document.getElementById('formName').value = "Undergraduate Students"; }else if(selectedLink == 2){ document.getElementById('eforms_selection_form').action = "#{request.contextPath}/e-forms/services-honours-students"; document.getElementById('formType').value = "Forms for Honours Students"; document.getElementById('formName').value = "Honours Students"; }else if(selectedLink == 3){ document.getElementById('eforms_selection_form').action = "#{request.contextPath}/e-forms/services-graduate-students"; document.getElementById('formType').value = "Forms for Graduate Students"; document.getElementById('formName').value = "Graduate Students"; }else if(selectedLink == 4){ document.getElementById('eforms_selection_form').action = "#{request.contextPath}/e-forms/services-acad-staff"; document.getElementById('formType').value = "Form for Academic/Executive/Professional Staff"; document.getElementById('formName').value = "Academic/Executive/Professional Staff"; }else if(selectedLink == 5){ document.getElementById('eforms_selection_form').action = "#{request.contextPath}/e-forms/services-non-acad-staff"; document.getElementById('formType').value = "Forms for Non-Academic Staff"; document.getElementById('formName').value = "Non-Academic Staff"; }else if(selectedLink == 6){ document.getElementById('eforms_selection_form').action = "#{request.contextPath}/e-forms/services-external"; document.getElementById('formType').value = "Forms for External Members"; document.getElementById('formName').value = "External Members"; }else{ document.getElementById('eforms_selection_form').action = "#{request.contextPath}/e-forms/services-undergraduates"; document.getElementById('formType').value = "Forms for Undergraduate Students"; document.getElementById('formName').value = "Undergraduate Students"; } document.getElementById('eforms_selection_form').submit(); } </script> <!-- Quick Links --> <div class="row box-content turquoise-background"> <h2 class="content-title">Quick Links</h2> <div class="row"> <div class="col-md-4 col-xs-4 col-item"> <a href="https://linc.nus.edu.sg/patroninfo/" target="_blank"> <div class="icon-container"> <i class="fa my-library-account" aria-hidden="true"/> </div> <p class="icon-text">My Library Account</p> </a> </div> <div class="col-md-4 col-xs-4 col-item"> <a href="http://libfaq.nus.edu.sg/faq/71251" target="_blank"> <div class="icon-container"> <i class="fa library-pin" aria-hidden="true"/> </div> <p class="icon-text">Library Pin</p> </a> </div> <div class="col-md-4 col-xs-4 col-item"> <a href="/frontend/web/facilitiesbooking" target="_blank"> <div class="icon-container"> <i class="fa facilities-booking" aria-hidden="true"/> </div> <p class="icon-text">Facilities Booking</p> </a> </div> </div> <div class="row"> <div class="col-md-4 col-xs-4 col-item"> <a href="/frontend/web/contact-us" target="_blank"> <div class="icon-container"> <i class="fa contact" aria-hidden="true"/> </div> <p class="icon-text">Contact</p> </a> </div> <div class="col-md-4 col-xs-4 col-item"> <a href="http://libfaq.nus.edu.sg/" target="_blank"> <div class="icon-container"> <i class="fa faqs" aria-hidden="true"/> </div> <p class="icon-text">FAQs</p> </a> </div> <div class="col-md-4 col-xs-4 col-item"> <a href="http://libguides.nus.edu.sg/?sg=s" target="_blank"> <div class="icon-container"> <i class="fa subject-guides" aria-hidden="true"/> </div> <p class="icon-text">Subject Guides</p> </a> </div> </div> <div class="col-md-12"> <form id="eforms_selection_form" name="eforms_selection_form" method="post"> <input type="hidden" id="formType" name="formType" value="Forms for Undergraduate Students"/> <input type="hidden" id="formName" name="formName" value="Undergraduate Students"/> <div class="select"> <select onchange="javascript:accessEForms(this.options[this.selectedIndex].value)"> <option selected="selected" disabled="disabled">More Services & E-Forms For...</option> <option value="1">Undergraduates</option> <option value="2">Honours Students</option> <option value="3">Graduate Students</option> <option value="4">Academic/Executive/Professional Staff</option> <option value="5">Non-Academic Staff</option> <option value="6">External Members</option> </select> </div> </form> </div> </div> <!-- //Quick Links --> <!-- Opening Hours -->
<HtmlForm enctype="application/x-www-form-urlencoded" id="j_id143" prependId="true" rendered="true" submitted="false" transient="false">
<div class="row box-content teal-background"> <h2 class="content-title">Opening Hours</h2> <!-- DATEPICKER SCRIPT, disable some dates from database, please insert datepicker scripts above.--> <script type="text/javascript"> jQuery.noConflict(); jQuery(document).ready(function($){ // initialize datepicker $(function () { $("#datepicker").datepicker({ format: "dd-MM-yyyy, D", todayHighlight: true, //highlight today and pick today automatically autoclose: true, beforeShowMonth: function (date){ if (date.getMonth() == 8) { return false; } } }) }); }); </script> <!-- Choose date. Dev Notes : Prepare the script above dynamically in Java--> <div class="row"> <div class="col-xs-12"> <div id="datepicker" class="input-group date"> <div class="input-group-addon calendar-icon"><i class="fa fa-calendar white-text" aria-hidden="true"/></div>
<HtmlInputText disabled="false" id="j_id145" immediate="true" localValueSet="false" maxlength="-2147483648" onchange="A4J.AJAX.Submit('_viewRoot','j_id143',event,{'control':this,'similarityGroupingId':'j_id143:j_id146','parameters':{'ajaxSingle':'j_id143:j_id145','j_id143:j_id146':'j_id143:j_id146'} ,'actionUrl':'/frontend/news\x2Dpage;jsessionid=\x2DF27vLvNueDILflWr+cMZA__.node1'} )" readonly="true" rendered="true" required="false" size="-2147483648" styleClass="form-control opening-hours" transient="false" valid="true" value="23-Oct-2017, Mon">
org.ajax4jsf.ajax.SUPPORTonchange
<HtmlAjaxSupport ajaxSingle="true" bypassUpdates="false" disableDefault="false" disabled="false" event="onchange" id="j_id146" ignoreDupResponses="false" immediate="false" limitToList="false" process="listOfOpHours" rendered="true" requestDelay="-2147483648" timeout="-2147483648" transient="false"/>
</HtmlInputText>
<span class="input-group-addon chevron-icon"><i class="fa fa-chevron-circle-down" aria-hidden="true"/></span> </div> </div> <!-- List of opening hours -->
<HtmlPanelGroup id="listOfOpHours" rendered="true" transient="false">
<div class="col-xs-12"> <div class="today"> <ul class="list-unstyled list-opening-hours">
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@4c072cb4" first="0" id="j_id149" rendered="true" rowIndex="0" rows="0" transient="false" value="[Ljava.lang.Object;@4f988f18" var="opH">
<li><a href="#{request.contextPath}/opening-hours-calendar?selectedLib=#{opH.key.specialLibraryId}"><span class="opening-hours-library">#{opH.key.name.substring(0, opH.key.name.indexOf("Library") -1)}</span><span class="pull-right">#{opH.value}</span></a></li> <div class="divider"/>
</HtmlAjaxRepeat>
</ul> </div> </div>
</HtmlPanelGroup>
<!-- //List of opening hours --> <div class="col-xs-12" style="margin: 20px 0;"> <a href="#{request.contextPath}/opening-hours-calendar?selectedLib=0" class="btn btn-orange btn-lg center-block" style="width:100%;"><i class="fa fa-clock-o" aria-hidden="true"/>
<HtmlSpacer height="1" id="j_id153" rendered="true" title="" transient="false" width="10px"/>
More Opening Hours</a> </div> </div> <!-- //Choose date --> </div>
</HtmlForm>
<!-- //Opening Hours -->
</div> <!-- //Sidebar -->
</div>
</HtmlPanelGroup>
</HtmlPanelGroup>
<!-- //PAGE MASTHEAD --> <!-- FOOTER --> <footer id="bs-footer" class="wrap bs-footer" role="navigation" aria-label="Footer menu"> <!-- FOOT NAVIGATION --> <div class="container"> <!-- SPOTLIGHT --> <div class="bs-spotlight bs-footnav row">
<HtmlAjaxRegion id="j_id159" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<div class="col-lg-8 col-md-8 col-sm-8 hidden-sm hidden-xs"> </div>
</HtmlAjaxRegion>
<HtmlAjaxRegion id="j_id161" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<UIRepeat id="j_id162" offset="0" rendered="true" size="-1" transient="false" var="ccount">
<div class="#{catLinkClass}"> <div class="bs-module module " id="Mod92"> <div class="module-inner">
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@4ce61007" first="0" id="j_id164" rendered="true" rowIndex="0" rows="0" transient="false" var="clink">
<HtmlAjaxRegion id="j_id165" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<h3 class="module-title "><span>#{clink.name}</span></h3>
</HtmlAjaxRegion>
</HtmlAjaxRepeat>
<div class="module-ct"> <div class="custom"> <ul>
<HtmlAjaxRepeat componentState="org.ajax4jsf.component.SequenceDataAdaptor$1@14266302" first="0" id="j_id168" rendered="true" rowIndex="0" rows="0" transient="false" var="clink">
<HtmlAjaxRegion id="j_id169" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<li><a href="#{(clink.url == '-') ? '#' : clink.url}" target="#{clink.urlNewTab == 'Y' ? '_blank' : '_self'}">#{clink.name}</a></li>
</HtmlAjaxRegion>
</HtmlAjaxRepeat>
</ul> </div> </div> </div> </div> </div>
</UIRepeat>
</HtmlAjaxRegion>
<div class=" col-lg-4 col-md-4 col-sm-12 col-xs-12">
<HtmlAjaxRegion id="j_id173" immediate="false" renderRegionOnly="false" rendered="true" selfRendered="false" submitted="false" transient="false">
<div class="bs-module module footnav-info " id="Mod94"> <div class="module-inner"><h3 class="module-title "><span>#{actionMenuFooter.footerAddress.name}</span></h3> <div class="module-ct"> <div class="custom footnav-info"> <ul class="fa-ul"> <li><span class="fa-li fa fa-location-arrow"/>
<HtmlOutputText escape="true" id="j_id175" rendered="true" style="white-space: pre-wrap" transient="false" value="Central Library 12 Kent Ridge Crescent Singapore 119275"/>
</li> <li><span class="fa-li fa fa-phone"/>
<HtmlOutputText escape="true" id="j_id177" rendered="true" style="white-space: pre-wrap" transient="false" value="+65 6516 2028"/>
</li> <li><span class="fa-li fa fa-envelope"/> <span id="cloaked12">This email address is being protected from spambots. You need JavaScript enabled to view it.</span> <script type="text/javascript"> //<!-- document.getElementById('cloaked12').innerHTML = ''; var prefix = 'ma' + 'il' + 'to'; var path = 'hr' + 'ef' + '='; //var masking = 'askalib' + '@'; //masking = masking + 'nus' + '.' + 'edu' + '.' + 'sg'; var allEmails = []; var allEmailsTemp = "#{actionMenuFooter.footerAddress.email.replaceAll('\\r', '').replaceAll('\\n', '<br/>')}"; allEmails = allEmailsTemp.split('<br/>'); for(var i = 0; i < allEmails.length; i++){ var masking = allEmails[i]; var tempText = document.getElementById('cloaked12').innerHTML; document.getElementById('cloaked12').innerHTML += ((tempText.length == 0) ? '' : '<br/>') + '<a ' + path + '\'' + prefix + ':' + masking + '\'>' +masking+'<\/a>'; } //--> </script> </li>
<HtmlAjaxRegion id="j_id179" immediate="false" renderRegionOnly="false" rendered="false" selfRendered="false" submitted="false" transient="false">
<li><span class="fa-li fa fa-thumb-tack"/> #{actionMenuFooter.footerAddress.infoContent}</li>
</HtmlAjaxRegion>
</ul> </div> </div> </div> </div>
</HtmlAjaxRegion>
<div class="bs-module module footnav-info footnav-social"> <div class="module-inner"> <div class="module-ct"> <div class="custom footnav-info footnav-social"> <div>
<UIRepeat id="j_id183" offset="0" rendered="true" size="-1" transient="false" var="_socialMedia">
<a href="#{_socialMedia.url}" target="#{_socialMedia.urlNewTab == 'Y' ? '_blank' : '_self'}">
<MediaOutput cacheable="false" createContent="#{actionMenuFooter.paint}" createContentExpression="#{actionMenuFooter.paint}" element="img" id="j_id185" ismap="false" mimeType="images/png" rendered="true" session="false" style="height:32px;width:32px;" transient="false"/>
</a>
</UIRepeat>
</div> </div> </div> </div> </div> </div> </div> <!-- SPOTLIGHT --> </div> <!-- //FOOT NAVIGATION --> <section class="bs-copyright" role="contentinfo"> <div class="container"> <div class="row"> <div class="copyright-info"> <small>© <a href="http://www.nus.edu.sg">National University of Singapore</a>. All Rights Reserved.</small> </div> </div> <div class="row"> <!-- COPYRIGHT LINKS --> <div class="copyright-links "> <ul class="nav nav-pills nav-stacked ">
<UIRepeat id="j_id188" offset="0" rendered="true" size="-1" transient="false" var="_copyrights">
<li class="item-118"><a href="#{_copyrights.url}" target="#{_copyrights.urlNewTab == 'Y' ? '_blank' : '_self'}">
<HtmlOutputText escape="true" id="j_id190" rendered="true" transient="false"/>
</a></li>
</UIRepeat>
</ul> </div> <!-- //COPYRIGHT LINKS --> </div> </div> </section> </footer> <!-- //FOOTER --> </div> </body> </html>
</AjaxViewRoot>

+ Scoped Variables

Request Parameters
NameValue
None
Request Attributes
NameValue
ActionOpeningHoursorg.domain.frontend.session.ActionOpeningHours@6287f7dd
actionMenuFooterorg.domain.frontend.session.ActionMenuFooter@4ca200b4
ajaxContextorg.ajax4jsf.context.AjaxContextImpl@1fdc50ba
authenticatororg.domain.frontend.session.Authenticator@3937f3ad
patronInfoDevKitorg.domain.frontend.session.PatronInfoDevKit@85f0034
Session Attributes
NameValue
ActionNusUserorg.domain.frontend.session.ActionNusUser@15065a37
ActionPortalBackgroundorg.domain.frontend.session.ActionPortalBackground@540cdba9
Application Attributes
NameValue
None
Oct 23, 2017 8:37:49 AM - Generated by Facelets