Estou dando continuidade a um site agregador de compras coletiva, mas estou com um problema.
Na listagem de ofertas, não pode aparecer ofertas repetidas, não que tenha repetidas no banco,
mas existem uma oferta em várias cidades, e na listagem geral mostra a mesma oferta para são paulo e depois pode aparecer a mesma para rio de janeiro, por exemplo.
Estou usando jstl para mudar a lógica de como as ofertas são mostradas, mas não está dando certo.
Alguém pode me ajudar?
Obrigado!
Eu sei que o código está confuso, mas apenas estou dando continuidade no site, pretendo organiza-lo em breve.
<c:set var="counter" value="1" />
<c:set var="counter2" value="1" />
<c:forEach var="offer2" items="${offers.rows}" varStatus="n">
<c:forEach var="offer" items="${offers.rows}" varStatus="i">
<br/>
<c:out value="|||| ${i.count}"/>
<c:if test="${i.count > 0}">
<c:choose>
<c:when test="${offer.OFFtxtTitle.equals(offer2.OFFtxtTitle) && offer.CITintID == 1}">
<br/>
<c:out value="offer ${offer.OFFtxtTitle}"/>
<br/>
<c:out value="offer2 ${offer2.OFFtxtTitle}"/>
<br/>
<c:set var="prefix_" value="_" />
<c:set var="imageOffer" value="${context}sources/${offer.SRCvchrConfigName}/${prefix_}${offer.imageName}" />
<c:if test="${empty offer.imageName}">
<c:set var="imageOffer" value="${context}images/${offer.SRCvchrConfigName}_default.jpg" />
</c:if>
<div class="box_prod">
<div class="box_prod_top"></div>
<div class="box_prod_middle">
<div class="title_prod">
<span id="prod_cidade">${offer.cITvchrName}</span>
</div>
<!--<div id="clock_${n.index}">[clock_${n.index}]</div>-->
<div class="time_prod">
<img src="images/icon_clock.gif"/>
<strong>REP ${n.count} || ${i.count}: </strong>
<c:choose>
<c:when test="${offer.OFFintID < 8000}">
<a href="${rootURL}oferta-${offer.OFFintID}">oferta ativa</a>
</c:when>
<c:otherwise>
oferta ativa
</c:otherwise>
</c:choose>
</div>
<br style="clear:both;" />
<div class="prod_content">
<a href="${offer.OFFvchrLink}" target="_blank" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);" title="${offer.offerTitle}"><img src="${imageOffer}" class="img_principal" alt="Desconto ${offer.SRCvchrConfigName} ${offer.CITvchrName}" width="189" height="162" /></a>
<div>
<a href="${offer.OFFvchrLink}" target="_blank" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);"><span id="offer_title">${offer.offerTitle}</span></a><br />
<br/>
<div><span style="float:left;">oferta de compra coletiva:</span><a href="javascript:return false;" onclick="javascript:submitSource('${offer.SRCvchrURL}');" title="Compra Coletiva"><img src="images/logos/${offer.SRCvchrLogo}" alt="Compra Coletiva" class="img-oferta" width="81" height="38" /></a></div>
<c:choose>
<c:when test="${offer.titleSize > 103}">
<br />
<br />
</c:when>
<c:otherwise>
<br />
<br />
<br />
</c:otherwise>
</c:choose>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td width="110px" style="font-weight:bold;"><!--<a href="${offer.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);">-->por<!--</a>--></td>
<td width="20px" rowspan="2"></td>
<td width="2px" rowspan="2" style="border-left:1px solid #CCCCCC; padding-left:10px;"></td>
<td width="2px" rowspan="2"></td>
<td width="60px"><!--<a href="${offer.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);">-->desconto<!--</a>--></td>
<td width="20px" rowspan="2"></td>
<td width="2px" rowspan="2" style="border-left:1px solid #CCCCCC; padding-left:10px;"></td>
<td width="2px" rowspan="2"></td>
<td width="110px"><!--<a href="${offer.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);">-->economize<!--</a>--></td>
<td width="155" rowspan="2"><a href="${offer.OFFvchrLink}" target="_blank" onClick="javascript:_gaq.push(['_trackPageview','fonte-${offer.SRCvchrName}']);" title="Comprar Oferta"><img src="images/bt_comprar.jpg" class="bt_compra-content" alt="Comprar Oferta" /></a></td>
</tr>
<tr>
<td style="font-weight:bold; font-size: 15px;"><!--<a href="${offer.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);">-->R$ <span>${offer.finalPrice1}</span>,${offer.finalPrice2}<!--</a>--></td>
<td><!--<a href="${offer.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);">-->${offer.OFFvchrPercentDiscount}%<!--</a>--></td>
<td><!--<a href="${offer.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer.SRCvchrName}']);">-->R$ ${offer.OFFvchrValueDiscount}<!--</a>--></td>
</tr>
</table>
</div>
<br style="clear:both;" />
</div>
<div class="compartilhe">
<span style="padding-right:10px;">
<span style="float: left;">
compartilhe:
</span>
<%--
<a href="http://twitter.com/" target="_blank" title="Twitter"><img src="images/icon_twitter.gif" alt="Twitter" /></a>
<a href="http://facebook.com.br" target="_blank" title="Facebook"><img src="images/icon_facebook.gif" alt="Facebook" /></a>
<a href="mailto:[email removido]" title="Contato | Cuponado"><img src="images/icon_email.gif" alt="Contato | Cuponado" /></a>
--%>
<!-- AddThis Button BEGIN -->
<!-- <div class="addthis_toolbox addthis_default_style "
addthis:url="http://www.cuponado.com.br" style="float: left;">
<a class="addthis_button_facebook"></a>
<a class="addthis_button_email"></a>
</div>
<script type="text/javascript" src="http://s7.addthis.com/js/300/addthis_widget.js#pubid=xa-4ee8e8a379e52bce"></script> -->
<!-- AddThis Button END -->
</span>
<span style="border-left:1px solid #CCCCCC;padding-left:10px;"></span>
<span><a id="register_error_${offer.OFFintID}" name="register_error_${offer.OFFintID}" href="javascript:return false;" style="color:#949191;font-size:9px;">avisar erro na oferta</a></span>
</div>
</div>
<div class="box_prod_bottom"></div>
</div>
<c:set var="counter2" value="${counter+1}" />
</c:when>
<c:otherwise>
<c:if test="${counter2 == 1}">
<br/>
<c:out value="offer ${offer.OFFtxtTitle}"/>
<br/>
<c:out value="offer2 ${offer2.OFFtxtTitle}"/>
<br/>
<c:set var="prefix_" value="_" />
<c:set var="imageOffer" value="${context}sources/${offer2.SRCvchrConfigName}/${prefix_}${offer2.imageName}" />
<c:if test="${empty offer2.imageName}">
<c:set var="imageOffer" value="${context}images/${offer2.SRCvchrConfigName}_default.jpg" />
</c:if>
<div class="box_prod">
<div class="box_prod_top"></div>
<div class="box_prod_middle">
<div class="title_prod">
<span id="prod_cidade">${offer2.cITvchrName}</span>
</div>
<!--<div id="clock_${n.index}">[clock_${n.index}]</div>-->
<div class="time_prod">
<img src="images/icon_clock.gif"/>
<strong>${n.count} || ${i.count}: </strong>
<c:choose>
<c:when test="${offer2.OFFintID < 8000}">
<a href="${rootURL}oferta-${offer2.OFFintID}">oferta ativa</a>
</c:when>
<c:otherwise>
oferta ativa
</c:otherwise>
</c:choose>
</div>
<br style="clear:both;" />
<div class="prod_content">
<a href="${offer2.OFFvchrLink}" target="_blank" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);" title="${offer2.offerTitle}"><img src="${imageOffer}" class="img_principal" alt="Desconto ${offer2.SRCvchrConfigName} ${offer2.CITvchrName}" width="189" height="162" /></a>
<div>
<a href="${offer2.OFFvchrLink}" target="_blank" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);"><span id="offer_title">${offer2.offerTitle}</span></a><br />
<br/>
<div><span style="float:left;">oferta de compra coletiva:</span><a href="javascript:return false;" onclick="javascript:submitSource('${offer2.SRCvchrURL}');" title="Compra Coletiva"><img src="images/logos/${offer2.SRCvchrLogo}" alt="Compra Coletiva" class="img-oferta" width="81" height="38" /></a></div>
<c:choose>
<c:when test="${offer2.titleSize > 103}">
<br />
<br />
</c:when>
<c:otherwise>
<br />
<br />
<br />
</c:otherwise>
</c:choose>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td width="110px" style="font-weight:bold;"><!--<a href="${offer2.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);">-->por<!--</a>--></td>
<td width="20px" rowspan="2"></td>
<td width="2px" rowspan="2" style="border-left:1px solid #CCCCCC; padding-left:10px;"></td>
<td width="2px" rowspan="2"></td>
<td width="60px"><!--<a href="${offer2.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);">-->desconto<!--</a>--></td>
<td width="20px" rowspan="2"></td>
<td width="2px" rowspan="2" style="border-left:1px solid #CCCCCC; padding-left:10px;"></td>
<td width="2px" rowspan="2"></td>
<td width="110px"><!--<a href="${offer2.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);">-->economize<!--</a>--></td>
<td width="155" rowspan="2"><a href="${offer2.OFFvchrLink}" target="_blank" onClick="javascript:_gaq.push(['_trackPageview','fonte-${offer2.SRCvchrName}']);" title="Comprar Oferta"><img src="images/bt_comprar.jpg" class="bt_compra-content" alt="Comprar Oferta" /></a></td>
</tr>
<tr>
<td style="font-weight:bold; font-size: 15px;"><!--<a href="${offer2.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);">-->R$ <span>${offer2.finalPrice1}</span>,${offer2.finalPrice2}<!--</a>--></td>
<td><!--<a href="${offer2.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);">-->${offer2.OFFvchrPercentDiscount}%<!--</a>--></td>
<td><!--<a href="${offer2.OFFvchrLink}" target="_blank" style="color:#00366e; text-decoration:none;" onClick="javascript:_gaq.push(['_trackPageview','${offer2.SRCvchrName}']);">-->R$ ${offer2.OFFvchrValueDiscount}<!--</a>--></td>
</tr>
</table>
</div>
<br style="clear:both;" />
</div>
<div class="compartilhe">
<span style="padding-right:10px;">
<span style="float: left;">
compartilhe:
</span>
<%--
<a href="http://twitter.com/" target="_blank" title="Twitter"><img src="images/icon_twitter.gif" alt="Twitter" /></a>
<a href="http://facebook.com.br" target="_blank" title="Facebook"><img src="images/icon_facebook.gif" alt="Facebook" /></a>
<a href="mailto:[email removido]" title="Contato | Cuponado"><img src="images/icon_email.gif" alt="Contato | Cuponado" /></a>
--%>
<!-- AddThis Button BEGIN -->
<!-- <div class="addthis_toolbox addthis_default_style "
addthis:url="http://www.cuponado.com.br" style="float: left;">
<a class="addthis_button_facebook"></a>
<a class="addthis_button_email"></a>
</div>
<script type="text/javascript" src="http://s7.addthis.com/js/300/addthis_widget.js#pubid=xa-4ee8e8a379e52bce"></script> -->
<!-- AddThis Button END -->
</span>
<span style="border-left:1px solid #CCCCCC;padding-left:10px;"></span>
<span><a id="register_error_${offer2.OFFintID}" name="register_error_${offer2.OFFintID}" href="javascript:return false;" style="color:#949191;font-size:9px;">avisar erro na oferta</a></span>
</div>
</div>
<div class="box_prod_bottom"></div>
</div>
<c:set var="counter2" value="${counter+1}" />
</c:if>
</c:otherwise>
</c:choose>
</c:if>
</c:forEach>