226 lines
10 KiB
XML
226 lines
10 KiB
XML
<?xml version="1.0" standalone="yes"?>
|
|
<!DOCTYPE container>
|
|
<container
|
|
xmlns = "http://www.w3.org/1999/xhtml"
|
|
xmlns:xml = "http://www.w3.org/XML/1998/namespace"
|
|
xmlns:var = "http://www.skyrix.com/od/binding"
|
|
xmlns:const = "http://www.skyrix.com/od/constant"
|
|
xmlns:rsrc = "OGo:url"
|
|
xmlns:label = "OGo:label"
|
|
>
|
|
<var:string var:value = "doctype" const:escapeHTML = "NO" />
|
|
<var:if condition = "hideFrame" const:negate = "YES"
|
|
>
|
|
<html const:xmlns = "http://www.w3.org/1999/xhtml"
|
|
xml:lang = "en" const:lang = "en" class="">
|
|
<head>
|
|
<title>
|
|
<var:string value = "title" />
|
|
</title>
|
|
<meta name = "hideFrame" var:content = "hideFrame" />
|
|
<meta name = "description" content = "SOGo Web Interface" />
|
|
<meta name = "author" content = "SKYRIX Software AG/Inverse inc." />
|
|
<meta name = "robots" content = "stop" />
|
|
<meta name = "build" var:content = "buildDate" />
|
|
<meta name = "viewport" content = "width=device-width, initial-scale=1" />
|
|
<link href = "mailto:support@inverse.ca" rev = "made" />
|
|
<link rel = "shortcut icon" var:href = "siteFavicon" type = "image/x-icon" />
|
|
<link type = "text/css" rel = "stylesheet" rsrc:href = "bower_components/angular-material/angular-material.css" />
|
|
<link type = "text/css" rel = "stylesheet" rsrc:href = "css/styles.css" />
|
|
<var:if condition = "hasPageSpecificCSS"
|
|
>
|
|
<link type = "text/css" rel = "stylesheet" var:href = "pageCSSURL"
|
|
/>
|
|
</var:if>
|
|
<var:foreach list = "additionalCSSFiles" item = "item"
|
|
>
|
|
<link type = "text/css" rel = "stylesheet" var:href = "item"
|
|
/>
|
|
</var:foreach>
|
|
<var:if-ie const:lte = "9"
|
|
>
|
|
<link type = "text/css" rel = "stylesheet" rsrc:href = "iefixes.css" />
|
|
<script type = "text/javascript" rsrc:src = "XMLHttpRequest.js"><!-- space --></script>
|
|
</var:if-ie>
|
|
</head>
|
|
|
|
<body var:data-ng-app = "angularModule" var:class = "bodyClasses">
|
|
<var:if condition = "isCompatibleBrowser">
|
|
<var:if condition = "singleWindowModeEnabled">
|
|
<div id = "popupFrame" style = "display: none;">
|
|
<iframe width = "100%" height = "100%" src = "/SOGo/loading"><!-- space --></iframe>
|
|
</div>
|
|
</var:if
|
|
>
|
|
<var:if condition = "shortUserNameForDisplay" const:value = "anonymous"
|
|
const:negate = "YES">
|
|
<var:if condition = "hasUserSettingsKeys"
|
|
>
|
|
<script type = "text/javascript">
|
|
var UserSettings =<var:string value = "userSettings" const:escapeHTML = "NO" />;
|
|
</script
|
|
>
|
|
</var:if>
|
|
<var:if condition = "hasUserDefaultsKeys">
|
|
<script type = "text/javascript">
|
|
var UserDefaults =<var:string value = "userDefaults" const:escapeHTML = "NO" />;
|
|
</script
|
|
>
|
|
</var:if
|
|
>
|
|
</var:if
|
|
>
|
|
<var:if condition = "isPopup" const:negate = "YES"
|
|
>
|
|
<var:if condition = "isUIxDebugEnabled"
|
|
><!-- space --></var:if>
|
|
</var:if>
|
|
<!-- MAIN CONTENT ROW -->
|
|
|
|
<var:component-content />
|
|
|
|
<!-- BOTTOM-BAR -->
|
|
<md-toolbar class="sg-bottombar md-hide-sm" layout="row" layout-align="center center">
|
|
<var:if condition = "userHasCalendarAccess">
|
|
<var:if condition = "isCalendar">
|
|
<md-button ng-disabled = "true">
|
|
<var:string label:value = "Calendar" />
|
|
</md-button>
|
|
</var:if>
|
|
<var:if condition = "isCalendar" const:negate = "YES">
|
|
<md-button var:href = "relativeCalendarPath">
|
|
<var:string label:value = "Calendar" />
|
|
</md-button>
|
|
</var:if>
|
|
</var:if>
|
|
<var:if condition = "isContacts">
|
|
<md-button ng-disabled = "true">
|
|
<var:string label:value = "Address Book" />
|
|
</md-button>
|
|
</var:if>
|
|
<var:if condition = "isContacts" const:negate = "YES">
|
|
<md-button var:href = "relativeContactsPath">
|
|
<var:string label:value = "Address Book" />
|
|
</md-button>
|
|
</var:if>
|
|
<var:if condition = "userHasMailAccess">
|
|
<var:if condition = "isMail">
|
|
<md-button ng-disabled = "true">
|
|
<var:string label:value = "Mail" />
|
|
</md-button>
|
|
</var:if>
|
|
<var:if condition = "isMail" const:negate = "YES">
|
|
<md-button var:href = "relativeMailPath">
|
|
<var:string label:value = "Mail" />
|
|
</md-button>
|
|
</var:if>
|
|
</var:if>
|
|
<md-button var:data-ng-href = "relativePreferencesPath">
|
|
<var:string label:value = "Preferences" />
|
|
</md-button>
|
|
<var:if condition = "isSuperUser">
|
|
<var:if condition = "isAdministration">
|
|
<md-button ng-disabled = "true">
|
|
<var:string label:value = "Administration" />
|
|
</md-button>
|
|
</var:if>
|
|
<var:if condition = "isAdministration" const:negate = "YES">
|
|
<md-button var:href = "relativeAdministrationPath">
|
|
<var:string label:value = "Administration" />
|
|
</md-button>
|
|
</var:if>
|
|
</var:if>
|
|
</md-toolbar>
|
|
|
|
<!-- Javascripot imports -->
|
|
<script type = "text/javascript">
|
|
var ApplicationBaseURL = '<var:string value = "modulePath" />';
|
|
var ResourcesURL = '<var:string value = "applicationPath" />.woa/WebServerResources';
|
|
var minimumSearchLength =<var:string value = "minimumSearchLength" />;
|
|
<var:if condition = "isSuperUser"
|
|
>var IsSuperUser = true;
|
|
</var:if>
|
|
<var:if condition = "isSuperUser" const:negate = "YES"
|
|
>var IsSuperUser = false;
|
|
</var:if>
|
|
<var:if condition = "usesCASAuthentication"
|
|
>var usesCASAuthentication = true;
|
|
</var:if>
|
|
<var:if condition = "usesCASAuthentication" const:negate = "YES"
|
|
>var usesCASAuthentication = false;
|
|
</var:if>
|
|
<var:if condition = "shortUserNameForDisplay" const:value = "anonymous"
|
|
const:negate = "YES"
|
|
>var UserFolderURL = '<var:string value = "userFolderPath" const:escapeHTML = "NO" />';
|
|
var UserLogin = '<var:string value = "shortUserNameForDisplay" const:escapeHTML = "NO" />';
|
|
var UserIdentification = '<var:string value = "userIdentification" const:escapeHTML = "NO" />';
|
|
var UserLanguage = '<var:string value = "userLanguage" const:escapeHTML = "NO" />';
|
|
</var:if>
|
|
<var:string value = "commonLocalizableStrings" const:escapeHTML = "NO" />
|
|
<var:string value = "productLocalizableStrings" const:escapeHTML = "NO" />
|
|
</script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/underscore-min.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/hammer.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/angular.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/angular-animate.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/angular-sanitize.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/angular-aria.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "bower_components/angular-material/angular-material.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/angular-ui-router.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/mm-foundation-tpls.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/angular-recursion.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/vendor/angular-vs-repeat.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/Common/utils.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/Common/ui.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/Common/ui-common.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "js/Common/ui-desktop.js"><!-- space --></script>
|
|
<script type = "text/javascript" rsrc:src = "md-colors/colors.js"><!-- space --></script>
|
|
|
|
<var:if condition = "hasProductSpecificJavaScript">
|
|
<script type = "text/javascript"
|
|
var:src = "productJavaScriptURL"><!-- space --></script>
|
|
</var:if>
|
|
<var:if condition = "hasPageSpecificJavaScript">
|
|
<script type = "text/javascript"
|
|
var:src = "pageJavaScriptURL"><!-- space --></script>
|
|
</var:if>
|
|
<var:foreach list = "additionalJSFiles" item = "item"
|
|
>
|
|
<script type = "text/javascript" var:src = "item"><!-- space --></script>
|
|
</var:foreach>
|
|
<var:foreach list = "systemAdditionalJSFiles" item = "item"
|
|
>
|
|
<script type = "text/javascript" var:src = "item"><!-- space --></script>
|
|
</var:foreach>
|
|
</var:if>
|
|
<var:if condition = "isCompatibleBrowser" const:negate = "YES"
|
|
>
|
|
<var:component className = "SOGoBrowsersPanel"
|
|
/>
|
|
</var:if>
|
|
<noscript>
|
|
<div class = "javascriptPopupBackground">
|
|
</div>
|
|
<div class = "javascriptMessagePseudoWindow noJavascriptErrorMessage">
|
|
<var:string label:value = "noJavascriptError"
|
|
/>
|
|
<br />
|
|
<br
|
|
/>
|
|
<a class = "button" var:href = "page.context.uri"
|
|
>
|
|
<var:string label:value = "noJavascriptRetry"
|
|
/>
|
|
</a>
|
|
</div>
|
|
</noscript>
|
|
|
|
</body>
|
|
</html>
|
|
</var:if>
|
|
|
|
<var:if condition = "hideFrame">
|
|
<var:component-content />
|
|
</var:if>
|
|
</container>
|