<%
/*
 * 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.
 */

var log = new Log("/app/modules/enrollments/windows/agent-enroll.jag");

var UAParser = require("/app/modules/ua-parser.min.js")["UAParser"];
var parser = new UAParser();
var userAgent = request.getHeader("User-Agent");
parser.setUA(userAgent);
parser.getResult();
var os = parser.getOS();
var platform = os.name;

if (platform != "Windows Phone" && platform != "Windows") {
    response.sendRedirect(mdmProps["appContext"] + "enrollments/error/unintentional-request");
} else if (session.get("lastAccessedPage") != "license-agent") {
    response.sendRedirect(mdmProps["appContext"] + "enrollments/error/unintentional-request");
} else {
    var authenticatedUser = session.get("authenticatedUser");
    if (!authenticatedUser) {
        response.sendRedirect(mdmProps["appContext"] + "enrollments/error/unintentional-request");
    } else {
        var enrollmentUtils = require("/app/modules/enrollments/util/utils.js")["methods"];
        var Handlebars = require("/lib/modules/handlebars/handlebars-v2.0.0.js")["Handlebars"];
        var template = Handlebars.compile(enrollmentUtils.
                getResource("/app/modules/enrollments/windows/config/workplace-switch-request-template.hbs"));

        var windowsWorkplaceAppID = session.get("windowsWorkplaceAppID");
        var windowsBinaryToken = session.get("windowsBinaryToken");
        var workplaceSwitchRequest = template({
            "windowsWorkplaceAppID" : windowsWorkplaceAppID,
            "windowsBinaryToken" : windowsBinaryToken
        });

        response.contentType = "text/html";
        response.content = workplaceSwitchRequest;
    }
}
%>