File: D:/web/expressmusic/inc-template-other.asp
<%
' === COMMON TEMPLATE (SAME FOR ALL SHOPPING SITES) ===
' (SS,01/05/09)
' (SS,15/05/09) improvements
' (SS,18/05/09) renamed from inc-template-reviews.asp to inc-template-other.asp
' because it now holds back in stock notifications and other things
' (SS,17/06/09) remove "the" from several places e.g. "Thank you for reviewing the" etc.
' (SS,19/06/09) added AShowReviewCount to ShowReviewRating
' (SS,22/06/09) reduced cols for ReviewText from 60 to 57 to allow fitting for narrowing sites e.g. CovDem
' (SS,21/03/11) added banner template, i.e. ShowBannerHeader, ShowBannerFooter, ShowBannerItem
' (SS,17/06/11) change to GetReviewRatingImgSrc to centre vertically next to next
' replaced all underscores in review classes with dashes, also replaced some id's with class's
' (SS,20/06/11) removed all class="form" from form controls
' (SS,22/06/11) improvements to review stars, now using "jquery raty"
' new routines ShowReviewRatingV2, ShowReviewRatingImage
' (SS,30/06/11) added product option templates
' (SS,23/03/12) security improvements for reviews, check now done to make sure email address has placed an order,
' email address now required, AddSecurityToExistingForm now removed, changes made in ShowReviewEntryForm
' (SS,12/09/12) added Sub ShowBannerContainer
' (SS,13/09/12) removed dummy header and footer,
' added favourites templates
' (SS,08/03/12) changed "not yet reviewed" to "add a review" in Sub ShowReviewRatingV2
' (SS,13/03/13) change to Sub ShowReviewRatingImage to show the hint as x stars instead of good, excellent etc.
' change was also made to jquery.raty.js for the new hint to work.
' (SS,11/06/14) change to Sub ShowReviewEntryForm and Sub ShowReviewThankYou to show different text if reviews shown immediately
' als a link to go back to showing reviews.
' (SS,27/08/14) change to Sub ShowProductOptionsHeader to get custom options title and only show if not blank
' (SS,01/09/14) Added Sub ShowAlertMesssage
' (SS,01/02/16) Change to Sub ShowStockNotificationLink to add rel="nofollow"
' (SS,17/02/16) Change to Sub ShowReviewItem to add Microdata / Rich Snippets
' (SS,25/05/17) Modified for Hyperflight, for banners added Class TemplateOther, changes to Sub ShowBannerHeader, Sub ShowBannerFooter and Sub ShowBannerItem
' (SS,19/07/17) Modified ShowReviewRatingV2 to shows stars in Bootstrap
' (SS,20/07/17) Change to Sub ShowReviewRatingStars to show grey empty stars, also removed <b> and <u> from ShowStockNotificationLink
' (SS,25/07/17) Added added rel="nofollow" to ShowStockNotificationLink, changes to Sub ShowStockNotificationForm
' (SS,25/08/17) Added Referrer to ShowStockNotificationForm
' (SS,22/09/17) Added "rows=6" (Sub ShowReviewEntryForm) to double row height for review textSub ShowReviewEntryForm
' (SS,18/09/18) Change to Sub ShowReviewRatingStars to correct rounding issue.
' (SS,24/03/20) Change to Sub ShowStockNotificationLink to call OrderingSuspended
' (SS,30/03/20) Change to Sub ShowStockNotificationLink, added link back in by removing And Not OrderingSuspended
' (SS,30/03/20) Later changed to show "Notify me when I can order again" when OrderingSuspended
' (SS,30/09/20) Modified to work for both Bootstrap 3 and 4
' (SS,30/09/20) Change to Sub ShowStockNotificationLink to get custom message from GetMessage in inc-template-other.asp
' (SS,14/05/21) Change to Sub ShowReviewEntryForm to remove ReviewType, comment is no longer used, now just a review
' (SS,29/02/24) Changes to Sub ShowReviewRatingV2, Sub ShowReviewRatingStars, Sub ShowReviewItem
' (SS,25/5/17) added following class to store temporary values used by this unit/module, currently just carousel count
Class TemplateOther
Private FBannerCount
Private Sub Class_Initialize()
FBannerCount = 0
End Sub
Private Sub Class_Terminate()
End Sub
Public Property Get IsFirstBanner()
IsFirstBanner = FBannerCount = 1
End Property
Public Sub IncBannerCount
FBannerCount = FBannerCount + 1
End Sub
End Class
' (SS,25/5/17)
Dim oTemplateOther
Set oTemplateOther = New TemplateOther
' --- START OF REVIEW TEMPLATES --- '
' (SS,19/6/09) added AShowReviewCount
Sub ShowReviewRating(AProductCode, AShowReviewCount, AWriteAReview)
If ReviewsEnabled Then
Dim LRating, LCount
LRating = GetReviewRatingAndCount(AProductCode, LCount)
If LRating > 0 Then
%><a href="<%=GetShowReviewsLink(AProductCode)%>"><%=GetReviewRatingImgSrc(LRating)%></a><%
End If
If AShowReviewCount And LCount > 0 Then
%> <a href="<%=GetShowReviewsLink(AProductCode)%>"><u><%=PluralString(LCount, "review", "reviews")%></u></a><%
End If
If AWriteAReview Then
If LCount > 0 Then Response.Write(" / ")
%><a href="<%=GetWriteReviewLink(AProductCode)%>"><u>write a review</u></a><%
End If
End If
End Sub
' (SS,22/6/11)
' AOptions, "num" for number only for count, "big" for bigger stars, "nobrackets" for no bracket, "nolink" for no href link
' "noreviews" to not show "not yet reviewed" when no reviews, but show "no reviews"
' (SS,8/3/13) changed "not yet reviewed" to "add a review"
' (SS,19/7/17) modified for Bootstrap to show the stars using glyphicons via call to ShowReviewRatingStars (instead of ShowReviewRatingImage)
' (SS,20/7/17) removed link for "no reviews" text
' (SS,21/2/24) added "accordian" option for link to collapse the reviews section
' (SS,28/2/24) changed to go to #reviews anchor on same page if accordian specified (no need for new page fetch with cmd=showreviews
Sub ShowReviewRatingV2(AProductCode, AShowImage, AShowCount, AOptions)
Dim LRating, LCount, LReviewText, LHRef, LReviewTextClass
Dim LNumberOnly, LBigStars, LNoBrackets, LNoLink, LNoReviews, LAccordian
LNumberOnly = InStr(AOptions, "num") > 0
LBigStars = InStr(AOptions, "big") > 0
LNoBrackets = InStr(AOptions, "nobrackets") > 0
LNoLink = InStr(AOptions, "nolink") > 0
LNoReviews = InStr(AOptions, "noreviews") > 0
LAccordian = InStr(AOptions, "accordian") > 0 ' (SS,21/2/24)
LRating = GetReviewRatingAndCount(AProductCode, LCount)
'If AShowImage Then ShowReviewRatingImage LRating, LBigStars
' (SS,19/7/17) replaced above with following for Bootstrap, LBigStars not currently implemented, also doesn't yet do half stars
If AShowImage Then
ShowReviewRatingStars LRating, AOptions ' (SS,21/2/24) added options
End If
If AShowCount Then
If LCount > 0 Then
LReviewText = IIf(LNumberOnly, LCount, PluralString(LCount, "review", "reviews"))
' (SS,21/2/24) special option to go to reviews section on same page
If LAccordian Then
LHRef = "#reviews"
Else ' as before
LHRef = GetShowReviewsLink(AProductCode)
End If
Else
LReviewText = IIf(LNumberOnly, 0, IIf(LNoReviews, "no reviews", "add a review")) ' (SS,8/3/13) changed "not yet reviewed" to "add a review"
LHRef = GetWriteReviewLink(AProductCode)
End If
' (SS,20/7/17) don't show link for "no reviews"
If LReviewText = "no reviews" Then LNoLink = True
If Not LNoBrackets Then LReviewText = "(" & LReviewText & ")"
Response.Write " "
If Not LNoLink Then
Response.Write("<a href=""" & LHRef & """>")
End If
If LBigStars Then
LReviewTextClass = "review-rating-text-big"
Else
LReviewTextClass = "review-rating-text"
End If
Response.Write "<span class=""" + LReviewTextClass + """>" & LReviewText & "</span>"
If Not LNoLink Then Response.Write "</a>" ' (SS,20/7/17) move here from end of above line and add If
End If
End Sub
' (SS,22/6/11) "display: inline" ensures newline is not added to the end
' ABig parameter should be true for bigger stars
' *** needs to muli-language
Sub ShowReviewRatingImage(ARating, ABig)
Dim LUniqueCount, LStyle
LUniqueCount = GetUniqueCount
' (SS,13/3/13) change made to hintlist, in jquery.raty.js, it now just shows the hint as 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5 or 5 stars instead of bad, poor, average, good, excellent
' hintList: ['bad', 'poor', 'average', 'good', 'excellent'],
%>
<div id="star<%=LUniqueCount%>" style="display: inline; cursor: pointer"></div>
<script type="text/javascript">
$('#star<%=LUniqueCount%>').raty({
path: '/common/javascript/jquery.raty/img',
half: true,
readOnly: true, start: <%=ARating%>,
hintList: ['star', 'stars'],
noRatedMsg: 'not yet reviewed'
<%If ABig Then%>,
half: true,
size: 24,
starHalf: 'star-half-big.png',
starOff: 'star-off-big.png',
starOn: 'star-on-big.png'
<%End If%>
});
</script>
<%
End Sub
' (SS,12/9/14) New for Bootstrap, just shows the stars
' (SS,20/7/17) changed STAR_COLOUR to STAR_COLOUR_YELLOW and added STAR_COLOUR_GREY for the empty stars
' (SS,18/9/18) corrected rounding issue by replacing Round with FormatNumber
' (SS,11/10/19) modified for Bootstrap 4 (glyphicon replaced with fa, and glyphicon-star-empty with fa-star)
' (SS,30/9/20) modified to work for both Bootstrap 3 and 4
' (SS,21/2/24) added AOptions to allow big stars
Sub ShowReviewRatingStars(ARating, AOptions)
Const STAR_COLOUR_YELLOW = "#FFB500"
Const STAR_COLOUR_GREY = "#C0C0C0"
Dim LRating, i
' (SS,21/2/24)
Dim LBigStars, LGlyphiconClass
LBigStars = InStr(AOptions, "big") > 0
If LBigStars Then
LGlyphiconClass = " review-stars-big" ' 1.5
Else
LGlyphiconClass = ""
End If
' LRating = Round(ARating) ' round because only whole stars shown
' (SS,18/9/18) replaced above with following because above rounds 4.5 to 4 instead of 5.
LRating = CDbl(FormatNumber(ARating, 0, vbTrue))
' only show if more than 0 stars
' (SS,19/7/17) modified to also show when 0 stars i.e. replaced > with >=
If LRating >= 0 Then
' full stars, span used instead of i to avoid clash with i used on accordian header with jquery doing toggle of chevron
For i = 1 To LRating
%><span class="<%=Bootstrap3Only("glyphicon glyphicon-star" + LGlyphiconClass)%><%=Bootstrap4Only("fa fa-star")%>" style="color: <%=STAR_COLOUR_YELLOW%>"></span><%
Next
' empty stars
For i = 1 To 5 - LRating
%><span class="<%=Bootstrap3Only("glyphicon glyphicon-star-empty" + LGlyphiconClass)%><%=Bootstrap4Only("fa fa-star")%>" style="color: <%=STAR_COLOUR_GREY%>"></span><%
Next
End If
End Sub
' (SS,17/6/11) added style=""vertical-align: middle"" to centre vertically next to text
Function GetReviewRatingImgSrc(ARating)
GetReviewRatingImgSrc = "<img src=""images/star-" & ARating & ".gif"" border=""0"" style=""vertical-align: middle"" alt=""" & PluralString(ARating, "star", "stars") &""">"
End Function
Sub ShowReviewHeaderOld(AProductCode, AProductName, AProductURL)
%>
<br>
<%
ShowReturnToProductLink AProductName, AProductURL, "Reviews for "
%><br><br><%
ShowReviewRating AProductCode, True, True
Response.Write(GetWebText("ReviewPromotion"))
End Sub
' (SS,12/9/14) changed for Bootstrap
' (SS,23/10/14) write a review button back for Bootstrap it shows the write a review form
' (SS,11/10/19) removed btn-sm from button to make it larger
' (SS,30/9/20) added btn-sm back in for Bootstrap 3
Sub ShowReviewHeader(AProductCode, AProductName, AProductURL)
%>
<div class="review-top-header">
<p>
<!--
<a href="<%=GetWriteReviewLink(AProductCode)%>" class="button"><%=tr("Write a review")%></a>
-->
<%If Not InWriteReview Then ' because it'll already will be showing the form %>
<button id="write-review-btn" class="btn btn-default btn-success<%=Bootstrap3Only(" btn-sm")%>" onclick="$('#write-review').toggle();$('#write-review-btn').toggle();">Write a review</button>
<%End If%>
<%
Response.Write(GetWebText("ReviewPromotion"))
%>
</p>
<hr>
</div>
<%
End Sub
' (SS,17/6/11) added <div class="review">
' (SS,22/6/11) replaced GetReviewRatingImgSrc ShowReviewRatingImage
' (SS,12/9/14) changed for Bootstrap, replaced ShowReviewRatingImage ARating, False with ShowReviewRatingStars ARating, replaced "Reviewed By" with "Review By"
' (SS,17/2/16) added Microdata / Rich Snippets
' (SS,21/2/24) added "" (options) to ShowReviewRatingStars
' (SS,28/2/24) added arrow (glyphicon-chevron-up) to go back to top
Sub ShowReviewItem(AType, ADate, ATitle, ARating, AText, AReviewedBy)
%>
<div itemprop="review" itemscope itemtype="http://schema.org/Review" class="review">
<div class="review-header">
<span class="review-date pull-right">
<span itemprop="datePublished"><%=ADate%></span>
</span>
<%If AType = "R" Then%>
<span itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
<meta itemprop="ratingValue" content="<%=ARating%>" />
</span>
<p><%ShowReviewRatingStars ARating, ""%> <b>Review by:</b>
<%Else%>
<p><b>Comment by:</b>
<%End If%>
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
<span itemprop="name"><%=AReviewedBy%></span>
</span>
</p>
<%If ATitle <> "" Then%>
<span itemprop="headline" class="review-title"><%=ATitle%></span>
<%End If%>
</div>
<div itemprop="reviewBody" class="review-body">
<%=AText%>
</div>
<div>
<div class="review-footer pull-right">
<a href="#top"><i class="glyphicon glyphicon-chevron-up"></i></a>
</div>
</div>
<hr>
</div>
<%
End Sub
' (SS,17/6/11) added <p>, and If Not ProductPageTabs to not show in tabs
Sub ShowReviewFooter(AProductCode, AProductName, AProductURL)
If Not ProductPageTabs Then
%>
<p>
<%
ShowReturnToProductLink AProductName, AProductURL, ""
%>
</p>
<%
End If
End Sub
' (SS,17/6/11) added class "review-form" to table, removed outside table, tidied
' (SS,23/3/12) spam reviews were being sent, reviews are now only allowed if email address has been entered and has placed a completed order
' removed ~% AddSecurityToExistingForm %~, made email address bold to indicate it's required
' replaced "optional," with "for security,"
' (SS,11/6/14) change the text (2 to 3 days / immediately) depending on new ProductsShowReviewsImmediately setting
' (SS,23/10/14) modified for Bootstrap
' (SS,22/9/17) added "rows=6" to double row height for review text
Sub ShowReviewEntryForm(AErrorMessage, AActionURL, AProductCode, AProductName, AProductURL)
' (SS,11/6/09) added table outside form to allow complete white background otherwise you get a blank line at the top in black background sites
Dim LStyle
If InWriteReview Then
LStyle = ""
Else ' to hide until write a review button clicked
LStyle = "style=""display:none"""
End If
' collapseReviews anchor takes you to the correct position
%>
<div id="write-review" <%=LStyle%>>
<form name="frmReview" method="post" action="<%=AActionURL%>#collapseReviews">
<p>We're pleased you would like to review <b><%=AProductName%></b>.</p>
<p>Please fill in the details below and press the submit button.</p>
<%If ProductsShowReviewsImmediately Then%>
<p>Your review will appear here immediately.</p>
<%Else%>
<p>Your review will appear within 2 to 3 days.</p>
<%End If%>
<%
If AErrorMessage <> "" Then
ShowAlertMesssage "danger", AErrorMessage
End If
SetFormControlsLabelWidth 0 ' default to 0 for following controls, i.e. separate line for label
' (SS,14/5/21) removed following, ReviewType combo, no longer a choice for review or comment, now always a review, added hidden input to set ReviewType to "Review" to prevent ReviewType missing error
'ShowFormControl "select", "ReviewType", "This is a", Session("ReviewType"), "", "", True, "", "list=" & "Please select..." & NL & "Review" & NL & "Comment"
ShowFormControl "text", "ReviewTitle", "Review Title", Session("ReviewTitle"), "Enter review title (optional)", "50", True, "", ""
' (SS,14/5/21) removed "Not applicable for comment", also removed "Please select..." option, this doesn't work anyway needs to be a number to prevent error
ShowFormControl "select", "ProductRating", "Product Rating", Session("ProductRating"), "", "", True, "", "list=" & "5 stars" & NL & "4 stars" & NL & "3 stars" & NL & "2 stars" & NL & "1 star"
ShowFormControl "text", "ReviewerName", "Your Name", Session("ReviewerName"), "Enter name (optional)", "25", True, "Leave blank to remain anonymous", ""
' (SS,22/9/17) added rows=6 to following to double the row height (requested by Neil)
' (SS,14/5/21) replaced "Enter review or comment" with "Enter review", comment type no longer used
ShowFormControl "textarea", "ReviewText", "Review", Session("ReviewText"), "Enter review", "10000", True, "", "rows=9" ' restricted to 10,000 largest received by Hyperflight to date is 5650
ShowFormControl "email", "ReviewerEmail", "Email Address", Session("ReviewerEmail"), "Enter email address", "100", True, "For security this will not be shown", ""
Response.Write GetButton("javascript:document.frmReview.submit()", "", tr("Submit review"), "")
%>
<input type="hidden" name="ReviewType" value="Review">
<input type="hidden" name="Submit" value="yes">
</form>
<hr>
</div>
<%
End Sub
' (SS,17/6/11) removed from table, added If Not ProductPageTabs
' (SS,11/6/14) added "If Not ProductsShowReviewsImmediately" to not show the review will appear here link
' also added link to go back to showing the reviews
Sub ShowReviewThankYou(AProductCode, AProductName, AProductURL)
%>
<div class="review">
<p>
Thank you for reviewing <b><%=AProductName%></b>.
</p>
<%If Not ProductsShowReviewsImmediately Then%>
<p>The review will appear here within 2 or 3 days.</p>
<%End If%>
<p>Click <a href="<%=GetShowReviewsLink(AProductCode)%>">here</a> to see the reviews.</p>
<%If Not ProductPageTabs Then%>
<p>
<%ShowReturnToProductLink AProductName, AProductURL, ""%>
</p>
<%End If%>
</div>
<%
End Sub
Sub ShowReturnToProductLink(AProductName, AProductURL, AReturnToPrefix)
Dim LText
If AReturnToPrefix = "" Then
LText = "Return to " + AProductName
Else
LText = Trim(AReturnToPrefix + AProductName)
End If
%><a href="<%=AProductURL%>"><b><%=LText%></b></a><%
End Sub
' --- END OF REVIEW TEMPLATES ---'
' --- START OF STOCK NOTIFICATION TEMPLATES --- '
' (SS,20/7/17) removed the <b> and <u>
' (SS,25/7/17) added rel=""nofollow""
' (SS,24/3/20) added Not OrderingSuspended
' (SS,30/3/20) added link back in by removing And Not OrderingSuspended
' (SS,30/3/20) later changed to show "Notify me when I can order again" when OrderingSuspended
' (SS,30/9/20) modified to get message from GetMessage when OrderingSuspended to allow a custom message
Sub ShowStockNotificationLink(AProductCode)
Dim LMessage
If BackInStockNotificationsEnabled Then
If OrderingSuspended Then
LMessage = GetMessage("OrderingSuspended")
If LMessage = "" Then
LMessage = "Notify me when I can order again"
End If
Else ' (30/3/20) as before
LMessage = "Notify me when back in stock"
End If
%><a href="<%=GetStockNotificationLink(AProductCode)%>" rel="nofollow"><%=LMessage%></a><%
End If
End Sub
' (SS,20/6/11)
Sub ShowOtherHeader
%><div id="product-detail-other"><%
End Sub
' (SS,20/6/11)
Sub ShowOtherFooter
%></div> <!-- end #product-detail-other --> <%
End Sub
' (SS,20/6/11) tidied, replaced table attributes with class="stock-notify-form", removed <br>'s, added class "button-form"
' added ShowOtherHeader, ShowOtherFooter
' (SS,25/7/17) new Bootstrap version
' also replaced text "We'll be happy to email you when <strong>[AProductName]</strong> is back in stock. Just fill in your name and email address below. Then enter the security code shown and press the submit button."
' with "To receive an email when we receive more stock of this item please enter your email address below."
' (SS,25/8/17) added Referrer
Sub ShowStockNotificationForm(AErrorMessage, AActionURL, AProductCode, AProductName, AProductURL)
ShowOtherHeader
%>
<h3><%=AProductName%></h3>
<form action="<%=AActionURL%>" method="post" name="Stock Notification Form">
<div>
<p>To receive an email when we receive more stock of this item please enter your email address below.</p>
</div>
<div class="col-lg-4 col-md-6 col-sm-8 col-xs-12">
<%
If AErrorMessage <> "" Then
%>
<div class="row alert alert-danger" role="alert">
<%=AErrorMessage%>
</div>
<%
End If
%>
<div class="form-group row">
<label for="StockNotifyName">Name</label>
<input type="text" class="form-control" name="StockNotifyName" id="StockNotifyName" placeholder="Enter name" value="<%=HTMLEncode(Session("StockNotifyName"))%>">
</div>
<div class="form-group row">
<label for="StockNotifyEmail">Email Address</label>
<input type="email" class="form-control" name="StockNotifyEmail" id="StockNotifyEmail" placeholder="Enter email address" value="<%=HTMLEncode(Session("StockNotifyEmail"))%>" maxlength="100">
</div>
<input type="hidden" name="Referrer" value="<%=Server.HTMLEncode(Request.ServerVariables("HTTP_REFERER"))%>">
<%If EmailSecurityCodeEnabled Then
Response.Write "<div class=""form-group row"">"
AddSecurityControl "bootstrap", ""
Response.Write "</div>"
End If%>
<div class="form-group row">
<input type="submit" class="btn btn-success" name="submit" value="Submit">
</div>
</div>
</form>
<%
ShowOtherFooter
End Sub
Sub ShowStockNotificationThankYou(AProductCode, AProductName, AProductURL)
ShowOtherHeader
%>
<p>Thank you for your interest in <%=AProductName%>.</p>
<p>We will email you as soon as it's back in stock.</p>
<p>
<%ShowReturnToProductLink AProductName, AProductURL, ""%>
</p>
<%
ShowOtherFooter
End Sub
' --- END OF STOCK NOTIFICATION TEMPLATES --- '
' --- START OF BANNER TEMPLATES --- '
' (SS,12/9/12) moved here from main template
' (SS,25/5/17) modified for Bootstrap, i.e. to use the built-in carousel
' removed Sub ShowBannerContainer (doesn't appear to be used)
' (SS,21/3/11)
' (SS,25/5/17) modified for Bootstrap
' (SS,29/12/20) changed interval from 4000 to 7000 (requested by Neil)
Sub ShowBannerHeader
%>
<div id="myCarousel" class="carousel slide" data-ride="carousel" data-interval="7000">
<div class="carousel-inner">
<%
End Sub
' if empty then not used e.g. no caption or button show
' (SS,25/5/17) new ShowBannerItem (was ShowHomeCarouselItem
' ShowBannerItem had 3 parameters, we now have 4, new AButtonCaption
' oTemplateOther renamed from oTemplateHome
Sub ShowBannerItem(AImageFile, AImageCaption, AURL, AButtonCaption)
Dim LActive, LGlyphArrow
oTemplateOther.IncBannerCount
If oTemplateOther.IsFirstBanner Then
LActive = "active "
Else
LActive = ""
End If
If Left(AURL, 7) = "http://" Or Left(AURL, 8) = "https://" Then
LGlyphArrow = " <i class=""glyphicon glyphicon-chevron-right""></i>"
Else
LGlyphArrow = ""
End If
%>
<div class="item <%=LActive%>itp-carousel">
<a href="<%=AURL%>">
<img src="<%=AImageFile%>" alt="<%=AImageCaption%>">
</a>
<div class="carousel-caption">
<%If AImageCaption <> "" Then%>
<a href="<%=AURL%>">
<h3><%=AImageCaption%></h3>
</a>
<%End If%>
<%If AButtonCaption <> "" Then%>
<a class="btn btn-lg btn-primary btn-strong btn-carousel hidden-xs" href="<%=AURL%>" role="button"><%=AButtonCaption + LGlyphArrow%></a>
<%End If%>
</div>
</div>
<%
End Sub
' (SS,21/3/11)
' (SS,25/5/17) modified for Bootstrap
Sub ShowBannerFooter
%>
</div>
<a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev"><span class="glyphicon glyphicon-chevron-left"></span></a>
<a class="right carousel-control" href="#myCarousel" role="button" data-slide="next"><span class="glyphicon glyphicon-chevron-right"></span></a>
</div><!-- /.carousel -->
<%
End Sub
' --- END OF BANNER TEMPLATES --- '
' --- START OF PRODUCT OPTION TEMPLATES --- '
' (SS,30/6/11)
Sub ShowProductOptionsHeader(AProductID)
Dim LOptionsTitle
LOptionsTitle = GetProductAttributeByName(AProductID, "Options Title")
If LOptionsTitle = "" Then
LOptionsTitle = "Available Options"
' (SS,27/8/14) added following to get custom options title default
If FunctionExists("CustomGetProductOptionsTitleDefault") Then
LOptionsTitle = CustomGetProductOptionsTitleDefault
End If
End If
' (SS,27/8/14) added If to only show with h3 tag this if not blank
If LOptionsTitle <> "" Then LOptionsTitle = "<h3>" & LOptionsTitle & "</h3>"
%>
<div id="product-options"><%=LOptionsTitle%>
<%
End Sub
Sub ShowProductOptionsFooter(AProductID)
Dim LOptionsHint
LOptionsHint = GetProductAttributeByName(AProductID, "Options Hint")
If LOptionsHint <> "" Then Response.Write "<span class=""product-options-hint"">" & LOptionsHint & "</span>"
%>
</div>
<%
End Sub
' --- END OF PRODUCT OPTION TEMPLATES --- '
' --- START OF FAVOURITES TEMPLATES --- '
' (SS,13/09/12)
Sub ShowFavouritesHeader
%>
<div id="favourites">
<div id="favourites-header"><%=tr("Your Favourites")%></div>
<%
End Sub
Sub ShowFavouritesItem(ANo, AProductCode, AProductName, AQty)
%>
<div class="favourites-item">
<div class="favourites-img">
<a href="<%=GetBuyQLink(AProductCode, AQty)%>"><img src="images/add-basket.gif" title="<%=tr("add to basket")%>" /></a>
</div>
<div class="favourites-name">
<a href="<%=GetProductLink(AProductCode)%>" title="<%=tr("view product details")%>"><%=AProductName%> <span class="favourites-qty">(<%=AQty%>)</span></a>
</div>
</div>
<%
End Sub
Sub ShowFavouritesFooter
%>
</div>
<%
End Sub
' --- END OF FAVOURITES TEMPLATES --- '
' (SS,1/9/14) Show an alert message (not popup) AType can be success, info, warning or danger (using Bootstrap's styles)
Sub ShowAlertMesssage(AType, AMessage)
%>
<div class="alert alert-<%=AType%>" role="alert"><%=AMessage%></div>
<%
End Sub
%>