Adding notification and fixing QR code

4.x.x
Ace 8 years ago
parent c63818b78f
commit 0d94a293a4

@ -30,7 +30,6 @@
}); });
} }
/* /*
* set popup maximum height function. * set popup maximum height function.
*/ */
@ -38,14 +37,13 @@
var maxHeight = "max-height"; var maxHeight = "max-height";
var marginTop = "margin-top"; var marginTop = "margin-top";
var body = "body"; var body = "body";
$(modalPopupContent).css(maxHeight, ($(body).height() - ($(body).height()/100 * 30)));
$(modalPopupContainer).css(marginTop, (-($(modalPopupContainer).height() / 2))); $(modalPopupContainer).css(marginTop, (-($(modalPopupContainer).height() / 2)));
} }
/* /*
* show popup function. * show popup function.
*/ */
function showPopup() { function showQRCodePopup() {
$(modalPopup).show(); $(modalPopup).show();
setPopupMaxHeight(); setPopupMaxHeight();
} }
@ -68,4 +66,11 @@
}); });
} }
</script> </script>
<script type="text/javascript">
function toggleEnrollment(){
$(".modalpopup-content").html($("#qr-code-modal").html());
generateQRCode(".modalpopup-content .qr-code");
showQRCodePopup();
}
</script>
{{/zone}} {{/zone}}

@ -99,29 +99,6 @@
</li> </li>
</ul> </ul>
{{/zone}} {{/zone}}
{{#zone "navbarBelow"}}
<div id="qr-code-modal" data-enrollment-url="{{enrollmentURL}}" class="hidden">
<div class="content">
<div class="row">
<div class="col-lg-5 col-md-6 col-centered">
<h3>
Scan QR code to start enrollment
</h3>
<h4>
Please scan the QR code using your mobile device to retrieve enrollment URL.
</h4>
<div class="panel panel-default">
<div class="panel-body col-centered ">
<div class="qr-code"></div>
</div>
</div>
</div>
</div>
</div>
</div>
{{/zone}}
{{#zone "sidePanes"}} {{#zone "sidePanes"}}
<div class="sidebar-wrapper" id="right-sidebar" is-authorized="{{isAuthorizedForNotifications}}" <div class="sidebar-wrapper" id="right-sidebar" is-authorized="{{isAuthorizedForNotifications}}"
data-side="right" data-width="320" data-sidebar-fixed="true" data-fixed-offset="50" data-spy="affix" data-side="right" data-width="320" data-sidebar-fixed="true" data-fixed-offset="50" data-spy="affix"
@ -137,5 +114,4 @@
data-image-resource="{{self.publicURL}}/images/" src="{{self.publicURL}}/templates/notifications.hbs" data-image-resource="{{self.publicURL}}/images/" src="{{self.publicURL}}/templates/notifications.hbs"
type="text/x-handlebars-template"></script> type="text/x-handlebars-template"></script>
{{js "js/nav-menu.js"}} {{js "js/nav-menu.js"}}
{{js "js/jquery.qrcode.min.js"}}
{{/zone}} {{/zone}}

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
* *
* WSO2 Inc. licenses this file to you under the Apache License, * WSO2 Inc. licenses this file to you under the Apache License,
* Version 2.0 (the "License"); you may not use this file except * Version 2.0 (the "License"); you may not use this file except
@ -10,19 +10,47 @@
* *
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
* KIND, either express or implied. See the License for the * either express or implied. See the License for the
* specific language governing permissions and limitations * specific language governing permissions and limitations
* under the License. * under the License.
*/ */
function onRequest(context) { function onRequest(context) {
var userModule = require("/app/modules/user.js").userModule; context.handlebars.registerHelper('equal', function (lvalue, rvalue, options) {
var constants = require("/app/modules/constants.js"); if (arguments.length < 3) {
var carbonUser = session.get(constants.USER_SESSION_KEY); throw new Error("Handlebars Helper equal needs 2 parameters");
var page_data = {}; }
if (carbonUser){ if (lvalue != rvalue) {
page_data.permissions = userModule.getUIPermissions(); return options.inverse(this);
} else {
return options.fn(this);
} }
return page_data; });
var userModule = require("/app/modules/user.js")["userModule"];
var mdmProps = require('/app/conf/reader/main.js')["conf"];
var constants = require("/app/modules/constants.js");
var uiPermissions = userModule.getUIPermissions();
context["permissions"] = uiPermissions;
var links = {
"user-mgt": [],
"role-mgt": [],
"policy-mgt": [],
"device-mgt": []
};
// following context.link value comes here based on the value passed at the point
// where units are attached to a page zone.
// eg: {{unit "appbar" pageLink="users" title="User Management"}}
context["currentActions"] = links[context["pageLink"]];
context["enrollmentURL"] = mdmProps["generalConfig"]["host"] + mdmProps["enrollmentDir"];
var isAuthorizedForNotifications =
userModule.isAuthorized("/permission/admin/device-mgt/emm-admin/notifications/view");
var currentUser = session.get(constants["USER_SESSION_KEY"]);
context["isAuthorizedForNotifications"] = isAuthorizedForNotifications;
context["currentUser"] = currentUser;
context["appContext"] = mdmProps["appContext"];
return context;
} }

@ -22,15 +22,6 @@ var modalPopup = ".wr-modalpopup",
var emmAdminBasePath = "/api/device-mgt/v1.0"; var emmAdminBasePath = "/api/device-mgt/v1.0";
//function openCollapsedNav() {
// $(".wr-hidden-nav-toggle-btn").addClass("active");
// $("#hiddenNav").slideToggle("slideDown", function () {
// if ($(this).css("display") == "none") {
// $(".wr-hidden-nav-toggle-btn").removeClass("active");
// }
// });
//}
/* /*
* set popup maximum height function. * set popup maximum height function.
*/ */
@ -59,24 +50,6 @@ function hidePopup() {
$(modalPopup).hide(); $(modalPopup).hide();
} }
/*
* QR-code generation function.
*/
function generateQRCode(qrCodeClass) {
var enrollmentURL = $("#qr-code-modal").data("enrollment-url");
$(qrCodeClass).qrcode({
text: enrollmentURL,
width: 200,
height: 200
});
}
function toggleEnrollment() {
$(".modalpopup-content").html($("#qr-code-modal").html());
generateQRCode(".modalpopup-content .qr-code");
showPopup();
}
var updateNotificationCount = function (data, textStatus, jqXHR) { var updateNotificationCount = function (data, textStatus, jqXHR) {
if (jqXHR.status == 200 && data) { if (jqXHR.status == 200 && data) {
var responsePayload = JSON.parse(data); var responsePayload = JSON.parse(data);

Loading…
Cancel
Save