<%@ page language="java" %> <%@ page import="com.cgit.core.handlers.*"%> <%@ page import="com.cgit.comunidades.handlers.*" %> <%@ page import="com.cgit.comunidades.api.ComunidadeAPI" %> <%@ page import="java.util.*" %> <%@ page contentType="text/html;charset=ISO-8859-1"%> <% Hashtable requestParameters=new Hashtable(); Enumeration pn = request.getParameterNames(); while( pn.hasMoreElements() ){ String name = (String)pn.nextElement(); String value = (String)request.getParameter( name ); requestParameters.put( name, value ); } int uid = -1; // uid é o id do usuário logado, ou -1 para usuário não identificado... // ############### MANUTENCAO DE COOKIES ############### String uname = null; String pPartyId = null; String pUserName = null; boolean loginError = false; String todayDate = PatternHandler.getInstance().getDate(); if ( request.getParameter("partyid") != null && request.getParameter("username") != null ){ pPartyId = request.getParameter("partyid"); pUserName = request.getParameter("username"); pPartyId = pPartyId.replace(' ','+'); pUserName = pUserName.replace(' ','+'); try{ pPartyId = ComunidadeHandler.getInstance().decrypt( pPartyId ); pUserName = ComunidadeHandler.getInstance().decrypt( pUserName ); pUserName = pUserName.toUpperCase(); uid = AuthorizationHandler.getInstance().getUserId( pUserName ); String cookieValue = null; String cookieCDMValue = null; Cookie[] cookies = request.getCookies(); if (cookies != null){ for (int i = 0; i < cookies.length; i++){ //if ( cookies[i].getName().equals("RBSComunidadesSession") ){ // cookieValue = cookies[i].getValue(); //} if ( cookies[i].getName().equals("cdmuser") ){ cookieCDMValue = cookies[i].getValue(); } } } //if ( cookieValue == null || (cookieValue != null && !cookieValue.equals(pUserName + "^" + pPartyId)) ){ // Cookie cookie = new Cookie( "RBSComunidadesSession", pUserName + "^" + pPartyId ); // response.addCookie(cookie); //} if ( cookieCDMValue == null || "-none".equals(cookieCDMValue) ) { //Hashtable postConstraints = new Hashtable(); //postConstraints.put("ATTR_2", pUserName); Hashtable cdmUser = CDMHandler.getInstance().getInfo( pUserName ); String first_name = (String) cdmUser.get("FIRST_NAME"); String last_name = (String) cdmUser.get("LAST_NAME"); Cookie cookie = new Cookie( "cdmuser", pUserName.toLowerCase() ); cookie.setPath("/"); response.addCookie(cookie); cookie = new Cookie( "reducedname", first_name ); cookie.setPath("/"); response.addCookie(cookie); cookie = new Cookie( "firstname", first_name ); cookie.setPath("/"); response.addCookie(cookie); cookie = new Cookie( "lastname", last_name ); cookie.setPath("/"); response.addCookie(cookie); } }catch(Exception e){ pPartyId = request.getParameter("partyid"); pUserName = request.getParameter("username"); loginError = true; } }else{ String cookieValue = null; Cookie[] cookies = request.getCookies(); if (cookies != null){ for(int i = 0; i < cookies.length; i++){ if ( cookies[i].getName().equals("cdmuser") ){ if ( cookies[i].getValue() != null && !"-none".equals( cookies[i].getValue() ) ) { pUserName = cookies[i].getValue(); Hashtable cdmUser = CDMHandler.getInstance().getInfo( pUserName ); pPartyId = (String) cdmUser.get("PARTY_ID"); uid = AuthorizationHandler.getInstance().getUserId( pUserName ); } } } } } // ############### FIM MANUTENCAO DE COOKIES ############### int cid = 0; // cid é o corporate asset id usado para modelar os conteúdos do sistema de comunidades... int mid = -1; // identificador do tipo de conteúdo... int id = -1; // identificador do conteúdo (post) String secao = request.getParameter( "secao" ); //secao é a seção do contexto. pode ser: home, post, minhaarea, detalhe... String secaoOriginal = null; int sponsor = -1; // sponsor é o id do padrinho, ou -1 para padrinho não identificado... String sponsorName = null; // nome do padrinho... String[][] caminho = null; String comunidade = null; // identificador da comunidade... String nomeComunidade = null; String caminhoComunidade = null; String caminhoComunidadeIds = null; String titulo = null; String fraseTitulo = null; String site = "esportes"; String webtrands = "Esportes"; String localizador = request.getParameter( "localizador" ); //localizador identifica o padrinho, a comunidade, o tipo de conteudo e o conteudo... String all = request.getParameter( "all" ); String firstLocatorPart = ""; if (localizador != null){ firstLocatorPart = localizador.substring(0,localizador.indexOf('/')).replace('+',' '); cid = StandardComunidadeHandler.getInstance().getCidFromSponsorName(firstLocatorPart); String[] localizadorParts = ComunidadeHandler.getInstance().splitLocalizador(localizador,cid); sponsorName = localizadorParts[0]; sponsor = ComunidadeHandler.getInstance().getSponsorId(sponsorName); caminhoComunidade = localizadorParts[1]; caminhoComunidadeIds = localizadorParts[2]; StringTokenizer st0 = new StringTokenizer(localizador,"/",false); st0.nextToken(); // retira o sponsor... if (caminhoComunidadeIds != null && caminhoComunidadeIds.length() > 0){ Vector v = new Vector(); StringTokenizer st = new StringTokenizer(caminhoComunidadeIds,",",false); while (st.hasMoreElements()){ String idc = st.nextToken(); v.addElement( idc + "^" + ComunidadeHandler.getInstance().getCommunityName(Integer.parseInt(idc)) ); } if (v.size() > 0){ caminho = new String[v.size()][3]; for (int i = 0; i < v.size(); i++){ String item = (String)v.elementAt(i); caminho[i][0] = item.substring(0,item.indexOf('^')); caminho[i][1] = st0.nextToken(); caminho[i][2] = item.substring(item.indexOf('^')+1); } } } comunidade = localizadorParts[3]; if (comunidade != null){ nomeComunidade = ComunidadeHandler.getInstance().getCommunityName( Integer.parseInt(comunidade) ); } mid = (localizadorParts[4] != null)? Integer.parseInt( localizadorParts[4] ) : -1; id = (localizadorParts[5] != null)? Integer.parseInt( localizadorParts[5] ) : -1; //localizador = localizador.replace(' ','+'); } Hashtable postForm = null; String uf = (request.getParameter("uf") != null)? request.getParameter("uf") : "1"; String local = (request.getParameter("local") != null)? request.getParameter("local"): "1"; String section = request.getParameter("section"); if (section == null) { switch (mid) { case 1: section = "Participe"; break; case 2: section = "Participe"; break; case 3: section = "Torcedor-repórter"; break; default: break; } } Cookie[] cookiesTemp = request.getCookies(); String cookieValueTemp = null; if (request.getParameter("uf") == null && cookiesTemp != null ) { for(int i=0;i <%@page import="java.lang.reflect.InvocationTargetException"%> <% ArrayList titles = StandardComunidadeHandler.getInstance().getResources(cid,"TITLE",null,null); if(titles!=null){ Iterator i=titles.iterator(); while(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value out.println("" + item[4] + ""); } } %> <% ArrayList cssFiles = StandardComunidadeHandler.getInstance().getResources(cid,"CSS",null,null); if(cssFiles!=null){ Iterator i=cssFiles.iterator(); while(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value out.println(""); } } %> <% ArrayList jsFiles = StandardComunidadeHandler.getInstance().getResources(cid,"JS",null,null); if(jsFiles!=null){ Iterator i=jsFiles.iterator(); while(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value out.println(""); } } out.println(""); out.println(""); %> <% boolean doProcess = true; postId = -1; if (pPartyId != null && !pPartyId.equals("-1")){ Hashtable postConstraints = new Hashtable(); postConstraints.put("ATTR_1",pPartyId); postId = ComunidadeAPI.getInstance().getContentId(cid,1,postConstraints); } // Se usuario nao tem perfil cadastrado if ( postId == -1 ){ // Testa se usuario estah vindo do login if (request.getParameter("partyid") != null && !"-1".equals( request.getParameter("partyid") ) && !"0".equals( request.getParameter("partyid") ) ){ doProcess = false; %> <% } else if ( pPartyId != null && !pPartyId.equals("-1") ) { // Se usuario estah logado e tentando postar, redireciona para atualizar perfil if ( "post".equals( secao ) && (mid != 1) ){ doProcess = false; secao = "lista"; %> <% } } } else if (pUserName != null) { boolean activated = true; String[][] meuPerfil = CorporateHandler.getInstance().getSearchedModels(cid,"1",null,"pt_BR",1,null,null,pUserName,"cgit"); if (meuPerfil != null){ Hashtable[] contents = ContentHandler.getInstance().getContents("C"+cid,"pt_BR",3,0,1,1,0,1,null,null,null,null,meuPerfil[0][0],meuPerfil[0][1],meuPerfil[0][2],"1",null,null,"cgit",null); if( contents != null ){ if ( contents[0].get("1/32") instanceof String[] ){ String sDeactivated = ((String[])contents[0].get("1/32"))[0]; if ( "Y".equals( sDeactivated ) ) activated = false; } else { String sDeactivated = (contents[0].get("1/32") != null)? contents[0].get("1/32").toString(): ""; if ( "Y".equals( sDeactivated ) ) activated = false; } } } if (!activated && "post".equals( secao ) && (mid != 1) && !"delete".equals( request.getParameter("operation") )){ doProcess = false; %> <% } } //SE SECAO == 'post' EXECUTA A OPERACAO IDENTIFICADA EM 'operation' if ( "post".equals( secao ) && pUserName != null && !"".equals( pUserName ) ){ operation = request.getParameter("operation") != null? request.getParameter("operation"): "select"; postForm = ComunidadeHandler.getInstance().getPostFormFromRequest(request); String _ID = request.getParameter("_ID"); if ( _ID == null && id > -1 ){ _ID = Integer.toString( id ); } stateId = request.getParameter("stateid")!=null && !"".equals(request.getParameter("stateid")) ? Integer.parseInt(request.getParameter("stateid")) : -1; if ( _ID != null ){ if(postForm == null){ postForm = new Hashtable(); } postForm.put("ID",_ID); postForm.put("VERSION","1"); postForm.put("LANGUAGE_ID","pt_BR"); } if ( postForm != null ){ try{ if (mid == 1) { if (pPartyId != null && !pPartyId.equals("-1")){ Hashtable postConstraints = new Hashtable(); postConstraints.put("ATTR_1",pPartyId); postId = ComunidadeAPI.getInstance().getContentId(cid,1,postConstraints); // SE ENCONTRAR POST COM MESMO ID, IGNORA A OPERACAO DE INSERT // USADO PARA EVITAR REGISTRO DUPLO PARA GALERA DA ZEROHORA if ( postId > 0 && "insert".equals( operation ) ){ operation = "select"; doProcess = false; } } } if (doProcess) postForm = ComunidadeHandler.getInstance().processOperation(cid, mid, uid, operation, postForm, request.getParameter("stateid"), request.getParameter("transitionid") ); if ( postForm!=null && postForm.get("ID")!=null && !"".equals( postForm.get("ID") ) ){ try{ stateId = ComunidadeHandler.getInstance().getPostStatus(cid,mid,Integer.parseInt(postForm.get("ID").toString()),1,"pt_BR"); }catch(Exception e){ postMessage = "E1 - " + e.getMessage(); } } }catch(Exception e){ postMessage = "E2 - " + e.getMessage(); } if( operation.equals("insert") || operation.equals("update") || operation.equals("regular") ){ secao = "visualizar"; if(mid==1)secao = "userarea"; // alterado em 24/08 if ( operation.equals("insert") || id < 0){ try { id = Integer.parseInt( postForm.get("ID").toString() ); } catch (Exception e){ System.out.println( firstLocatorPart + " | /"+ site +"/jsp/home.jsp | e: " + e + " ID: " + postForm.get("ID").toString()); } } } } } operation = null; ArrayList oas_includes = StandardComunidadeHandler.getInstance().getResources(cid,"OAS_INCLUDE",null,null); if(oas_includes!=null){ Iterator i=oas_includes.iterator(); if(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value String mergedUrl = item[4]; String qs = HttpUrlHandler.getInstance().getQueryString( mergedUrl ); qs = HttpUrlHandler.getInstance().getMergedQueryString( qs, requestParameters ); String baseUrl = HttpUrlHandler.getInstance().getBaseUrl( mergedUrl ); mergedUrl = baseUrl + qs; out.println(HttpUrlHandler.getInstance().getResourceContent(mergedUrl,"")); } } %> <% ArrayList barralogin = StandardComunidadeHandler.getInstance().getResources(cid,"BARRALOGIN",null,null); if(barralogin!=null){ Iterator i=barralogin.iterator(); if(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value String mergedUrl = item[4]; String qs = HttpUrlHandler.getInstance().getQueryString( mergedUrl ); qs = HttpUrlHandler.getInstance().getMergedQueryString( qs, requestParameters ); String baseUrl = HttpUrlHandler.getInstance().getBaseUrl( mergedUrl ); mergedUrl = baseUrl + qs; out.println(HttpUrlHandler.getInstance().getResourceContent(mergedUrl,"")); } } %>
<% ArrayList tops = StandardComunidadeHandler.getInstance().getResources(cid,"TOP",null,null); if(tops!=null){ Iterator i=tops.iterator(); if(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value String mergedUrl = item[4]; String qs = HttpUrlHandler.getInstance().getQueryString( mergedUrl ); qs = HttpUrlHandler.getInstance().getMergedQueryString( qs, requestParameters ); String baseUrl = HttpUrlHandler.getInstance().getBaseUrl( mergedUrl ); mergedUrl = baseUrl + qs; out.println(HttpUrlHandler.getInstance().getResourceContent(mergedUrl,"")); } } %>
<% String modelName = ""; ArrayList modelNameArr = StandardComunidadeHandler.getInstance().getResources(cid,"MODEL-NAME",mid+"",null); if(modelNameArr!=null){ Iterator i=modelNameArr.iterator(); while(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value modelName = item[4]; } } %>

