1   /**
2    * Copyright (c) 2000-2008 Liferay, Inc. All rights reserved.
3    *
4    * Permission is hereby granted, free of charge, to any person obtaining a copy
5    * of this software and associated documentation files (the "Software"), to deal
6    * in the Software without restriction, including without limitation the rights
7    * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8    * copies of the Software, and to permit persons to whom the Software is
9    * furnished to do so, subject to the following conditions:
10   *
11   * The above copyright notice and this permission notice shall be included in
12   * all copies or substantial portions of the Software.
13   *
14   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20   * SOFTWARE.
21   */
22  
23  package com.liferay.portal.theme;
24  
25  import com.liferay.portal.kernel.log.Log;
26  import com.liferay.portal.kernel.log.LogFactoryUtil;
27  import com.liferay.portal.kernel.security.permission.PermissionChecker;
28  import com.liferay.portal.kernel.util.StringPool;
29  import com.liferay.portal.model.Account;
30  import com.liferay.portal.model.ColorScheme;
31  import com.liferay.portal.model.Company;
32  import com.liferay.portal.model.Contact;
33  import com.liferay.portal.model.Layout;
34  import com.liferay.portal.model.LayoutTypePortlet;
35  import com.liferay.portal.model.Theme;
36  import com.liferay.portal.model.User;
37  
38  import java.io.Serializable;
39  
40  import java.util.List;
41  import java.util.Locale;
42  import java.util.TimeZone;
43  
44  import javax.portlet.PortletURL;
45  
46  /**
47   * <a href="ThemeDisplay.java.html"><b><i>View Source</i></b></a>
48   *
49   * @author Brian Wing Shun Chan
50   *
51   */
52  public class ThemeDisplay implements Serializable {
53  
54      public ThemeDisplay() {
55          if (_log.isDebugEnabled()) {
56              _log.debug("Creating new instance " + hashCode());
57          }
58      }
59  
60      public Company getCompany() {
61          return _company;
62      }
63  
64      public void setCompany(Company company) {
65          _company = company;
66  
67          setAccount(company.getAccount());
68      }
69  
70      public long getCompanyId() {
71          return _company.getCompanyId();
72      }
73  
74      public String getCompanyLogo() {
75          return _companyLogo;
76      }
77  
78      public void setCompanyLogo(String companyLogo) {
79          _companyLogo = companyLogo;
80      }
81  
82      public int getCompanyLogoHeight() {
83          return _companyLogoHeight;
84      }
85  
86      public void setCompanyLogoHeight(int companyLogoHeight) {
87          _companyLogoHeight = companyLogoHeight;
88      }
89  
90      public int getCompanyLogoWidth() {
91          return _companyLogoWidth;
92      }
93  
94      public void setCompanyLogoWidth(int companyLogoWidth) {
95          _companyLogoWidth = companyLogoWidth;
96      }
97  
98      public String getRealCompanyLogo() {
99          return _realCompanyLogo;
100     }
101 
102     public void setRealCompanyLogo(String realCompanyLogo) {
103         _realCompanyLogo = realCompanyLogo;
104     }
105 
106     public int getRealCompanyLogoHeight() {
107         return _realCompanyLogoHeight;
108     }
109 
110     public void setRealCompanyLogoHeight(int realCompanyLogoHeight) {
111         _realCompanyLogoHeight = realCompanyLogoHeight;
112     }
113 
114     public int getRealCompanyLogoWidth() {
115         return _realCompanyLogoWidth;
116     }
117 
118     public void setRealCompanyLogoWidth(int realCompanyLogoWidth) {
119         _realCompanyLogoWidth = realCompanyLogoWidth;
120     }
121 
122     public Account getAccount() {
123         return _account;
124     }
125 
126     public void setAccount(Account account) {
127         _account = account;
128     }
129 
130     public User getDefaultUser() {
131         if (_defaultUser == null) {
132             _defaultUser = _company.getDefaultUser();
133         }
134 
135         return _defaultUser;
136     }
137 
138     public long getDefaultUserId() {
139         return getDefaultUser().getUserId();
140     }
141 
142     public User getUser() {
143         return _user;
144     }
145 
146     public void setUser(User user) {
147         _user = user;
148 
149         setContact(user.getContact());
150     }
151 
152     public long getUserId() {
153         return _user.getUserId();
154     }
155 
156     public User getRealUser() {
157         return _realUser;
158     }
159 
160     public void setRealUser(User realUser) {
161         _realUser = realUser;
162     }
163 
164     public long getRealUserId() {
165         return _realUser.getUserId();
166     }
167 
168     public String getDoAsUserId() {
169         return _doAsUserId;
170     }
171 
172     public void setDoAsUserId(String doAsUserId) {
173         _doAsUserId = doAsUserId;
174     }
175 
176     public boolean isImpersonated() {
177         if (getUserId() == getRealUserId()) {
178             return false;
179         }
180         else {
181             return true;
182         }
183     }
184 
185     public Contact getContact() {
186         return _contact;
187     }
188 
189     public void setContact(Contact contact) {
190         _contact = contact;
191     }
192 
193     public String getLayoutSetLogo() {
194         return _layoutSetLogo;
195     }
196 
197     public void setLayoutSetLogo(String layoutSetLogo) {
198         _layoutSetLogo = layoutSetLogo;
199     }
200 
201     public Layout getLayout() {
202         return _layout;
203     }
204 
205     public void setLayout(Layout layout) {
206         _layout = layout;
207     }
208 
209     public List getLayouts() {
210         return _layouts;
211     }
212 
213     public void setLayouts(List layouts) {
214         _layouts = layouts;
215     }
216 
217     public long getPlid() {
218         return _plid;
219     }
220 
221     public void setPlid(long plid) {
222         _plid = plid;
223     }
224 
225     public LayoutTypePortlet getLayoutTypePortlet() {
226         return _layoutTypePortlet;
227     }
228 
229     public void setLayoutTypePortlet(LayoutTypePortlet layoutTypePortlet) {
230         _layoutTypePortlet = layoutTypePortlet;
231     }
232 
233     public long getPortletGroupId() {
234         return _portletGroupId;
235     }
236 
237     public void setPortletGroupId(long portletGroupId) {
238         _portletGroupId = portletGroupId;
239     }
240 
241     public boolean isSignedIn() {
242         return _signedIn;
243     }
244 
245     public void setSignedIn(boolean signedIn) {
246         _signedIn = signedIn;
247     }
248 
249     public PermissionChecker getPermissionChecker() {
250         return _permissionChecker;
251     }
252 
253     public void setPermissionChecker(PermissionChecker permissionChecker) {
254         _permissionChecker = permissionChecker;
255     }
256 
257     public Locale getLocale() {
258         return _locale;
259     }
260 
261     public void setLocale(Locale locale) {
262         _locale = locale;
263     }
264 
265     public String getLanguageId() {
266         return _languageId;
267     }
268 
269     public void setLanguageId(String languageId) {
270         _languageId = languageId;
271     }
272 
273     public TimeZone getTimeZone() {
274         return _timeZone;
275     }
276 
277     public void setTimeZone(TimeZone timeZone) {
278         _timeZone = timeZone;
279     }
280 
281     public Theme getTheme() {
282         return _theme;
283     }
284 
285     public String getThemeId() {
286         return _theme.getThemeId();
287     }
288 
289     public ColorScheme getColorScheme() {
290         return _colorScheme;
291     }
292 
293     public String getColorSchemeId() {
294         return _colorScheme.getColorSchemeId();
295     }
296 
297     public boolean isWapTheme() {
298         return _theme.isWapTheme();
299     }
300 
301     public void setLookAndFeel(Theme theme, ColorScheme colorScheme) {
302         setLookAndFeel(getPathContext(), theme, colorScheme);
303     }
304 
305     public void setLookAndFeel(
306         String contextPath, Theme theme, ColorScheme colorScheme) {
307 
308         _theme = theme;
309         _colorScheme = colorScheme;
310 
311         if ((theme != null) && (colorScheme != null)) {
312             String themeContextPath = contextPath;
313 
314             if (theme.isWARFile()) {
315                 themeContextPath = theme.getContextPath();
316             }
317 
318             String cdnHost = getCDNHost();
319 
320             setPathColorSchemeImages(
321                 cdnHost + themeContextPath +
322                     colorScheme.getColorSchemeImagesPath());
323 
324             setPathThemeCss(cdnHost + themeContextPath + theme.getCssPath());
325             setPathThemeImages(
326                 cdnHost + themeContextPath + theme.getImagesPath());
327             setPathThemeJavaScript(
328                 cdnHost + themeContextPath + theme.getJavaScriptPath());
329             setPathThemeRoot(themeContextPath + theme.getRootPath());
330         }
331     }
332 
333     public boolean isThemeCssFastLoad() {
334         return _themeCssFastLoad;
335     }
336 
337     public void setThemeCssFastLoad(boolean themeCssFastLoad) {
338         _themeCssFastLoad = themeCssFastLoad;
339     }
340 
341     public boolean isFreeformLayout() {
342         return _freeformLayout;
343     }
344 
345     public void setFreeformLayout(boolean freeformLayout) {
346         _freeformLayout = freeformLayout;
347     }
348 
349     public String getServerName() {
350         return _serverName;
351     }
352 
353     public void setServerName(String serverName) {
354         _serverName = serverName;
355     }
356 
357     public int getServerPort() {
358         return _serverPort;
359     }
360 
361     public void setServerPort(int serverPort) {
362         _serverPort = serverPort;
363     }
364 
365     public boolean isSecure() {
366         return _secure;
367     }
368 
369     public void setSecure(boolean secure) {
370         _secure = secure;
371     }
372 
373     public boolean isStateExclusive() {
374         return _stateExclusive;
375     }
376 
377     public void setStateExclusive(boolean stateExclusive) {
378         _stateExclusive = stateExclusive;
379     }
380 
381     public boolean isStateMaximized() {
382         return _stateMaximized;
383     }
384 
385     public void setStateMaximized(boolean stateMaximized) {
386         _stateMaximized = stateMaximized;
387     }
388 
389     public boolean isStatePopUp() {
390         return _statePopUp;
391     }
392 
393     public void setStatePopUp(boolean statePopUp) {
394         _statePopUp = statePopUp;
395     }
396 
397     public String getCDNHost() {
398         return _cdnHost;
399     }
400 
401     public void setCDNHost(String cdnHost) {
402         _cdnHost = cdnHost;
403     }
404 
405     public String getPathApplet() {
406         return _pathApplet;
407     }
408 
409     public void setPathApplet(String pathApplet) {
410         _pathApplet = pathApplet;
411     }
412 
413     public String getPathCms() {
414         return _pathCms;
415     }
416 
417     public void setPathCms(String pathCms) {
418         _pathCms = pathCms;
419     }
420 
421     public String getPathColorSchemeImages() {
422         return _pathColorSchemeImages;
423     }
424 
425     public void setPathColorSchemeImages(String pathColorSchemeImages) {
426         _pathColorSchemeImages = pathColorSchemeImages;
427     }
428 
429     public String getPathContext() {
430         return _pathContext;
431     }
432 
433     public void setPathContext(String pathContext) {
434         _pathContext = pathContext;
435     }
436 
437     public String getPathFlash() {
438         return _pathFlash;
439     }
440 
441     public void setPathFlash(String pathFlash) {
442         _pathFlash = pathFlash;
443     }
444 
445     public String getPathFriendlyURLPrivateGroup() {
446         return _pathFriendlyURLPrivateGroup;
447     }
448 
449     public void setPathFriendlyURLPrivateGroup(
450         String pathFriendlyURLPrivateGroup) {
451 
452         _pathFriendlyURLPrivateGroup = pathFriendlyURLPrivateGroup;
453     }
454 
455     public String getPathFriendlyURLPrivateUser() {
456         return _pathFriendlyURLPrivateUser;
457     }
458 
459     public void setPathFriendlyURLPrivateUser(
460         String pathFriendlyURLPrivateUser) {
461 
462         _pathFriendlyURLPrivateUser = pathFriendlyURLPrivateUser;
463     }
464 
465     public String getPathFriendlyURLPublic() {
466         return _pathFriendlyURLPublic;
467     }
468 
469     public void setPathFriendlyURLPublic(String pathFriendlyURLPublic) {
470         _pathFriendlyURLPublic = pathFriendlyURLPublic;
471     }
472 
473     public String getPathImage() {
474         return _pathImage;
475     }
476 
477     public void setPathImage(String pathImage) {
478         _pathImage = pathImage;
479     }
480 
481     public String getPathJavaScript() {
482         return _pathJavaScript;
483     }
484 
485     public void setPathJavaScript(String pathJavaScript) {
486         _pathJavaScript = pathJavaScript;
487     }
488 
489     public String getPathMain() {
490         return _pathMain;
491     }
492 
493     public void setPathMain(String pathMain) {
494         _pathMain = pathMain;
495     }
496 
497     public String getPathSound() {
498         return _pathSound;
499     }
500 
501     public void setPathSound(String pathSound) {
502         _pathSound = pathSound;
503     }
504 
505     public String getPathThemeCss() {
506         return _pathThemeCss;
507     }
508 
509     public void setPathThemeCss(String pathThemeCss) {
510         _pathThemeCss = pathThemeCss;
511     }
512 
513     /**
514      * @deprecated Use <code>getPathThemeImages</code>.
515      */
516     public String getPathThemeImage() {
517         return getPathThemeImages();
518     }
519 
520     public String getPathThemeImages() {
521         return _pathThemeImages;
522     }
523 
524     public void setPathThemeImages(String pathThemeImages) {
525         _pathThemeImages = pathThemeImages;
526     }
527 
528     public String getPathThemeJavaScript() {
529         return _pathThemeJavaScript;
530     }
531 
532     public void setPathThemeJavaScript(String pathThemeJavaScript) {
533         _pathThemeJavaScript = pathThemeJavaScript;
534     }
535 
536     public String getPathThemeRoot() {
537         return _pathThemeRoot;
538     }
539 
540     public void setPathThemeRoot(String pathThemeRoot) {
541         _pathThemeRoot = pathThemeRoot;
542     }
543 
544     public boolean isShowAddContentIcon() {
545         return _showAddContentIcon;
546     }
547 
548     public void setShowAddContentIcon(boolean showAddContentIcon) {
549         _showAddContentIcon = showAddContentIcon;
550     }
551 
552     public boolean isShowHomeIcon() {
553         return _showHomeIcon;
554     }
555 
556     public void setShowHomeIcon(boolean showHomeIcon) {
557         _showHomeIcon = showHomeIcon;
558     }
559 
560     public boolean isShowLayoutTemplatesIcon() {
561         return _showLayoutTemplatesIcon;
562     }
563 
564     public void setShowLayoutTemplatesIcon(boolean showLayoutTemplatesIcon) {
565         _showLayoutTemplatesIcon = showLayoutTemplatesIcon;
566     }
567 
568     public boolean isShowMyAccountIcon() {
569         return _showMyAccountIcon;
570     }
571 
572     public void setShowMyAccountIcon(boolean showMyAccountIcon) {
573         _showMyAccountIcon = showMyAccountIcon;
574     }
575 
576     public boolean isShowPageSettingsIcon() {
577         return _showPageSettingsIcon;
578     }
579 
580     public void setShowPageSettingsIcon(boolean showPageSettingsIcon) {
581         _showPageSettingsIcon = showPageSettingsIcon;
582     }
583 
584     public boolean isShowPortalIcon() {
585         return _showPortalIcon;
586     }
587 
588     public void setShowPortalIcon(boolean showPortalIcon) {
589         _showPortalIcon = showPortalIcon;
590     }
591 
592     public boolean isShowSignInIcon() {
593         return _showSignInIcon;
594     }
595 
596     public void setShowSignInIcon(boolean showSignInIcon) {
597         _showSignInIcon = showSignInIcon;
598     }
599 
600     public boolean isShowSignOutIcon() {
601         return _showSignOutIcon;
602     }
603 
604     public void setShowSignOutIcon(boolean showSignOutIcon) {
605         _showSignOutIcon = showSignOutIcon;
606     }
607 
608     public String getURLAddContent() {
609         return _urlAddContent;
610     }
611 
612     public void setURLAddContent(String urlAddContent) {
613         _urlAddContent = urlAddContent;
614     }
615 
616     public PortletURL getURLCreateAccount() {
617         return _urlCreateAccount;
618     }
619 
620     public void setURLCreateAccount(PortletURL urlCreateAccount) {
621         _urlCreateAccount = urlCreateAccount;
622     }
623 
624     public String getURLCurrent() {
625         return _urlCurrent;
626     }
627 
628     public void setURLCurrent(String urlCurrent) {
629         _urlCurrent = urlCurrent;
630     }
631 
632     public String getURLHome() {
633         return _urlHome;
634     }
635 
636     public void setURLHome(String urlHome) {
637         _urlHome = urlHome;
638     }
639 
640     public String getURLLayoutTemplates() {
641         return _urlLayoutTemplates;
642     }
643 
644     public void setURLLayoutTemplates(String urlLayoutTemplates) {
645         _urlLayoutTemplates = urlLayoutTemplates;
646     }
647 
648     public PortletURL getURLMyAccount() {
649         return _urlMyAccount;
650     }
651 
652     public void setURLMyAccount(PortletURL urlMyAccount) {
653         _urlMyAccount = urlMyAccount;
654     }
655 
656     public PortletURL getURLPageSettings() {
657         return _urlPageSettings;
658     }
659 
660     public void setURLPageSettings(PortletURL urlPageSettings) {
661         _urlPageSettings = urlPageSettings;
662     }
663 
664     public String getURLPortal() {
665         return _urlPortal;
666     }
667 
668     public void setURLPortal(String urlPortal) {
669         _urlPortal = urlPortal;
670     }
671 
672     public PortletURL getURLPublishToLive() {
673         return _urlPublishToLive;
674     }
675 
676     public void setURLPublishToLive(PortletURL urlPublishToLive) {
677         _urlPublishToLive = urlPublishToLive;
678     }
679 
680     public String getURLSignIn() {
681         return _urlSignIn;
682     }
683 
684     public void setURLSignIn(String urlSignIn) {
685         _urlSignIn = urlSignIn;
686     }
687 
688     public String getURLSignOut() {
689         return _urlSignOut;
690     }
691 
692     public void setURLSignOut(String urlSignOut) {
693         _urlSignOut = urlSignOut;
694     }
695 
696     public PortletURL getURLUpdateManager() {
697         return _urlUpdateManager;
698     }
699 
700     public void setURLUpdateManager(PortletURL urlUpdateManager) {
701         _urlUpdateManager = urlUpdateManager;
702     }
703 
704     public String getTilesTitle() {
705         return _tilesTitle;
706     }
707 
708     public void setTilesTitle(String tilesTitle) {
709         _tilesTitle = tilesTitle;
710     }
711 
712     public String getTilesContent() {
713         return _tilesContent;
714     }
715 
716     public void setTilesContent(String tilesContent) {
717         _tilesContent = tilesContent;
718     }
719 
720     public boolean isTilesSelectable() {
721         return _tilesSelectable;
722     }
723 
724     public void setTilesSelectable(boolean tilesSelectable) {
725         _tilesSelectable = tilesSelectable;
726     }
727 
728     public boolean isIncludeCalendarJs() {
729         return _includeCalendarJs;
730     }
731 
732     public void setIncludeCalendarJs(boolean includeCalendarJs) {
733         _includeCalendarJs = includeCalendarJs;
734     }
735 
736     public boolean isIncludePortletCssJs() {
737         return _includePortletCssJs;
738     }
739 
740     public void setIncludePortletCssJs(boolean includePortletCssJs) {
741         _includePortletCssJs = includePortletCssJs;
742     }
743 
744     public boolean isIncludeServiceJs() {
745         return _includeServiceJs;
746     }
747 
748     public void setIncludeServiceJs(boolean includeServiceJs) {
749         _includeServiceJs = includeServiceJs;
750     }
751 
752     public boolean isIncludedJs(String js) {
753         String path = getPathJavaScript();
754 
755         if (isIncludeCalendarJs() &&
756             js.equals(path + "/calendar/calendar_stripped.js")) {
757 
758             return true;
759         }
760         else if (isIncludePortletCssJs() &&
761                  js.equals(path + "/liferay/portlet_css_packed.js")) {
762 
763             return true;
764         }
765         else if (isIncludeServiceJs() &&
766                  js.equals(path + "/liferay/service_packed.js")) {
767 
768             return true;
769         }
770         else {
771             return false;
772         }
773     }
774 
775     public PortletDisplay getPortletDisplay() {
776         return _portletDisplay;
777     }
778 
779     public void setPortletDisplay(PortletDisplay portletDisplay) {
780         _portletDisplay = portletDisplay;
781     }
782 
783     public void recycle() {
784         if (_log.isDebugEnabled()) {
785             _log.debug("Recycling instance " + hashCode());
786         }
787 
788         _company = null;
789         _companyLogo = StringPool.BLANK;
790         _companyLogoHeight = 0;
791         _companyLogoWidth = 0;
792         _realCompanyLogo = StringPool.BLANK;
793         _realCompanyLogoHeight = 0;
794         _realCompanyLogoWidth = 0;
795         _account = null;
796         _defaultUser = null;
797         _user = null;
798         _realUser = null;
799         _doAsUserId = StringPool.BLANK;
800         _layoutSetLogo = StringPool.BLANK;
801         _layout = null;
802         _layouts = null;
803         _plid = 0;
804         _layoutTypePortlet = null;
805         _portletGroupId = 0;
806         _signedIn = false;
807         _permissionChecker = null;
808         _locale = null;
809         _languageId = null;
810         _timeZone = null;
811         _theme = null;
812         _colorScheme = null;
813         _themeCssFastLoad = false;
814         _freeformLayout = false;
815         _serverName = StringPool.BLANK;
816         _serverPort = 0;
817         _secure = false;
818         _stateExclusive = false;
819         _stateMaximized = false;
820         _statePopUp = false;
821         _cdnHost = StringPool.BLANK;
822         _pathApplet = StringPool.BLANK;
823         _pathCms = StringPool.BLANK;
824         _pathColorSchemeImages = StringPool.BLANK;
825         _pathContext = StringPool.BLANK;
826         _pathFlash = StringPool.BLANK;
827         _pathFriendlyURLPrivateGroup = StringPool.BLANK;
828         _pathFriendlyURLPrivateUser = StringPool.BLANK;
829         _pathFriendlyURLPublic = StringPool.BLANK;
830         _pathImage = StringPool.BLANK;
831         _pathJavaScript = StringPool.BLANK;
832         _pathMain = StringPool.BLANK;
833         _pathSound = StringPool.BLANK;
834         _pathThemeCss = StringPool.BLANK;
835         _pathThemeImages = StringPool.BLANK;
836         _pathThemeJavaScript = StringPool.BLANK;
837         _pathThemeRoot = StringPool.BLANK;
838         _showAddContentIcon = false;
839         _showHomeIcon = false;
840         _showLayoutTemplatesIcon = false;
841         _showMyAccountIcon = false;
842         _showPageSettingsIcon = false;
843         _showPortalIcon = false;
844         _showSignInIcon = false;
845         _showSignOutIcon = false;
846         _urlAddContent = StringPool.BLANK;
847         _urlCreateAccount = null;
848         _urlCurrent = StringPool.BLANK;
849         _urlHome = StringPool.BLANK;
850         _urlLayoutTemplates = StringPool.BLANK;
851         _urlMyAccount = null;
852         _urlPageSettings = null;
853         _urlPortal = StringPool.BLANK;
854         _urlPublishToLive = null;
855         _urlSignIn = StringPool.BLANK;
856         _urlSignOut = StringPool.BLANK;
857         _urlUpdateManager = null;
858         _tilesTitle = StringPool.BLANK;
859         _tilesContent = StringPool.BLANK;
860         _tilesSelectable = false;
861         _includeCalendarJs = false;
862         _includePortletCssJs = false;
863         _includeServiceJs = false;
864         _portletDisplay.recycle();
865     }
866 
867     private static Log _log = LogFactoryUtil.getLog(ThemeDisplay.class);
868 
869     private Company _company;
870     private String _companyLogo = StringPool.BLANK;
871     private int _companyLogoHeight;
872     private int _companyLogoWidth;
873     private String _realCompanyLogo = StringPool.BLANK;
874     private int _realCompanyLogoHeight;
875     private int _realCompanyLogoWidth;
876     private Account _account;
877     private User _defaultUser;
878     private User _user;
879     private User _realUser;
880     private String _doAsUserId = StringPool.BLANK;
881     private Contact _contact;
882     private String _layoutSetLogo = StringPool.BLANK;
883     private Layout _layout;
884     private List _layouts;
885     private long _plid;
886     private LayoutTypePortlet _layoutTypePortlet;
887     private long _portletGroupId;
888     private boolean _signedIn;
889     private PermissionChecker _permissionChecker;
890     private Locale _locale;
891     private String _languageId;
892     private TimeZone _timeZone;
893     private Theme _theme;
894     private ColorScheme _colorScheme;
895     private boolean _themeCssFastLoad;
896     private boolean _freeformLayout;
897     private String _serverName;
898     private int _serverPort;
899     private boolean _secure;
900     private boolean _stateExclusive;
901     private boolean _stateMaximized;
902     private boolean _statePopUp;
903     private String _cdnHost = StringPool.BLANK;
904     private String _pathApplet = StringPool.BLANK;
905     private String _pathCms = StringPool.BLANK;
906     private String _pathColorSchemeImages = StringPool.BLANK;
907     private String _pathContext = StringPool.BLANK;
908     private String _pathFlash = StringPool.BLANK;
909     private String _pathFriendlyURLPrivateGroup = StringPool.BLANK;
910     private String _pathFriendlyURLPrivateUser = StringPool.BLANK;
911     private String _pathFriendlyURLPublic = StringPool.BLANK;
912     private String _pathImage = StringPool.BLANK;
913     private String _pathJavaScript = StringPool.BLANK;
914     private String _pathMain = StringPool.BLANK;
915     private String _pathSound = StringPool.BLANK;
916     private String _pathThemeCss = StringPool.BLANK;
917     private String _pathThemeImages = StringPool.BLANK;
918     private String _pathThemeJavaScript = StringPool.BLANK;
919     private String _pathThemeRoot = StringPool.BLANK;
920     private boolean _showAddContentIcon;
921     private boolean _showHomeIcon;
922     private boolean _showLayoutTemplatesIcon;
923     private boolean _showMyAccountIcon;
924     private boolean _showPageSettingsIcon;
925     private boolean _showPortalIcon;
926     private boolean _showSignInIcon;
927     private boolean _showSignOutIcon;
928     private String _urlAddContent = StringPool.BLANK;
929     private transient PortletURL _urlCreateAccount = null;
930     private String _urlCurrent = StringPool.BLANK;
931     private String _urlHome = StringPool.BLANK;
932     private String _urlLayoutTemplates = StringPool.BLANK;
933     private transient PortletURL _urlMyAccount = null;
934     private transient PortletURL _urlPageSettings = null;
935     private String _urlPortal = StringPool.BLANK;
936     private transient PortletURL _urlPublishToLive = null;
937     private String _urlSignIn = StringPool.BLANK;
938     private String _urlSignOut = StringPool.BLANK;
939     private transient PortletURL _urlUpdateManager = null;
940     private String _tilesTitle = StringPool.BLANK;
941     private String _tilesContent = StringPool.BLANK;
942     private boolean _tilesSelectable;
943     private boolean _includeCalendarJs;
944     private boolean _includePortletCssJs;
945     private boolean _includeServiceJs;
946     private PortletDisplay _portletDisplay = new PortletDisplay();
947 
948 }