impersonate_jsp.java 6.92 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  com.day.crx.i18n.Dictionary
 *  javax.jcr.LoginException
 *  javax.jcr.NoSuchWorkspaceException
 *  javax.jcr.Session
 *  javax.servlet.Servlet
 *  javax.servlet.ServletConfig
 *  javax.servlet.ServletContext
 *  javax.servlet.ServletException
 *  javax.servlet.ServletRequest
 *  javax.servlet.ServletResponse
 *  javax.servlet.http.HttpServletRequest
 *  javax.servlet.http.HttpServletResponse
 *  javax.servlet.jsp.JspFactory
 *  javax.servlet.jsp.JspWriter
 *  javax.servlet.jsp.PageContext
 *  javax.servlet.jsp.SkipPageException
 *  org.apache.commons.lang3.StringEscapeUtils
 *  org.apache.jasper.runtime.HttpJspBase
 *  org.apache.jasper.runtime.JspRuntimeLibrary
 *  org.apache.jasper.runtime.JspSourceDependent
 */
package com.day.crx.explorer.impl.jsp;

import com.day.crx.explorer.impl.j2ee.CRXContext;
import com.day.crx.explorer.impl.j2ee.JCRExplorerServlet;
import com.day.crx.explorer.impl.j2ee.LoginServlet;
import com.day.crx.i18n.Dictionary;
import java.io.IOException;
import java.util.List;
import javax.jcr.LoginException;
import javax.jcr.NoSuchWorkspaceException;
import javax.jcr.Session;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.JspFactory;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.SkipPageException;
import org.apache.commons.lang3.StringEscapeUtils;
import org.apache.jasper.runtime.HttpJspBase;
import org.apache.jasper.runtime.JspRuntimeLibrary;
import org.apache.jasper.runtime.JspSourceDependent;

public final class impersonate_jsp
extends HttpJspBase
implements JspSourceDependent {
    private static List _jspx_dependants;

    public Object getDependants() {
        return _jspx_dependants;
    }

    /*
     * Unable to fully structure code
     * Enabled aggressive exception aggregation
     */
    public void _jspService(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        _jspxFactory = null;
        pageContext = null;
        out = null;
        _jspx_out = null;
        _jspx_page_context = null;
        try {
            _jspxFactory = JspFactory.getDefaultFactory();
            response.setContentType("text/html");
            _jspx_page_context = pageContext = _jspxFactory.getPageContext((Servlet)this, (ServletRequest)request, (ServletResponse)response, null, false, 8192, true);
            pageContext.getServletContext();
            pageContext.getServletConfig();
            _jspx_out = out = pageContext.getOut();
            response.setContentType("text/html; charset=utf-8");
            ctx = CRXContext.getInstance(pageContext, request);
            docroot = ctx.getDocroot();
            dict = ctx.getCurrentDictionary();
            error = null;
            try {
                userId = request.getParameter("UserId");
                if ("POST".equals(request.getMethod()) && userId != null) {
                    userId = new String(userId.getBytes("8859_1"), "UTF-8");
                    jcrSession = JCRExplorerServlet.impersonate(request, userId);
                    LoginServlet.setImpersonationCookie(jcrSession, request, response);
                    out.write("<html><body style=\"background-color:#ffffff\">\n            <script type=\"text/javascript\">\n                window.location=\"");
                    out.print(docroot);
                    out.write("/index.jsp\";\n            </script>\n            </body></html>");
                    if (_jspxFactory != null) {
                        _jspxFactory.releasePageContext(_jspx_page_context);
                    }
                    return;
                }
                ** GOTO lbl35
            }
            catch (Exception e) {
                try {
                    error = e;
lbl35: // 2 sources:
                    request.setAttribute("crx.explorer.pageName", (Object)"impersonate");
                    out.write("<html>\n    ");
                    JspRuntimeLibrary.include((ServletRequest)request, (ServletResponse)response, (String)"index_head.jsp", (JspWriter)out, (boolean)true);
                    if (error != null) {
                        out.write("<tr class=\"content\"><td class=\"content\" colspan=\"2\" ><b>");
                        out.print(dict.msg("crex.login.err"));
                        out.write("</b>");
                        out.write("&nbsp;<b><font color=\"red\">");
                        if (error instanceof NoSuchWorkspaceException) {
                            out.print(dict.fmt("crex.login_no_such_workspace.err", (Object)StringEscapeUtils.escapeXml((String)error.getMessage())));
                        } else if (error instanceof LoginException) {
                            out.print(dict.msg("crex.impersonate_failed.err"));
                        } else {
                            out.print(StringEscapeUtils.escapeXml((String)error.toString()));
                        }
                        out.write("</font></b></td></tr>");
                    }
                    out.write("<form action=\"\" method=\"POST\">\n        <input type=\"hidden\" name=\"_charset_\" value=\"utf-8\">\n        <TR class=content>\n          <TD class=content><NOBR>");
                    out.print(dict.msg("Impersonate to User"));
                    out.write("</NOBR></TD>\n          <TD class=content width=\"100%\"><input type=\"text\" name=\"");
                    out.print("UserId");
                    out.write("\" value=\"\"></TD>\n        </TR>\n        <TR class=content>\n          <TD class=content><NOBR>&nbsp;</NOBR></TD>\n          <TD class=content width=\"100%\"><input type=\"submit\"></TD>\n        </TR>\n</form>\n<script type=\"text/javascript\">\n    document.forms[0].");
                    out.print("UserId");
                    out.write(".focus();\n</script>\n");
                    JspRuntimeLibrary.include((ServletRequest)request, (ServletResponse)response, (String)"index_foot.jsp", (JspWriter)out, (boolean)true);
                    out.write("</html>");
                }
                catch (Throwable t) {
                    if (!(t instanceof SkipPageException)) {
                        out = _jspx_out;
                        if (out != null && out.getBufferSize() != 0) {
                            out.clearBuffer();
                        }
                        if (_jspx_page_context != null) {
                            _jspx_page_context.handlePageException(t);
                        }
                    }
                }
            }
        }
        finally {
            if (_jspxFactory != null) {
                _jspxFactory.releasePageContext(_jspx_page_context);
            }
        }
    }
}