View from inside the viper

Cart Viper 1.2.7 Released

  May 6, 2011 11:04
by Mark

Today we’ve released a new version of Cart Viper our Ecommerce store module for DotNetNuke.

This release is to fix a breaking change in jQuery 1.6 which was released on the 3rd of May 2011. The jQuery method .attr(“checked”) which before could be used to determine if a checkbox was selected can no longer be used. You can read more about this breaking change on the jQuery release notes.

The new version of Cart Viper 1.2.7 works with jQuery 1.4.3 right up to the newly released 1.6



Exposing Trac Feeds in DotNetNuke

  August 20, 2010 10:40
by Mark

On our site we list a road map of features for Cart Viper, this comes straight out of Trac in this post I’m going to explain how we do this.

CropperCapture[475]

On the Trac server we’ve created a custom query for each version Cart Viper we want to publish the road map for.

CropperCapture[476]

The query in affect limits the tickets to a given version of Cart Viper.

CropperCapture[477]

Once you’ve created the feeds you can then access the tickets via the RSS feed for each query.
So over in DotNetNuke simple add the News Feed Module to the page and configure it with the URL for the Trac feed and the correct credentials.

Then using our custom XSLT file and a bit of jQuery we get the finished result.

   1: <?xml version="1.0"?>
   2: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   3:  <xsl:output method="html" indent="yes"/>
   4:  <xsl:param name="ItemsToShow"/>
   5:  <xsl:param name="ShowItemDetails"/>
   6:  <xsl:param name="ShowItemDate"/>
   7:  <xsl:param name="Locale"/>
   8:  <xsl:template match="rss">
   9:   <xsl:for-each select="channel/item[position()&lt;=$ItemsToShow or $ItemsToShow&lt;1]">
  10:    <div class="cvRoadMapItem Normal">
  11:          <p class="cvRoadMapTitle">
  12:             <a href="#" class="cvRoadMapLink">
  13:              <xsl:value-of select="title"/>
  14:             </a>
  15:          </p>
  16:          <xsl:if test="$ShowItemDate='true'">
  17:             <div class="cvRoadMainDate">
  18:              <xsl:value-of select="pubDate"/>
  19:             </div>
  20:          </xsl:if>
  21:          <xsl:if test="$ShowItemDetails='true'">
  22:             <div class="cvRoadMainDesc" style="display:none;">
  23:              <xsl:value-of select="description" disable-output-escaping="yes"/>
  24:             </div>
  25:    </xsl:if>
  26:    </div>
  27:   </xsl:for-each>
  28:  </xsl:template>
  29: </xsl:stylesheet>

 

   1: jQuery(document).ready(function(){
   2:  
   3:     jQuery(".cvRoadMapLink").toggle(function(){
   4:         jQuery(this).parents().siblings(".cvRoadMainDesc").show('fast');
   5:     }, 
   6:     function(){
   7:         jQuery(this).parents().siblings(".cvRoadMainDesc").hide('fast');
   8:     });
   9:  
  10: });