Subversion Repositories bacoAlunos

Rev

Rev 1764 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<%@tag import="jomm.dao.impl.AbstractDao" %>
<%@tag import="pt.estgp.estgweb.filters.filters.ResourceAccessControl" %>
<%@tag import="pt.estgp.estgweb.services.data.IRepositoryFile" %>
<%@tag import="pt.estgp.estgweb.services.data.RepositoryService" %>
<%@tag import="pt.estgp.estgweb.web.UserSessionProxy" %>
<%@tag description="Repository File Tag for Download" pageEncoding="UTF-8"%>
<%@attribute name="staticTag" type="java.lang.Boolean" required="false" %>
<%@attribute name="transactional" type="java.lang.Boolean" required="true" %>
<%@attribute name="repositoryStream" type="java.lang.String" required="false"%>
<%@attribute name="badge" type="java.lang.Boolean" required="false" %>
<%@attribute name="label" type="java.lang.String" required="false" %>
<%@attribute name="iconClasses" type="java.lang.String" required="false" %>
<%@attribute name="downloadIcon" type="java.lang.Boolean" required="false" %>
<%@attribute name="showHistory" type="java.lang.Boolean" required="false" %>
<%@attribute name="target" type="java.lang.String" required="false" %>
<%@attribute name="btnXs" type="java.lang.Boolean" required="false" %>
<%@attribute name="iconLeft" type="java.lang.Boolean" required="false" %>

<%

    String targetStr = target == null ? "" : " target=\"" + target + "\" ";
    boolean history = showHistory == null ? true: showHistory;
    boolean iconLeftPos = iconLeft == null ? false: true;
    String btnXsClass = btnXs != null && btnXs == true  ? " btn-xs " : "";
    request.setAttribute("btnXsClass",btnXsClass);
    if(staticTag != null && staticTag)
    {
%>
        <div style="display: inline-block">
            <%
                if(label != null)
                {
            %>
            <label>${label}</label>
            <%
                }
            %>
            <a data-toggle="tooltip" title="Descarregar" <%=targetStr%> class="btn ${btnXsClass} btn-default <%=iconClasses!= null?iconClasses:""%>" href="<%=request.getContextPath()%>/repositoryStream/${repositoryStream}"><span class="glyphicon glyphicon-download-alt"></span></a>
            <%
            if(history){%>
            <a data-toggle="tooltip" title="Histórico" class="btn ${btnXsClass} btn-default <%=iconClasses!= null?iconClasses:""%>" target="_blank" href="<%=request.getContextPath()%>/user/data.jsp?id=${repositoryStream}"><span class="icon icon-history icon-large"></span></a>
            <%}%>
        </div>
<%
    }
    else if(repositoryStream != null && repositoryStream.length() > 0)
    {
        if(!transactional.booleanValue())
        {
            AbstractDao.getCurrentSession().beginTransaction();
        }
        boolean canAccess = ResourceAccessControl.canAccessResource(repositoryStream,request);
        IRepositoryFile repositoryFile = new RepositoryService().load(repositoryStream, UserSessionProxy.loadUserSessionFromRequest(request));
        String iconFile = "icon-file-text";
        if(repositoryFile != null)
        {
            if(downloadIcon != null && downloadIcon)
            {
                iconFile = "glyphicon glyphicon-download-alt";
            }else if(repositoryFile.getExtension().equalsIgnoreCase("pdf"))
            {
                iconFile = "icon icon-file-pdf icon-large";
            }else if(repositoryFile.getExtension().equalsIgnoreCase("xls") || repositoryFile.getExtension().equalsIgnoreCase("xlsx") || repositoryFile.getExtension().equalsIgnoreCase("csv"))
            {
                iconFile = "icon icon-file-excel icon-large";
            }else if(repositoryFile.getExtension().equalsIgnoreCase("doc") || repositoryFile.getExtension().equalsIgnoreCase("docx"))
            {
                iconFile = "icon icon-file-word icon-large";
            }else if(repositoryFile.getExtension().equals("zip") || repositoryFile.getExtension().equalsIgnoreCase("tgz") || repositoryFile.getExtension().equalsIgnoreCase("gz")
                    || repositoryFile.getExtension().equalsIgnoreCase("rar") || repositoryFile.getExtension().equalsIgnoreCase("7z") || repositoryFile.getExtension().equalsIgnoreCase("7zip"))
            {
                iconFile = "icon icon-file-zip icon-large";
            }
        }
%>



<%
        if(badge != null && badge)
        {
            if(canAccess)
            {
                if(label != null)
                {
                    %>
                        ${label}
                    <%
                }
    %>

                <span class="badge icon <%=iconClasses!= null?iconClasses:""%>">
                        <a data-toggle="tooltip" <%=targetStr%> title="Descarregar" href="<%=request.getContextPath()%>/repositoryStream/${repositoryStream}"><span class="<%=iconFile%>"></span></a>
                </span>
                <%if(history){%>
                    <span class="badge icon <%=iconClasses!= null?iconClasses:""%>">
                        <a data-toggle="tooltip" title="Histórico" href="javascript:invoqueDataVersionForm(${repositoryStream})"><span class="icon icon-history icon-large"></span></a>
                    </span>

                <%}%>
    <%
            }
            else
            {
    %>
<!--
            <span class="icon icon-history icon-large"></span>
            <span class="icon <%=iconFile%> icon-large"></span>-->
    <%
            }
        }
        else
        {
            if(canAccess)
            {

    %>
                <div style="display: inline-block">
                    <%
                    if(label != null)
                    {
                    %>
                    <label>${label}</label>
                    <%
                    }
                    %>
                    <a data-toggle="tooltip" title="Descarregar" <%=targetStr%> class="btn ${btnXsClass} btn-default <%=iconClasses!= null?iconClasses:""%>" href="<%=request.getContextPath()%>/repositoryStream/${repositoryStream}"><span class="<%=iconFile%>"></span></a>
                    <%if(history){%>
                    <a data-toggle="tooltip" title="Histórico" class="btn ${btnXsClass} btn-default <%=iconClasses!= null?iconClasses:""%>" href="javascript:invoqueDataVersionForm(${repositoryStream})"><span class="icon icon-history icon-large"></span></a>
                    <%}%>
                </div>
                <%
                }
                else
                {
                %>
                <!--<span class="icon <%=iconFile%> icon-large"></span>-->
                <%
            }
        }

        if(!transactional.booleanValue())
        {
            AbstractDao.getCurrentSession().getTransaction().commit();
        }
    }
%>

Generated by GNU Enscript 1.6.5.2.