Esportes » <%=modelName%>

<%=modelName%>

<% if("post".equals(secao)){ if (postMessage != null){ out.println("

"+postMessage+"

"); } else if (postForm != null && postForm.get("POST-MESSAGE") != null){ out.println("

" + postForm.get("POST-MESSAGE").toString() + "

"); } //stateId = request.getParameter("stateid")!=null && !"".equals(request.getParameter("stateid")) ? Integer.parseInt(request.getParameter("stateid")) : -1; if (pUserName != null && !"".equals( pUserName )){ out.println(""); if(mid == 1){ mioloUrl = "/" + site + "/jsp/criar_perfil_usuario.jsp?" +"&uid=" + uid +"&localizador=" + localizador.replace(' ','+') +(postForm != null && postForm.get("ID") != null && !"".equals( postForm.get("ID") )? "&id=" + (String)postForm.get("ID"): "") +"&operation=" + ((request.getParameter("operation") != null)? request.getParameter("operation"): "select") +(pPartyId!=null?"&partyid="+pPartyId:"") +(pUserName!=null?"&username="+pUserName:""); // out.println(mioloUrl); out.println( HttpUrlHandler.getInstance().getResourceContent( mioloUrl, URL_SITE ) ); } else { try{ String pform = StandardComunidadeHandler.getInstance().getPostForm(cid,mid,Integer.parseInt(comunidade),uid,postForm,(stateId!=-1?Integer.toString(stateId):null),request.getParameter("transitionid"),secao,null,localizador,"home.jsp"); String message = null; String msgMarker = ""; int msgStartIdx = pform.indexOf(msgMarker); int msgEndIdx = msgStartIdx + msgMarker.length(); if(postMessage!=null){ message = postMessage; } else if (postForm != null && postForm.get("POST-MESSAGE") != null){ message = postForm.get("POST-MESSAGE").toString(); } if( msgStartIdx!=-1 && message != null ){ pform = pform.substring(0,msgStartIdx) + "
" + "" + message + "" + "
" + pform.substring(msgEndIdx); } out.println(pform); } catch (Exception e){ e.printStackTrace(); } } } else { secaoOriginal = secao; secao = "userarea"; } }else if("detalhe".equals(secao)){ String pdetail=""; String modelType = StandardComunidadeHandler.getInstance().getModelType(cid,mid); pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,mid,id,1,"pt_BR","cgit-external",modelType,"DETAIL",null,null,null,null,"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador); out.println(pdetail); }else if("lista".equals(secao)){ String pdetail=""; String modelType = StandardComunidadeHandler.getInstance().getModelType(cid,mid); try { pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,mid,id,1,"pt_BR","cgit-external",modelType,"LIST",request.getParameter("keywords"),request.getParameter("order"),(request.getParameter("from")!=null?request.getParameter("from"):"1"),(request.getParameter("to")!=null?request.getParameter("to"):"8"),"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador+"&mode="+( (pUserName != null && !"".equals( pUserName ) && !loginError ) ?"fullaccess":"") ); } catch (InvocationTargetException ex){ ex.getCause().printStackTrace( ) ; } catch (Exception ex2) { ex2.printStackTrace(); } out.println(pdetail); }else if("visualizar".equals(secao)){ boolean isOwner=false; if( uid!=-1 && (ComunidadeHandler.getInstance().isPostAuthor(cid,mid,id,1,"pt_BR",uid)||ComunidadeHandler.getInstance().isUserPublic(uid))){ isOwner=true; } if(isOwner){ if (postMessage != null){ out.println("

"+postMessage+"

"); } else if (postForm != null && postForm.get("POST-MESSAGE") != null){ out.println("

" + postForm.get("POST-MESSAGE").toString() + "

"); } String pdetail=""; String modelType = StandardComunidadeHandler.getInstance().getModelType(cid,mid); String formComponent = StandardComunidadeHandler.getInstance().getPostFormComponent(cid,mid,Integer.parseInt(comunidade),uid,new Integer(id),new Integer(1),"pt_BR",Integer.toString(stateId),"0",secao,localizador); out.println(formComponent); if(mid==1) { pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,1,0,0,null,"cgit",modelType,"LIST",null,null,(request.getParameter("from")!=null?request.getParameter("from"):"1"),(request.getParameter("to")!=null?request.getParameter("to"):"8"),"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador+"&user="+pUserName+"&mode=fullaccess"); } else { pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,mid,id,1,"pt_BR","cgit",modelType,"DETAIL",null,null,null,null,"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador+"&user="+pUserName+"&mode=fullaccess"); } out.println(pdetail); if( localizador.indexOf("" + id) < 0 ) localizador += "/"+id; String _user=AuthorizationHandler.getInstance().getUserName(uid); ArrayList actions=StandardComunidadeHandler.getInstance().getPossibleActions(cid,mid,id,1,"pt_BR",Integer.toString(stateId),localizador,_user,"EDITION"); if(actions!=null){ out.println("
"); out.println(""); out.println("
"); } }else{ out.println("
Você não tem permissão para visualizar este post
"); } } String loginUrl = ""; if("userarea".equals(secao)){ loginUrl = "/" + site + "/jsp/login.jsp?uf="+uf+"&local="+local+"§ion="+section.replace(' ','+')+"&secao=" + secao + "&localizador=" + localizador.replace(' ','+'); String pdetail=""; int _uid; boolean _userAmI; if( request.getParameter("user") != null ){ String _user=request.getParameter("user"); _uid = AuthorizationHandler.getInstance().getUserId( _user ); _userAmI = (_uid == uid); if( all != null ){ pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,1,0,0,null,"cgit","USERAREA","LIST",null,null,(request.getParameter("from")!=null?request.getParameter("from"):"1"),(request.getParameter("to")!=null?request.getParameter("to"):"10"),"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador+"&user="+_user+"&all=y&mode="+(_userAmI?"fullaccess":"readonly")); } else { pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,1,0,0,null,"cgit","USERAREA","LIST",null,null,(request.getParameter("from")!=null?request.getParameter("from"):"1"),(request.getParameter("to")!=null?request.getParameter("to"):"10"),"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador+"&user="+_user+"&mode="+(_userAmI?"fullaccess":"readonly")); } out.println(pdetail); } else { if (secaoOriginal != null) loginUrl = "/" + site + "/jsp/login.jsp?uf="+uf+"&local="+local+"§ion="+section.replace(' ','+')+"&secao=" + secaoOriginal + "&localizador=" + localizador.replace(' ','+'); if (pUserName != null && !"".equals( pUserName ) && !loginError ) { _uid = AuthorizationHandler.getInstance().getUserId( pUserName ); _userAmI = (_uid == uid); try{ if( all != null ){ pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,1,0,0,null,"cgit","USERAREA","LIST",null,null,(request.getParameter("from")!=null?request.getParameter("from"):"1"),(request.getParameter("to")!=null?request.getParameter("to"):"10"),"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador+"&user="+pUserName+"&all=y&mode="+(_userAmI?"fullaccess":"readonly")); } else { pdetail = StandardComunidadeHandler.getInstance().getPageFromDriver(cid,1,0,0,null,"cgit","USERAREA","LIST",null,null,(request.getParameter("from")!=null?request.getParameter("from"):"1"),(request.getParameter("to")!=null?request.getParameter("to"):"10"),"uf="+uf+"&local="+local+"§ion="+section+"&localizador="+localizador+"&user="+pUserName+"&mode="+(_userAmI?"fullaccess":"readonly")); } } catch (Exception e){ e.getCause().printStackTrace(); } out.println(pdetail); } else { loginUrl += "&loginError=" + loginError; out.println( HttpUrlHandler.getInstance().getResourceContent( loginUrl, URL_SITE ) ); } } } %>
<% ArrayList barraclic = StandardComunidadeHandler.getInstance().getResources(cid,"BARRACLIC",null,null); if(barraclic!=null){ Iterator i=barraclic.iterator(); if(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value String mergedUrl = item[4]; String qs = HttpUrlHandler.getInstance().getQueryString( mergedUrl ); qs = HttpUrlHandler.getInstance().getMergedQueryString( qs, requestParameters ); String baseUrl = HttpUrlHandler.getInstance().getBaseUrl( mergedUrl ); mergedUrl = baseUrl + qs; out.println(HttpUrlHandler.getInstance().getResourceContent(mergedUrl,"")); } } %> <% ArrayList rodapes = StandardComunidadeHandler.getInstance().getResources(cid,"RODAPE",null,null); if(rodapes!=null){ Iterator i=rodapes.iterator(); if(i.hasNext()){ String[] item = (String[])i.next(); // id, type, value String mergedUrl = item[4]; String qs = HttpUrlHandler.getInstance().getQueryString( mergedUrl ); qs = HttpUrlHandler.getInstance().getMergedQueryString( qs, requestParameters ); String baseUrl = HttpUrlHandler.getInstance().getBaseUrl( mergedUrl ); mergedUrl = baseUrl + qs; out.println(HttpUrlHandler.getInstance().getResourceContent(mergedUrl,"")); } } %>