diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/App.test.js b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/App.test.js
deleted file mode 100644
index 79b7f3f6659..00000000000
--- a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/App.test.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (c) 2017, 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.
- */
-
-import React from 'react';
-import ReactDOM from 'react-dom';
-import App from './App';
-
-it('renders without crashing', () => {
- const div = document.createElement('div');
- ReactDOM.render(, div);
-});
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/common/configuration.js b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/common/configuration.js
index 0c999fd0611..61adb30f010 100644
--- a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/common/configuration.js
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/common/configuration.js
@@ -25,6 +25,7 @@ class Configuration {
constructor() {
this.serverConfig = {};
+ this.themeConfig = {};
this.hostConstants = {
baseURL: window.location.origin,
appContext: window.location.pathname.split("/")[1]
@@ -35,8 +36,8 @@ class Configuration {
let thisObject = this;
axios.get(thisObject.hostConstants.baseURL + '/' + thisObject.hostConstants.appContext + "/config.json").
then(function (response) {
- console.log('successfully loaded the configuration!');
thisObject.serverConfig = response.data.config;
+ thisObject.themeConfig = response.data.theme;
Constants.load();
callback();
}).catch(function (error) {
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/components/AppStoreBase/BaseLayout.jsx b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/components/AppStoreBase/BaseLayout.jsx
index 810fd33fa32..de64011fe00 100644
--- a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/components/AppStoreBase/BaseLayout.jsx
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/components/AppStoreBase/BaseLayout.jsx
@@ -21,7 +21,7 @@ import React, {Component} from 'react';
import {withRouter} from 'react-router-dom';
import AuthHandler from "../../api/authHandler";
import {Col, Container, Input, Row,} from 'reactstrap';
-import FloatingButton from "../UIComponents/FloatingButton/FloatingButton";
+import UserOptions from '../UIComponents/UserOptions/UserOptions';
/**
* Base Layout:
@@ -46,12 +46,6 @@ class BaseLayout extends Component {
this.handleHistory('/assets/apps');
}
- handleApplicationCreateClick(event) {
- event.preventDefault();
- event.stopPropagation();
- this.setState({openModal: true});
- }
-
/**
* The method to update the history.
* to: The URL to route.
@@ -78,7 +72,9 @@ class BaseLayout extends Component {
@@ -91,12 +87,6 @@ class BaseLayout extends Component {
/>
-
-
-
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/components/UIComponents/UserOptions/UserOptions.jsx b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/components/UIComponents/UserOptions/UserOptions.jsx
new file mode 100644
index 00000000000..d9c2fa86a63
--- /dev/null
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/components/UIComponents/UserOptions/UserOptions.jsx
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2017, 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.
+ */
+
+import React, {Component} from 'react';
+import Theme from '../../../theme';
+
+class UserOptions extends Component {
+
+ constructor() {
+ super();
+ this.scriptId = "userOptions";
+ }
+
+ componentWillMount() {
+ /**
+ *Loading the theme files based on the the user-preference.
+ */
+ Theme.insertThemingScripts(this.scriptId);
+ }
+
+ componentWillUnmount() {
+ Theme.removeThemingScripts(this.scriptId);
+ }
+
+ render() {
+ const {height, width} = this.props;
+ return (
+
+
+
+ )
+ }
+}
+
+export default UserOptions;
diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/theme.js b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/theme.js
index 45127271fd2..f325026f76e 100644
--- a/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/theme.js
+++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/src/main/resources/store/src/theme.js
@@ -17,6 +17,7 @@
*/
import axios from 'axios';
+import Configuration from './common/configuration';
/**
* This class will read through the configuration file and saves the theme names for the usage in other files.
@@ -33,8 +34,8 @@ class Theme {
this.selectedTheme = this.defaultThemeType;
//TODO Need to get the app context properly when the server is ready
- this.baseURL = window.location.origin;
- this.appContext = window.location.pathname.split("/")[1];
+ this.baseURL = Configuration.hostConstants.baseURL;
+ this.appContext = Configuration.hostConstants.appContext;
this.loadThemeConfigs = this.loadThemeConfigs.bind(this);
this.loadThemeFiles = this.loadThemeFiles.bind(this);
this.insertThemingScripts = this.insertThemingScripts.bind(this);
diff --git a/components/application-mgt/pom.xml b/components/application-mgt/pom.xml
index 5b7f9cad9d9..856111ac6d1 100644
--- a/components/application-mgt/pom.xml
+++ b/components/application-mgt/pom.xml
@@ -38,6 +38,7 @@
org.wso2.carbon.device.application.mgt.common
org.wso2.carbon.device.application.mgt.api
org.wso2.carbon.device.application.mgt.publisher.ui
+ org.wso2.carbon.device.application.mgt.store.ui
org.wso2.carbon.device.application.mgt.authhandler