From 2128c3f13e780f2e57cb89f8d69463b0a94d4106 Mon Sep 17 00:00:00 2001
From: Harshan Liyanage
+ You are now being redirected to Identity Server. If the redirection fails, please click
+ on the button below.
+ Oops something went wrong
+ 400 - Bad request
+
+
+ Error 400
+We are unable to understand the request and process it. Please re-check your request.
+Go to IoT Home
+
+
+
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error401-cloud.html b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error401-cloud.html
new file mode 100644
index 0000000000..8c195bd0f0
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error401-cloud.html
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+Oops something went wrong
+ 401 - Unauthorized
+
+
+ Error 401
+You do not have permission to access this page.Please contact your administrator and request permission.
+Go to IoT Home
+
+
+
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error403-cloud.html b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error403-cloud.html
new file mode 100644
index 0000000000..d9d7d00b0c
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error403-cloud.html
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+Oops something went wrong
+ 403 - Forbidden
+
+
+ Error 403
+We cannot process this request.
+Go to IoT Home
+
+
+
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error404-cloud.html b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error404-cloud.html
new file mode 100644
index 0000000000..897eeb4821
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error404-cloud.html
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+Oops something went wrong
+ 404 - Page Not Found
+
+
+ Error 404
+We can't find what you are looking for.
+Go to IoT Home
+
+
+
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error405-cloud.html b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error405-cloud.html
new file mode 100644
index 0000000000..bc3d5bdd57
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error405-cloud.html
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+Oops something went wrong
+ 405 - Method Not Allowed
+
+
+ Error 405
+Method not allowed.
+Go to IoT Home
+
+
+
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error500-cloud.html b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error500-cloud.html
new file mode 100644
index 0000000000..1ece4cc29d
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/error-pages/error500-cloud.html
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+Oops something went wrong
+ 500 - Internal Server Error
+
+
+ Error 500
+Something went wrong and we're trying to fix it.
+Go to IoT Home
+
+
+
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/jaggery.conf b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/jaggery.conf
new file mode 100644
index 0000000000..12f3796fec
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/application-mgt/jaggery.conf
@@ -0,0 +1,101 @@
+{
+ "displayName": "Carbon Application Management App",
+ "logLevel": "info",
+ "initScripts": ["/app/modules/init.js"],
+ "urlMappings": [
+ {
+ "url": "/uuf/login",
+ "path": "/lib/modules/auth/login.jag"
+ },
+ {
+ "url": "/uuf/logout",
+ "path": "/lib/modules/auth/logout.jag"
+ },
+ {
+ "url": "/uuf/sso/acs",
+ "path": "/lib/modules/auth/acs.jag"
+ },
+ {
+ "url": "/public/*",
+ "path": "/lib/static-files.jag"
+ },
+ {
+ "url": "/unit/*",
+ "path": "/lib/units.jag"
+ },
+ {
+ "url": "/*",
+ "path": "/lib/pages.jag"
+ }
+ ],
+ "errorPages": {
+ "500": "/error-pages/error500.html",
+ "404": "/error-pages/error404.html",
+ "401": "/error-pages/error401.html",
+ "405": "/error-pages/error405.html",
+ "403": "/error-pages/error403.html",
+ "400": "/error-pages/error400.html"
+ },
+ "filters": [
+ {
+ "name": "ContentTypeBasedCachePreventionFilter",
+ "class": "org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter",
+ "params" : [
+ {"name" : "patterns", "value" : "text/html\" ,application/json\" ,text/plain"},
+ {"name" : "filterAction", "value" : "enforce"},
+ {"name" : "httpHeaders", "value" : "Cache-Control: no-store, no-cache, must-revalidate, private"}
+ ]
+ },
+ {
+ "name":"HttpHeaderSecurityFilter",
+ "class":"org.apache.catalina.filters.HttpHeaderSecurityFilter",
+ "params" : [{"name" : "hstsEnabled", "value" : "false"}]
+ },
+ {
+ "name" : "CSRFGuard",
+ "class" : "org.owasp.csrfguard.CsrfGuardFilter"
+ }
+
+ ],
+ "filterMappings": [
+ {
+ "name":"HttpHeaderSecurityFilter",
+ "url":"*"
+ },
+ {
+ "name" : "CSRFGuard",
+ "url" : "/*"
+ },
+ {
+ "name":"ContentTypeBasedCachePreventionFilter",
+ "url":"*"
+ }
+
+ ],
+ "listeners" : [
+ {
+ "class" : "org.owasp.csrfguard.CsrfGuardServletContextListener"
+ },
+ {
+ "class" : "org.owasp.csrfguard.CsrfGuardHttpSessionListener"
+ }
+ ],
+ "servlets" : [
+ {
+ "name" : "JavaScriptServlet",
+ "class" : "org.owasp.csrfguard.servlet.JavaScriptServlet"
+ }
+ ],
+ "servletMappings" : [
+ {
+ "name" : "JavaScriptServlet",
+ "url" : "/csrf.js"
+ }
+ ],
+ "contextParams" : [
+ {
+ "name" : "Owasp.CsrfGuard.Config",
+ "value" : "repository/conf/security/Owasp.CsrfGuard.dashboard.properties"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/conf/app-conf.json b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/conf/app-conf.json
new file mode 100644
index 0000000000..63bcd3f5f1
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/conf/app-conf.json
@@ -0,0 +1,45 @@
+{
+ "appName": "UUF Template App",
+ "cachingEnabled": false,
+ "debuggingEnabled": false,
+ "permissionRoot": "/",
+ "loginPage": "uuf.page.sign-in",
+ "adminServicesUrl": "https://${server.ip}:${server.https_port}/admin/services/",
+ "authModule": {
+ "enabled": true,
+ "login": {
+ "onSuccess": {
+ "script": "/app/modules/login.js",
+ "page": "uuf.page.home"
+ },
+ "onFail": {
+ "script": "/app/modules/login.js",
+ "page": "uuf.page.sign-in"
+ }
+ },
+ "logout": {
+ "onSuccess": {
+ "script": "/app/modules/logout.js",
+ "page": "uuf.page.sign-in"
+ },
+ "onFail": {
+ "script": "/app/modules/logout.js",
+ "page": "uuf.page.home"
+ }
+ },
+ "sso": {
+ "enabled": false,
+ "issuer": "uuf",
+ "responseSigningEnabled": true,
+ "keyStoreName": "repository/resources/security/wso2carbon.jks",
+ "keyStorePassword": "wso2carbon",
+ "identityProviderAlias": "wso2carbon",
+ "identityProviderUrl": "https://${server.ip}:${server.https_port}/samlsso",
+ "intermediatePage": "uuf.page.sso-intermediate"
+ }
+ },
+ "errorPages": {
+ "404": "uuf.page.error",
+ "default": "uuf.page.error"
+ }
+}
\ No newline at end of file
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/conf/uuf-conf.json b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/conf/uuf-conf.json
new file mode 100644
index 0000000000..72d2df1edf
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/conf/uuf-conf.json
@@ -0,0 +1,4 @@
+{
+ "displayName": "UUF Template App",
+ "logLevel": "debug"
+}
\ No newline at end of file
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/layouts/uuf.layout.default.hbs b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/layouts/uuf.layout.default.hbs
new file mode 100644
index 0000000000..a67a3e63eb
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.ui/src/main/resources/jaggeryapps/uuf-template-app/app/layouts/uuf.layout.default.hbs
@@ -0,0 +1,67 @@
+{{!--
+* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
+*
+* WSO2 Inc. licenses this file to you under the Apache License,
+* Version 2.0 (the "License"); you may not use this file except
+* in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+--}}
+
+
+
+
+
+
+
+
+
+ {{#defineZone "signIn-title" scope="protected"}}Sign In to UUF Template App{{/defineZone}}
+
+
gkJC`V&8#D;tY&PD_;PRALVRR2K4%z0a0YyI%E=U6q198k
z+H;Q;F6p)}Y%i0Ks(Km^1_O78g6n?a)m&U2jIN&p-9d~9+8o(FX23?#Je0hwn
z2%{@8S1Z+&E5djsMC3#mNtl7F5{9%?8?>3Pvj1?j`(FLF)D3M0A$R8w+cJ*uCu})S
zXT{5N42rI{oQHJqFDPx%^~G}k;pld-ywbm2be(I1P~1Ok%M7}I+?FxAzh%n~gn!4D
zMgI@bj(F{Mr*_e9HD_i>03RLrX}@td>-ckHIs~9QAzgpB8eD&WDHNeFCSzeJs!0lz
zv?&THfRZ*rHyWU58r7umK@s0d6}uGDZ-QHcfPx?